树莓派摄像头

转:http://www.open-open.com/lib/view/open1338995506281.html  html5拍照

http://my.oschina.net/lixinspace/blog/395525

http://linux.cn/article-3650-1.html

http://www.rs-online.com/designspark/electronics/chn/blog/chi-pi-cam-setup-tutorial

http://www.ithao123.cn/content-1549646.html

ubuntu先执行,树莓派后执行

root@yanisyu-Aspire-E1-571G:/home/yanisyu# nc -l 5001 | mplayer -fps 31 -cache 1024 -

root@raspberrypi:/var/www# raspivid -t 999999 -rot 90 -o - | nc 192.168.2.110 5001 //ubuntu的ip

raspistill -rot 180 -t 2000 -o image.jpg -ifx emboss

树莓派官方推出的摄像头Camera Module,能够拍摄500万像素图片和录制1080p的视频,使用的是树莓派板子上的csi接口。

在淘宝上以118元买了一个,价格比起usb摄像头是贵了不少,下面来测试一下。

安装摄像头

首先确保树莓派的系统为较新的版本,并且开启摄像头功能。输入命令: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以此类推。

树莓派摄像头模块(Pi Cam)发售于2013年5月。其第一个发布版本配备了500万像素的传感器,通过排线链接树莓派上的CSI接口。而Pi Cam的第二个发布版本——也被叫做Pi NoIR中,配备了相同的传感器,但没有红外线过滤装置。因此第二版的摄像头模块就像安全监控摄像机一样,可以观测到近红外线的波长(700 - 1000 nm),不过当然同时也就牺牲了一定的显色性。

本文将会展示如何在树莓派上安装摄像头模块。 我们将使用第一版摄像头模块来演示。在安装完摄像头模块之后,你将会使用三个应用程序来访问这个模块:raspistill, raspiyuv 和raspivid。其中前两个应用用来捕捉图像,第三个应用来捕捉视频。raspistill 工具生成标准的图片文件,例如 .jpg 图像,而 raspiyuv 可以通过摄像头生成未处理的 raw 图像文件。

安装树莓派摄像头模块

按照以下步骤来将树莓派摄像头模块连接搭配树莓派:

  1. 找到 CSI 接口(CSI接口在以太网接口旁边),掀起深色胶带。

  2. 拉起 CSI 接口挡板。

  3. 拿起你的摄像头模块,将贴在镜头上的塑料保护膜撕掉。确保黄色部分的PCB(有字的一面)是安装完美的(可以轻轻按一下黄色的部分来保证安装完美)。

  4. 将排线插入CSI接口。记住,有蓝色胶带的一面应该面向以太网接口方向。同样,这时也确认一下排线安装好了之后,将挡板拉下。

好了,现在你的 Pi Cam 已经准备就绪,可以拍摄照片或视频了。

在树莓派上启用摄像头模块

在安装完摄像头模块之后,首先要确认你已经升级了树莓派系统并应用了最新的固件。可以输入以下命令来操作:

$ sudo apt-get update $ sudo apt-get upgrade 

运行树莓派配置工具来激活摄像头模块:

$ sudo raspi-config 

移动光标至菜单中的 "Enable Camera(启用摄像头)",将其设为Enable(启用状态)。完成之后重启树莓派。

安装完摄像头模块后的完成照:

通过摄像头模块拍照

在重启完树莓派后,我们就可以使用Pi Cam了。要用它来拍摄照片的话,可以从命令行运行raspistill:

$ raspistill -o keychain.jpg -t 2000 

这句命令将在 2000ms 后拍摄一张照片,然后保存为 keychain.jpg。下面就是一张由 Pi Cam 拍摄的我的小熊公仔钥匙链。

raspiyuv 工具用法差不多,只不过拍摄得到的是一张未处理过的raw图像。

通过摄像头模块拍视频

想要用摄像头模块拍一段视频的话,可以从命令行运行 raspivid 工具。下面这句命令会按照默认配置(长度5秒,分辨率1920x1080,比特率 17Mbps)拍摄一段视频。

$ raspivid -o mykeychain.h264 

如果你想改变拍摄时长,只要通过 "-t" 选项来设置你想要的长度就行了(单位是毫秒)。

$ raspivid -o mykeychain.h264 -t 10000 

使用 "-w" 和 "-h" 选项将分辨率降为 1280x720...

$ raspivid -o mykeychain.h264 -t 10000 -w 1280 -h 720 

raspivid 的输出是一段未压缩的 H.264 视频流,而且这段视频不含声音。为了能被通常的视频播放器所播放,这个 raw 的 H.264 视频还需要转换。可以使用 gpac 包中所带有的 MP4Box 应用。

在 Raspbian 上安装 gpac,输入命令:

$ sudo apt-get install -y gpac 

然后将这段 raw 的 H.264 格式的视频流转换为每秒30帧的 .mp4 格式视频:

$ MP4Box -fps 30 -add keychain.h264 keychain.mp4 

视频长度为10秒,使用默认分辨率以及比特率。下面是一段通过 Pi Camera 拍摄的一段实例视频。

注:youtube视频地址

http://www.youtube.com/embed/3uyR2AVVwAU?version=3&rel=1&fs=1&showsearch=0&showinfo=1&iv_load_policy=1&wmode=transparent

如果想要获取 raspistill, raspiyuv 和 raspivid 的完整命令行选项,不加任何选项直接运行以上命令即可。


Kristophorus Hadiono

Kristophorus Hadiono是一名 Linux 爱好者,并且是印度尼西亚一所民办高等学府的教师。他在日常生活中使用 Linux,也在给学生们教学的时候使用。他现在仍靠着政府的奖学金,在泰国曼谷的一所民办大学继续着学业。

    A+
发布日期:2015年04月21日  所属分类:未分类

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: