Raspberry Pi выпустила обновленную камеру, Camera Module 3 (он же Camera v3 или Camera Module v3), с MSRP $25 за стандартную или $35 за широкоугольную версию. Новый модуль имеет больше пикселей, конкурируя с 12Мп камерой высокого качества, при этом сохраняя меньший форм-фактор датчика на плате. Новым в этой крошечной камере является автофокус. Это первая официальная камера Raspberry Pi с автофокусом, хотя камера высокого разрешения Arducam обеспечила такую функциональность в прошлом году.
Камера Raspberry Pi была первым официальным аксессуаром от Raspberry Pi еще в 2013 году. Оригинальная модель с разрешением 5 Мп была обновлена до версии 2 в 2016 году, которая принесла в игру 8 Мп. Затем камеры стали немного более "серьезными", когда в 2020 году появилась 12-Мп высококачественная камера Raspberry Pi; эта версия принесла сменные объективы и множество вариантов для увлеченных фотографов, но она стоит дорого и не поставляется с объективом.
В 2023 году появилась новая камера Pi, Raspberry Pi Camera v3, которая обновляет форм-фактор датчика на плате оригинальной камеры и оснащается 12-Мп датчиком Sony IMX708 и автофокусом. Она также поставляется в четырех вариантах: стандартная, широкоугольная, NOIR и NOIR широкоугольная.
Мы протестировали стандартную и широкоугольную (неNOIR) версии Camera v3 и обнаружили отличное качество изображения, а функция автоматической фокусировки стала действительно полезным усовершенствованием.
На первый взгляд разница между Camera v3 и v2 невелика, но под серебристой упаковкой скрывается система автофокусировки для датчика Sony IMX708. Именно в этом дополнительном пакете и кроется небольшая проблема. В обхвате камеры, от конца объектива до задней части печатной платы, v3 толще, чем предыдущие модели.
Толщина стандартной модели составляет 11,5 мм, а толщина широкоугольной версии - 12,4 мм. Это не является серьезной проблемой для большинства, но может вызвать проблемы с существующими корпусами и креплениями. Если вы хотите напечатать на одном из лучших 3D-принтеров крутой держатель для камеры, то вам придется подкорректировать печать с учетом дополнительной толщины. Мы напечатали быстрый держатель чуть более чем за час с помощью нашего Creality Ender 2 Pro, хотя для установки более толстого модуля потребовалась небольшая доработка в стиле МакГайвера.
Мы обратились к превосходной документации Raspberry Pi, в которой описаны все предыдущие модели камер, и, используя ее данные, включили Raspberry Pi Camera v3 для сравнения. Камера v3 находится прямо между камерами v2 и HQ, как и следовало ожидать. Мы получаем больше мегапикселей и в целом большее изображение. У нас не было точных данных для некоторых столбцов, поэтому мы заполним их позже.
На момент написания статьи существует два основных способа управления камерой. Библиотека libcamera (которая заменила raspistill и raspivid) и Picamera2 (собственное обновление давно созданной сообществом Picamera). Выключив питание Raspberry Pi 4, мы вставили кабель камеры и зафиксировали его на месте. Поскольку камера использует тот же разъем, что и предыдущие модели, это означает, что ее можно использовать с полным спектром плат Raspberry Pi, включая Raspberry Pi Zero 2 W через кабель-переходник.
Самым большим недостатком официальных модулей камеры всегда был форм-фактор. В нем отсутствует механизм для фиксации камеры на месте (в классе из 30 преподавателей, каждый из которых использовал свои камеры, мы нашли инновационные способы их фиксации). Эта проблема была решена с помощью винтового крепления камеры HQ, но в Camera Module v3 мы видим только старые точки крепления по углам камеры. Камера Arducam с автофокусом оснащена корпусом, который обеспечивает точку крепления с помощью клипсы. Мы бы хотели, чтобы это было стандартным для Camera Module 3. Увы, похоже, что этого не будет, но мы всегда можем напечатать быстрый держатель в 3D.
Мы включили наш Pi под управлением последней версии Raspberry Pi OS, и нашей первой мыслью было включить интерфейс камеры, но затем мы поняли, что больше не нужно этого делать. Мы обновили список репозиториев программного обеспечения, а затем обновили программное обеспечение. Это позволило получить последние обновления модуля камеры v3, включая Picamera2.
Наш первый тест был проведен с помощью libcamera. Мы сделали серию снимков в формате JPEG. Камера была расположена на расстоянии 9 дюймов от объектов тестирования, а освещение было одинаковым для каждого снимка. В ходе тестирования мы обнаружили, что изображения получаются превосходными. Будь то вблизи (4 дюйма / 10 см) или на расстоянии, качество снимков было неизменно высоким и не уступало качеству снимков, сделанных камерой высокого качества. Время автофокусировки для неподвижных изображений было быстрым; мы могли видеть, как камера охотится за целью фокусировки, но это никогда не было "дрожанием".
Запись видео была совсем другим делом. Фокус пытался закрепить цель, что ему быстро удавалось, но мы могли видеть "шаги", когда фокус пытался идти в ногу со временем. Тем не менее, фокусировка вблизи была превосходной в наших видеороликах, улавливая компоненты поверхностного монтажа оригинального Raspberry Pi.
Новая функция, включенная в модуль камеры 3, - HDR (High Dynamic Range), которая увеличивает динамический диапазон яркости изображений. С помощью HDR мы получаем более глубокую темноту и более яркие изображения. Это работает путем захвата нескольких изображений одной и той же сцены, каждое с разной экспозицией. Затем эти изображения объединяются в одно, которое охватывает весь диапазон.
HDR-изображения модуля камеры 3 ограничены 3 Мп, которые libcamera использует для создания изображения с разрешением 2304 x 1296. Мы сделали два снимка одной и той же сцены - крупный план Raspberry Pi. Одно изображение было с HDR, другое - без. Изображение с HDR было более ярким и насыщенным, но в нем присутствовал небольшой шум. Изображению без HDR не хватало яркости, но оно также практически не имело шума. HDR может стать интересным дополнением к камерам Raspberry Pi для съемки троп и пейзажей.
Перенеся наши тесты в Picamera2, мы воссоздали шаги из недавнего руководства, но заметили, что автофокус был не очень "авто". Оказалось, что нам нужно включить дополнительный импорт класса и строку кода перед тем, как мы откроем окно предварительного просмотра и сделаем запись. Эта дополнительная строка - picam2.set_controls({"AfMode": controls.AfModeEnum.Continuous}), и она берется из класса libcamera Controls.
С помощью этой строки мы даем указание камере искать фокус. Процесс и качество идентичны libcamera. Снимки были хорошего качества, а фокусировка камеры была приемлемой. Видеозапись немного замирала, когда фокус искал цель, но опять же это было приемлемо.
Picamera2 также имеет HDR, но не непосредственно в модуле. Проблема заключается в V4L2, интерфейсе ядра между камерой и видеосистемой Linux. В настоящее время он не предлагает готовой поддержки HDR для этой камеры. Чтобы активировать HDR для Picamera2, нам нужно открыть терминал и вручную настроить камеру на его использование.
v4l2-ctl --set-ctrl wide_dynamic_range=1 -d /dev/v4l-subdev0
v4l2-ctl --set-ctrl wide_dynamic_range=0 -d /dev/v4l-subdev0
Мы сделали два снимка с помощью Picamera2, один с использованием HDR, а другой без него. Результаты практически идентичны результатам libcamera, но осмелимся сказать, что изображение HDR Picamera выглядит немного лучше?
Широкоугольная версия Camera Module 3 обеспечивает угол обзора 120 градусов. Другими словами, мы получаем более широкие снимки, которые охватывают большую площадь. Дополнительное поле зрения дает небольшое искажение в вертикальной плоскости - вспомните вступительный ролик к "Звездным войнам". Но дополнительное горизонтальное пространство замечательно и показывает (в лучшую или худшую сторону) состояние нашего верстака.
Кроме объектива, все то же самое, что и в стандартной 75-градусной версии. Мы сделали несколько снимков крупным планом с широким объективом, чтобы показать искажения. Мы также создали быструю сцену, чтобы показать цвета, и сцену сравнения для HDR-изображений.
Мы бы использовали этот объектив для проектов на открытом воздухе, таких как камеры для съемки троп, наблюдения за птицами, пейзажей и спорта.
Фиксированный фокус предыдущих модулей камеры (да, их можно было взломать, немного поработав скальпелем над кольцом объектива) означал, что проекты машинного обучения и искусственного интеллекта могут быть затруднены. Лица / объекты должны были находиться на определенном расстоянии от камеры, чтобы "увидеть" их.
С модулем камеры 3 у нас появилась возможность расширить видение наших проектов ML/AI и использовать их для наблюдения за объектами на расстоянии. Представьте себе, как он выбирает лицо из толпы, фокусируется на красном автомобиле на шоссе или замечает голубую сойку, летящую среди деревьев. На более бытовом уровне любители будут использовать автофокус в камерах слежения, системах сигнализации и проектах роботизированного зрения для обеспечения динамической реакции на движущиеся объекты.
Широкоугольный объектив подходит для проектов на открытом воздухе, и хотя его можно использовать в ML/AI, искажения могут не принести пользы в предполагаемом использовании. Перед использованием в критически важных проектах необходимо провести исследования и испытания.
За 25-35 долларов США здесь есть много интересного. Если вам нужна камера для проекта Pi, вы увидите преимущества использования Camera v3 по сравнению с аналогичной по цене Camera v2. Если вы используете последнюю версию Raspberry Pi OS, это действительно plug and play, и результаты будут отличными. Конечно, нам не хватает стандартного винта для крепления камеры, как в версии Arducam, но мы получаем простоту.
Качество изображения отличное, видео хорошее, а HDR является приятным дополнением к репертуару. Мы не будем снимать этой камерой следующий блокбастер, но мы получим массу удовольствия, делая отличные снимки".