结论先放在前面:深度相机能不能接量产单,看的不是样机在实验室里能做到多好,而是一万台里最差的那几台能不能被约束住。样机的精度是挑出来的,量产的一致性是把分布管出来的。管住分布只靠四件事——来料分档、装配公差控制、产线标定节拍、参数落盘可追溯。少一件,后面所有精度承诺都会在批量交付时变成扯皮。
一、一致性的三个来源
把一台深度相机的误差拆开看,来源无非三类:来料本身的分布、装配过程引入的公差、以及标定参数有没有真正落到设备里。三类问题在样机阶段都被"精调"掩盖了,到了批量就一起冒出来。
来料分布决定了下限。镜头焦距与畸变、传感器主点位置、主动光器件的散斑图案,每一批来料都有自己的分布区间。如果产线只按型号统一套一组参数,个体差异就会直接变成深度误差,而不是被参数吸收掉。
装配公差决定了上限之外的那部分残余。双目基线长度、两光轴夹角,靠结构件和工装保证;公差累积会直接进入外参。软件标定能补一部分,但补不了机械应力与偏心带来的畸变不对称。
标定参数的落地程度,决定了前两项的工作会不会白做。参数只留在工控机上,设备换主机、返修、重装系统之后就得重标,这是量产里最常见、也最容易被低估的坑。
二、来料分布:同型号不等于同参数
采购最容易犯的错,是把"同型号"当成"同参数"。同一型号的镜头,不同批次之间的焦距和畸变并不完全一致;同一型号的图像传感器,主点位置也有离散。这些差异在单台调试时会被手动补偿掉,在批量生产时则必须靠分档和参数继承来解决。
比较务实的做法是:进料检验不只记录合格与否,还记录关键光学参数的实际值,按区间分档;产线标定时按档位加载不同的初值,再在该初值附近做精标。这样标定收敛更快,姿态覆盖也不必为了迁就极端个体而无限拉长。
主动光方案还要多看一眼散斑图案。散斑是投射器与衍射元件共同作用的结果,批次之间如果图案分布有差异,匹配代价函数的形状也会变。来料分档如果不把这一项纳入,后面调算法是补不回来的。
三、装配公差怎么进入外参
双目深度相机的外参,本质上是两个相机之间的旋转与平移。平移主要由基线长度决定,旋转主要由两光轴夹角决定。这两件事都不是算法能"算"出来的,而是结构件和工装"做"出来的。
公差链要一段一段看:镜头座与传感器之间的贴装、镜头座与结构件之间的定位、左右两个模组在同一基板上的安装、基板与外壳之间的固定。每一段都有公差,累积到最后就是外参的初始偏差。标定能修正系统性偏差,但修正不了随个体变化的随机偏差。
所以工装的意义不只是"装得快",更是"装得一样"。同一套治具、同一套压装力、同一套固化条件,才能让不同班次、不同产线出来的设备具备可比性。工装一旦松动或者被临时替代,一致性会先于精度崩掉。
四、温漂:躲不掉,只能管
基线与镜头座常用不同材料,热膨胀系数不同,温度一变,外参就漂。这不是缺陷,是物理。工业机箱内温升是常态,标定如果只在恒温实验室完成,现场就一定会出偏差。
能做的有三件事。第一,结构上尽量让关键配合面的材料热膨胀接近,减少相对位移。第二,标定流程里加入温度点,至少在冷态与热态各标一次,把漂移量测出来而不是猜出来。第三,产品层面规划重标策略:要么定期返厂复标,要么支持现场自标定,要么在算法侧做在线补偿。
三件事都不做,却对外承诺全温区精度,本质上是在赌客户的使用环境。赌赢一次不难,赌赢一万台很难。
五、标定从实验室动作变成产线工序
样机阶段的标定是"研究":慢慢调、反复试、人工判断。量产阶段的标定是"工序":有节拍、有工装、有判定标准、有异常处理。
节拍直接决定产能。产线上每台设备都要跑多姿态标定,姿态覆盖越足,参数泛化越好,但耗时越长。节拍压得太紧,常见的结果是姿态数量被砍到刚好让残差收敛——参数看起来收敛了,换一个场景就露馅。这类问题在出厂检验里往往查不出来,要到客户现场才暴露。
判定标准也要写死:残差阈值、姿态覆盖度、重投影误差分布,达到什么条件算通过,不通过是重标还是返修。没有判定标准的标定,只是"跑过一遍",不是"做过检验"。
环境同样是工序的一部分。温度、气流、环境光都会影响标定结果,产线如果挨着门口、空调出风口或者强光工位,标定数据的离散度会明显变差。把标定工位当成一个需要控制环境的工序来管理,而不是随便找张桌子放下设备就开跑,是从样机走向量产必须补的一课。
六、参数落地与追溯:写进设备、能读回
标定结果必须写入设备存储,并且能被上位机读回校验。只把结果留在工控机上,是量产里最典型的半成品:设备一旦脱离那台主机,参数就没了。
读回校验至少要做三件事:确认参数版本与设备序列号绑定、确认写入内容与计算结果一致、确认设备重启后参数仍然有效。第三件最容易被跳过,也最容易在返修换板之后出问题。
#示意 读回出厂标定参数并校验完整性(命令名仅作流程说明)depth-cam calibread--slotfactory--formatjson depth-cam calib verify--slotfactory --check-crc追溯则是把单台数据和批次数据连起来。哪一批来料、哪一套工装、哪个班次、哪一次标定的参数,都要能查到。出了批量问题,追溯决定了你是能在一天内定位到根因,还是只能全批召回。
七、复检:没有数据的一致性只是口号
出厂复检、温度循环抽检、长期漂移抽检,这三件套缺一项,一致性就只是实验室结论,不是交付结论。
出厂复检看的是单台是否达标;温度循环抽检看的是参数在温度变化下是否稳定;长期漂移抽检看的是时间维度上的衰减。三者分别对应即时、环境、寿命三个尺度,互相替代不了。
抽检的样本量和频次可以按批次风险调整,但不能没有。没有复检数据,客户问"你怎么证明一万台都一样"的时候,答案是拿不出来的。
| 维度 | 单机验证 | 小批试制 | 量产 |
|---|---|---|---|
| 精度目标 | 做到最好 | 做到稳定 | 做到可复现 |
| 一致性手段 | 单台精调 | 工装加规范 | 工装、节拍与分档 |
| 主要风险 | 环境单一 | 班次差异 | 来料漂移与温漂 |
| 数据要求 | 单次报告 | 批次统计 | 全量追溯 |
八、接量产单之前的三问
第一问,产线标定节拍多长。答不上来,说明标定还没被当成工序。第二问,出厂复检做什么。答不上来,说明一致性没有证据链。第三问,参数能不能追溯。答不上来,说明出了问题只能全批处理。
这三问不需要多高深的技术,但每一问都指向一个具体的工程动作。能把三问答清楚,说明这家厂商至少认真想过批量这件事;答不清楚,样机再好也只适合做 demo。
九、三个常见误区
第一个误区是"样机精度高就能量产"。样机是挑出来的,量产是分布;没有批次统计,精度只是个案。判断能不能量产,要看的不是最好的一台,而是最差的一台落在哪里。
第二个误区是"标定一次管终身"。温度、振动、运输都会让外参走位。工业级产品必须提前规划重标周期或者在线自标定能力,把这件事写进产品规格,而不是等客户反馈"用久了不准"再补。
第三个误区是"同一型号的深度图应该一模一样"。只要个体差异还在,图就不该一样;该一样的是误差分布可控。把"图像相同"当成一致性标准,会逼着产线去做无意义的参数对齐,反而掩盖真正需要控制的指标。
十、写在最后
量产一致性不是某一个环节的功夫,而是一条链:来料分档给初值,工装给下限,标定给参数,落盘给保障,复检给证据,追溯给退路。任何一环断掉,链就断了。
深度相机的精度可以靠算法讲故事,一致性只能靠工序讲事实。判断一家厂商能不能接量产单,别只看它演示的那台,去看它的产线、工装、复检记录和参数管理。
备选标题
- 量产之后,深度相机最先崩在哪:一致性
- 同一批深度相机,为什么深度图不一样
- 深度相机量产:标定必须从实验室搬进产线