让CubieBoard连接摄像头(Ubuntu系统)
本帖最后由 tll 于 2013-7-14 08:21 编辑效果:
http://player.youku.com/player.php/sid/XNTQyODU5NTAw/v.swf
论坛上已经有人发了(http://cn.cubieboard.org/forum.php?mod=viewthread&tid=283),不过不是在Ubuntu上,命令也不同,上面写的yum改apt-get找不到包
咋办?!
系统最好使用cubie官方的1.1版本系统,地址dl.cubieboard.com(第三方固件需要安装python-numpy,用apt-get)
其实弄这个不难,首先运行:sudo apt-get install python-opencv -y等待安装完成,插入usb摄像头
接着,复制camera.py文件到根目录
下载:
确定/dev/video0是你的摄像头,如果你的摄像头是video1之类的,请修改camera.py,把
capture = cv.CaptureFromCAM(0)
改成
capture = cv.CaptureFromCAM(1)
然后chmod +x /camera.py
/camera.py
提示:上面这个命令不要在SSH或TTL里运行,因为这个没屏幕
然后你会发现一个叫camera的窗口跳出来了~~
注释:有人说用这个会卡,CPU占用率飙升,我告诉大家原因,不是软件不好,而是循环
我们打开py文件,一段代码如下:
while True:
img = cv.QueryFrame(capture)
cv.ShowImage("camera", img)
这个py用while循环去获取图片,而while循环去做这种动作必定会造成卡的现象,所以大家可以换成定时之类的,如0.5秒一次,这样就好了
现在摄像头的图像就显示到了板子上,唯一的缺点就是usb口太少了,一下只能插摄像头+键盘或鼠标
大家可以买集线器,1对4的,这样就好多了
楼主你好!我按照你的方法在cubieboard上做了一遍,我的系统是按照《从零构建CubieBoard Debian Linux》的文章弄的debian系统,但是运行出现了Gtk-WARNING **: cannot open display:错误?请问楼主遇到过没啊??
这个要在X下面跑的 camera.py 有个地方缩进有误,在16行“break”
正确的是if cv.WaitKey(10) == 27:
print "Exit"
break
cv.DestroyAllWindows()
darson 发表于 2013-8-16 18:01 static/image/common/back.gif
camera.py 有个地方缩进有误,在16行“break”
正确的是
不知道是不是有,cv好久没看了 本帖最后由 yzbx 于 2013-8-21 14:36 编辑
确实有缩进有点小问题,没学过python,但前后再次用控制变量法试出了正确的代码。#!/usr/bin/python
import cv2.cv as cv
import time
print "Camera Test by TLL"
print "Please use this program on your Terminal Emulator,not SSH or TLL"
cv.NamedWindow("camera", 1)
capture = cv.CaptureFromCAM(0)
while True:
img = cv.QueryFrame(capture)
cv.ShowImage("camera", img)
if cv.WaitKey(10) == 27:
print "Exit"
break
cv.DestroyAllWindows();记得上次我不是这样改的,真后悔当初删了,害得现在要重试。
上传格式出了问题。还是上传文件好。
百度云链接:http://pan.baidu.com/share/link?shareid=1500949147&uk=4263399593 cb2采集到的图像能不能传送给电脑显示呢?:P robby 发表于 2013-8-23 17:08 static/image/common/back.gif
cb2采集到的图像能不能传送给电脑显示呢?
当然可以了,为什么不行 tll 发表于 2013-8-23 19:06 static/image/common/back.gif
当然可以了,为什么不行
求大神出新帖教教我:lol 为何我的dev下没有video?我是Ubuntu的
页:
[1]
2