树莓派摄像头学习必备 —— Picamera2 测试版发布

最近发布的 Raspberry Pi OS 映像,终于预装了Picamera2库的 beta 版本。它是旧 PiCamera 库的替代,也是未来树莓派摄像头的官方首选开发库。

从早期版本开始,PiCamera 就非常受用户欢迎,因为它提供了一种非常简单而开放的Raspberry Pi 摄像头调用方式,让大家远离了专有和闭源的摄像头API(比如Broadcom的)。

Picamera2 主要特点

1、支持命令行驱动,你可以将 Picamera2 的命令直接通过Python 解释器或 Python 脚本调用。
2、使用OpenGL加速硬件辅助渲染,或在X windows未运行时使用DRM/KMS进行高速渲染。
3、支持将现成的 Picamera2 组件嵌入到 Qt 应用程序中。
4、原生支持 numpy,使其与 OpenCV、TensorFlow 和其他 Python 库一起使用非常自然。
5、所有源代码都可以在Picamera2 GitHub 页面上获得,或者作为libcamera 项目的一部分。
6、支持所有官方树莓派相机,也支持一些第三方相机

还有一些功能,例如视频编码和录制(可自定义输出对象),同时录制音频和视频的能力。在摄像头图像上显示叠加层等等。

要了解更多信息,请查阅大量示例脚本应用程序,或查阅我们的Picamera2 用户手册

Picamera2 可以在 TensorFlow 的帮助下检测和圈出狗

安装和升级

Picamera2 仅在最近的 Bullseye (新的树莓派系统代号)上受支持。

Buster 或更早的版本不支持它,Raspberry Pi OS Legacy 也不支持。所有这些用户都只能继续使用旧的 PiCamera 库。

在最新的 Bullseye 系统上已经安装了 Picamera2。

需要命令行安装的话可以输入:

sudo apt install -y python3-picamera2

树莓派操作系统

Raspberry Pi OS 用户会发现新的系统中, Picamera2 已经完整安装,包括 Qt 和 OpenGL。

Raspberry Pi OS Lite 默认随 Picamera2 一起安装,但没有 Qt 和 OpenGL。原因是用 Raspberry Pi OS Lite 的低配Pi 运行基于 X Windows 的应用程序或通过 X Windows 显示堆栈进行渲染会比较卡。

如果需要在Raspberry Pi OS Lite上使用 Qt 和 OpenGL,可以这么安装。

sudo apt install -y python3-pyqt5 python3-opengl

如果你用的是未安装 Picamera2 的较早版本的 Bullseye,又不用 Qt 和 OpenGL 的话,安装它的命令:

sudo apt install -y python3-picamera2 –-no-install-recommends

之前通过 pip 安装过 Picamera2 的用户

一些用户可能以前使用pip,那需要先卸载再安装。当然,你可以继续用pip的方式。

如何尝试 Picamera2?

有一些示例脚本很有帮助,你可以下载并运行它们:

git clone https://github.com/raspberrypi/picamera2.git

python picamera2/examples/preview.py

在 Python 解释器中输入 Picamera2 指令

提示

如果遇到任何困难,请注意以下几点:

  • Raspberry Pi 3 或更早版本设备的用户将需要重新启用 Glamour(如果他们以前没有这样做)才能使用任何 X Windows/OpenGL 预览功能。
  • libcamera 在控制台窗口中可以非常“健谈”。如果这让你感到困扰,请在运行 Python 之前键入:export LIBCAMERA_LOG_LEVELS=*:3(或将其放入.bashrc)。
  • Picamera2使用一种特定类型的 Linux 系统内存,称为 CMA 内存。系统资源不足的话会有问题。

如果有任何其他问题或疑问,可加入树莓派摄像头论坛讨论。

发表回复