Простая замедленная камера с использованием Raspberry Pi: 3 шага
Простая замедленная камера с использованием Raspberry Pi: 3 шага
Anonim
Простая замедленная камера с использованием Raspberry Pi
Простая замедленная камера с использованием Raspberry Pi

В этом посте вы узнаете, как создать простую покадровую камеру с помощью Raspberry Pi. Разрешение, продолжительность и время можно легко обновить в скрипте. Мы создали нечто подобное, используя плату ESP32-CAM, но качество камеры Raspberry Pi намного лучше, и, следовательно, результаты также лучше, чем в предыдущей версии.

Видео выше дает вам обзор того, как все сочетается. Я бы рекомендовал сначала посмотреть его, чтобы лучше понять, как вы можете создать и настроить этот проект.

Шаг 1. Подготовьте Raspberry Pi

Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
Подготовьте Raspberry Pi

Вам не нужен дисплей для этого проекта, но я решил использовать его, чтобы показать вам, как работают скрипты. В этом примере я также буду использовать Raspberry Pi 3, но это будет работать с любым вариантом, поддерживающим использование камеры.

Первое, что вам нужно сделать, это загрузить образ Raspbian. Я использовал версию Raspbian Desktop, так как хотел бы получить доступ к рабочему столу Raspberry, чтобы показать вам файлы и тому подобное. Так что, если вы планируете использовать дисплей, я бы рекомендовал загрузить и его. Затем вам нужно прошить образ на подходящую карту microSD, и для этого я бы порекомендовал использовать Etcher. Я решил использовать Wi-Fi вместо Ethernet-соединения, а также решил подключиться к плате по SSH, чтобы управлять им. Вместо этого вы также можете подключить к Raspberry Pi клавиатуру и выполнять все команды прямо с терминала. Выбор остается за вами.

Если вы планируете использовать SSH через Wi-Fi, вам нужно будет создать файл с данными о сети. Вы можете скачать файл шаблона по ссылке ниже, чтобы начать работу. Просто откройте его с помощью текстового редактора, такого как notepad ++ или Sublime Text, а затем введите код своей страны, имя сети и пароль. После этого сохраните файл и скопируйте его на загрузочный диск Raspberry Pi. Чтобы включить SSH, вам просто нужно создать пустой файл с именем ssh и поместить его на загрузочный диск. Вам не нужно добавлять никаких расширений. После этого вы можете вставить карту microSD, все подключить и загрузить Raspberry Pi.

Файл шаблона WPA:

Как видно на видео, разрешение дисплея изначально было неправильным, и мне пришлось добавить правильную конфигурацию HDMI, чтобы заставить его работать. Это зависит от используемого вами дисплея, поэтому я не буду перечислять здесь утверждения, но вы можете обратиться к видео и изображению, если вам интересно.

Следующее, что нам нужно сделать, это открыть терминал на вашем компьютере и подключиться к плате по SSH, используя его IP-адрес. Вы можете использовать программное обеспечение, такое как сканер AngryIP, для получения IP-адреса платы. Затем откройте терминал и введите «ssh [email protected]», но не забудьте изменить IP-адрес, чтобы он совпадал с адресом вашей платы. Вам нужно будет ввести пароль, пароль по умолчанию - «малиновый». Затем нам нужно включить камеру, и это можно сделать, выполнив команду «sudo raspi-config». Параметр камеры указан в параметрах интерфейса, и после его включения вам придется перезагрузить плату.

Шаг 2. Протестируйте камеру и напишите сценарий

Протестируйте камеру и напишите сценарий
Протестируйте камеру и напишите сценарий
Протестируйте камеру и напишите сценарий
Протестируйте камеру и напишите сценарий
Протестируйте камеру и напишите сценарий
Протестируйте камеру и напишите сценарий
Протестируйте камеру и напишите сценарий
Протестируйте камеру и напишите сценарий

Перед тем, как писать сценарий, желательно убедиться, что камера работает. Для этого просто снова подключитесь к плате по SSH, а затем выполните команду «raspistill -o test.jpg». Это сделает снимок и сохранит его в текущем каталоге с именем test.jpg. Затем вы можете запустить команду «ls», чтобы проверить, создан ли файл. Выполнение команды «ls» выведет список всех файлов и папок, которые присутствуют в текущем каталоге. Если файл существует, вы можете быть уверены, что камера работает правильно.

Затем нам нужно написать сценарий, и это можно сделать, запустив команду «sudo nano time-lapse.sh», которая откроет текстовый редактор. Затем вам нужно ввести следующее, как показано на изображении:

#! / bin / bash

raspistill -t 20000 -tl 1000 -w 1920 -h 1080 -o /home/pi/images/img%05d.jpg

Это заставляет плату захватывать изображения непрерывно в течение 20 секунд (20000 мс) с интервалом в 1 секунду (1000 мс). Он также определяет разрешение 1920x1080, а также указывает место, где должны храниться изображения. «% 05d» указывает, что имена образов должны содержать в общей сложности 5 цифр с ведущими нулями. После этого просто сохраните файл, нажав «CTRL + X», затем «Y» и затем клавишу «Enter».

Затем нам нужно сделать исполняемый файл сценария, что можно сделать, выполнив команду «sudo chmod + x time-lapse.sh». Прежде чем мы сможем запустить скрипт, нам нужно создать каталог изображений, и это можно сделать, запустив «mkdir images». Затем вы можете протестировать скрипт, запустив команду «./time-lapse.sh». Доска затем запишет 20 изображений и сохранит их в папке изображений. Вы можете перейти в папку и запустить команду «ls» для просмотра файлов.

Затем мы должны автоматизировать сценарий для этого, мы будем использовать метод systemd, который мы использовали в предыдущем посте, где мы создали IP-камеру. Сначала нам нужно запустить следующую команду «sudo nano /etc/systemd/system/time-lapse.service», которая откроет текстовый редактор. Затем вам нужно ввести следующее, но я бы рекомендовал просто скопировать его.

[Ед. изм]

Описание = промежуток времени

После = multi-user.target

[Услуга]

Тип = простой

ExecStart = / home / pi / time-lapse.sh

Пользователь = пи

Рабочий каталог = / home / pi

Перезагрузка = при сбое

[Установить]

WantedBy = multi-user.target

Затем вам просто нужно сохранить файл, как и раньше, а затем включить службу, запустив sudo systemctl enable time-lapse.service. Затем мы просто перезагружаем файл. Как только доска загрузится, вы сможете увидеть, как она захватывает изображения и сохраняет их в нужном месте.

Шаг 3. Отредактируйте сценарий, чтобы захватить на неопределенный срок и сохранить на USB

Отредактируйте сценарий для неограниченного захвата и сохранения на USB
Отредактируйте сценарий для неограниченного захвата и сохранения на USB
Отредактируйте сценарий, чтобы захватить на неопределенный срок и сохранить на USB
Отредактируйте сценарий, чтобы захватить на неопределенный срок и сохранить на USB
Отредактируйте сценарий, чтобы захватить на неопределенный срок и сохранить на USB
Отредактируйте сценарий, чтобы захватить на неопределенный срок и сохранить на USB

В настоящее время скрипт захватывает изображения только в течение первых 20 секунд, и если нам нужно его отредактировать, чтобы он мог захватывать изображения на неопределенный срок. Для этого снова подключитесь по SSH к плате, затем остановите службу, запустив «sudo systemctl stop time-lapse.service». Затем откройте файл сценария, запустив «sudo nano time-lapse.sh». Передайте значение 0 флагу «-t», так как это заставит его захватывать изображения на неопределенный срок. Я также пошел дальше и отключил предварительный просмотр изображения, добавив флаг «-n», как это видно на изображении. Затем вам нужно сохранить сценарий и запустить его, запустив "sudo systemctl start time-lapse.service".

Вы также можете обновить место хранения на USB-накопителе. Сначала подключите USB-накопитель и откройте его в диспетчере файлов. Запишите местоположение, которое должно быть похоже на "/ media / pi / USB_DRIVE_NAME". Затем просто остановите службу, как указано выше, и откройте ее, чтобы отредактировать. Затем вы можете изменить место хранения. Убедитесь, что указанная вами папка существует, в противном случае просто создайте ее с помощью команды mkdir. После этого снова запустите скрипт и перезагрузите плату. Он будет захватывать и сохранять изображения в новом месте.

После получения изображений вы можете использовать несколько различных приложений для преобразования их в видео. Time Lapse Creator - одно из таких приложений, которое можно использовать.

Вот как легко создать покадровую камеру с помощью Raspberry Pi. Если вам понравился этот проект, то поддержите нас, подписавшись на наш канал на YouTube.

YouTube:

Спасибо за чтение.