最适合计算机视觉的相机取决于具体的用例,但工业级的 USB 或 GigE 相机,如 FLIR Blackfly S 或 Basler ace 系列,通常是可靠的选择。这些相机在分辨率、帧速率以及与计算机视觉库的兼容性之间取得了平衡。 例如,FLIR Blackfly S 提供全局快门传感器(可减少运动模糊)、高分辨率选项(高达 20 MP)以及灵活的接口(如 USB3 或以太网)。它们还提供与 OpenCV、PyTorch 或 TensorFlow 集成的 SDK,使其对开发人员来说很实用。 如果成本是一个问题,那么消费级的选项,如 Raspberry Pi Camera Module 3 或 Intel RealSense 深度相机,也足以用于原型设计。
选择相机时,优先考虑与您的项目相符的技术规格。 分辨率(例如,用于大型场景中对象检测的 4K)和帧速率(例如,用于实时跟踪的 60+ FPS)至关重要。 全局快门传感器更适合快速移动的物体,而滚动快门则足以应对静态场景。 连接性是另一个因素:USB3 相机是即插即用的,但受电缆长度的限制,而 GigE 相机(如 Basler 的相机)则支持更远的距离。 软件支持也很重要——确保相机具有适用于您的操作系统的驱动程序和用于捕获原始数据的 API。 例如,Intel RealSense D455 提供深度感应,并包含 ROS 驱动程序,这对于机器人应用非常有用。
对于专门的任务,请考虑具有独特功能的相机。 像 Intel RealSense 或 Stereolabs ZED 这样的深度传感器非常适合 3D 重建或 SLAM。 低光环境可能需要具有更大传感器(例如,Sony IMX 系列)或红外功能的相机。 嵌入式系统通常使用 Raspberry Pi Camera Module 3,因为它的尺寸紧凑并且与 Python 库(如 picamera)兼容。 如果您的预算有限,Arducam 系列为 Raspberry Pi 提供了模块化选项。 始终在您的实际环境中测试相机——诸如光照、运动和处理延迟之类的因素会极大地影响性能,即使规格在纸面上看起来不错也是如此。