天嵌 ARM开发社区

 找回密码
 注册
查看: 13086|回复: 29

usb摄像头

[复制链接]
六斤太郎 发表于 2013-3-7 09:59:21 | 显示全部楼层 |阅读模式
本帖最后由 六斤太郎 于 2013-3-7 10:00 编辑

我用210开发板,用zc301的usb摄像头,用的是opencv2.0,在QT写如下代码:
void MyWidget::on_open_clicked()
{
   
    capture=cvCaptureFromCAM(3);

if (capture == NULL)
{         printf("No camera found!\n");
   }
}
当点击open按钮时,在
在dnw里显示:
[root@www 5]# ./5 -qws
s3cfb s3cfb: change blank mode
s3cfb s3cfb: [fb0] win map off
s3cfb s3cfb: [fb0] turn on

VIDIOC_REQBUFS: Device or resource busy
munmap: Invalid argument
munmap: Invalid argument
munmap: Invalid argument
munmap: Invalid argument
Unable to stop the stream.: Bad file descriptor
munmap: Invalid argument
munmap: Invalid argument
munmap: Invalid argument
munmap: Invalid argument
HIGHGUI ERROR: V4L: Pixel format of incoming image is unsupported by OpenCV
No camera found!
不知道这是为什么?
亚瑟王 发表于 2013-3-7 10:13:04 | 显示全部楼层
亲,你确定video3是usb摄像头的设备名吗?因为usb摄像头的驱动是标准V4L2的驱动,opencv中的也是标准的V4L2的程序,所以我比较怀疑设备名。
 楼主| 六斤太郎 发表于 2013-3-7 10:29:53 | 显示全部楼层
亚瑟王 发表于 2013-3-7 10:13
亲,你确定video3是usb摄像头的设备名吗?因为usb摄像头的驱动是标准V4L2的驱动,opencv中的也是标准的V4L2 ...

插上usb摄像头,在dnw里显示:
[root@www /]# usb 1-1.2: new full speed USB device using s5p-ehci and address 3
gspca: probing 0ac8:301b
zc3xx: probe 2wr ov vga 0x0000
zc3xx: probe sensor -> 0011
zc3xx: Find Sensor HV7131R(c)
input: zc3xx as /devices/platform/s5p-ehci/usb1/1-1/1-1.2/input/input6
gspca: video3 created

gspca: found int in endpoint: 0x82, buffer_len=8, interval=10
kernel BUG at arch/arm/mm/dma-mapping.c:409!
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c0004000
[00000000] *pgd=00000000
Internal error: Oops: 817 [#1] PREEMPT
last sysfs file: /sys/devices/platform/s5p-ehci/usb1/1-1/1-1.2/input/input6/event6/dev
Modules linked in: rt5370sta ds18b20 s5pv210_hdmi wm8960
CPU: 0    Not tainted  (2.6.35.7-EmbedSky #1)
PC is at __bug+0x20/0x2c
LR is at release_console_sem+0x1a8/0x210
应该是video3啊!
这是怎么回事呢?
安仔 发表于 2013-3-7 10:42:15 | 显示全部楼层
capture=cvCaptureFromCAM(3);改成capture=cvCaptureFromCAM(2)试试;



亚瑟王 发表于 2013-3-7 10:47:55 | 显示全部楼层
六斤太郎 发表于 2013-3-7 10:29
插上usb摄像头,在dnw里显示:
[root@www /]# usb 1-1.2: new full speed USB device using s5p-ehci an ...

亲,不知道你又做了什么事情导致出这个错误。我们这边在210上用opencv+USB摄像头是成功了的。
 楼主| 六斤太郎 发表于 2013-3-7 10:50:35 | 显示全部楼层
安仔 发表于 2013-3-7 10:42
capture=cvCaptureFromCAM(3);改成capture=cvCaptureFromCAM(2)试试;

改成2,dnw显示
s3c-fimc-2 : no camera device selected yet!do VIDIOC_S_INPUT first
Unable to handle kernel NULL pointer dereference at virtual address 000000dc
pgd = f35d4000
[000000dc] *pgd=53712031, *pte=00000000, *ppte=00000000
Internal error: Oops: 17 [#2] PREEMPT
last sysfs file: /sys/devices/platform/s5p-ehci/usb1/1-1/1-1.2/1-1.2:1.0/video4linux/video3/dev
Modules linked in: rt5370sta ds18b20 s5pv210_hdmi wm8960
CPU: 0    Tainted: G      D      (2.6.35.7-EmbedSky #1)
PC is at fimc_g_fbuf+0x44/0xd4
LR is at __video_do_ioctl+0x12e0/0x3ed0
pc : [<c04c24d0>]    lr : [<c03e51ac>]    psr: 40000013
sp : f3625bb8  ip : f3625bd8  fp : f3625bd4
r10: f3670380  r9 : f34d37c0  r8 : 802c560a
r7 : c03e3ecc  r6 : 00000000  r5 : 00000000  r4 : f3625ccc
r3 : 00000000  r2 : 00000011  r1 : 00000000  r0 : f3670380
Flags: nZcv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
Control: 10c5387d  Table: 535d4019  DAC: 00000015

........
Segmentation fault

变成这样了?
 楼主| 六斤太郎 发表于 2013-3-7 10:53:41 | 显示全部楼层
亚瑟王 发表于 2013-3-7 10:47
亲,不知道你又做了什么事情导致出这个错误。我们这边在210上用opencv+USB摄像头是成功了的。

我什么也没弄啊,正常启动开发板,插上摄像头,就显示这样?我这可能是opencv编译的不对吗?还是可能摄像头有问题?
月下楼宇 发表于 2013-3-7 13:22:46 | 显示全部楼层
请问在TQ210上运行android系统,一定要用opencv才能用上usb摄像头吗?
 楼主| 六斤太郎 发表于 2013-3-7 14:15:13 | 显示全部楼层
月下楼宇 发表于 2013-3-7 13:22
请问在TQ210上运行android系统,一定要用opencv才能用上usb摄像头吗?

不是吧!好像不是!
 楼主| 六斤太郎 发表于 2013-3-7 14:16:04 | 显示全部楼层
亚瑟王 发表于 2013-3-7 10:47
亲,不知道你又做了什么事情导致出这个错误。我们这边在210上用opencv+USB摄像头是成功了的。

我什么也没弄啊,正常启动开发板,插上摄像头,就显示这样?我这可能是opencv编译的不对吗?还是可能摄像头有问题?:(
亚瑟王 发表于 2013-3-8 09:12:11 | 显示全部楼层
六斤太郎 发表于 2013-3-7 10:53
我什么也没弄啊,正常启动开发板,插上摄像头,就显示这样?我这可能是opencv编译的不对吗?还是可能摄像 ...

那你参考我在论坛发的210使用usb摄像头的教程,然后试一下。或者换一个UVC的摄像头试一下。
ww110052181 发表于 2013-3-9 09:48:05 | 显示全部楼层
看看你系统下的对应的驱动文件里的设备名,进一步确认下
ww110052181 发表于 2013-3-9 09:48:43 | 显示全部楼层
看看你系统下的对应的驱动文件里的设备名,进一步确认下{:1_1:}
TQ-lkp 发表于 2013-3-12 10:42:36 | 显示全部楼层
本帖最后由 TQ-lkp 于 2013-3-12 10:42 编辑

cvCaptureFromCAM(2),这个2对应的是/dev/video2,你要先确认你的摄像头生成的是哪个设备,再传递参数进去
月下楼宇 发表于 2013-3-13 10:14:57 | 显示全部楼层
亚瑟王 发表于 2013-3-7 10:47
亲,不知道你又做了什么事情导致出这个错误。我们这边在210上用opencv+USB摄像头是成功了的。

我弄的是android系统,插上usb免驱摄像头之后就显示以下信息:
/dev # <6>pmem: request for physical address of pmem region from process 190.
[  493.850000] pmem: request for physical address of pmem region from process 190.
<7>hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0008
<7>hub 1-1:1.0: port 3, status 0101, change 0001, 12 Mb/s
<7>hub 1-1:1.0: debounce: port 3: total 100ms stable 100ms status 0x101
<6>usb 1-1.3: new high speed USB device using s5p-ehci and address 6
[  507.730000] usb 1-1.3: new high speed USB device using s5p-ehci and address 6
<7>usb 1-1.3: skipped 1 descriptor after configuration
<7>usb 1-1.3: skipped 5 descriptors after interface
<7>usb 1-1.3: skipped 1 descriptor after endpoint
<7>usb 1-1.3: skipped 9 descriptors after interface
<7>usb 1-1.3: skipped 1 descriptor after endpoint
<7>usb 1-1.3: skipped 4 descriptors after interface
<7>usb 1-1.3: skipped 2 descriptors after interface
<7>usb 1-1.3: skipped 1 descriptor after endpoint
<7>usb 1-1.3: default language 0x0409
<7>usb 1-1.3: udev 6, busnum 1, minor = 5
<6>usb 1-1.3: New USB device found, idVendor=1871, idProduct=0142
[  507.885000] usb 1-1.3: New USB device found, idVendor=1871, idProduct=0142
<6>usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  507.890000] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
<6>usb 1-1.3: Product: USB2.0 Camera
[  507.895000] usb 1-1.3: Product: USB2.0 Camera
<6>usb 1-1.3: Manufacturer: AVEO Technology Corp.
[  507.900000] usb 1-1.3: Manufacturer: AVEO Technology Corp.
<7>usb 1-1.3: usb_probe_device
<7>usb 1-1.3: configuration #1 chosen from 1 choice
<7>usb 1-1.3: adding 1-1.3:1.0 (config #1, interface 0)
<7>usb 1-1.3: adding 1-1.3:1.1 (config #1, interface 1)
<7>usb 1-1.3: adding 1-1.3:1.2 (config #1, interface 2)
<7>usb 1-1.3: adding 1-1.3:1.3 (config #1, interface 3)
<7>drivers/usb/core/inode.c: creating file '006'
<7>hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0008

请问这个能编程使用usb摄像头吗?android自带的是用不了,但我对应那个摄像头编程使用应该可以吧?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-6-3 00:44 , Processed in 1.046875 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表