视频捕捉无法检测到uEye摄像头

uEye camera not detected with VideoCapture

本文关键字:uEye 摄像头 检测 视频      更新时间:2023-10-16

我的uEye相机出现了一个问题。使用我的笔记本电脑相机(id 0)或usb网络相机(id 1),这行工作完美:(thevideocapture是VideoCapture类,OpenCV)。

不幸的是,当我试图用我的uEye相机做同样的事情时,它找不到它。我在weeecamermanager里查了摄像头ID,是1。或者在某些专家模式下是35。我想使用它,就像我使用上面提到的相机一样。

我已经有了驱动程序,因为,嗯,ueyecameramemanager工作并给我一些流,并且ROS节点ueye_cam也工作得很好。

即使你可能已经弄清楚了,据我所知,你不能使用视频捕获直接与uEye相机。您必须使用他们自己的SDK来访问视频流(或根据您的情况拍摄单个快照)。之后,您可以使用memcpy()将由void指针填充的is:GetImageMem(…)指向的内存复制到Mat对象(cv::Mat::ptr())。如果你看得够近的话uEye的ROS节点是做什么的它实际上使用了uEye SDK提供的功能来设置和访问摄像头。ROS也有自己的图像格式,这就是为什么实现了一个接口(称为cv_bridge)来将ROS图像转换为OpenCV图像。总的来说,这是一个荒谬的数据复制和转换沙拉,但由于这是目前的事情,你没有太多的选择。