4、传感器选型与对比:分辨率、帧率、精度、测量范围、环境鲁棒性对比,选型决策树
做3D视觉系统,第一步不是调算法,也不是搭硬件。
是选传感器。
我见过太多团队,算法写得飞起,结果传感器选错了,整个项目推倒重来。说白了,传感器就是系统的眼睛,眼睛不行,后面再怎么折腾也白搭。
4.1 五个核心参数,一个都不能少
选型时,我习惯盯着五个维度看:分辨率、帧率、精度、测量范围、环境鲁棒性。咱们一个一个拆开聊。
分辨率
分辨率决定了你能看到多细的细节。对于深度图来说,分辨率就是像素点的数量。640×480 和 1920×1080,差距不是一星半点。
但注意,分辨率越高,数据量越大,处理带宽和存储都是问题。我在做仓储机器人项目时,一开始选了高分辨率传感器,结果工控机扛不住,帧率掉到个位数。后来降了分辨率,反而整体效果更好。
帧率
帧率就是每秒能出多少帧深度图。动态场景下,帧率低了会丢运动信息。
举个例子,AGV小车跑起来,如果帧率只有5fps,那它看到的世界就是一卡一卡的,避障根本来不及。我一般要求至少30fps,如果是高速场景,得上60fps甚至更高。
但帧率和分辨率是矛盾的。你想想看,分辨率高了,每帧数据量大,帧率自然就下来了。所以得做取舍。
精度
精度是传感器的硬指标。毫米级还是厘米级,直接决定了你的应用能不能落地。
结构光传感器在近距离(1米以内)能做到亚毫米级,但远了就不行。ToF传感器精度中等,胜在速度快。激光雷达精度高,但贵啊。
我曾经在工业检测项目里,要求精度0.5mm,结构光勉强够用,但环境光一强就飘。后来换了线激光,虽然慢了点,但精度稳了。
测量范围
测量范围就是传感器能看清多远。室内小场景和室外大场景,选型逻辑完全不同。
- 短距离(0.1-2米): 结构光、双目视觉都行
- 中距离(2-10米): ToF、双目、低线束激光雷达
- 远距离(10米以上): 激光雷达是首选
注意,测量范围不是越远越好。远了精度会下降,而且功耗和成本都上去了。
环境鲁棒性
这是最容易被忽略的,也是我踩坑最多的地方。
室内环境还好说,一到室外,阳光直射、雨雾、灰尘,传感器性能直接打折。
- 结构光: 怕强光,室外基本不能用
- ToF: 抗环境光能力中等,多机干扰是个问题
- 双目视觉: 依赖纹理,弱纹理场景(白墙)直接跪
- 激光雷达: 抗干扰能力强,但雨雾天会衰减
4.2 主流传感器横向对比
我把市面上常见的几种传感器拉出来,做个对比。这样你心里有个谱。
| 传感器类型 | 分辨率 | 帧率 | 精度 | 测量范围 | 环境鲁棒性 | 成本 |
|---|---|---|---|---|---|---|
| 结构光 | 中高 | 中(30fps) | 高(亚毫米级) | 短(0.1-3米) | 差(怕强光) | 低 |
| ToF | 中(QVGA/VGA) | 高(60-120fps) | 中(厘米级) | 中(0.3-10米) | 中等 | 中 |
| 双目视觉 | 高(取决于相机) | 中(30fps) | 中(依赖基线) | 中(0.5-20米) | 差(依赖纹理) | 低 |
| 激光雷达(单线) | 低(单线) | 高(10-50Hz) | 高(毫米级) | 远(0.1-100米) | 好 | 高 |
| 激光雷达(多线) | 中(16/32/64线) | 中(10-20Hz) | 高 | 远(0.1-200米) | 好 | 很高 |
嗯,这张表你看完,基本能排除掉一半选项了。
4.3 选型决策树
光看参数还不够,得有个决策流程。我画了个决策树,你照着走一遍,基本不会选错。
这个决策树怎么用?很简单。先问自己:室内还是室外?然后看需求:要精度还是要速度?预算多少?走一遍,答案就出来了。
4.4 我的选型清单
最后,我分享几个我实际用过的传感器,给你做个参考。
- Intel RealSense D435: 室内首选,双目+红外,性价比高。我用来做机械臂抓取,精度够用。
- Microsoft Kinect v2/Azure Kinect: ToF方案,室内动态场景表现不错。做人体姿态识别时用过。
- Velodyne VLP-16: 16线激光雷达,室外SLAM标配。就是贵,一个顶十个。
- Basler双目相机: 工业级,分辨率高,但需要自己标定。适合对精度要求高的场景。
核心总结: 没有完美的传感器,只有最适合的传感器。选型时,先定场景,再定参数,最后看预算。别被厂商的宣传参数忽悠了,实际测一测比什么都强。
嗯,传感器选型这块,我就讲这么多。你拿着这个决策树去选,基本不会跑偏。