跳至内容
在传统的2D视觉中,一套详细的解决方案最基础的是相机、镜头和光源。根据客户的需求以及现场的生产环境,通过一些公式计算出符合要求的相机和镜头。最后的光源是整套解决方案中比较难的一个点,要根据客户所测物件的不同来选择合适的光源,保证能够清晰的成像。而一般3D相机都会集成在一个框架内,不会像2D视觉系统那样区分开来,如下图所示。
基本上目前市面上的3D相机都是这个样子,里面集成了激光发射器、镜头以及感光芯片。
在3D相机中,取代光源的是激光发射器,通过复杂的光学系统设计,激光发射器发出的激光会形成一条直线,激光投射到物体表面就会形成反射,在光学系统的设计下,反射光会被镜头捕捉到,最后通过镜头反射到感光芯片上。因此,3D相机内部最重要的三个部件分别为激光发射器,镜头和感光芯片,同时还会加一些FPGA或者ARM用于图形处理,比如图像算法以及图像滤波。一般情况下,激光发射器需要优秀的光学工程师进行设计,比如不同的透镜反射出来的激光也会有不同的效果。镜头基本上也都是正常看见的镜头,感光芯片一般会选择高精度的CMOS芯片。
一般把激光线方向称为X方向,也就是激光照射出来的那条线定义为X轴,高度为Z方向,通过一次静态拍照,可以得到X和Z两个方向的数据,再把运动方向记为Y方向,也就是说。可以通过移动相机或者移动物体,并且让相机持续不断的拍照,就形成了连续的Y方向数据,最后组合在一起,就是所需要的3D数据了。
一般工业领域都是普遍采用三角测距法,因为激光三角测距法的精度比较高,抗干扰能力也很强。此外,还有很多的测距方法,主要分为两个大类,分别是被动测量类和主动测量类。被动测量类分为单目视觉、双目视觉和多目视觉。主动测量类分为结构光法,TOF飞行时间法,激光三角测距法。TOF飞行时间法也是一种比较常见的3D光学测距方法,主要用于手机领域,比如手机的人脸识别,因为TOF飞行时间的测量范围比较大,可以达到20米到30米,比较适合手机领域进行一些AR/VR交互。
在2D视觉中,会有许多专业的术语名词,比如视场,分辨率,重复精度等,3D视觉中也是如此。
是指在某一工作距离下传感器激光线方向能扫到的最大宽度。在2D视觉中,视场一般是两个值,即X方向*Y方向,而3D视觉只有一个值。一般情况下就是在传感器最佳工作距离下激光线的长度,注意是在工作距离下的长度,毕竟激光发射出来形成一个光面,如果没有遮挡理论上是无限长的。此外,3D相机还分为近视场,中视场,远视场。
传感器的近视场到远视场的距离。这个概念有点像2D视觉中的景深,即Z轴可清晰成像的范围。
传感器下表面到被测物表面的距离。这里的传感器指的就是相机,每台相机的工作距离是不一样的,一定要记住工作距离,不然选好了相机发现客户现场的安装高度达不到相机的工作距离要求,那么你前期的准备工作就全部浪费掉了。
传感器可以识别的最小尺寸。跟图像传感器一般是CMOS芯片的晶圆尺寸也就是感光元件有关系。
也叫准确度,直线度。一般指的是Z线性度,为偏差值(参考值与测量值的差值)与测量范围的比值。
也叫做重复性。是指将被测物重复扫描4100次后的最大偏差值。
a)线间距,反映传感器接收到的触发信号间隔。这个参数跟编码器信号或者外部信号频率有关系。比如假设一万个脉冲走10毫米,那么信号间隔就为1微米;
b)扫描频率(HZ),单位时间内传感器能够获取的3D轮廓线数目,反映传感器当前配置下的处理极限。比如2K那就是一秒最多可以跑两千条线。这个参数也是客户经常会问到的一个参数。一般情况下,扫描范围越大,曝光时间越长,扫描频率越低。这个参数还分为全幅扫描频率和ROI扫描频率;
c)公式,最大扫描速度=扫描频率*线间距。假设我这里有一个相机扫描频率为1000,线间距为1um,那么1秒他最快只能扫1mm,如果被测物体长1cm,那么我需要扫描至少10秒钟才能将这个物体的长度扫出来。一般情况下,相机的最大扫描频率是固定的,所以只能改动线间距,线间距和编码器或者外部信号有关,也就是说,如果想加快扫描速度,那么只能加大编码器的信号,也就是让物体或者相机的移动速度变快。但是速度过快也可能导致缺少数据细节,导致某些缺陷没有捕捉到。下面这张图就是对3D传感器的一些参数的可视化。
比如如何知道一个物体能否被准确的扫描出来呢,测量是否成功取决于有多长时间可以用于测量。被测物体通过探头光束的速度越慢,越多时间可以被用于测量。因此,不能简单的认为一个静态测量可行,就一定意味着动态测量也是可行的。测量的结果也取决于被测物体表面的反光特性。也就是说被测物体表面的反光性或吸光性的强弱,会决定是否可以测得有效信号。被测材料本身也会影响测量结果。举例来讲,如果半透明被测物体的透明度过高,测量信号可能完全失真了。最后一个应该考虑的因素是被测物体的轮廓缺陷,可能产生阴影的轮廓以及多次反射的表面影响。以上这些基本因素都可能明显影响测量信号质量以及测量结果。
除去上面提到的这些影响因素,一个清晰可识别的轮廓表面反射的持续信号仍然可能是难以使用的缺损信号。如果想避免这种情况,轮廓仪的每一个独立参数都必须正确设置并适合被测物体。使用正确的滤波器以及曝光时间的设定,往往能够改善不良信号,经过不断尝试最终可以完成测试。举例来讲,测量一个快速移动的黑色橡胶被测物体,较短的曝光时间和被测物体的高吸光性都会更容易导致一个不良的测量结果。而与之相反,如果黑色被测物体不移动或较慢移动,较长的曝光时间可能更有助于获得完整的轮廓信息。但是这样就会影响到检测速度,各有利弊。
目前3D视觉在扫描透明物体比如玻璃的时候效果往往不佳,因为玻璃是可以直接让激光透射过去的,导致CMOS芯片上难以成像,还有一个就是多重反射的问题,也会造成成像错误。
此外,3D视觉还会遇到一个视觉阴影问题,也就是处于相机扫描角度的原因,会出现视野盲区。