среда, 5 января 2022 г.

Видеоcъемка и фотосъёмка на Raspberry pi в облако.

Здравствуйте дорогие читатели моего блога.

Сегодня статья посвещана организации процесса фото - и видиосъёмки с микрокомпьютера Raspberry pi с последующим сохранением данных в облако в атоматическом режиме.

У меня стояла задача создать систему фото- и видеонаблюдения за птицами у кормушки. 

Так как кормушка у меня находилась во дворе дома, то я решил собрать устройство на базе raspberry pi с подключённым проводным интернетом.

Это было сделано на случай, если влага или другие погодные условия выведут электронику из строя, то весь видео и фотоматериал останется в облаке.

В качестве оборудования я использовал
- Raspberry pi 3 B +
- 7 дюймовый сенсорный дисплей для микрокомпьютера
- Pi camera
- клавиатура, мышь
- LAN провод 20 метров
- удлинитель и блок питания (преобразователь 5В и 2А)

raspberry pi

lcd raspberry pi



Этап первый: установка операционной ситемы.

Для микрокомпьютера существуют множество сборок ОС. Я использую  официальную Raspberry PI OS 

На сайте https://www.raspberrypi.com/software/

 можно скачать специальную программу, которая установит вам данную систему.
Операционная система устанавливается на microSD желательно 8 - 32 Гб памяти.

 Этап второй: подключение Pi camera.

Pi camera распазноётся сразу из коробки микрокомпьютером с данной операционной системой.

Подключите камеру до включения микрокомпьютера!!!! Жёстко закрепите камеру, так чтобы не произошло отсоединения шлейфа или касания контактов камер с контактами микрокомпьютера.

Частая проблема с такими камерами - это сгорание при плохом соединении контактов шлейфа и электростатический разряд. Подобная проблема не редкость, но из-за неё микрокомпьютер перестанет обнаруживать pi camera.

Этап третий: подключение сенсорного 7 дюймового дисплея.

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

Этап четвёртый: драйвера для дисплея

Для этого вам нужно перейти в нужный репозиторий на github  и скачать нужную версию для вашего дисплея. Все драйвера можно найти здесь https://github.com/goodtft/LCD-show  Там же вы найдёте инструкцию по скачиванию и установке драйверов.

Скачать и установить можно несколькими способами:
- используя PuTTY
- используя внешний монитор с HDMI входом

Незабудьте предварительно подключить LAN провод или подключиться по WI-FI , чтобы иметь выход в интернет.

Если вы пользуетесь первым способом и вы не знаете как найти ip адрес своего микрокомпьютера, то вам могут помочь данные ИНСТРУКЦИИ


Этап пятый: Настройка конфигурации микрокомпьютера.

Для того чтобы ваша камера заработала необходимо перейти во вкладку Raspberry PI Configuration и поставить галочку напротив команды Enable для параметра "Camera"



Этап шестой: Программа для получения фото и видеозахвата с pi camera

Ранее я с ребятами разрабатывали исследовательский проект "Беспилотный автомобиль"

Как раз на базе raspberry pi  и pi camera была разработана модель трёхколёсного робота ориентируешегося в пространстве.



Из данного проекта была взята программа, но убран алгоритм распознавания границ и цвета.

Код программы:
import picamera import time camera = picamera.PiCamera() #camera.brightness=50 camera.exposure_compensation=25 camera.resolution=(640,480) camera.start_preview() i=0 while True: t='im'+str(i)+'.jpg' print(t) camera.capture(t) #time.sleep(1) i=i+1 camera.stop_preview() camera.close()


Данная программа делает фотографию в разрешении 640x480.  Можно делать и в более лучшем качестве.

Также можно записать и видео:


import picamera import time camera = picamera.PiCamera() #camera.brightness=50 camera.exposure_compensation=25 camera.resolution=(640,480) camera.start_preview() camera.start_recording('video.h264') camera.wait_recording(3600) # запись видео 1 час camera.stop_recording() camera.stop_preview() camera.close()



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

При данных разрешениях 10 часов непрерывных съёмок даёт объём около 2,2 Гб 


Этап седьмой: передача файлов в облако

В качестве хранилище данных  я выбирал между Яндекс Диском и Google Диском. Пока остановился на яндекс Диске.

Инструкция по настройке диска для автоматической приёма данных с устройства представлено ЗДЕСЬ 

Пример передачи фотграфий на яндекс диск 
import picamera import time import yadisk y = yadisk.YaDisk(token="###################################") print(y.check_token()) camera = picamera.PiCamera() #camera.brightness=50 camera.exposure_compensation=25 camera.resolution=(640,480) camera.start_preview() i=0 while True: t='im'+str(i)+'.jpg' print(t) camera.capture(t) #time.sleep(1) y.upload(t,"Nablyd/"+t,overwrite =True) i=i+1 if i>=10000: i=0 camera.stop_preview() camera.close()





















Согласно программе, каждый промежуток времени микрокомпьютер отправляет фотографию в папку "Nablyd", расположенной на яндекс диске.

Проще всего отправлять фотографии, но ничего не мешает отправить и видео, просто в этом случае у вас займёт это больше времени.
Время на создание фотографии и её отправку уходит порядка 1 - 2 секунды, поэтому дополнительных задержек нет необходимости ставить.

Видеообзор устройства и процесса видеосъёмки.



Заключение:

Данным способом пользуюсь часто и провожу наблюдение за живой природой.

Другие варианты для проведение видео и фотосъёмок не смогли реализоваться в основном для прямой трансляции или записи в облако применяют IP камеру, но у меня такой не было.













































Комментариев нет:

Отправить комментарий

Нам важно ваше мнение.

Установка mLink на Windows, macOS и Linux

mBlock 5 Webpage and mLink Quick Start Guide You can also use mBlock 5 on the web without downloading it. mBlock 5 webpage:   https://ide.mb...