一 开发初衷
基于博士前期的课题,我需要开发一套3D扫描仪算法,完成我的HDR高反光物体三维重建研究。下面是我自己开发的一套3D结构光扫描仪,点云效果如下:
目前常见的高精度主动式重建算法,主要分为:ToF激光雷达、三维结构光(散斑、线、面)、相位偏折术、白光干涉仪、共聚焦等算法。在调研了一圈之后,我发现:
ToF激光雷达:由于光的传播速度很快,所以分辨率较低,很难做到μm级,SLAM导航里用的比较多。
3D结构光:投影编码图案、解码图案(可以是散斑、线、或者面),再利用双目相机拍照,利用三角法进行重建,精度可以做到1-100μm,工业上用的比较多,主要测量漫反射物体。
相位偏折术:该技术比较前沿,主要测量镜面反射物体,通过屏幕投影图案,相机拍照,计算物体表面的梯度,再进行梯度积分,获取物体型面,可以达到100纳米级。
白光干涉仪:相移干涉法使用特定波长范围内的光源来确认目标面反射光和参考面反射光之间的光干涉,需要复杂的精密仪器,适用于小视场、高精度的场景,可以达到亚纳米级别。
共聚焦原理:距离不同,物体成像清晰程度不同,通过累积不同焦平面的图像序列,计算物体表面形状。视场同样较小,精度稍逊于白光干涉仪,但胜在能够提供全彩图像。
在综合比较不同重建算法后,我决定实现3d结构光重建算法,而其又分为:散斑、线、面结构光技术,如图1所示:

散斑结构光:广泛应用在如:iPhone前置红外结构光传感器、Intel RealSense D435i深度传感器等。用在人脸重建、SLAM导航等精度要求较低的场合。
线结构光:通过检测激光线的中心,再利用三角法进行重建。这类方法针对高反光物体重建较好,并且精度较高。但是需要说明的是,由于每条激光线只能标记1条线上的目标点,因此需要贴标志点来辅助定位,或者是借助激光跟踪仪来确定相机位置,从而拼接所有点云,这在测量上带来了不方便。
面结构光:通过投影仪投影编码图案,解码标记区域,再利用三角法进行重建。这类方法扫描速度快、使用方便,精度与线结构光相近,但问题是:容易受到高反光区域的影响,不如线结构光。
二 实现功能
综合考虑后,我决定从零实现《面结构光技术》,来搭建一套属于自己的3D扫描仪,先来看扫描完得到的点云:
在重建精度上,与商业3D面结构光相机精度相当,我们DIY的硬件,包括DLP3010投影仪和2台130W像素海康工业相机:

结构光控制工具箱:

提供:
相机曝光、拍照、同步触发设置
投影仪写入、投影图案功能
多光谱扫描(RGB)、HDR扫描
结构光算法工具箱:

实现包括:
相移法+互补格雷码:图案生成+解码
单目逆向机法:标定+重建
双目三角法:标定+重建
高精度单目畸变矫正算法
非线性畸变矫正算法
HDR高动态范围重建
看一下重建的效果:

高反光重建:

三 完整技术栈
如想要学习该技术,想要转行3D视觉技术的同学,推荐报名(3D视觉工业领域,绝对值得深耕,这一行属于算法行业,对一个专家的需求远远大于一群干活的,很少所谓的35岁IT程序员被裁员的怪圈。如想要转行,请趁早!):

四 销售产品
如感兴趣,可联系客服购买,我们提供全套的标定+重建+点云滤波、显示的QT源码,高度自主可控,适合于下列客户:
DIY产品:结合3D相机,开发属于自己的产品,例如:机械臂抓取、PCB三维测量、人体视觉测量等场景。
高校科研:在结构光3D重建领域,展开各项研究,承接各项横向、纵向课题,需要用到3D信息完成相应任务。
相较市面上其他扫描仪,我们的优势主要是:代码完全开放、配套原理讲解,并且整个代码在Windows平台下开发,适配性广泛。
目前我们提供下述产品:

同时配套相应各种测量视场的高精度结构光圆环标定板:

如需购买:请联系V:cv3d007,咨询相应报价!
直播主题
我DIY了一台3D结构光扫描仪
主讲嘉宾
天涯居士
主要从事实时、高动态范围的结构光技术研究。
多篇成果被SCI期刊收录。
直播内容

3D视觉工坊联合主讲老师天涯居士,历时数月精心打造的《从零搭建一套结构光3D重建系统高阶实践班(C++)》 ,助力大家快速高效学习结构光3D重建,少走弯路。认真学完本门课程,你将相当于拥有3~5年结构光3D重建开发经验。
3D视觉工坊平台矩阵

大家有特别想了解的,可以提前在底部留言,直播间老师会重点关注解答。