一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于SIFT流单帧条纹投影高动态范围误差补偿方法

2023-01-06 02:37:19 来源:中国专利 TAG:

基于sift流单帧条纹投影高动态范围误差补偿方法
技术领域
1.本发明涉及一种基于sift流单帧条纹投影高动态范围误差补偿方法,属于数字图像处理和三维测量技术领域。


背景技术:

2.三维测量是机器视觉领域的研究热门之一,其中非接触式的三维测量因其更易在各种实际场景中使用而发展迅猛。主流的非接触式三维测量技术有飞行时间、立体视觉、激光雷达成像、相干成像、结构光法等等。条纹投影轮廓术(fpp)作为结构光法中的代表技术之一,因为其具备高精度、高测量速度以及简易的设备要求的优势而广泛应用于工业检测、安全防护和生物医学等领域。
3.传统的fpp系统仅需一个投影仪和一个相机即可构建,测量时投影仪需要投影多帧(至少3帧)条纹图像来计算所需的相位,然后结合预先标定好的设备参数来恢复物体的三维信息。这个过程中,被测物体通常要保持静止或者与相对静止状态,因为当测量运动的物体时,若相机的抓图速度不足以忽略物体的运动,相机捕获到的多帧条纹图像中会引入运动误差,这将极大的影响最终的三维成像质量。也就是说,使用多帧条纹图像的fpp技术(多帧fpp)并不适用于测量运动的物体,虽然研究者们已经尝试利用运动跟踪、二值条纹编码、彩色条纹编码等方式来尽可能消除运动误差的影响,但这些方法本身的限制因素也使得其不利于应用到实际场景。
4.不同于多帧fpp,使用单帧条纹图像的fpp技术(单帧fpp)不会受到运动误差的影响,因此其在运动物体的三维测量上应用广泛。尤其随着近年来深度学习技术的逐渐成熟,基于深度学习的单帧fpp在测量精度上也相较传统的基于变换的方法有了很大的提升,这使得这一技术在实际应用中变得更具优势。但是,在测量过程中的高动态范围(hdr)问题依然是单帧fpp技术所面临一个挑战。所谓的hdr问题,究其根源是因为fpp系统所用的数字相机的光照度响应是非线性的。对于一些表面反射率较高或者分布不均匀的物体,其接受投影仪的光照并反射到相机时,物体的表面会出现一些高光或者黑暗区域,一旦这些区域的光照度位于相机响应曲线的非线性阶段,那么在成像时这些高光或者黑暗区域就会产生无法反应物体表面真实信息的错误像素值。hdr问题所导致的错误像素值会显著的影响相机捕获的条纹图像的正弦性,相应地,通过条纹图像所恢复的相位以及由相位信息所求得的三维深度值也会受到明显的影响,这对于精确的三维测量是极为不利的。目前主流的hdr处理方法主要是多帧融合法,这类方法通常利用在不同的相机曝光或者不同的投影光强度下捕获的多帧条纹图像来融合出没有hdr问题影响的正常条纹图像,然后用融合后的条纹图像进行相位解算。这种方法虽然效果显著,但是会大大降低测量的灵活性,而且很显然无法作用于运动的物体。因此,探索一种既能有效解决单帧fpp的hdr误差补偿问题又能保持测量过程的灵活性的方法是很有必要的。


技术实现要素:

5.发明目的:针对上述现有存在的问题和不足,本发明的目的是提供一种基于sift流单帧条纹投影高动态范围误差补偿方法,对于自由度较高的运动物体,仅使用一帧投影条纹图案,相机曝光不变,得到测量物体的三维图像。将通用深度学习网络嵌套进整个测量过程当中,保证测量过程的稳定性,以及灵活性和测量精度,同时能够避免hdr问题的不良影响。
6.技术方案:为实现上述发明目的,本发明采用以下技术方案:一种基于sift流单帧条纹投影高动态范围误差补偿方法,包括如下步骤:步骤1:预训练好一通用深度学习网络,使用投影仪对待测运动物体进行连续投影,投影的每一帧均固定预设正弦条纹图像,再通过相机对投影仪的触发信号连续抓图,得到一组由20张捕获的条纹图像构成的原始条纹图像序列;步骤2:利用sift流算法,即以条纹图像作为配准的目标,序列中剩余的条纹图像全部配准至对应的相机视角下,得到配准后条纹图像序列;步骤3:对步骤2得到的配准后条纹图像序列进行筛选,选出包括在内的最贴近5步相移条纹分布的一组条纹图像,组成最优化序列;步骤4:将步骤3得到的最优化序列输入至步骤1中已预训练好的通用深度学习网络中,输出用于求解条纹图像所对应的相位的中间量,即输出正弦分量以及余弦分量,两式中b为条纹图像的条纹调制度,为条纹图像所对应的相位;步骤5:将步骤4输出的正弦分量m和余弦分量d代入如下公式:,即可计算出条纹图像所对应的相位,再基于空域相位展开法或几何约束法对相位进行相位展开得到条纹图像所对应的绝对相位,结合标定的设备参数从所述绝对相位中恢复出待测物体的三维信息。
7.进一步的,所述步骤1中的通用深度学习网络为改进型u结构神经网络,保持网络隐藏层结构不变,改变u结构神经网络的输入层和输出层的通道数,则得到所述改进型u结构神经网络。
8.进一步的,所述步骤4中通用深度学习网络的网络输入通道数为5,输出通道数为2。
9.进一步的,所述步骤1的待测运动物体在相机的视场范围内,从左到右或从右到左单方向移动,在相机的景深范围内包括前后运动和-10
°
~10
°
的旋转运动。
10.进一步的,所述步骤2具体步骤如下:对原始条纹图像序列
的任一帧作为配准目标进行逐帧配准,将中的条纹图像逐一输入步骤1中预训练好的通用深度学习网络。去除图像中的条纹部分而只保留背景信息,网络逐一输出去除条纹的背景图像后组成背景图像序列;2)以背景图像作为目标图像,通过双层信念传播算法来优化如下能量函数:算法来优化如下能量函数:算法来优化如下能量函数:,式中和分别为背景图像与所对应的128维sift描述子图,为像素点,为背景图像与之间的sift流向量图,为的4邻域集,为邻域中除外的像素点,为小位移项系数,为平滑项系数,和均为用于调控流向量精度的阈值。最优化上式后即可得到背景图像与之间的sift流向量图;3)由于序列和序列之间一一对应,同样为条纹图像与之间的sift流向量图,通过即可将配准至视角下,配准后的条纹图像与原图像之间的关系为:,原始条纹图像序列中的全部图像完成配准后即可组成配准后的条纹图像序列。
11.进一步的,所述步骤3中具体步骤如下:用峰值检测的方法计算出条纹图像中正弦条纹分布的实际像素周期t,再利用峰值检测的方法计算出条纹图像中的正弦条纹分布相对条纹图像的实际像素位移量,再代入如下公式中:,筛选出最贴近5步相移条纹分布的一组图像,即最优化序列。
12.有益效果:与现有技术相比,本发明具有以下优点:(1)不像现有的hdr处理方法,需要被测物体保持静止,且需要不断调整设备采集参数,来获得多帧灰度分布不同的用于融合的图像。本发明基于物体运动所带来的相机相对视角变化来获取灰度分布不同的图像序列,设备参数仅需预先调整好一个合适值即可在测量过程中一直保持不变,可以测量运动的物体。提高了测量的稳定性和灵活性,简化了测量过程。
13.(2)本发明采用了sift流算法来配准采集到的运动物体图像序列,由于sift流算法对场景中物体的缩放、形变、旋转、视差变化具有较好的鲁棒性,所以本发明在能够测量运动物体的同时不对物体运动姿态有较大的限制,物体在平移运动的过程中带上一定的旋转、尺度和视差变化并不会影响最终的测量效果,更有利于实际应用。
14.(3)本发明在求解相位时实际使用了包含5帧图像的获取至单帧条纹投影的最优化条纹图像序列,且求解时结合了深度学习技术,故本发明求解的相位不仅可以避免局部hdr问题的影响,而且抗噪声能力更强,相位整体精度相较传统的单帧fpp更高,相应的三维测量精度也更高,在实际应用中的测量效果更佳。
附图说明
15.图1是本发明的步骤流程示意图;图2是本发明的步骤2中基于sift流算法的配准流程示意图;图3是本发明的步骤4中学习对应相位的计算中间量的流程示意图;图4是本发明的实施例的改进型u结构神经网络结构示意图;图5是本发明的实施例的配准效果示意图,图中:(a)为筛选后的5帧原条纹图像序列,(b)为对应的配准后序列,(c)为(b)中框选区域的局部放大图;图6是本发明的实施例的三维成像效果示意图,图中:(a)为本发明的方法实验结果示意图,(b)为传统基于深度学习的单帧fpp所示的三维重建效果示意图。
具体实施方式
16.下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本技术所附权利要求所限定的范围。
17.如图1流程所示,一种基于sift流单帧条纹投影高动态范围误差补偿方法。针对要在保持单帧fpp测量灵活性的前提下,能够解决其面临的局部hdr问题影响的需求,本发明提出了一种基于sift流的单帧条纹投影高动态范围误差补偿技术,且鉴于当前融合了深度学习技术的单帧fpp在测量精度上的明显提升,其中还融入了深度学习网络结构。步骤如下:步骤1:原始图像数据获取:投影仪连续投影一帧固定的预设正弦条纹图像至一个运动的被测物体,相机接受投影仪的触发信号连续抓图,最终得到一组由20张捕获的条纹图像构成的原始条纹图像序列;
步骤2:利用sift流算法对进行配准:若以条纹图像作为配准的目标,则序列中剩余的条纹图像全部配准至对应的相机视角下,最终得到配准后的条纹图像序列;步骤3:对配准后的条纹图像序列进行筛选,从其中选出包括在内的最贴近5步相移条纹分布的一组条纹图像组成最优化序列;步骤4:将得到的最优化序列输入至已经预训练好的通用深度学习网络中,网络将输出用于求解条纹图像所对应的相位的中间量,即输出正弦分量以及余弦分量,两式中b为条纹图像的条纹调制度,为条纹图像所对应的相位;步骤5:将所设计的通用网络输出的正弦分量m和余弦分量d代入如下公式:即可计算出条纹图像所对应的相位,而后基于空域相位展开法或者几何约束法对计算出的相位进行相位展开得到条纹图像所对应的绝对相位,最后只需结合预先标定好的设备参数从绝对相位中恢复出待测物体的三维信息即可。
18.技术细节:所述步骤1中设备固定不动,投影仪和相机的曝光时间调整至适宜值后在整个图像采集过程中保持不变,为了保证后续配准过程的准确性,待测物体的运动姿态需要受到一定限制,即要求待测物体在相机的视场范围内从左到右或从右到左单方向移动,物体单方向移动的过程中可以在相机的景深范围内包含一定的前后运动,也可以包含不超过-10
°
~10
°
范围的旋转运动。
19.所述步骤2中配准时可以将原始条纹图像序列中的任意一帧作为配准目标,后续步骤都以配准目标作为输出对象,即若以作为配准目标,则最终将得到对应的相位以及三维结果,也就是说,将序列中的条纹图像逐一作为目标的话即可得到被测物体逐帧运动过程对应的三维结果。
20.所述步骤2中对原始条纹图像序列的具体配准流程如下(以配准目标为例):1)将中的条纹图像逐一输入预训练好的通用深度学习网络,去除图像中的条纹部分而只保留背景信息,网络逐一输出去除条纹的背景图像后组成背景图像序列;2)以背景图像作为目标图像,通过双层信念传播算法来优化如下能量函数:
,式中和分别为背景图像与所对应的128维sift描述子图,为像素点,为背景图像与之间的sift流向量图,为的4邻域集,为邻域中除外的像素点,为小位移项系数,为平滑项系数,和均为用于调控流向量精度的阈值。最优化上式后即可得到背景图像与之间的sift流向量图;3)由于序列和序列之间一一对应,同样为条纹图像与之间的sift流向量图,通过即可将配准至视角下,配准后的条纹图像与原图像之间的关系为:,原始条纹图像序列中的全部图像完成配准后即可组成配准后的条纹图像序列。
21.所述步骤3中对配准后的条纹图像序列进行筛选的步骤如下:1)用峰值检测的方法计算出条纹图像中正弦条纹分布的实际像素周期; 2)同样利用峰值检测的方法计算出条纹图像中的正弦条纹分布相对条纹图像的实际像素位移量; 3)根据以下原则从中筛选最贴近5步相移条纹分布的一组图像:,筛选出的条纹图像组成最优化序列。
22.所述步骤2和步骤4中使用的通用深度学习网络为本发明所设计的改进型u结构神经网络,在保持网络隐藏层结构不变的情况下,只需改变输入层和输出层的通道数即可将分别应用于步骤2和步骤4的相关处理过程中,本发明在步骤2中网络
输入通道数和输出通道数都为1(对应网络可写成), 在步骤4中网络输入通道数和输出通道数分别为5和2(对应网络可写成)。
23.如图1所示,在具体实施时,本发明提出的技术遵循以下过程:1)采集运动物体的条纹图像序列。用搭建好的fpp设备捕获从被测运动物体反射回的变形条纹图像序列,期间投影仪和相机的曝光时间保持固定(仅需保证采集到的图像中被测物体的平均灰度值为180左右即可),被测物体在相机视场范围内从左往右单方向运动,物体运动时可以附带一定的景深、旋转和视差变化,且不要求匀速运动,仅需保证捕获的序列中图像数目不少于20帧且被测物体完全位于相机视场范围内即可;2)基于sift流算法得到配准后序列。按照图2所示的配准流程对采集到的原始条纹图像序列进行配准得到配准后的条纹图像序列,配准过程中原始序列需要经过预训练好的进行去条纹处理,目的是排除计算sift流时条纹部分的干扰,提高配准精度。
24.3)对配准后序列做筛选得到最优化序列。前面步骤捕获20帧序列图像是为了得到足够的灰度分布不同的条纹图像用于处理hdr问题,但实际使用时20帧的数量是冗余的,本发明进行的大量验证实验总结出的结论为仅需取其中5帧最贴近5步相移分布的条纹图像即可达到最佳的测量效果。
25.4)输入后得到计算中间量。如图3所示,将前面的到的最优化序列输入到预训练好的即可输出最终计算相位所需的正弦和余弦分量,步骤2和4中所用网络均经过预训练测试,后续将简要说明本发明具体实施时的预训练方法;5)计算相位,进行三维重建。将中间量代入公式即可得到所需的相位,但该相位为分布在[-π, π)之间的包裹相位,需进行相位展开得到绝对相位(本发明中采用几何约束法进行相位展开,实际应用时可灵活选用展开方式),之后再结合圆点标定得到的设备内外参数即可计算最终的三维结果。
[0026]
本发明所设计的通用网络的结构如图4所示。输入图像首先经过一个卷积块扩展为图像尺寸不变的64维特征图,然后经过由4组核大小2
×
2的maxpool最大池化层 卷积块组成的编码器结构进行进一步特征提取得到图像尺寸缩小16倍的1024维特征图,之后再经过由4组上采样模块 卷积块组成的解码器结构对1024维特征图进行上采样得到64维特征图,编码器结构与解码器结构在相同图像尺寸的处理层之间有对应的4次跳层特征拼接用以保证边缘特征的完整性,最后再经过一个核大小1
×
1的conv卷积层即可将64维上采样特征图转化为输出图像。不同于传统unet在编码-解码结构中仅使用单一的conv卷积层来提取特征,本发明采用添加了batch normalization层的卷积块结构来提取特征,卷积块由2组核大小3
×
3的conv卷积层 batch normalization层 relu激活层结构组成,batch normalization层的加入既可以进一步处理数据分布不均问题的又能防止梯度爆炸和梯度消失,加入了batch normalization层的卷积块在提高网络整体稳定性的同时还可以扩展特征图的维度提高最终的输出质量。此外,本发明的在最开始的输入层先对输入图像采用卷积块进行了特征扩展,将原输入扩展为了尺寸不变的64维特征图后再进行编码-解码处理,这大大丰富了网络结构中的特征量,同样有利于提高最终的输出品质。还有,本发明在解码器结构中采用一个上采样模块而不是单一的核大小2
×
2的convtranspose转置
卷积层来对编码后的特征图进行上采样,上采样模块由缩放因子为2的upsample上采样层 核大小3
×
3的conv卷积层 batch normalization层 relu激活层结构组成,设计该模块的目的与前面提到的卷积块类似。在本发明具体实施步骤中,步骤2与步骤4都有用到该通用网络,其中步骤2中为1输入通道和1输出通道的 (对应图4中),步骤4中为5输入通道和2输出通道的 (对应图4中),两者在实际使用前都要经过预训练。预训练数据采集时,要手动将被测物体按照前述原则在相机视场内小间距移动20个位置,每个位置处捕获一组12步相移条纹,而后取每个位置相移条纹的第1帧组成原始条纹图像序列,接着按照前述实施步骤处理后输入网络进行训练即可,训练时相应的ground truth由12步相移算法求得,为了保证训练出的参数模型的泛化性,本发明使用了150个包含不同材质、纹理和色彩的物体采集了150组数据用以网络训练。
[0027]
为了说明本发明的有效性,图5中展示了一个受到hdr问题影响的运动物体实施例的配准效果,图6中展示了其最终的三维重建效果。对比图5(a)和图5(b)可以看出,筛选完的5帧条纹图像被准确的配准至第1帧目标图像的视角下,且由于物体运动的影响,5帧图像中条纹的分布各不相同,对应本发明的筛选原则,这5帧图像中的条纹分布大致符合5步相移分布,这一点在图5(c)的局部放大图中可以明显看出。而随着条纹分布的变化,在第1帧图像中因hdr问题影响而出现饱和像素的区域,在后几帧中会因为暗条纹位置的变化而逐块转化为正常的像素值,也就是说,第1帧图像中的出现饱和像素的无效灰度信息区域在后几帧中可以找到对应的有效灰度信息,因此,这样的5帧条纹是可以用来处理hdr问题的。
[0028]
从图6(a)为本发明的方法实验图和图6(b)为传统基于深度学习的单帧fpp所示的三维重建效果,对比可以明显看出,采用本发明提出的基于sift流的单帧条纹投影高动态范围误差补偿技术,可以在重建运动物体的同时避免hdr问题的影响,而作为对比的传统的基于深度学习的单帧fpp的重建效果中hdr问题的影响十分显著,而且本发明技术所重建的三维结果在整体精细度上也要比传统的基于深度学习的单帧fpp技术更好。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献