一、3D视觉系统概述:从选型到计算

大家好,我是老张。做3D视觉这行快十年了,踩过的坑比吃过的盐还多。今天咱们聊聊3D视觉系统的起点——相机、光源怎么选,视野和分辨率怎么算。

很多人一上来就问我:“张工,我该买什么相机?” 说实话,这个问题没法直接回答。你得先搞清楚:你要抓什么?抓多快?精度要求多少? 这三个问题搞定了,选型才有方向。

核心原则:选型不是选最贵的,而是选最合适的。我见过太多项目,花大价钱买了高分辨率相机,结果视野不够、帧率跟不上,最后还得换。

1.1 相机选型:别只看像素

相机选型,说白了就是平衡三个参数:分辨率、帧率、感光芯片尺寸。我习惯先定分辨率,再反推其他。

举个例子:你要抓一个100mm×80mm的工件,定位精度要求0.1mm。那视野至少得留点余量,按120mm×100mm算。分辨率怎么算?

X方向像素数 = 视野宽度 / 精度 = 120mm / 0.1mm = 1200像素
Y方向像素数 = 视野高度 / 精度 = 100mm / 0.1mm = 1000像素

嗯,这里要注意:实际选型时,我一般会留20%的余量。所以至少得选150万像素的相机。但如果你要抓的是反光件、透明件,那还得考虑偏振或结构光方案,普通相机搞不定。

应用场景 推荐相机类型 分辨率范围 帧率要求
静态抓取(慢速) 面阵CMOS 500万~1200万 ≤30fps
动态抓取(传送带) 面阵全局快门 200万~500万 ≥60fps
高精度测量 面阵/线阵 ≥1200万 按需
大视野粗定位 面阵低分辨率 30万~130万 ≥30fps

个人经验:做3D视觉定位,我强烈推荐全局快门相机。卷帘快门在运动场景下会变形,你想想看,抓取点算出来都是歪的,机器人怎么抓?

1.2 光源选型:光打不好,算法白搞

光源这玩意儿,很多人不重视。我曾经有个项目,相机、镜头都选好了,结果现场一打光,工件表面反光得一塌糊涂,点云全是噪点。后来换了蓝色结构光+偏振片,问题才解决。

光源选型,记住三个原则:

  • 颜色匹配:光源波长要和工件材质匹配。金属件用蓝光(450nm),塑料件用红光(630nm),透明件用红外(850nm)。
  • 均匀性:面光源比环形光更均匀,适合大面积打光。环形光适合突出边缘特征。
  • 结构光 vs 激光:3D视觉常用结构光(散斑或条纹),激光线扫适合高精度轮廓测量。

避坑指南:我曾经在汽车零部件项目上,用了普通LED环形光,结果工件表面有油污,反光导致点云缺失。后来换成同轴光源+偏振,才把油污反光压下去。记住:光源不是越亮越好,而是越均匀越好。

1.3 视野与分辨率计算:公式很简单,但别算错

视野(FOV)和分辨率的关系,说白了就是一个像素对应多少毫米。公式很简单:

像素当量 (mm/pixel) = 视野宽度 (mm) / 图像宽度 (pixel)

例如:视野宽120mm,图像宽1280像素
像素当量 = 120 / 1280 = 0.09375 mm/pixel

嗯,这里有个坑:像素当量不等于定位精度。定位精度还受算法亚像素能力、标定误差、机械重复精度影响。我一般按像素当量的1/3~1/5来估算实际定位精度。

举个例子:像素当量0.1mm/pixel,亚像素精度0.1像素,那理论定位精度是0.01mm。但实际加上标定误差、机械振动,能做到0.03mm就不错了。

参数 计算公式 示例
像素当量 FOV宽 / 图像宽 120mm / 1280px = 0.094mm/px
理论定位精度 像素当量 × 亚像素精度 0.094 × 0.1 = 0.0094mm
实际定位精度 理论精度 × 3~5倍 0.0094 × 3 = 0.028mm

核心结论:选型时,先定实际需要的定位精度,再反推像素当量和分辨率。别被高像素忽悠了,视野、精度、帧率三者必须平衡。

1.4 3D视觉系统知识体系

下面这张图,是我自己总结的3D视觉系统选型知识体系。你想想看,从需求分析到相机选型,再到光源匹配和标定验证,每一步都环环相扣。

3D视觉系统选型知识体系 需求分析 相机选型 光源选型 视野与分辨率 分辨率 帧率 感光芯片 快门类型 颜色匹配 均匀性 结构光/激光 偏振/同轴 像素当量 定位精度 亚像素 标定误差 选型核心:需求 → 相机 → 光源 → 视野 → 标定 → 验证

我的习惯:每次做新项目,我都会先画一张这样的知识体系图。把需求、相机、光源、视野、标定五个环节列出来,再逐个填参数。这样不容易漏项,也方便跟团队沟通。

1.5 本章小结

好了,第一章的内容就这些。说白了,3D视觉系统选型就是一个平衡游戏:

  • 相机选型:分辨率、帧率、感光芯片、快门类型,一个都不能少
  • 光源选型:颜色、均匀性、结构光/激光,根据工件材质定
  • 视野与分辨率:像素当量算清楚,定位精度留余量

嗯,这里要提醒一句:选型只是第一步。后面还有标定、手眼标定、抓取点计算、验证……每一步都可能翻车。我见过太多项目,选型时算得挺好,一到现场就各种问题。所以,留足余量,多做测试,才是王道。

最后说一句:别迷信参数表。参数表上的精度都是理想环境测的,现场有振动、温度变化、工件公差……实际精度能到参数表的一半就不错了。我一般按参数表精度的1/3来设计系统,这样保险。