Реклама
Наблюдайте за движением облаков или ростом рассады. Интервальная фотография действительно может дать вам представление о том, как мир работает на макроскопическом уровне, за пределами чего-либо мыслимого для обычного человеческого опыта времени. Или другими словами: это может превратить наблюдение за высыханием краски в нечто весьма интересное К сожалению, профессиональное покадровое оборудование - при этом добавляя возможность вращать или перемещать камеру - как джинн может стоить до 1000 долларов. Сегодня мы сделаем базовый замедленный контроллер без движения - для DSLR или веб-камеры USB - только с Raspberry Pi.
Обязательно ознакомьтесь со всеми нашими другими великими Проекты Raspberry Pi слишком.
DSLR
Как обычно, вся наша работа с Pi будет выполняться через командную строку SSH, и мы можем получить файлы с использованием SFTP с теми же учетными данными, если вы сохранили их на Pi вместо камеры. Если вы не уверены, какой IP-адрес у вашего Pi, войдите в свой маршрутизатор и просмотрите список подключенных в данный момент устройств - он должен правильно сообщать о себе.

Начните с установки необходимого программного обеспечения:
sudo apt-get установить gphoto2. sudo apt-get установить imagemagick.
GPhoto2 - это утилита командной строки для непосредственного взаимодействия с поддерживаемыми зеркальными камерами (посмотреть полный список здесь). Я использовал Canon Бунтарь T4i / 650D Canon Rebel T4i DSLR Обзор и Дешевая распродажаCanon только что выпустила свой новый Rebel T4i - их первые (и, надеюсь, многие) приключения в мире сенсорных экранов DSLR. Эта камера является шагом вперед по сравнению с Canon Rebel T3i (и делает его третьим ... Прочитайте больше . Теперь подключите камеру к Pi через USB.
Поскольку я использовал автоматические значения ISO и режим AV, настройка относительно проста, и мы можем захватить серию, используя только командную строку - утилита включает встроенные параметры промежутка времени. Вот самая простая команда, которую вы можете использовать для проверки возможностей:
gphoto2 - захватить изображение и скачать
который передаст файл вашему Pi, или
gphoto2 --capture-image
сохранить изображение на камеру. При 8 МБ поп-музыки, возможно, лучше всего держать их на камере и выполнять съемку фильма по факту с ПК или Mac.
Важный: По умолчанию изображения сохраняются в SD-RAM, а не на карту памяти в камере. Это означает, что вы потеряете их всех (я говорю из опыта). Чтобы убедиться, что они действительно сохраняются, нам нужно сначала установить цель захвата:
gphoto2 --get-config / main / settings / capturetarget.
Посмотрите на список, который он выводит, и установите цель следующим образом, заменив 1 с тем, что указано в качестве вашей карты.
gphoto2 --set-config / main / settings / capturetarget = 1.
Чтобы сделать снимок в режиме покадровой съемки, добавьте -F и -Я указать общее количество кадры Вы хотите захватить, и время интервал между каждым. В этом примере выполняется захват каждые 30 секунд в общей сложности 1440 кадров, что при превращении в фильм с 24 кадрами в секунду будет равняться примерно минуте. Я не думаю, что батарея моей камеры будет работать так долго, но я посмотрю, сколько я получу.
gphoto2 -capture-image -F 1440 -I 30.
Причуду, о которой нужно помнить; после выполнения команды камера может выключиться и перестать отвечать на запросы - вам нужно будет вручную включить и выключить питание (по крайней мере, на моей модели это было сделано). Это не должно быть проблемой в полевых условиях при использовании, но для целей тестирования это становится довольно раздражающим. Если вы знаете, как это исправить, дайте мне знать, пожалуйста, в комментариях!

Создание фильма
Передайте файлы на рабочий стол для обработки. На Mac я обнаружил, что проще всего использовать командную строку, но вам нужно XCode, Homebrew, и MPlayer установлен первым. Для этого сначала загрузите Xcode из App Store (это бесплатно), а затем из предпочтения -> Загрузки вкладка, включить Инструменты командной строки.

Затем выполните (по одному):
ruby

Теперь у вас должны быть установлены необходимые компоненты кодирования. Выполните следующие команды, чтобы сначала создать список захваченных файлов .jpg, а затем введите этот список в mencoder, утилиту, используемую для создания видео. Измените значение FPS, если хотите, чтобы фильм шел быстрее.
компакт диск
ls * .jpg> list.txt. mencoder -nosound -ovc lavc -lavcopts vcodec = mpeg4: aspect = 16/9: vbitrate = 8000000 -vf scale = 640: 480 -o timelapse.avi -mf type = jpeg: fps = 24 mf: //@list.txt,
Вот что я закончил, используя 24 кадра в секунду из 330 кадров, снятых каждую минуту с утра до полудня. Погода в Британии действительно очень плохая, от солнечного до пасмурного с 5-минутными интервалами в течение дня. Вздох.
Чтобы закодировать фильм в Windows или, если вы предпочитаете использовать графический интерфейс, загрузите Avidemuxи следуйте видео уроку ниже. Убедитесь, что ваши фотографии пронумерованы последовательно.
https://www.youtube.com/watch? v = GZmkfk-YrG4 # т = 73
Использование веб-камеры USB
Конечно, не у всех есть цифровая зеркальная камера, но вместо того, чтобы покупать дорогой официальный модуль камеры для Raspberry Pi, вы также можете выполнять замедленную съемку с помощью стандартного USB веб-камера - в моем случае, PS3 Eye, которая обычно доставляет массу хлопот при работе на ПК или Mac, но работает из коробки на Pi. Возможно, вам потребуется использовать USB-концентратор с питанием, и поддержка камеры поверхностна.
Сначала проверьте, правильно ли была обнаружена ваша веб-камера.
ls -l / dev / video *
Надеюсь, вы увидите / dev / video0 в следующем списке:

Затем мы можем приступить к установке программного обеспечения для захвата веб-камеры и сделать пробный снимок.
sudo apt-get установить fswebcam.
fswebcam -d / dev / video0 -r 640x480 test.jpeg.
Удалите файл с помощью:
rm test.jpg.
Сделайте несколько пробных снимков, чтобы вы могли правильно расположить камеру, и мы продолжим работу со сценарием покадровой съемки.
МакДир Timelapse. nano runtimelapse.
Вставьте в следующее:
#! / Bin / Баш. # Timelapse контроллер для USB веб-камеры DIR = / home / pi / timelapse x = 1. в то время как [$ x -le 1440]; do filename = $ (date -u + "% d% m% Y_% H% M-% S"). jpg fswebcam -d / dev / video0 -r 640x480 $ DIR / $ имя файла x = $ (($ x + 1)) спать 10; сделанный;
В целях тестирования я установил время ожидания между кадрами равным 10 секундам. Когда вы на самом деле начинаете захват, вы можете вместо этого менять его на каждую минуту. Измените следующую строку, чтобы определить, сколько кадров нужно захватить, в примере он установлен как 1440:
в то время как [$ x -le 1440]; делать.
Чтобы сделать скрипт исполняемым, используйте:
chmod 755 runtimelapse.
Затем запустите его, используя:
./runtimelapse.

Создание фильма
Все еще в командной строке SSH, мы попробуем наложить фильм прямо на Pi - если вы сделали тысячи снимков, а ваша веб-камера выше разрешение, вы можете обнаружить, что это ужасно медленно, в этом случае прокрутите до инструкций фильма для DSLR и перенесите файлы на ваш компьютер используя SFTP.

замедленная съемка ls * .jpg> list.txt. sudo apt-get устанавливает mencoder. mencoder -nosound -ovc lavc -lavcopts vcodec = mpeg4: aspect = 16/9: vbitrate = 8000000 -vf scale = 640: 480 -o timelapse.avi -mf type = jpeg: fps = 24 mf: //@list.txt,
Если все выглядит хорошо, но вы получаете файл размером 0 КБ, это означает, что во временной папке вашего устройства недостаточно места. Я решил эту проблему с помощью чистой установки и снова расширил корневую систему - похоже, BTSync испортил некоторые временные файлы.
Вот готовая сцена с веб-камеры USB, с полудня до темноты.
Это было намного проще, чем я думал, и я не удивлюсь, если найду в комментариях кого-нибудь, кто описал бы еще более простой метод! Познакомьтесь с захватывающим взглядом на жизнь, который иначе трудно понять, и поделитесь ссылкой на свои творения в комментариях или других видеороликах, которые вы нашли особенно вдохновляющими.
Джеймс имеет степень бакалавра в области искусственного интеллекта и сертифицирован CompTIA A + и Network +. Он является ведущим разработчиком MakeUseOf и проводит свое свободное время за игрой в VR-пейнтбол и настольные игры. Он строит компьютеры с детства.