Raspberry Pi 摄像头模块是 Pi 的绝佳配件——它质量上乘,可以拍摄静态照片和录制全高清 (1080p) 视频。最初的 500 万像素摄像头模块于 2013 年发布,而新的 800 万像素版本于今年 4 月发布。这两个版本都与所有 Raspberry Pi 型号兼容。还有两种变体——常规可见光摄像头和红外摄像头——均售价 25 美元。
摄像头模块规格很高,质量比基本的 USB 网络摄像头好得多。其功能丰富的固件充分利用了 Raspberry Pi SoC 中的 VideoCore GPU 的强大功能,允许以 30fps 录制 1080p 视频、以 60fps 录制 720p 视频以及以 90fps 录制 VGA 分辨率 (640x480) 视频——非常适合慢动作回放。
开始入门
首先,在 Pi 关闭电源的情况下,您需要将摄像头模块连接到 Raspberry Pi 的摄像头端口,然后启动 Pi 并确保软件已启用。在您的 Raspberry Pi 上找到摄像头端口并连接摄像头
Dave Jones,CC BY-SA
确保在 Raspberry Pi 配置工具中启用摄像头软件
通过打开终端窗口并输入 raspistill -k
来测试您的摄像头。这将会在监视器上显示摄像头预览。如果您通过 SSH 或 VNC 连接,这将显示在 Pi 的监视器上,而不是您的监视器上。按 Ctrl + C 退出预览。
Python
虽然您可以使用命令行界面 raspistill
控制摄像头,但使用 Python picamera 模块要容易得多,并且允许您实时动态更改摄像头控件——非常适合项目。
打开 Python 3 编辑器 IDLE,创建一个新文件并键入以下代码
from picamera import PiCamera from time import sleep camera = PiCamera() camera.start_preview() sleep(3) camera.capture('/home/pi/Desktop/image.jpg') camera.stop_preview()
现在运行代码,它应该显示三秒钟的预览,然后拍摄照片。照片将保存在您的桌面上,您应该立即看到一个带有缩略图的图标。双击桌面上的图标即可查看照片。
您可以以各种方式操作摄像头对象。您可以使用介于 0 到 100 之间的值来更改亮度和对比度: camera.brightness = 70 camera.contrast = 40
您可以使用以下代码向图像添加文本: camera.
annotate_text = “Hello world"
您可以使用以下代码更改图像效果
camera.image_effect = “colorswap"
还可以尝试 sketch、negative 和 emboss 等效果。效果列表在 camera.
中提供
IMAGE_EFFECTS
,您可以循环遍历它,这是一个很棒的演示
camera.start_preview() for effect in camera.IMAGE_EFFECTS: camera.image_effect = effect camera.annotate_text = effect sleep(5) camera.stop_preview()
您还可以更改更多属性,例如分辨率、变焦、ISO、白平衡模式和曝光模式。有关更多详细信息,请参阅 picamera 文档。
视频
录制视频同样容易——只需使用方法 start_recording()
和 stop_recording()
camera.start_preview() camera.start_recording('/home/pi/video.h264') sleep(10) camera.stop_recording() camera.stop_preview()
然后使用 omxplayer 回放。请注意,视频的回放帧速率可能高于录制时的帧速率。
红外
Raspberry Pi 红外摄像头 (Pi NoIR) 的特别之处在于,人们购买常规摄像头并将其拆开以移除红外滤镜(效果参差不齐),因此基金会决定生产一种没有红外滤镜的特殊摄像头。API 的工作方式完全相同,在可见光下,图片看起来大多正常,但它们也可以看到红外光,从而可以在夜间拍摄和录制。
这非常适合野生动物摄像头,例如 Naturebytes 套件,红外鸟箱等项目,以及各种安全摄像头项目。红外摄像头甚至已被用于监测南极洲的企鹅。
该摄像头还可用于监测绿色植物的健康状况。
Pi Zero
当去年宣布 5 美元的 Pi Zero 时,由于其最基本和简约的性质,它没有配备摄像头连接器;然而,上个月宣布了 Zero 的新版本,该版本添加了一个摄像头端口。
该连接器比常规连接器小。事实上,计算模块上使用了相同的连接器,但可以使用电缆连接摄像头。可见光和红外两种类型以及 V1 和 V2 两种版本都适用于新的 Pi Zero。
更多想法
关于摄像头模块的用途还有很多内容可以阅读,为什么不与一些 GPIO 结合使用以进行更多物理计算项目呢?
- 请参阅 picamera 文档
- 完成 Picamera 入门资源。
- 尝试将 GPIO Zero 与 Picamera 结合使用(添加按钮或运动传感器)。
- 构建一个带有传感器和摄像头的机器人。
- 使用 Twitter API 将您的照片发布到 Twitter。
- 制作一个红外鸟箱。另请查看 Naturebytes 野生动物摄像头套件。
- 制作一个家长探测器。
- 设置为延时摄影或定格动画。
3 条评论