本发明涉及机器视觉技术领域,特别是涉及一种基于单目摄像头和投光器的主动测距系统及方法。
背景技术:
目前行业内视觉测距一般是利用双目成像系统,根据双目视图偏差、双目相机成像点距离等参数,建立主动视角测距的坐标模型,根据建立的测距模型对被测目标进行测量。该方法不仅硬件上需要双成像系统,且调校标定复杂,耗时长,摄像系统的任意参数发生变化需要重新标定,计算测距算法也较为复杂。另外,传统的双目测距系统对低照度、画面变化频繁的应用场景并不适合。
技术实现要素:
针对上述现有技术中存在的技术问题,本发明提供了一种主动测距系统以及方法。
为实现本发明的目的,本发明提供了一种主动测距系统,包括摄镜头、发射圆锥镜、发射孔径光阑、发光光源、准直透镜、圆形接收孔径光阑,发射光源经过发射孔径光阑遮挡后发射,发射准直透镜置于光源之前,发射光源射向发射圆锥镜的锥尖,发射圆锥镜的锥尖投射的阴影中心与面阵ccd/cmos传感器的中心重合,面阵ccd/cmos传感器面上覆盖圆形孔径光阑,所述圆形孔径光阑的开孔直径等于阵ccd/cmos传感器有效区域的内切圆直径,圆形孔径光阑的中心和面阵ccd/cmos传感器有效感光区域的中心重合。
相应地,还提供了一种主动测距方法,所述方法利用如上述所述的系统进行,测距时在光源开闭前后分别获取一张照片,二者图像做差,提取光斑环带特征,计算出光斑环带直径所占的像素点数目;该装置获取的像素点带入公式(l-h)*tanθ1/(l*tanθ2)=m/m,计算出l,其中m光斑环带直径在水平方向所占像素个数,m为图像传感器有效感光区域在水平方向的像素总数目,θ1、θ2分别光束发射半角、摄像头水平视场半角,l为距离摄像头虚拟原点的距离,圆锥镜反射光虚拟原点与摄像头虚拟原点间距为h。
与现有技术相比,本发明的有益效果为,可以通过视觉成像来检测距离,无需另外安装测距传感器,节约了独立使用光电传感器测距的成本,便于在产业上推广和应用。
附图说明
图1所示为本申请的结构示意图;
图2所示为本申请中面阵ccd/cmos传感器与其他模块连接示意图。
具体实施方式
以下结合附图和具体实施例对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
应当说明的是,本申请中所述的“连接”和用于表达“连接”的词语,如“相连接”、“相连”等,既包括某一部件与另一部件直接连接,也包括某一部件通过其他部件与另一部件相连接。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明提出了一种测距方法,不仅降低了成像系统的数目,还不受环境照度的影响,对动态画面的测距也不受影响。本发明的测距主要依靠光斑的成像进行测距的,其自身发出的光斑可以认为是静态的,且不会因为外界环境照度低导致无法成像。
如图1所示,本申请系统包括单目摄像镜头4、发射圆锥镜11、发射孔径光阑15、遮光筒12、透明窗口支架5、发光光源14、准直透镜13、圆形接收孔径光阑8、图像处理单元模块10、光源驱动模块、信号输出单元、显示单元模块等。面阵ccd/cmos传感器9、光源驱动模块、信号输出单元(输出视频信号和测距数据)、显示单元模块均与图像处理单元模块10相连,发射光源14与光源驱动模块相连。发射光源14经过发射孔径光阑15遮挡后发射,发射准直透镜13置于发射光源14之前,发射光源14射向发射圆锥镜11的锥尖,发射圆锥镜11的锥尖投射的阴影中心即是该面阵型ccd/cmos传感器9的中心,面阵ccd/cmos传感器9面上覆盖圆形孔径光阑8,该光阑的开孔直径等于传感器有效区域的内切圆直径,圆形孔径光阑9的中心和面阵ccd/cmos传感器有效感光区域的中心重合。遮光筒12固定在面阵ccd/cmos传感器9的有效感光区域的中心。
其中,单目摄像头和圆锥反射镜、准直透镜、光源等光轴共轴;摄像头4置于发射光源14之前,摄像头4的光轴和发射光源14光轴共轴;发射光束经过准直透镜准直后得到平行光;发射的平行光经发射圆锥镜发射后,照射到前方物体上可以得到环形的光斑;发射光光束发射半角的角度小于摄像头横向和纵向的视场角,使得所成圆环光斑始终在摄像机视场之内;发射光的光源为红外光源,中心波长可以是808nm、850nm、940nm等红外光;摄像头4固定在透明窗口支架5上,透明窗口支架5一方面支撑摄像头,另一方面发射光通过其透明窗口部分发射出去;发射孔径光阑主要用于限制打到圆锥锥尖上的光斑直径;遮光筒在防止外界干扰的同时,还可以限制经圆锥镜反射后的出光环带宽度;测距时在光源开闭前后分别获取一张照片,二者图像做差,提取光斑环带特征,计算出光斑环带直径所占的像素点数目;该装置获取的像素点带入公式(l-h)*tanθ1/(l*tanθ2)=m/m,计算出l。其中m光斑环带直径在水平方向所占像素个数,m为图像传感器有效感光区域在水平方向的像素总数目,θ1、θ2分别为发射光的半角、水平视场半角。l为距离摄像头虚拟原点的距离,圆锥镜反射光虚拟原点与摄像头虚拟原点间距为h。
相应地,还提供了一种利用上述主动测距系统的测距方法,可以通过视觉成像来检测距离,无需另外安装测距传感器。圆锥反射镜圆锥角为θ(θ<90°),圆锥发射镜圆周角很小,一般为10°以下,发射光源通过该圆锥反射镜反射后,得到一环形光,再讲过遮光筒对反射光束的约束,在接收屏上得到一圆形环带光斑,环带光斑的粗细取决于发射孔径光阑和遮光筒的约束。该发射光打到垂直于圆锥轴线上的接收屏上后,得到一圆形光斑。摄像头置于圆锥反射镜之前,但不会阻挡圆锥反射镜的发射光,经圆锥发射镜反射后发射光的半角θ1小于摄像头的水平视场半角θ2,摄像头能够拍摄到光斑的完整形状,由图像处理单元进行处理,经过传输单元输出视频图像和测得距离数据,其中θ1=θ。摄像头中的图像处理单元提取圆形光斑的特征,计算出直径在水平方向所占像素个数m,通过l*tanθ1/(l*tanθ2)=m/m,其中θ1、θ2分别为发射光的半角、水平视场半角。m为图像传感器有效感光区域在水平方向的像素总数目,l和l分别为接收面距离圆锥镜虚拟原点和距离摄像头虚拟原点尺寸,两虚拟点间距为h,则有l=l+h,h需要提前确定,确定的过程如下,当接收板距离圆锥镜虚拟原点在l3处时,测得光斑直径在水平方向所占像素数为m3,当为l4时测得所占像素点数为m4,则分别带人l*tanθ1/(l*tanθ2)=m/m,l=l+h,则可求得h。则l*tanθ1/(l*tanθ2)=m/m变为(l-h)*tanθ1/(l*tanθ2)=m/m,因为h、θ1、θ2、m均为已知,m可以通过计算求得,因此可以计算出l,即接收面距离摄像头虚拟原点尺寸。
测距时光源开闭前后分别得到一幅图像,光源开启前拍摄的一幅图像作为背景图像,光源开启后拍得图像不仅包括光源开启前图像,还包括光斑图像,将光源开闭前后的两幅图像做差,则可得到光斑的图像。基于此原理将两幅图像做差,提取出光斑环带特征,计算出光斑直径所占的像素点数。利用公式(l-h)*tanθ1/(l*tanθ2)=m/m,选取距离已知的两个点l1和l2,分别带入该公式,求出h,则后续求l时,对该装置而言,h值为已知值。θ1、θ2、m也为已知值,m是根据成像计算出的像素点,则将以上值带入(l-h)*tanθ1/(l*tanθ2)=m/m,即可求出唯一未知值l,即测得距离值。
以上所述仅是本发明的优选实施方式,应当指出的是,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。