
一、3D 点云是什么
简单说:点云就是物体表面大量三维坐标点 (X,Y,Z) 的集合,每个点还可以附带颜色、反射强度等信息。
3D 相机(结构光、激光三角、双目、ToF)拍摄工件时,不是像 2D 相机只拍平面像素,而是**算出每一个像素对应的空间位置。
把所有能算出 XYZ 的点放在一起,就像无数个微小采样点贴在物体表面,拼出物体三维外形,这就是点云。
能算出深度的像素 → 生成点;算不出深度的像素 → 没有点,就形成空洞(洞洞)。
二、点云为什么会有洞洞(空洞)
本质一句话:这个位置相机收不到有效回光,或者算法算不出可靠 XYZ,直接丢弃这个位置,没有点,于是出现空洞。分成 5 大类:
- 几何遮挡 / 盲区(固定大洞,每次拍摄位置不变)
相机是单视角,视线会被挡住:
工件凹槽、内孔、台阶底部,光打进去,但反射光回不到相机镜头;
工件凸起、治具、机械臂挡住光路;
这个区域相机根本看不到,自然没有点,形成固定空洞。
解决:多角度拍摄 + 点云拼接,旋转工件。
- 工件表面光学特性(工业最头疼,成片空洞)
镜面高反光件(抛光金属):光线镜面反射,反射光跑向别的方向,不进相机;或者多重反射造成深度错乱,算法直接删掉这片点;
黑色吸光件:光线被吸收,回光太弱,信噪比不够;
透明件:光线穿透物体,同时在前后两个表面反射,算法分不清哪个是真实表面,直接丢弃。
解决:喷哑光显影剂,调整相机投射角度避开镜面反射。
- 环境光干扰(空洞不稳定,时有时无)
结构光 / 红外散斑相机靠红外光工作。车间阳光、红外照明会淹没相机投射的条纹 / 散斑信号,传感器局部过曝,解码失败,出现成片空洞。
解决:遮光罩,封闭工位,屏蔽红外环境光。
- 算法成像本身带来的空洞(细小洞、边缘缺口)
缺少纹理区域:双目相机没有特征点,无法匹配,算不出视差;
边缘混合像素:工件边缘,光斑一半在物体、一半在背景,信号混合,滤波器自动剔除,轮廓一圈出现细缝;
超出相机量程:物体离相机太近或太远,超出工作距离,直接被裁掉。
- 参数 / 硬件设置问题
曝光不合适:曝光太长→过曝发白丢点;曝光太短→信号弱。
相机投射光场不均匀,画面边缘光强低,更容易产生零星空洞。
三、重点提醒
软件算法 "补洞" 只是插值估算出来的虚拟点,不是真实测量数据!
如果用于 3D 抓取、尺寸测量,不要依赖补洞;优先从光路、视角、材质上解决真实空洞。
快速现场判断小技巧
空洞每次位置一模一样:几何盲区 / 材质反光
空洞大小随机、时有时无:环境红外光干扰,信噪比不足
只在工件外轮廓一圈小洞:边缘混合像素效应