编辑:跳到最后,看看我买了哪台相机。
对于一个大学项目,我必须拍摄一个半透明的窗口,检测某些形状,并将结果发送到另一台计算机。(post底部的示例图片)检测是在c++中使用Win7中的OpenCV完成的。
我认为最简单的解决方案是将相机直接连接到计算机上,然后在机器上进行计算。我需要至少20fps的分辨率,1280x1024的分辨率可能就足够检测了。
我可以相对自由地决定我想要使用哪种相机。你能推荐一款与OpenCV配合良好、使用方便的相机吗?
这个问题已经被问过几次了,但大多数都没有答案,或者已经过时了:
Recommended HD camera (我找到的最好的线程。建议logitech quickcam 9000专业版,不再在市场上销售)
Which Machine Vision Vendor provides OpenCV support (一般建议,不确定如何处理它)
Which Camera for body detection (2010,没有明确答案)
OpenCV Webcam Compability (2011)
List of compatible camera tested with opencv (死链接,尚未找到副本)
Industrial Camera in Python (无应答,也不是我需要的)

编辑:只为未来的读者:我们去使用罗技高清专业c920目前70欧元。一台合适的“专业”相机售价330欧元(不含镜头)。
Edit2:使用两个月后的一个小更新。
相机的角度比在官方论坛上交流的角度要小。Here是一个SO问题,我在其中上传了一些示例图片。
摄像头也只能在15fps的默认驱动下运行,所以要避免不惜一切代价安装这些!
此外,较新的模型(如我得到的)是粘合在一起的,所以你不能再轻易地将它们拆开并手动调整深度。
Edit3:这是最后一次更新。我的项目快完成了,没有其他事情发生。:)
发布于 2014-08-09 15:55:52
对你来说有点晚了。但它将帮助其他想要开发机器视觉项目的人。此外,你说得对,关于OpenCV和机器视觉的详细资源并不多。
首先,网络摄像头将是一个业馀的商业应用解决方案。如果你想进行工业应用检查,你需要一个特殊的照明和一个工业摄像机。您可以在摄像头上使用视频或触发模式。还可以考虑在生产线上使用闪光模式照明可以获得更好的效果。我买的一个相机型号就是PointGrey。某些型号可以在外部触发(您可以使用传感器触发):
http://ww2.ptgrey.com/camera-applications
http://www.baslerweb.com/Cameras-42173.html
也有其他不需要任何PC或照明的智能摄像头,如:http://www.teledynedalsa.com/imaging/products/vision-systems/cameras/-boa-overview http://www.datalogic.com/eng/products/industrial-automation/machine-vision/a30-series-pd-549.html http://www.microscan.com/en-us/Products.aspx
所有相机制造商都提供自己的SDK。它展示了如何获取帧原始数据并将其转换为任何格式,如位图、OpenCV数据格式、另存为jpg等。PointGrey的一些示例:
http://www.ptgrey.com/products/pgrflycapture/samples.asp
将帧原始数据转换为OpenCV图像格式很容易,您应该将原始数据复制到OpenCV图像数据。您可以使用memcpy。这里有一些例子:
http://www.technical-recipes.com/2011/integrating-the-flycapture-sdk-for-use-with-opencv
http://kevinhughes.ca/tutorials/point-grey-blackfly-and-opencv
对于所有其他相机制造商,您可以使用类似的方法。此外,我还建议首选GigE接口摄像头,它们正在成为标准配置。
祝好运。
https://stackoverflow.com/questions/20968399
复制相似问题