使用摄像头
Raspberry Pi OS Bookworm 和 Bullseye 分支
在该分支中,默认使用 libcamera 相机子系统接口。并且摄像头接口默认是打开的。
可以使用以下命令控制摄像头:
# libcamera-hello 是一个简单的"hello world" 程序,主要是启动摄像头预览功能,并显示到屏幕上。
libcamera-hello # 大约显示 5 秒左右的预览窗口
libcamera-hello -t 0 # 可以长时间显示预览窗口,使用 ctrl+c 结束
# libcamera-jpeg 是一个简单的应用程序,运行预览窗口,然后获取高分辨率静止图像。
libcamera-jpeg -o test.jpg # 大约显示 5 秒左右的预览窗口,然后将完整分辨率的 JPEG 图像保存到 test.jpg
# libcamera-still 是一个更复杂的静态图像捕捉应用程序,主要为了模拟 raspistill
libcamera-still -o test.jpg # 约显示 5 秒左右的预览窗口,然后图像保存到 test.jpg
# libcamera-vid 是一个视频拍摄应用程序。默认使用 Raspberry Pi 的硬件 H.264 编码器。
libcamera-vid -t 10000 -o test.h264 # 将 10 秒的视频保存到 test.h264
vlc test.h264 # 可以使用 vlc 播放生成的文件
# libcamera-raw 直接从传感器捕获原始帧的基本应用程序,不显示预览窗口。
libcamera-raw -t 2000 -o test.raw # 将 2 秒的原始帧数据保存到 test.raw
更详细信息可查看: libcamera 与 libcamera-apps
注:在有些主板上,使用 libcamera 报错,可以尝试执行以下命令
sudo raspi-config -> Advanced Options -> Glamor -> Yes(Enabled) -> Ok -> Finish -> Yes (Reboot)
Raspberry Pi OS buster 分支与 Ubuntu
在这些系统中默认使用 raspicam 相机子系统接口。在 Ubuntu 中摄像头接口默认是打开的。在 Raspberry Pi OS buster 分支中,需要执行以下命令打开摄像头接口
sudo raspi-config -> Interface Options -> Camera -> Yes -> OK -> Finish -> Yes (Reboot)
可以使用以下命令控制摄像头:
# raspistill 是一个运行预览窗口,然后获取高分辨率静止图像的应用程序。
raspistill -o cam.jpg # 大约显示 5 秒左右的预览窗口,然后图像保存到 cam.jpg
raspistill -vf -hf -o cam2.jpg # 垂直翻转和水平翻转
# raspivid 是一个视频拍摄应用程序。
raspivid -o vid.h264 # 将 5 秒的视频保存到 vid.h264
raspivid -o video.h264 -t 10000 # 录制 10 秒视频
raspivid -vf -hf -o video.h264 -t 10000 # 垂直翻转和水平翻转
更详细信息可查看: Raspicam 命令