Home

cubie.cc CubieBoard中文论坛

 找回密码
 立即注册
搜索
热搜: unable
查看: 8005|回复: 10

让CubieBoard连接摄像头(Ubuntu系统)

[复制链接]

109

主题

10

好友

9032

积分

版主

Rank: 7Rank: 7Rank: 7

贡献
1760
金钱
2694
威望
1784
买家信用
卖家信用
积分
9032
发表于 2013-4-14 22:29:51 |显示全部楼层
本帖最后由 tll 于 2013-7-14 08:21 编辑

效果:

论坛上已经有人发了(http://cn.cubieboard.org/forum.php?mod=viewthread&tid=283),不过不是在Ubuntu上,命令也不同,上面写的yum改apt-get找不到包
咋办?!
系统最好使用cubie官方的1.1版本系统,地址dl.cubieboard.com(第三方固件需要安装python-numpy,用apt-get)
其实弄这个不难,首先运行:
  1. sudo apt-get install python-opencv -y
复制代码
等待安装完成,插入usb摄像头
接着,复制camera.py文件到根目录
下载: camera.zip (376 Bytes, 下载次数: 93)
确定/dev/video0是你的摄像头,如果你的摄像头是video1之类的,请修改camera.py,把

  1. capture = cv.CaptureFromCAM(0)
复制代码
改成

  1. capture = cv.CaptureFromCAM(1)
复制代码
然后
  1. chmod +x /camera.py
  2. /camera.py
复制代码
提示:上面这个命令不要在SSH或TTL里运行,因为这个没屏幕
然后你会发现一个叫camera的窗口跳出来了~~

注释:有人说用这个会卡,CPU占用率飙升,我告诉大家原因,不是软件不好,而是循环
我们打开py文件,一段代码如下:

  1. while True:
  2.     img = cv.QueryFrame(capture)
  3.     cv.ShowImage("camera", img)
复制代码
这个py用while循环去获取图片,而while循环去做这种动作必定会造成卡的现象,所以大家可以换成定时之类的,如0.5秒一次,这样就好了

现在摄像头的图像就显示到了板子上,唯一的缺点就是usb口太少了,一下只能插摄像头+键盘或鼠标
大家可以买集线器,1对4的,这样就好多了
已有 1 人评分威望 金钱 贡献 收起 理由
yzbx + 5 + 5 + 5 很给力!

总评分: 威望 + 5  金钱 + 5  贡献 + 5   查看全部评分

我可能一年内都无法再登录这个论坛了
回复

使用道具 举报

2

主题

0

好友

517

积分

高级会员

Rank: 4

贡献
105
金钱
182
威望
105
买家信用
卖家信用
积分
517
发表于 2013-5-21 11:05:52 |显示全部楼层
楼主你好!我按照你的方法在cubieboard上做了一遍,我的系统是按照《从零构建CubieBoard Debian Linux》的文章弄的debian系统,但是运行出现了Gtk-WARNING **: cannot open display:错误?请问楼主遇到过没啊??
回复

使用道具 举报

29

主题

6

好友

1万

积分

版主

Rank: 7Rank: 7Rank: 7

贡献
1670
金钱
5079
威望
1670
买家信用
卖家信用
积分
10476
发表于 2013-5-21 11:10:32 |显示全部楼层
这个要在X下面跑的
回复

使用道具 举报

2

主题

1

好友

1214

积分

金牌会员

Rank: 6Rank: 6

贡献
231
金钱
466
威望
231
买家信用
卖家信用
积分
1214
发表于 2013-8-16 18:01:02 |显示全部楼层
camera.py 有个地方缩进有误,在16行“break”
正确的是
  1. if cv.WaitKey(10) == 27:
  2.                 print "Exit"
  3.                 break

  4. cv.DestroyAllWindows()
复制代码
回复

使用道具 举报

109

主题

10

好友

9032

积分

版主

Rank: 7Rank: 7Rank: 7

贡献
1760
金钱
2694
威望
1784
买家信用
卖家信用
积分
9032
发表于 2013-8-17 12:28:15 |显示全部楼层
darson 发表于 2013-8-16 18:01
camera.py 有个地方缩进有误,在16行“break”
正确的是

不知道是不是有,cv好久没看了
我可能一年内都无法再登录这个论坛了
回复

使用道具 举报

14

主题

0

好友

1858

积分

金牌会员

Rank: 6Rank: 6

贡献
370
金钱
642
威望
365
买家信用
卖家信用
积分
1858
发表于 2013-8-21 14:33:59 |显示全部楼层
本帖最后由 yzbx 于 2013-8-21 14:36 编辑

确实有缩进有点小问题,没学过python,但前后再次用控制变量法试出了正确的代码。
  1. #!/usr/bin/python

  2. import cv2.cv as cv
  3. import time
  4. print "Camera Test by TLL"
  5. print "Please use this program on your Terminal Emulator,not SSH or TLL"
  6. cv.NamedWindow("camera", 1)

  7. capture = cv.CaptureFromCAM(0)

  8. while True:
  9.     img = cv.QueryFrame(capture)
  10.     cv.ShowImage("camera", img)
  11.     if cv.WaitKey(10) == 27:
  12.             print "Exit"
  13.             break
  14. cv.DestroyAllWindows();
复制代码
记得上次我不是这样改的,真后悔当初删了,害得现在要重试。
上传格式出了问题。还是上传文件好。
百度云链接:http://pan.baidu.com/share/link?shareid=1500949147&uk=4263399593

camera.py.zip

373 Bytes, 下载次数: 6, 下载积分: 金钱 -1

回复

使用道具 举报

3

主题

0

好友

695

积分

高级会员

Rank: 4

贡献
137
金钱
263
威望
137
买家信用
卖家信用
积分
695
发表于 2013-8-23 17:08:48 |显示全部楼层
cb2采集到的图像能不能传送给电脑显示呢?
回复

使用道具 举报

109

主题

10

好友

9032

积分

版主

Rank: 7Rank: 7Rank: 7

贡献
1760
金钱
2694
威望
1784
买家信用
卖家信用
积分
9032
发表于 2013-8-23 19:06:48 |显示全部楼层
robby 发表于 2013-8-23 17:08
cb2采集到的图像能不能传送给电脑显示呢?

当然可以了,为什么不行
我可能一年内都无法再登录这个论坛了
回复

使用道具 举报

3

主题

0

好友

695

积分

高级会员

Rank: 4

贡献
137
金钱
263
威望
137
买家信用
卖家信用
积分
695
发表于 2013-8-24 12:18:08 |显示全部楼层
tll 发表于 2013-8-23 19:06
当然可以了,为什么不行

求大神出新帖教教我
回复

使用道具 举报

0

主题

2

好友

828

积分

高级会员

Rank: 4

贡献
162
金钱
319
威望
162
买家信用
卖家信用
积分
828
发表于 2014-6-7 17:04:12 |显示全部楼层
为何我的dev下没有video?我是Ubuntu的
回复

使用道具 举报

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

Archiver|手机版|邮件群发|www.cubie.cc---深刻的嵌入式技术和应用讨论中文社区 ( 粤ICP备13051116号-1  

GMT+8, 2017-2-23 19:56 , Processed in 0.059708 second(s), 16 queries , Apc On.

Powered by Discuz! X2.5 Licensed

© 2001-2012 Comsenz Inc. | Style by Coxxs

回顶部