进阶版:单相机(单目)散斑结构光-三维重建(3D-reconstruction)——加速/实时计算、精度/标定、双光融合、结构变形矫正、深度图后处理等(三)

本文概述了单相机散斑结构光的三维重建技术,包括原理、计算过程,以及在实际应用中遇到的加速、实时性、精度标定、双光融合、结构变形矫正和深度图后处理等问题及其优化策略。
摘要由CSDN通过智能技术生成

系列一:单相机(单目)散斑结构光-三维重建(3D-reconstruction):综述、原理、计算过程(一)_单目结构光三维重建 c++-CSDN博客

系列二:

单相机(单目)散斑结构光-三维重建(3D-reconstruction):示例源码(二)-CSDN博客

CSDN2024424239331

先上个嵌入式运行效果,不同精度计算方案,帧率约10~60fps可调,提供芯片级解决方案一条龙服务:

本章节简单讲述散斑结构光在应用中的几个实际问题:

一、加速/实时

系列二中的代码使用CPU,单张图耗时以分钟记。优化有两个方向:1、算法优化。2、硬件加速。

1、3D恢复算法优化:

主要耗时瓶颈是遍历计算匹配代价(这一点其实与双目是一样的)。主要优化手段有:

a、匹配代价可使用积分图的方法,如ZNCC也可以使用积分图进行优化;

b、在空间上,或时序上使用粗细搜索,是计算匹配代价中常用的方法,即以上一次(时序)或周围(空间)散斑点的匹配结果为粗搜索(coarse-search),在初值附近再进行细搜索(fine-search)。

2、硬件加速:

a、PC端使用GPU,这就不展开了,GPU已经非常强大,跑到100fps也没问题。且匹配代价的遍历并行计算非常适合GPU。

b、嵌入式端CPU计算使用neon等加速手段,强如3588,算法优化后跑深度图的360P全图也只能到约3~5fps。

c、>5fps,芯片级加速,国内除奥比外,仅有极少数SOC供应商有该能力。

说白了,在嵌入式端像奥比一样想跑大分辨率的实时,没得芯片是不行滴。

二、绝对精度/标定

使用散斑结构光,偏低精度应用居多(毫米级),故通常对精度没有特别苛刻的需求。通常对其重建精度的描述分为相对精度、绝对精度。

相对精度:

        拍摄一个平坦的平面,由于散斑的空间分布及算法的窗口作用,重建得到的往往是一块带有离散点或不平坦的平面,噪声就描述了相对精度。通常与算法本身、算法参数、散斑质量等都有关系。这个精度通常与距离的平方成反比,与焦距、基线成正比。故散斑结构光在远距离的精度会大幅缩水,基本只能达到cm级。

绝对精度:

        将物体摆在1米处,通过深度计算解算出其在1.01米,则绝对误差在1%。该项误差与参考图标定,基线的精度等都有关系。通常在3%以内,精确标定误差基本可控制在0.5%以内。注意,这个误差在不同距离是会变化的。

三、双光融合

        通常部分带有RGB模组的方案,会将彩色图像贴到点云上。通过RGB模组与IR模组的双目标定,即可完成该步骤,有较多资料,不再赘述。

四、结构变形矫正

        对结构光模组来说,在实际应用中,最为致命的是结构的变动导致标定参数的变化。由于单目结构光没有类似双目中极线矫正的步骤,而是靠结构来保证参考图、场景图的同名点位于同一行号附近。即使有,轻微的结构变动,也会导致原搜索行号,无法对齐。

        而通常为了节省计算量,散斑结构光搜索同名点仅会搜索附近少量的行,通常不超过+-5行。轻微的角度变动,就可能导致无法找到同名点,进而无法输出深度图。通常考虑添加自校正模块解决该类问题,结构上也可通过分体式等方式尽量避免结构变形问题

五、深度图后处理

        通常包含去噪、伪彩图、空洞补充等算法。点云相关,一般使用PCL库进行处理。也有较多的资料,不再赘述。

  • 22
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值