Firefly开源社区

打印 上一主题 下一主题

[硬件交流] AIO-3399ProC板子的官方Ubuntu固件有没有自带Firefly工业级USB摄像头驱动?

73

积分

0

威望

0

贡献

技术小白

积分
73

AIO-3399ProC板子的官方Ubuntu固件有没有自带Firefly工业级USB摄像头驱动?

发表于 2020-5-19 15:50:06      浏览:3814 | 回复:7        打印      只看该作者   [复制链接] 楼主
本人板子AIO-3399ProC,编程环境是Ubuntu,做算法移植工作,用的是官方的固件包(5.11吧好像是),并且购置了Firefly官方的工业级500M摄像头。

买回来后发现在python3+cv2环境下不能通过cv2.VideoCapture()读取摄像头画面(错误说不太清,有时候是说读取的画面不满足长宽>0,有时候是Can't open camera by index,有时候是Unable to stop the stream: Invalid arguement),不能通过cheese(Ubuntu软件,18.04LTS自带)读取摄像头画面,不能通过官方固件自带的Camera检测程序检测出来(按1选择USB摄像头直接中断)

上述问题已经反复查看各大论坛大神经验,基本都没啥用,才反应过来感觉是驱动的问题

所以就请问这个板子的官方固件里有没有这个摄像头的驱动?如果没有怎么处理这个问题才好?
回复

使用道具 举报

781

积分

2

威望

4

贡献

技术大神

Rank: 3Rank: 3

积分
781
发表于 2020-5-19 16:59:04        只看该作者  沙发
https://store.t-firefly.com/goods.php?id=76
是上面这款吗? 官方测试没有异常。
官方固件自带的Camera检测程序,依赖于opencv。 你直接运行uvc_opencv看看是不是环境的问题。
使用 apt install libopencv-contrib3.2安装opencv。
回复

使用道具 举报

73

积分

0

威望

0

贡献

技术小白

积分
73
发表于 2020-5-20 13:09:36        只看该作者  板凳
[ 本帖最后由 刘钧文 于 2020-5-20 17:12 编辑 ]\n\n感谢回复。确实是这款摄像头。今天问题已经解决。这款摄像头只能接在USB2.0上,接USB3.0上不管用。我为这事就折腾了3天……
回复

使用道具 举报

73

积分

0

威望

0

贡献

技术小白

积分
73
发表于 2020-5-20 20:36:40        只看该作者  地板
penguin 发表于 2020-5-19 16:59
https://store.t-firefly.com/goods.php?id=76
是上面这款吗? 官方测试没有异常。
官方固件自带的Camer ...

不好意思还需要请教您个问题
现在通过插USB2.0接口已经可以通过cheese软件打开摄像头
但是在ls /dev/video*指令下,通过拔插摄像头确定摄像头的设备名称为video10和video11,但是10和11在cv2.VideoCapture()里显示参数错误,从-1到12都不能调出摄像头画面,uvc_opencv X指令也是一样的结果,请问这是设备或者硬件的问题,还是说参数限制的问题呢?应该怎么解决呢?
回复

使用道具 举报

899

积分

0

威望

6

贡献

技术大神

Rank: 8Rank: 8

积分
899
发表于 2020-5-21 18:05:31        只看该作者  5#
你好,你的问题我已经发现了。因为我还有一个一个AIO-3399ProC还有一个问题待我去测试,应该明天中午2点前我会更新固件。如果你急可以留下你的邮箱联系方式,我发送个内核你更新。
回复

使用道具 举报

73

积分

0

威望

0

贡献

技术小白

积分
73
发表于 2020-5-21 18:53:21        只看该作者  6#
895816513 发表于 2020-5-21 18:05
你好,你的问题我已经发现了。因为我还有一个一个AIO-3399ProC还有一个问题待我去测试,应该明天中午2点前 ...

感谢关注
今天发现了问题并且初步解决
问题在于opencv源代码只支持最多8个摄像头,参数0~7(另外包括-1),而AIO3399ProC板子在安装官方Ubuntu固件后/dev/video居然就有了10个(我也不知道哪来的这么多摄像头接口,0~9)
解决方法是:在opencv源码modules/videoio/src下的cap_v4l.cpp中把#define MAX_CAMERAS 8这个参数改成12(或以上)然后重新编译安装opencv,这样摄像头的video10和video11就可以用了,我读取摄像头画面指令是cap = cv2.VideoCapture(10),(还是11来着?忘了)
但是这样做是没法用自带的camera程序或uvc_opencv来读取摄像头画面的,因为这两个用的是opencv3.2吧,前者显示我没有安装opencv(我用的opencv+contrib3.4.10)
回复

使用道具 举报

899

积分

0

威望

6

贡献

技术大神

Rank: 8Rank: 8

积分
899
发表于 2020-5-25 14:13:48        只看该作者  7#
刘钧文 发表于 2020-5-21 18:53
感谢关注
今天发现了问题并且初步解决
问题在于opencv源代码只支持最多8个摄像头,参数0~7(另外包括-1 ...

我现在上传一个AIO-RK3399PROC-UBUNTU18.04-GPT-20200525-1016.img.7z,这样不接mipi摄像头就不会有这么多video,你看看
回复

使用道具 举报

73

积分

0

威望

0

贡献

技术小白

积分
73
发表于 2020-5-25 18:57:21        只看该作者  8#
895816513 发表于 2020-5-25 14:13
我现在上传一个AIO-RK3399PROC-UBUNTU18.04-GPT-20200525-1016.img.7z,这样不接mipi摄像头就不会有这么 ...

非常感谢{:4_91:}
回复

使用道具 举报

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

本版积分规则

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