使用opencv-python从Mightex USB摄像机捕获图像

时间:2018-10-02 10:21:59

标签: python opencv

我正在尝试使用Python 3.6.5和opencv-python 3.4.3.18从Mightex cmos usb摄像机(SCE-B013-U)捕获图像。随附软件确认相机工作正常。但是,cv2.VideoCapture(0).isOpened()是错误的。我确定我缺少什么,但我不知道是什么。请帮忙。提前谢谢。

2 个答案:

答案 0 :(得分:0)

official documentation指出:

  

有时候,cap可能尚未初始化捕获。在这种情况下,   此代码显示错误。您可以检查它是否已初始化   通过方法cap.isOpened()。如果为True,则确定。否则打开它   使用cap.open()

答案 1 :(得分:0)

为了进行测试,我在自己的设置上安装了1个相机,该相机与以下命令兼容:opencv:

@Service
class SomeService(val eventRepository: EventRepository)
{
    fun save() = eventRepository.save(Event(UUID.randomUUID().toString(), "hey"))
}

对我来说返回True,但是如果我拔下相机的插头,它将返回False。错误可能表示没有可用的相机。 如果上述其他答案没有任何结果,则可能是已安装的驱动程序与opencv不兼容?
product description:

  

此外,基于用户界面的友好用户界面应用程序软件和SDK   提供用于定制软件开发。 USB命令集   协议还为非Windows应用程序提供了

不禁会认为这家公司可能遵循与opencv通常使用的标准不同的标准。例如,许多USB3Vision相机无法以您尝试的方式开箱即用,并且需要其他编程才能返回numpy样式的阵列图像。
我的想法的其他支持在“图形用户界面示例”中 我在GeniCam标准(USB3Vision)中看到的许多选项。
相机模式(连续/触发),曝光控制,启用自动曝光等

这并不是说摄像机肯定是一个或另一个,但症状表明该摄像机不符合您想要使用opencv开箱即用的条件。

您可以尝试使用第三个party SDK来帮助验证。

p.s,这是我今天第二次引用此SDK。我不为他们工作-我与他们没有联系,但是能够使用他们的程序进行(免费)试用对于帮助解决此问题非常有用。

让您的相机正常工作真是太幸运了。