CN114820916B - 基于gpu的大型场景三维稠密重建方法 - Google Patents

基于gpu的大型场景三维稠密重建方法 Download PDF

Info

Publication number
CN114820916B
CN114820916B CN202110093576.7A CN202110093576A CN114820916B CN 114820916 B CN114820916 B CN 114820916B CN 202110093576 A CN202110093576 A CN 202110093576A CN 114820916 B CN114820916 B CN 114820916B
Authority
CN
China
Prior art keywords
matching
dimensional
image
pixel
images
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110093576.7A
Other languages
English (en)
Other versions
CN114820916A (zh
Inventor
刘怡光
孙尚
郑豫楠
史雪蕾
徐振宇
刘磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan University
Original Assignee
Sichuan University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sichuan University filed Critical Sichuan University
Priority to CN202110093576.7A priority Critical patent/CN114820916B/zh
Publication of CN114820916A publication Critical patent/CN114820916A/zh
Application granted granted Critical
Publication of CN114820916B publication Critical patent/CN114820916B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging

Abstract

本发明是一种基于GPU的大型场景三维稠密重建方法,属于计算机三维立体视觉领域。本发明通过利用局部相关性与熵,为二维图像中的不同像素自动分配合适的匹配窗口大小,以改善对弱纹理区域与随机纹理区域的重建效果;同时使用了兼顾重叠区域与相机参数的临近图像选取策略,为每幅图像选取合适数量的临近图像进行立体匹配;此外本发明在立体匹配中使用自适应多图匹配度集成损失方程来合理使用匹配冗余信息;通过采取以上策略,本发明让重建模型有着较高的精确度与完整度。本发明可在图形处理器(GPU)上并行部署,可实现对大规模场景的高质量快速重建。

Description

基于GPU的大型场景三维稠密重建方法
技术领域
本发明是一种基于GPU的大型场景三维稠密重建算法,属于计算机三维立体视觉领域。
背景技术
三维稠密重建是计算机视觉中的一个重要研究方向,其目的是通过场景的一些二维摄影图像与图像所对应的相机参数恢复出场景的稠密三维结构模型,如点云模型;三维重构在在文物保护、逆向CAD、旅游、虚拟现实等领域都有着广泛的应用;基于深度图融合的三维稠密重建算法的大致流程为先恢复出每一张二维图像中的每个像素的深度信息,并通过对这些深度信息进行融合,最后得到三维模型。
虽然现已有多种算法达到了较好的重建效果,但因在立体匹配中使用的相似度衡量方法仅能衡量局部相似性,当遇到平滑区域(如墙面)与重复纹理区域(如草地)时,使用这些方法往往不能较好地恢复这些区域的结构,扩大匹配窗口可以改善该问题,但如对所有像素均使用较大的匹配窗口,会造成重建结果过于平滑,丢失细节信息,且会消耗大量的计算时间与资源。
因大型场景往往包含较多图像,恢复单张图像地深度值时,若使用所有其它图像来进行立体匹配,会极大地增加内存占用与计算时间;只使用少量临近图像可以改善该问题,但选取合适的临近图像也是一个难题,如两图像相邻过远,会改善重建结果的精度,但两图像重叠区域较少,会让重建结果的完整度降低;如两图像距离过近,会改善重建结果的完整度,但会引入更多的误差。
使用多张图像进行立体匹配可以产生更多的冗余信息,合理地利用冗余信息可以减少重建过程中结果陷入局部最优解的几率,让重建结果得到改善。
发明内容
本发明的目的在于提出了一种基于GPU的大型场景三维稠密重建方法,其可以在保证精确度与完整度的情况下,高效地实现大型场景的三维稠密重建。
本发明的通过局部像素相关性与像素熵值为立体匹配过程中的每一个像素分配合适的匹配窗口大小;同时结合图像重叠区域信息与图像所对应相机参数信息,为每幅图像选取合适数量的临近图像用于立体匹配;最后本发明使用了一种新的损失函数方程,能够更好地集成来自不同邻近图像的匹配信息并改善重建结果。
本发明的基于GPU的大型场景三维稠密重建方法步骤如下所示:
1.读取场景包含的二维图像与图像相对应的相机参数(内参与外参),以及由Structure From Motion(SFM)软件输出的稀疏重建结果。
2.根据局部像素相关性与像素熵值来为每个像素选取合适的匹配窗口大小,从而改善对弱纹理区域与随机纹理区域的重建效果,步骤如下:
1)对于每一幅图像,对每个像素计算不同匹配窗口大小下的熵值,以此来初步判定匹配窗口大小。
2)通过计算每个像素与临近像素的Zero-mean Normalized Cross correlation(ZNCC)值,通过ZNCC值来调整匹配窗口大小。
3.根据图像交叠区域信息与图像所对应相机参数信息为每张图像选取适当数量的临近图像用于立体匹配,步骤如下:
1)通过投影点位置变化过滤掉离所选图像过近的图像。
2)使用重叠区域、基线距离、相机主轴夹角对保留的图像进行排序,并选取前K个图像作为临近图像用于立体匹配。
4.使用SFM输出的稀疏三维点对每幅图像的深度值辅助进行随机初始化。
5.使用基于PatchMatch与红-黑模式(black-red pattern)传播的方法,并使用本发明所提出的损失函数进行立体匹配。
6.为每个像素通过随机扰动产生新的深度值和法向量,并与旧值排列组合,产生新的组合,如新组合能减小匹配损失,则用新组合代替旧组合。
7.重复步骤5和6固定次数。
8.使用几何一致性对重建结果进行过滤,删除错误重建点,同时将所有点反投影至三维空间中,进行融合,最终生成所需点云模型。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施来进行进一步进行描述。
1.读取场景包含的二维图像与图像相对应的相机参数(内参与外参),以及由Structure From Motion(SFM)软件输出的稀疏重建结果。
2.根据局部像素相关性与像素熵值来为每个像素选取合适的匹配窗口大小,从而改善对弱纹理区域与随机纹理区域的重建效果,步骤如下:
1)对于每一幅图像,首先计算以所选像素x为中心,以匹配窗口边长为边长的方形窗口内所有像素的熵值,I(x)为像素x的亮度值,像素亮度值在此被离散化为0-255的整数,H(x)既为所求的熵值;将匹配窗口大小逐渐扩大直至H(x)达到阈值tH,若使用允许的最大匹配窗口仍不能达到tH,则将该像素对应的匹配窗口置为最大匹配窗。
Figure BDA0002912272940000031
Figure BDA0002912272940000038
H(x)=∑z-h(z)log(h(z)) (3)
2)计算每个像素与临近像素的Zero-mean Normalized Cross correlation(ZNCC)值,相邻像素为以所选像素为中心,边长为r的正方形窗口内的像素;统计ZNCC值大于α的相邻像素的个数,若数量小于tα,则将此像素的匹配窗口置为所使用的最大窗口。
3.根据图像交叠区域信息与图像所对应相机参数信息为每张图像选取适当数量的临近图像用于立体匹配,步骤如下:
1)使用τ来过滤距离当前所选图像过小的其它图像,X为SFM软件输出的稀疏三维点,Ci为当前所选图像的相机光心,x′j
Figure BDA0002912272940000032
对应着X与/>
Figure BDA0002912272940000033
在其它图像j上的投影点,集合A代表所选图像与其他图像j均可观测到的三维稀疏点集。
Figure BDA0002912272940000034
Figure BDA0002912272940000035
2)使用ζ对保留的图像进行从小到大排序,并选取前K个图像作为临近图像用于立体匹配,NA是两图像共同可见三维稀疏点的数量,bij为两图对应相机间的基线长度,
Figure BDA0002912272940000036
为两相机主轴夹角。
Figure BDA0002912272940000037
4.使用SFM输出的稀疏三维点对每幅图像的深度值进行辅助随机初始化,当所选像素左上,左下,右上,右下区域均存在SFM软件重建的稀疏三维点所对应的二维特征点,且这些特征点到所选像素的距离小于w,可见图像数量大于v时,选取范围在这些点最小深度与最大深度之间的随机值作为该像素所对应的初始深度值;对于未满足以上条件的点,在根据场景设定的最小深度值和最大深度值间随机选取值进行初始化。
5.使用基于PatchMatch与红-黑模式(black-red pattern)传播的方法,将较优的深度和法向量信息传播至周围像素,进行立体匹配,在匹配过程中使用本发明提出的损失方程,Z(x,j)代表使用x的深度与法向量信息在图像j上计算产生的ZNCC值,C(x,j)代表归一化后的匹配损失值,C(x)为集成后的损失方程,ω为奖励因子以平衡重建结果损失值与该像素可视图像数量。
Figure BDA0002912272940000041
Figure BDA0002912272940000042
6.为每个像素通过随机扰动产生新的深度值和法向量,并与旧值排列组合,产生新的组合,如新组合能减小匹配损失,则用新组合代替旧组合。
7.重复步骤5和6固定次数。
8.使用几何一致性对重建结果进行过滤,删除错误重建点,同时将所有点反投影至三维空间中,进行融合,最终生成所需点云模型。

Claims (1)

1.一种基于GPU的大型场景三维稠密重建方法,其特征主要包含如下步骤:
1)读取场景包含的二维图像与图像相对应的相机参数,以及由Structure FromMotion(SFM)软件输出的稀疏重建结果;
2)通过局部像素的相关性与像素熵值为每幅二维图像中的每个像素分配合适的匹配窗口大小,具体实现步骤为:
步骤A)对于每一幅图像,首先计算以所选像素x为中心,以匹配窗口边长为边长的方形窗口内所有像素的熵值,I(x)为像素x的亮度值,像素亮度值被离散化为0-255的整数,H(x)是所求的熵值;将匹配窗口大小逐渐扩大直至H(x)达到阈值tH,若使用允许的最大匹配窗口仍不能达到tH,则将该像素对应的匹配窗口置为最大匹配窗;
Figure FDA0004187986020000011
Figure FDA0004187986020000012
H(x)=∑z-h(z)log(h(z)) (3)
步骤B)计算每个像素与临近像素的Zero-mean Normalized Cross correlation(ZNCC)值,相邻像素为以所选像素为中心,边长为r的正方形窗口内的像素;统计ZNCC值大于α的相邻像素的个数,若数量小于tα,则将此像素的匹配窗口置为所使用的最大窗口;
3)利用图像间交叠区域信息与相机参数信息来为每幅二维图像选择合适的用于进行立体匹配的临近图像,具体实现步骤为:
步骤A)使用τ来过滤距离当前所选图像过小的其它图像,X为SFM软件输出的稀疏三维点,Ci为当前所选图像的相机光心,x'j
Figure FDA0004187986020000013
对应着X与/>
Figure FDA0004187986020000014
在其它图像j上的投影点,集合A代表所选图像与其他图像j均可观测到的三维稀疏点集;
Figure FDA0004187986020000015
Figure FDA0004187986020000016
步骤B)使用ζ对保留的图像进行从小到大排序,并选取前K个图像作为临近图像用于立体匹配,NA是两图像共同可见三维稀疏点的数量,bij为两图对应相机间的基线长度,θij为两相机主轴夹角;
Figure FDA0004187986020000021
4)使用SFM输出的稀疏三维点对每幅图像的深度值进行辅助随机初始化,当所选像素左上,左下,右上,右下区域均存在SFM软件重建的稀疏三维点所对应的二维特征点,且这些特征点到所选像素的距离小于w,可见图像数量大于v时,选取范围在这些点最小深度与最大深度之间的随机值作为该像素所对应的初始深度值;对于未满足以上条件的点,在根据场景设定的最小深度值和最大深度值间随机选取值进行初始化;
5)使用基于PatchMatch与红-黑模式(black-red pattern)传播的方法,将较优的深度和法向量信息传播至周围像素,进行立体匹配,在匹配过程中使用本发明提出的损失方程,Z(x,j)代表使用x的深度与法向量信息在图像j上计算产生的ZNCC值,C(x,j)为使用像素x的深度信息和法向量在临近图像j上得到的匹配误差,代表归一化后的匹配损失值,C(x)为集成后的损失方程,ω为奖励因子以平衡重建结果损失值与该像素可视图像数量,具体实现步骤为:
步骤A)适当地舍弃邻近边缘部分的重建结果;
步骤B)通过Sigmod方程对使用不同临近图像计算得到的匹配度进行归一化;
步骤C)使用奖励因子ω来平衡匹配度与可见图像数量;
步骤D)为不同的C(x,j)分配不同的权重;
C(x,j)=(1+eγZ(x,j))-1 (7)
Figure FDA0004187986020000022
6)为每个像素通过随机扰动产生新的深度值和法向量,并与旧值排列组合,产生新的组合,如新组合能减小匹配损失,则用新组合代替旧组合;
7)重复5)与6)固定次数;
8)使用几何一致性对重建结果进行过滤,删除错误重建点,同时将所有点反投影至三维空间中,进行融合,最终生成所需点云模型。
CN202110093576.7A 2021-01-22 2021-01-22 基于gpu的大型场景三维稠密重建方法 Active CN114820916B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110093576.7A CN114820916B (zh) 2021-01-22 2021-01-22 基于gpu的大型场景三维稠密重建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110093576.7A CN114820916B (zh) 2021-01-22 2021-01-22 基于gpu的大型场景三维稠密重建方法

Publications (2)

Publication Number Publication Date
CN114820916A CN114820916A (zh) 2022-07-29
CN114820916B true CN114820916B (zh) 2023-05-23

Family

ID=82523893

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110093576.7A Active CN114820916B (zh) 2021-01-22 2021-01-22 基于gpu的大型场景三维稠密重建方法

Country Status (1)

Country Link
CN (1) CN114820916B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104715504A (zh) * 2015-02-12 2015-06-17 四川大学 一种鲁棒的大场景稠密三维重建方法
CN105336003A (zh) * 2015-09-28 2016-02-17 中国人民解放军空军航空大学 结合gpu技术实时流畅绘制出三维地形模型的方法
CN111798505A (zh) * 2020-05-27 2020-10-20 大连理工大学 一种基于单目视觉的三角化测量深度的稠密点云重建方法及系统
CN111968218A (zh) * 2020-07-21 2020-11-20 电子科技大学 基于gpu集群的三维重建算法并行化方法
CN112085845A (zh) * 2020-09-11 2020-12-15 中国人民解放军军事科学院国防科技创新研究院 基于无人机影像的室外场景快速三维重建装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104715504A (zh) * 2015-02-12 2015-06-17 四川大学 一种鲁棒的大场景稠密三维重建方法
CN105336003A (zh) * 2015-09-28 2016-02-17 中国人民解放军空军航空大学 结合gpu技术实时流畅绘制出三维地形模型的方法
CN111798505A (zh) * 2020-05-27 2020-10-20 大连理工大学 一种基于单目视觉的三角化测量深度的稠密点云重建方法及系统
CN111968218A (zh) * 2020-07-21 2020-11-20 电子科技大学 基于gpu集群的三维重建算法并行化方法
CN112085845A (zh) * 2020-09-11 2020-12-15 中国人民解放军军事科学院国防科技创新研究院 基于无人机影像的室外场景快速三维重建装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王莹等.一种提升3维重建精度和效率的图像选择方法.2019,第179-183页. *

Also Published As

Publication number Publication date
CN114820916A (zh) 2022-07-29

Similar Documents

Publication Publication Date Title
KR101319805B1 (ko) 큰 물체의 사진촬영
Eder et al. Pano popups: Indoor 3d reconstruction with a plane-aware network
Galliani et al. Massively parallel multiview stereopsis by surface normal diffusion
Hornacek et al. Depth super resolution by rigid body self-similarity in 3d
Jancosek et al. Exploiting visibility information in surface reconstruction to preserve weakly supported surfaces
Johnson‐Roberson et al. Generation and visualization of large‐scale three‐dimensional reconstructions from underwater robotic surveys
US11328479B2 (en) Reconstruction method, reconstruction device, and generation device
CN104820991B (zh) 一种基于代价矩阵的多重软约束立体匹配方法
WO2012153447A1 (ja) 画像処理装置、映像処理方法、プログラム、集積回路
US20090324059A1 (en) Method for determining a depth map from images, device for determining a depth map
CN107230225A (zh) 三维重建的方法和装置
CN103077509A (zh) 利用离散立方体全景图实时合成连续平滑全景视频的方法
CN108399631B (zh) 一种尺度不变性的倾斜影像多视密集匹配方法
CN108776989A (zh) 基于稀疏slam框架的低纹理平面场景重建方法
EP1063614A2 (en) Apparatus for using a plurality of facial images from different viewpoints to generate a facial image from a new viewpoint, method thereof, application apparatus and storage medium
CN113920275B (zh) 三角网格构建方法、装置、电子设备及可读存储介质
CN114419568A (zh) 一种基于特征融合的多视角行人检测方法
Saxena et al. 3-d reconstruction from sparse views using monocular vision
CN114820916B (zh) 基于gpu的大型场景三维稠密重建方法
KR102220769B1 (ko) 깊이 지도 생성 방법, 깊이 지도 생성 장치, 영상 변환 방법 및 영상 변환 장치
CN108053481A (zh) 三维点云法向量的生成方法、装置和存储介质
CN116092035A (zh) 车道线检测方法、装置、计算机设备和存储介质
CN115619974A (zh) 基于改进PatchMatch网络的大型场景三维重建方法、重建装置、设备及存储介质
RU2716311C1 (ru) Устройство для восстановления карты глубины с поиском похожих блоков на основе нейронной сети
CN112489204A (zh) 基于rgb图像的3d房间布局重建系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant