点击上方“小白学视觉”,选择加"星标"或“置顶”
双目三维光学测量硬件系统结构设计
光学三维测量是一项集机械,电气,光学,信息工程技术于一体的前沿技术。该技术应用光学成像原理,对现实世界的物体进行扫描,通过复杂的数据分析、数字图像处理得到目标物体的三维形态数据。该技术几乎不受目标物体的形状限制,经过处理的虚拟数据具有广泛的应用价值。本次设计课题为双目三维光学测量硬件系统设计。本文以格雷码结构光三维测量为编码原理,用SolidWorks建立三维模型,MeshLab处理点云数据图像。硬件方面,除了PC,核心器件为美国德州仪器公司研发的DLP4500系列投影仪,以其先进的DMD(数字微镜器件)技术进行光栅的投射。相位移基本算法:通过采集10张光栅条纹图像相位初值,来获取被测物体的表面三维数据。
关键词 三维测量;光栅投影;格雷码;结构光;标定
测量系统原理
三维扫描系统主体是德州仪器研发的DLP4500投影仪,投影仪包括USB接口连接PC,电源接口也是连接到计算机,最后一个接口通过触发线连接到相机的相应触发引脚,相机也有一个USB接口连接到计算机来传递图像。
本系统由一个相机和一个DLP投影仪组成采用投影光栅法进行三维测量。DLP投影仪向被测物体投射一组光栅光,光栅图像强呈正旋分布,用相机拍摄被测物体上形成的变形光栅图像,然后利用拍摄得到的光栅图像,根据相位计算方法利用拍摄到的光栅图像处理得到光栅图像的绝对相位值,然后进行标定,最后根据标定好的系统参数根据绝对相位值分析计算出被测物体表面三维点云数据。相位移基本算法:通过采集10张光栅条纹图像相位初值[6],来获取被测物体的表面三维数据。这种方法算法比较复杂,操作也复杂,精度比激光扫描稍微低些。如果光栅条纹图像光强是标准正线分布,那么分布函数为:
DLP投影仪的核心是DMD,即数以万计的数字微镜器件,高亮光源通过投射光栅到微镜器件,然后反射通过投影镜头投射到被测物体。在光学三维测量时,通常使用二进制编码和格雷码(循环码编码),而格雷码编码多被用在投影光栅来测量空间物体,光栅编码的方式还有许多,DLP采用格雷码编码。
20世纪,法国工程师发明了格雷码编码,后用于电报的A/D转换被申请专利而得名。一组编码中,若任意两个相邻的代码只有一位二进制数不同就成为格雷码。格雷码具有可靠性,因为相邻位转化值变动一位,所以能达到错误最小化。光栅图像的解码原理是首先将格雷码编码光栅,相机拍下光栅投射到被测物体后的位移变形,对光栅图像进行二值化处理,通过解码得到物体表面矩阵及参考面格雷码矩阵,将编码条纹于原光栅编码相减,差值乘以系统结构常数可得到条纹的平移距离,再根据相似三角形原理即可计算出物体实际高度[8]。
系统连接示例
相对应以上原理图,德州仪器提供了数字光处理3D扫描仪和映美精公司生产的工业相机,相机上安装了镜头,本课题硬件连接参照该方式进一步优化调整。
相机标定程序
三维机器视觉参考设计应用程序允许用户快速创建一个3 d扫描仪;完整的标定、安装和采集。应用程序生成标定需要校准3 d扫描,以及LightCrafter 4500评估模块自带的标定和结构光模式。准备标定板和LightCrafter 4500评估模块以后,用户可以调整相机和投影仪。标定程序完成后,应用程序准备进行三维扫描。连接时确保摄像机和投影仪有足够的距离。相机和投影仪到被扫描对象所成角度应该由20到45度。
打开3D_Scanner_LCr4500_PGcam.exe应用程序,输入指令来进行操作。输入指令“1”: “Generate camera calibration board and enter feature measurements”,打印提示位置找到的相机标定板,使打印好的标定板平面白色表面比投影面积大,在获得标定的相机标定板表面后,在命令行输入“1”继续。相机标定板现在必须测量它的尺寸并进入命令行。首先测量相机标定板的总高度,值输入到命令行。重复相同的过程校准板的宽度。注意:用于标定板的测量单位将定义生成的点云的单位。
进入菜单选项“4”启动相机标定。按照提示和在整个过程中屏幕上的警告。注:相机标定数据已经存在。如果怀疑校准数据,或使用不同的相机,输入“1”重新标定相机。输入“0”保存相机标定数据。
相机视图窗口将会出现在电脑主屏幕。保证相机标定板完全在拍照框架内,缩小光圈到尽可能低,同时仍然能够辨别校准板上灰色和白色的方块并最小化所有可见光源,确保焦点的投影面积,锁定光圈和焦距。注意:如果这一步之后相机的光圈大小或焦距是改变了,摄像机标定程序必须再次执行。
单击住相机视图窗口在主机PC和验证标定板在获取焦点。从现场相机机视图窗口,放置标定板在不同的角度,不同的相机的视图和按下空格键来捕获图像。总共需要十个校正图像。试一试许多地区的相机,和标定板的角度,找到最好的校准结果。在标定中移动相机在某一点是可以的。
校准过程估计镜头焦距,焦点,透镜畸变,翻转和旋转的摄像机相对于校准。校准过程将生成一个二次投影错误。二次投影错误是理想的,但是一个错误低于2应该是足够的典型应用。如果二次投影错误不是满意的,相机校准程序必须重新执行。
下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。
下载2:Python视觉实战项目52讲
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。
下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。
交流群
欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~