Raspberry Pi Camera Board — официальный модуль камеры для линейки микрокомпьютеров Raspberry Pi.
Вернее, таких модулей существует два: Raspberry Pi Camera Board V2 и Raspberry Pi NoIR Camera Board V2, который отличается от обычной версии вырезанным ИК-фильтром, в силу чего картинка с такой камеры выглядит несколько фантасмагорично днем, но получается четче и разборчивее в условиях недостаточного освещения.
В данном обзоре рассматривается «обычный» модуль Raspberry Pi Camera Board V2, приобретенный в магазине LANDZO на AliExpress.
Содержание
Характеристики
Название модели: Raspberry Pi Camera Board V2
Разрешение: 8Мп (до 3280×2464)
Сенсор: Sony IMX 219 PQ CMOS, ¼ дюйма
Поддерживаемые видеоформаты: 1080p (30fps), 720p (60fps), 640×480p (90fps)
Фокусное расстояние: 33 мм
Светосила объектива: f/2
Внешний вид и комплект поставки
Камера поставляется в картонной коробке с логотипом производителя.
Вся продукция Raspberry Pi Foundation выпускается на мощностях двух компаний — RS Components (Англия) и element14 (Китай). Я приобрел модуль камеры производства element14, за те же деньги и у того же продавца можно взять модель английской сборки, разница между ними будет только в полиграфии коробки.
В коробке находится сама камера с подключенным к ней шлейфом и руководство по технике безопасности на разных языках, включая и русский.
Длина шлейфа — 15,5 см. Он совместим с интерфейсом CSI на всех моделях линейки Raspberry Pi кроме Zero и Zero W, на которых используется уменьшенная версия разъема, подключение к которой осуществляется через специальный переходник. В обзоре Raspberry Pi Zero W этот переходник можно увидеть на фотографиях.
Размеры модуля 23×25мм.
Имеются 4 отверстия для стационарного крепления винтами или на защелках.
На обратной стороне модуля находится разъем для подключения шлейфа.
Большинство корпусов для Raspberry Pi 3 не очень приспособлены для работы с модулем камеры. Вывести шлейф наружу — это можно, а вот как закрепить камеру в статичном положении — проблемы пользователя. Хотя в моей статье годовалой давности с подборкой хороших корпусов для Raspberry Pi присутствует одна модель с креплением под камеру.
Сам я заказывал Raspberry Pi Camera Board с прицелом на использование в паре с Raspberry Pi Zero W. Крышка стандартного корпуса этого микрокомпьютера уже оснащена отверстием под камеру, да и характеристики маленькой «малинки» больше подходят для подобных нетребовательных к процессорной мощи задач.
Подключение и настройка камеры
Все необходимые для начала работы драйвера уже присутствуют в дистрибутиве Raspbian, но для работы камеры нужно вручную включить ее в настройках:
sudo raspi-config
В настройках выбираем пункт «Interfacing Options»
И в открывшемся меню — «Camera».
После включения поддержки модуля камеры конфигурационная утилита предложит выполнить перезагрузку. Соглашаемся.
Последний шаг — отредактировать файл /etc/modules
sudo nano /etc/modules
И добавить в него строку bcm2835-v4l2.
Убедиться в правильности настройки можно при помощи команды
ls /dev
Если все прошло нормально, то модуль камеры будет отображаться в появившемся листинге как video0.
Управление камерой из консоли
Для того, чтобы снимать фото и видео при помощи Raspberry Pi Camera Board достаточно двух консольных утилит, присутствующих в Raspbian «из коробки»: raspistill и raspivid.
Фотография
Для того чтобы сделать фото нужно выполнить команду:
raspistill -o image.jpg
Эта команда делает фотографию и сохраняет ее в файл image.jpg в том каталоге, из которого происходит ее запуск (по умолчанию это /home/pi).
С настройками по умолчанию камера снимает в максимальном для себя разрешении 3280×2464 пикселей, 1 фото весит ~4.5 Мб. Если полученное фото открыть в MS Paint и не внося никаких изменений просто пересохранить под другим названием, то размер файла сразу же уменьшается до ~2 Мб.
Пара примеров полученных с камеры фотографий. По клику средней кнопкой мыши их можно открыть в оригинальном разрешении. Изображения получились чуть более смазанными, чем могло бы быть, поскольку во время съемки я держал камеру в руке. При жестком креплении на камеру не будет действовать тряска и изображение станет немного четче.
Что можно сказать о качестве фото? Автофокуса тут нет, а фиксированный фокус по умолчанию настроен на дальние планы (это хорошо видно на фотографии с монитором, где в фокусе явно находится не сам монитор, а обои за ним).
Для предметной съемки камера не подходит, для фотографирования текстов тоже, — а вот пейзажные виды будут получаться нормально. То есть вполне годится для целей видеонаблюдения. Ну и фокус можно подкрутить вручную, добившись оптимального качества при стационарном размещении.
В целом модуль снимает на уровне современных бюджетных смартфонов, что с учетом его стоимости вполне неплохо. ИК-подсветки камера не имеет и в темноте быстро слепнет. Так что для работы в условиях недостаточной освещенности лучше выбирать другую модель — Raspberry Pi NoIR Camera Board.
Видео
Для съемки видео нужно выполнить команду:
raspivid -o video.h264
Которая будет писать видео в файл video.h264 вплоть до момента своего прерывания.
Для записи видео фиксированной длины в команду добавляется ключ -t, указывающий продолжительность видео в миллисекундах:
raspivid -o video.h264 -t 10000
В данном случае будет снято видео длиной 10 секунд. Вес файла с десятисекундным видео в разрешении fullHD без перекодирования — 20 Мб.
Также при съемке видео и фото при помощи Raspberry Pi Camera Board можно поворачивать камеру ключами -vf (vertical flip) и -hf (horisontal flip).
Качество получаемый видеозаписи сравнимо со средним автомобильным видеорегистратором.
Если нужно перекодировать видеодорожку из формата H.264 в формат MPEG4, устанавливаем пакет утилит GPAC:
sudo apt-get install -y gpac
И запускаем перекодирование:
MP4Box -add video.h264 video.mp4
На выходе получается файл в разрешении .mp4, понимаемый всеми современными устройствами и видеоплеерами.
Для модуля камеры можно придумать и более сложные сценарии использования.
Например, превратить «малинку» в IP-камеру. Или снимать таймлапсы. Или настроить скрипт, который по срабатыванию определенного триггера (например, датчика движения, или при получении Telegram-ботом соответствующей команды) делает фотографию и загружает ее на облако в интернете.
Подробнее о некоторых из этих вещей я напишу позже в отдельных статьях.
Достоинства и недостатки
Достоинства:
- Хорошее качество съемки за свою цену
- Практически не требует настройки перед началом работы
- Компактные габариты и совместимость с Raspberry Pi Zero W
Недостатки:
- Фиксированный фокус
- Отсутствие ИК-подсветки
Заключение
За свои деньги мне модуль Raspberry Pi Camera Board V2 понравился.
Компактный и недорогой модуль, выдающий картинку достаточного качества для использования в целях видеонаблюдения. Его ближайшие конкуренты — обычные веб-камеры бюджетного ценового сегмента.
Но конструкция из одноплатного компьютера с подключенной к нему по USB «вебкой» получится более громозкой и неуклюжей, чем конструкция с использованием специально предназначенного для этих целей модуля и совместимого с ним корпуса.
Рекомендую к покупке вместе с Raspberry Pi Zero W.
Raspberry Pi Camera Board V2на AliExpress Raspberry Pi NoIR Camera Board V2на AliExpress