首页 文章

OpenCV的 . 如何在VirtualBox中连接到相机

提问于
浏览
0

我在Oracle VirtualBox(主机:Mac OS X)中安装了一个Ubuntu vm,安装了python(miniconda),opencv和内置网络摄像头,通过Devices> Webcams菜单连接到vm . 如果我尝试在像this这样的网站上测试我的网络摄像头,它运行良好,但是如果我尝试用这种方式从python连接到opencv相机:

>>> import cv2
>>> cap = cv2.VideoCapture(0) # or 1 or -1, I tried all
>>> ref, frame = cap.read()
>>> frame.shape

我有一个错误“NoneType没有属性形状” . 我怎么解决这个问题?

1 回答

  • 0

    这是可能的,但需要几个步骤才能正常工作:

    1.确保虚拟机未运行且未使用您的网络摄像头 .

    2.打开主VBox窗口,在Win7机器的详细信息选项卡中单击USB .

    3.确保选中“启用USB控制器” . 还要确保选择“启用USB 2.0(EHCI)控制器” .

    4.单击“从设备添加过滤器”按钮(带有“图标”的电缆) .

    5.从列表中选择您的设备 .

    6.现在单击“确定”并启动VM .

    • 在终端类型 VBoxManage list webcams 中 . 这将返回以下输出:

    视频输入设备:1

    .1“FaceTime高清摄像头”

    0x8020000005ac8514

    • 在终端类型 VboxManage controlvm "my_virtual_machine_name" webcam attach .1 中 . 其中 .1 是Virtualbox的 Video Input Devices 的名称 .

    这将导致设备显示为已插入VM . 从那里,你应该能够使用它或必要时安装驱动程序 .

相关问题