您的位置:首页 > 其它

8、新手入手树莓派教程--csi摄像头的安装

2017-12-06 11:04 447 查看
知识普及:


CSI

 


(相机串行接口)


COMS Sensor Interface:

CSI接口通常从COMS Sensor,Video Encoder和其它视频输出设备收集数据。

中文名
Cmos传感摄像头接口
外文名
COMS Sensor Interface:

Camera Serial Interface,相机串行接口。CSI接口与DSI接口同属一门,都是MIPI(移动产业处理器接口联盟)制定的一种接口规范。


环境:

硬件:树莓派三代B型, 5MP Camera Board Module

软件:Raspbian

安装树莓派摄像头模块
1、找到 CSI 接口(CSI接口在以太网接口旁边),掀起深色胶带。
2、拉起 CSI 接口挡板。
3、拿起你的摄像头模块,将贴在镜头上的塑料保护膜撕掉。确保黄色部分的PCB(有字的一面)是安装完美的(可以轻轻按一下黄色的部分来保证安装完美)。
4、将排线插入CSI接口。记住,有蓝色胶带的一面应该面向以太网接口方向。同样,这时也确认一下排线安装好了之后,将挡板拉下。

        


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

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


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

$ sudo raspi-config


 

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


       


打开csi摄像头传感器:

树莓派原装摄像头插入后在raspi-config中打开即可使用,但不会有/dev/video0节点

raspistill命令是树莓派提供的捕获图像的工具,输入下面命令获取一张图像保存到image.jpg

[plain] view
plain copy

<span style="font-size:18px;">raspistill -o image.jpg</span>  

raspistill常用参数

-v:调试信息查看。

-w:图像宽度

-h:图像高度

-rot:图像旋转角度,只支持 0、90、180、270 度

-o:图像输出地址,例如image.jpg,如果文件名为“-”,将输出发送至标准输出设备

-t:获取图像前等待时间,默认为5000,即5秒

-tl:多久执行一次图像抓取。

[plain] view
plain copy

<span style="font-size:18px;">raspistill -o image%d.jpg -rot 180 -w 1024 -h 768 -t 20000 -tl 5000 -v</span>  

这个命令的意思是,截取一张宽1024px,高768px,旋转180度的图片,抓取的总时长为20秒,并且每5秒抓取一张,保存的文件名为image1.jpg,image2.jpg以此类推。

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

[plain] view
plain copy

raspivid -o mykeychain.h264  

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

[plain] view
plain copy

raspivid -o mykeychain.h264 -t 10000  

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

[plain] view
plain copy

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

树莓派中的camera module是放在/boot/目录下以固件的形式加载的,不是一个标准的v4l2的摄像头ko驱动,所以加载起来之后会找不到/dev/video0的设备节点。这是因为这个驱动是在底层的,v4l2这个驱动框架还没有加载,所以要在/etc/modules里面添加一行bcm2835-v4l2(是4L2,不是412,小写的L),这句话意思是在系统启动之后会加载bcm2835-v4l2这个模块,这个模块在树莓派系统的/lib/modules/xxx/xxx/xxx下面,添加之后重启系统,就会在/dev/下面发现video0设备节点了。

[plain] view
plain copy

bcm2835-v4l2  

此时可以使用mplayer来看摄像头实时图像了。

[plain] view
plain copy

sudo apt-get install mplayer  

[plain] view
plain copy

sudo mplayer tv://  

一个wiki的地址:https://wiki.archlinux.org/index.php/Raspberry_Pi,这里讲了很多关于树莓派的问题。

csi摄像头传感器节点设置

 网上很多opencv打开摄像头的实例都是基于USB 摄像头的,很少介绍原装CSI摄像头的,即使有也配置起来很麻烦,需要安装V4l驱动之类的,但是树莓派官方自带的raspistill却

能够用起来,比较奇怪,后来网上找办法,终于有人解决了这个问题。解决办法如下:

打开/etc/下面的modules-load.d/rpi-camera.conf

在最后添加一行 bcm2835-v4l2

意思是在系统启动之后加载bcm2835-v4l2这个模块

然后重启,会发现/dev/下面发现video0设备节点,opencv就能正常调用了

链接:

1、基于树莓派的专用摄像头实时监控

2、 openCV打开树莓派原装CSI摄像头

3、树莓派3 CSI接口摄像头使用问题

4、树莓派摄像头模块应用程序文档翻译[转]

5、视频演示如何给树莓派安装摄像头模块
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: