树莓派摄像头的简单实用
安装摄像头
首先确保树莓派的系统为较新的版本,并且开启摄像头功能。输入命令:sudo raspi-config 并勾选第5个的enable camera 功能。如下图:
物理安装摄像头到树莓派上,这个感觉很容易的样子,不行的话看看这个视频教程吧:视频教你如何安装摄像头
捕获一张图片:raspistill
raspistill命令是树莓派提供的捕获图像的工具,输入下面命令获取一张图像保存到image.jpg
raspistill -o image.jpg -rot 180
参数o是输出到文件的意思;参数rot是旋转图片180度,因为摄像头我是让他排线向上摆放的,所以需要旋转一下。命令输入后,会发现摄像头上的led灯亮,大概持续7秒钟左右熄灭,同时命令执行完毕。查看图片,发觉成像非常清晰,比起usb摄像头好很多,这也是比较贵的原因之一吧。
这时候就有一个疑问了,为什么拍张照片要7秒钟呢?
增加-v参数,查看调试信息:raspistill -o image.jpg -rot 80 -v
可以看到里面有一行信息:Time Delay:5000 。再查看命令文档,发现默认-t参数等于5000,即会拍照前等待5秒钟。
那么提高速度把-t参数设置小一些不就快了,确实如此,不过在测试的时候发现,光线充足时没什么等待时间长短没什么区别,在光线比较差的时候,较短的等待时间画面偏黄。
raspistill常用的参数
- -v:调试信息查看。
- -w:图像宽度
- -h:图像高度
- -rot:图像旋转角度,只支持 0、90、180、270 度
- -o:图像输出地址,例如image.jpg,如果文件名为“-”,将输出发送至标准输出设备
- -t:获取图像前等待时间,默认为5000,即5秒
- -tl:多久执行一次图像抓取。
例如:
raspistill -o image%d.jpg -rot 180 -w 1024 -h 768 -t 20000 -tl 5000 -v
这个命令的意思是,截取一张宽1024px,高768px,旋转180度的图片,抓取的总时长为20秒,并且每5秒抓取一张,保存的文件名为image1.jpg,image2.jpg以此类推。
常用命令
1 常用命令:
2 # 两秒钟(时间单位为毫秒)延迟后拍摄一张照片,并保存为 image.jpg
3 raspistill -t 2000 -o image.jpg
4
5 # 拍摄一张自定义大小的照片。
6 raspistill -t 2000 -o image.jpg -w 640 -h 480
7
8 # 降低图像质量,减小文件尺寸
9 raspistill -t 2000 -o image.jpg -q 5
10
11 # 强制使预览窗口出现在坐标为 100,100 的位置,并且尺寸为宽 300 和高 200 像素。
12 raspistill -t 2000 -o image.jpg -p 100,100,300,200
13
14 # 禁用预览窗口
15 raspistill -t 2000 -o image.jpg -n
16
17 # 将图像保存为 PNG 文件(无损压缩格式,但是要比 JPEG 速度慢)。注意,当选择图像编码时,文件扩展名将被忽略。
18 raspistill -t 2000 -o image.png –e png
19
20 # 向 JPEG 文件中添加一些 EXIF 信息。该命令将会把作者名称标签设置为 Dreamcolor,GPS 海拔高度为 123.5米。
21 raspistill -t 2000 -o image.jpg -x IFD0.Artist=Dreamcolor -x GPS.GPSAltitude=1235/10
22
23 # 设置浮雕风格图像特效
24 raspistill -t 2000 -o image.jpg -ifx emboss
25
26 # 设置 YUV 图像的 U 和 V 通道为指定的值(128:128 为黑白图像)
27 raspistill -t 2000 -o image.jpg -cfx 128:128
28
29 # 仅显示两秒钟预览图像,而不对图像进行保存。
30 raspistill -t 2000
31
32 # 间隔获取图片,在 10 分钟(10 分钟 = 600000 毫秒)的时间里,每 10 秒获取一张,并且命名为 image_number_1_today.jpg,image_number_2_today.jpg... 的形式。
33 raspistill -t 600000 -tl 10000 -o image_num_%d_today.jpg
34
35 # 获取一张照片并发送至标准输出设备
36 raspistill -t 2000 -o -
37
38 # 获取一张照片并保存为一个文件
39 raspistill -t 2000 -o - > my_file.jpg
参看: