Firefly开源社区

Firefly-RK3399 USB摄像头驱动及SimpleCV安装测试

201

积分

2

威望

0

贡献

技术达人

Rank: 2

积分
201
发表于 2017-9-8 11:31:07     
本帖最后由 hgl 于 2017-9-8 11:35 编辑

一、总体介绍

继上次开箱贴后,这次来分享一下USB摄像头的驱动及SimpleCV的安装及一些小的测试,虽然这些内容在我的前边几个帖子中做过详细的介绍,但考虑到作为一个完整的试用过程,我还是将这些作为试用的关联环节再分享一下,而且在这个帖子中,也加了一些新的东西,包括之前遇到的一些问题的解决方法,一些新功能的介绍以及更多的测试内容。

二、USB摄像头驱动

FireFly-RK3399这块板子搭载的摄像头驱动比较多,有两个MIPI-CSI、一个DVP的摄像头接口,此外还支持USB摄像头,功能比较强大,官方支持的摄像头列表如下ː
13M:OV13850/IMX214-0AQH5
8M:OV8825/OV8820/OV8858-Z(R1A)/OV8858-R2A
5M:OV5648/OV5640
2M:OV2680

由于我手头有一个ov0706摄像头,支持的是串口数据传输,还有一个ov7670,支持的是SCCB总线,都不在上述支持的列表里,只能使用另一个USB摄像头了,后边如果有时间的话,看能不能自己写一个驱动程序将这几个摄像头都用起来。
由于后边用USB摄像头进行开发,现在就只先说说USB摄像头的驱动吧。

1.拍照
    安装软件包:sudo apt-get install fswebcam
    抓取图片:fswebcam –r 640x480test.jpg  
    其中640x480是图片的分辨率,test.jpg即为抓取后保存的图片。
    效果如图:
     

2.拍摄视频
   安装软件包:sudo apt-get install libav-tools
   拍摄视频:avconv -f video4linux2 –r 7–s 640x480 –i video.avi  
   参数7是设置的拍摄时间,640x480是图像分辨率,video.avi即为保存的视频文件。
   播放视频:omxplayer –o hdmi video.avi
   即通过HDMI输出播放video.avi视频。
以上就是USB摄像头的简单使用,由于USB接口已普遍在电子设备上使用,所以USB摄像头使用起来还是挺方便和实用的。

三、SimpleCV的安装的测试

1.简单介绍:
SimpleCV是一个开源框架,使用Python语言进行计算机视觉及图像的开发,它封装了功能强大的计算机视觉库OpenCV,使使用者无需了解位深、文件格式、颜色空间、缓冲区管理等内容,简化了对这些库的使用,使开发者更能专注于应用的开发,但这并不意味着使用者就不需要掌握数字图像处理的知识与内容了,只有学习过数字图像处理与图像通信或了解过相关知识后,我们对其中的一些功能才会有本质上的认识,比如图像信号的一些常用的变换,图像增强中的灰度级修正、同态增晰、锐化、几何校正等,以及图像复原、图像分割、图像重建以及图像编码等等,虽然我们不一定自己去编写代码实现这些算法,但我们知道这些知识后用别人写好的库去实现这些功能后,我们会对它有更深的理解。这里我们以实现功能为目标,选择用起来更方便的SimpleCV来开发,当然如果需要,也可以去使用OpenCV去开发。这里贴一下官网网址:http://simplecv.org/。有兴趣的可以去看看。

2.SimpleCV安装

下面说说SimpleCV的安装,
(1)在安装之前,先进行一下软件的更新:
   在终端输入如下指令:
   $ sudoapt-get update
   $ sudoapt-get upgrade

(2)等更新完成后,就可进行下一步安装Python-opencv了:
输入:sudo apt-get install ipython python-opencv python-pygame python-scipy python-numpy python-pip   
就可以安装包括python、opencv等在内的相关函数库,这里要注意一下,ipython和python-pygame比较特殊,有的教程里边可能没有在命令里写着两个,已然可以运行,但有的就不行,一般前者可能在32位的机器上跑,而前边几个软件包里以集成有相关功能,后者一般是在64位的机器上跑,集成的软件包不兼容,导致出现缺少模块组件的错误,为了保险,在64位机器上跑,最好都下载安装一遍。

(3)下载和安装SimpleCV
我们可以通过pip到GitHub上下载源程序,输入如下命令:

(4)测试SimpleCV是否安装成功,一种方法可以直接在Python终端下测试,   
输入:
   $ python
   >>>import SimpleCV  
  如果没有错误,不会有任何提示,有错误的话,会给出相应提示。
  退出时输入:
  >>>exit()
  结果如图 :
   

另一种方法是直接输入simplecv进入simplecv的终端,如果安装没有错误,此时就会显示出SimpleCV的版本信息,命令提示,用法及一些示例,如图:
   
   

(5)接下来就可以编写自己的Python程序实现所想要实现的功能了,这里先以显示一张图片进行测试,
   程序如下:
   

保存好,输入如下命令运行:$ python displaytest.py
结果如图:
   

然后在以一个示例程序来进行测试,这里以例程号为28的一个图像捕获实验来测试,运行结果如图:

到此SimpleCV的安装及简单测试就完成了。

回复

使用道具 举报

52

积分

0

威望

0

贡献

技术小白

积分
52
发表于 2017-10-11 20:35:27     
学习了
回复

使用道具 举报

29

积分

0

威望

0

贡献

游客

积分
29
发表于 2018-3-9 15:38:50     
顶一下,学习了
回复

使用道具 举报

59

积分

0

威望

0

贡献

游客

积分
59
发表于 2018-3-21 18:15:12     
謝謝樓主的分享,想跟您請教下,omxplayer是crosscompile到ubuntu的嗎?
回复

使用道具 举报

113

积分

0

威望

0

贡献

技术小白

积分
113
发表于 2018-6-4 11:17:02     
已收藏,最近正在搞这个
回复

使用道具 举报

33

积分

0

威望

0

贡献

技术小白

积分
33
发表于 2018-8-23 14:57:19     
厉害,学习了!
回复

使用道具 举报

36

积分

0

威望

0

贡献

技术小白

积分
36
发表于 2018-10-5 14:50:46     
支持一下!!!!
回复

使用道具 举报

39

积分

0

威望

0

贡献

技术小白

积分
39
发表于 2020-9-18 21:05:01     
弱弱的请教一下,这个是安卓系统还是Ubuntu
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表