CN106408653B - 一种面向大规模三维重建的实时鲁棒的集束调整方法 - Google Patents
一种面向大规模三维重建的实时鲁棒的集束调整方法 Download PDFInfo
- Publication number
- CN106408653B CN106408653B CN201610804979.7A CN201610804979A CN106408653B CN 106408653 B CN106408653 B CN 106408653B CN 201610804979 A CN201610804979 A CN 201610804979A CN 106408653 B CN106408653 B CN 106408653B
- Authority
- CN
- China
- Prior art keywords
- camera
- dimensional point
- scale
- dimensional
- equation
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Processing Or Creating Images (AREA)
Abstract
一种面向大规模三维重建的实时鲁棒的集束调整方法,步骤为:对于给定的摄像机姿态和场景的三维点云信息,给出鲁棒的集束调整方程;对于大规模三维重建的集束调整问题,根据摄像机与场景中三维点之间稀疏关系,对大规模集束调整问题进行分解;根据稀疏分解后摄像机正态方程,求解摄像机旋转矩阵和平移向量;将求解出的摄像机信息带入稀疏分解后对应三维点正态方程,求解出世界坐标系下的三维点坐标;将求解出的摄像机参数和三维点坐标信息代入对应正态方程,反复迭代,即获得精确的摄像机姿态和三维点信息。本发明根据摄像机与三维点之间的稀疏性,对大规模集束调整问题进行分解,使得在有限的内存空间内能够求解大规模三维重建的集束调整问题。
Description
技术领域
本发明属于计算机视觉与计算机图形学邻域,具体地,涉及一种面向大规模三维重建的实时鲁棒的集束调整方法。
背景技术
大规模场景的实时鲁棒的三维重建在城市规划、游戏和军事仿真中具有重要的作用。由于场景中存在的光照变化、目标之间的遮挡、采集数据存在噪声等因素的影响,在多视图三维重建过程中,导致难以获取场景的精确模型。现有的一些三维重建系统采用人工方式对场景模型进行修复,操作如此之耗时。人们迫切希望寻找一种鲁棒的集束调整方法对系统生成的三维点云模型进行优化,以便简化人工修复过程,同时获得精确的三维场景模型。
相关的研究论文有:
《一种准线性集束调整方法》
《Multicore Bundle Adjustment》
《Bundle Adjustment in the Large》
《Bundle adjustment—a modern synthesis》
《sba-A Software Package for Generic Sparse Bundle Adjustment》
《A Consensus-Based Framework for Distributed Bundle Adjustment》
相关的专利有:
《复杂场景的二维视频转换为三维视频的方法与系统》
《一种基于光场数字重聚焦的快速三维重建方法与系统》
《一种图像三维重建方法及系统》
虽然现有集束调整方法在大规模场景的三维重建中距离实际应用还有很大距离,但是一些理论思想为我们设计出适用于大规模场景下的实时鲁棒的集束调整方法提供了技术支持。
发明内容
本发明要解决的技术问题是:如何在有限的内存空间下实时鲁棒的求解大规模三维重建的集束调整问题,使得一系列的大规模三维重建变成可能。
为了解决上述技术问题,本发明提出了一种面向大规模三维重建的实时鲁棒的集束调整方法,采用鲁棒的损失函数度量计算值与目标值之间的误差,并根据摄像机与三维点之间的稀疏性对大规模集束调整问题进行稀疏分解;首先计算摄像机参数信息,然后求解三维点云信息,从而用于一系列大规模场景的精确三维重建。
本发明采用的技术方案是:
一种面向大规模三维重建的实时鲁棒的集束调整方法,包括以下步骤:
S1:对于给定的摄像机姿态和场景的三维点云信息,给出鲁棒的集束调整方程;
S2:对于大规模三维重建的集束调整问题,根据摄像机与场景中三维点之间的稀疏关系,对大规模集束调整问题进行分解;
S3:根据稀疏分解后的摄像机正态方程,求解摄像机的旋转矩阵和平移向量;
S4:将S3中求解出的摄像机信息带入稀疏分解后所对应的三维点的正态方程,求解出世界坐标系下的三维点坐标;
S5:将S3和S4求解出的摄像机参数和三维点坐标信息代入对应的正态方程,反复迭代,即可获得精确的摄像机姿态和三维点信息。
其中,所述步骤S1中鲁棒的集束调整方程:采用Huber损失函数度量所求值与目标值之间的误差,避免噪声数据的影响。
其中,所述步骤S2中场景分解的依据为:摄像机与三维点之间存在稀疏性。
其中,所述步骤S3中求解摄像的正态方程(U-WV-1WT)Δci=rci-WV-1rmi所用方法为:LM算法和LDL矩阵分解算法。LM算法采用文献《Levenberg–Marquardt methods withstrong local convergence properties for solving nonlinear equations withconvex constraints》,LDL算法采用《A fast randomized eigensolver with structuredLDL factorization update》。
其中,所述步骤S4中三维点云信息的求解方法为:将摄像机参数带入场景分解后的三维点的正态方程,即可获得三维点云模型。
其中,所述步骤S5中获得精确的摄像机参数和三维点云模型的方法为:迭代优化算法,计算方法为(U-WV-1WT)Δci=rci-WV-1rmi和Δmi=V-1(rmi-WTΔci)。
其中,1)采用Huber损失函数度量计算值与目标值之间的误差避免噪声数据的影响;2)将大规模集束调整问题分解为在有限内存空间内可解的问题;3)将1)和2)同时使用,既能提高时间效率又能增强算法的鲁棒性。
所述的一种面向大规模三维重建的实时鲁棒的集束调整方法,其特征在于,所述步骤S3中采用LM和LDL算法对摄像机参数的正态方程(U-WV-1WT)Δci=rci-WV-1rmi进行求解。其中,U、V和W为分块对角矩阵;Δci为摄像机参数对应的增量;rci为摄像机参数的估计值与精确之间的误差;rmi为三维点参数的估计值与精确值之间的误差。
所述的一种面向大规模三维重建的实时鲁棒的集束调整方法,其特征在于,所述步骤S4中将摄像机信息带入三维点的正态方程,采用反代法计算三维点云信息,计算方法为:Δmi=V-1(rmi-WTΔci)。其中,V和W为分块对角矩阵;Δmi为三维点参数对应的增量;Δci为摄像机参数对应的增量;rmi为三维点参数的估计值与精确值之间的误差。
本发明的有益效果是:
本发明所提出的用于大规模三维重建的实时鲁棒的集束调整方法利用鲁棒的Huber损失函数精确度量误差,避免噪声数据的影响;其次,根据摄像机与三维点之间的稀疏性,对大规模集束调整问题进行分解,使得在有限的内存空间内能够求解大规模三维重建的集束调整问题。
附图说明
图1为本发明一种面向大规模三维重建的实时鲁棒的集束调整方法的处理流程图;
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例仅用于说明本发明,但不用来限制本发明的范围。
本发明公开了一种面向大规模三维重建的实时鲁棒的集束调整方法,通过该方法可以对场景的三维点云模型进行优化,从而获得大规模场景的精确的三维点云模型,应用场景包括:城市规划、三维打印、建筑工程、游戏与军事仿真等。
如图1所示,为本发明一种面向大规模三维重建的实时鲁棒的集束调整方法的处理流程图,图中表示的步骤包括:
a:对于给定的摄像机参数和三维点,鲁棒的集束调整方程如下:
其中,Xi,j表示第i个摄像机下可见的第j个三维点,xi,j表示Xi,j在图像上的投影点,H(·)表示Huber损失函数。
集束调整的目的是使得E最小,最小化表达形式为:
其中,r(P)=F(P)-x,F(x)=Ki[Ri|ti]Xi,j表示P的投影函数,P为参数向量。
首先计算函数F(P)在点P处的一阶泰勒展开式,如式(3)所示.
F(P+Δ)=F(P)+JΔ (3)
令Pi+1=Pi+Δi,由式(3)可知:
F(Pi+1)-x=F(Pi)+JΔi-x (4)
由于F(Pi)-x=ri,因此可以得出式(5)。
ri+1=F(Pi+1)-x=ri+JΔi (5)
令ri+JΔi=0,可以获得式(7)。
JΔi=-ri (7)
根据LM算法,对式(7)进行变换,获得式(8)所示的正态方程(normal equation)。
(JTJ+λdiag(JTJ))Δi=-JTri (8)
至此,可知求解参数向量P的前提是获得每次的迭代增量Δi。因此,由以上分析可知,集束调整的目标是求解如式(8)所示的正态方程的解。
b:根据摄像机与三维点之间的稀疏性大规模集束调整问题进行分解,其稀疏性如图1所示。
P=(P1,P2,…,Pm+n) (9)
J=[JcJm] (10)
当i=k时,矩阵元素为非零,其他元素为零。
同理,存在如式(11)所示的增量Δ。
Δ=[ΔcΔm]T (11)
因此,(JTJ+λdiag(JTJ))可改写为式(12)。
其中,U和V为分块对角矩阵。
至此,式(8)可以改写为式(13)所示的正态方程。
在式(13)两边同时乘以矩阵A,结果如式(15)所示。
展开式(15)可以获得式(16)和(17)。
(U-WV-1WT)Δci=rci-WV-1rmi (16)
Δmi=V-1(rmi-WTΔci) (17)
在三维重建中,根据摄像机与三维点之间的稀疏性对集束调整问题进行稀疏分解,可以将式(8)转化为求解式(16)所表示的小规模的正态方程的解。当求解出摄像机的增量参数Δci,采用反代法(back substituting)将Δci代入式(17)即可求解出三维点的参数增量Δmi。至此,将集束调整的求解转换为求解式(16)所示的摄像机增量参数所对应的正态方程的解。
c摄像机参数的正态方程求解。
由于矩阵(U-WV-1WT)是对称正定矩阵,采用LDL矩阵分解算法求解正态方程(16)的解。
令A=(U-WV-1WT),A可分解为:
A=LDLT (18)
计算式(16)中的Δci需要以下步骤:
Step1:计算方程LΔc′=rc-WV-1rm的解。
由于L是下三角矩阵,因此,采用前向替代法求解Δc′,计算方法如式(19)所示。
Step2:计算Δc″,方法如式(20)所示。
Δc″=D-1Δc′ (20)
Step3:计算方程LTΔc=Δc″的解。由于LT是上三角矩阵,因此采用反代法求解Δc,计算方法如式(21)所示。
通过以上步骤,即可求得正态方程(16)的解,通过反代法,将Δci代入式(17)即可求解出Δmi。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本发明的保护范围。
Claims (3)
1.一种面向大规模三维重建的实时鲁棒的集束调整方法,其特征在于,包括以下步骤:
S1:对于给定的摄像机姿态和场景的三维点云信息,给出鲁棒的集束调整方程如下:
其中,Xi,j表示第i个摄像机下可见的第j个三维点,xi,j表示Xi,j在图像上的投影点,H(·)表示Huber损失函数,
S2:对于大规模三维重建的集束调整问题,根据摄像机与场景中三维点之间的稀疏关系,对大规模集束调整问题进行分解;
S3:根据稀疏分解后的摄像机正态方程,求解摄像机的旋转矩阵和平移向量;
S4:将S3中求解出的摄像机信息带入稀疏分解后所对应的三维点的正态方程,求解出世界坐标系下的三维点坐标;
S5:将S3和S4求解出的摄像机参数和三维点坐标信息代入对应的正态方程,反复迭代,即可获得精确的摄像机姿态和三维点信息;
步骤S3中采用LM和LDL算法对摄像机参数的正态方程(U-WV-1WT)Δci=rci-WV-1rmi进行求解;
其中,U、V和W为分块对角矩阵;Δci为摄像机参数对应的增量;rci为摄像机参数的估计值与精确值之间的误差;rmi为三维点参数的估计值与精确值之间的误差,
步骤S5中将摄像机信息带入三维点的正态方程,采用反代法计算三维点云信息,计算方法为:Δmi=V-1(rmi-WTΔci);
其中,Δmi为三维点参数对应的增量。
2.如权利要求1所述的一种面向大规模三维重建的实时鲁棒的集束调整方法,其特征在于,步骤S1中鲁棒的集束调整方程:采用Huber损失函数度量所求值与目标值之间的误差。
3.如权利要求1所述的一种面向大规模三维重建的实时鲁棒的集束调整方法,其特征在于,步骤S2中场景分解的依据为:场景采集过程中所用摄像机数据远少于场景内的所包含的三维点数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610804979.7A CN106408653B (zh) | 2016-09-06 | 2016-09-06 | 一种面向大规模三维重建的实时鲁棒的集束调整方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610804979.7A CN106408653B (zh) | 2016-09-06 | 2016-09-06 | 一种面向大规模三维重建的实时鲁棒的集束调整方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106408653A CN106408653A (zh) | 2017-02-15 |
CN106408653B true CN106408653B (zh) | 2021-02-02 |
Family
ID=57998350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610804979.7A Active CN106408653B (zh) | 2016-09-06 | 2016-09-06 | 一种面向大规模三维重建的实时鲁棒的集束调整方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106408653B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107330934B (zh) * | 2017-05-23 | 2021-12-07 | 上海交通大学 | 低维度的集束调整计算方法与系统 |
CN108592919B (zh) * | 2018-04-27 | 2019-09-17 | 百度在线网络技术(北京)有限公司 | 制图与定位方法、装置、存储介质和终端设备 |
CN109405807B (zh) * | 2018-10-26 | 2021-01-08 | 五维智能信息科技(北京)有限公司 | 一种大场景倾斜影像三维重建的分区方法 |
CN110176042A (zh) * | 2019-05-31 | 2019-08-27 | 北京百度网讯科技有限公司 | 相机自运动参数估计模型的训练方法、装置及存储介质 |
CN111161355B (zh) * | 2019-12-11 | 2023-05-09 | 上海交通大学 | 多视图相机位姿和场景的纯位姿解算方法及系统 |
CN111242995A (zh) * | 2020-01-06 | 2020-06-05 | 合肥工业大学 | 一种快速鲁棒的摄像机绝对姿态估计方法 |
CN116993925B (zh) * | 2023-09-25 | 2023-12-01 | 安徽大学 | 面向大规模三维重建的分布式集束调整方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7755619B2 (en) * | 2005-10-13 | 2010-07-13 | Microsoft Corporation | Automatic 3D face-modeling from video |
AU2011265430B2 (en) * | 2011-12-21 | 2015-03-19 | Canon Kabushiki Kaisha | 3D reconstruction of partially unobserved trajectory |
CN105654548B (zh) * | 2015-12-24 | 2018-10-16 | 华中科技大学 | 一种基于大规模无序图像的多起点增量式三维重建方法 |
-
2016
- 2016-09-06 CN CN201610804979.7A patent/CN106408653B/zh active Active
Non-Patent Citations (1)
Title |
---|
3D reconstruction of complex structures with bundle adjustment: an incremental approach;Mouragnon, Etienne等;《 IEEE International Conference on Robotics and Automation (ICRA) 》;20060626;第3055-3061页 * |
Also Published As
Publication number | Publication date |
---|---|
CN106408653A (zh) | 2017-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106408653B (zh) | 一种面向大规模三维重建的实时鲁棒的集束调整方法 | |
CN108038902B (zh) | 一种面向深度相机的高精度三维重建方法和系统 | |
CN107564069B (zh) | 标定参数的确定方法、装置及计算机可读存储介质 | |
CN110363858B (zh) | 一种三维人脸重建方法及系统 | |
CN112002014B (zh) | 面向精细结构的三维人脸重建方法、系统、装置 | |
CN110853075B (zh) | 一种基于稠密点云与合成视图的视觉跟踪定位方法 | |
US20200057831A1 (en) | Real-time generation of synthetic data from multi-shot structured light sensors for three-dimensional object pose estimation | |
CN114862932B (zh) | 基于bim全局定位的位姿修正方法及运动畸变矫正方法 | |
JP2009134509A (ja) | モザイク画像生成装置及びモザイク画像生成方法 | |
CN113554736A (zh) | 骨骼动画顶点矫正方法及模型的学习方法、装置和设备 | |
CN114494589A (zh) | 三维重建方法、装置、电子设备和计算机可读存储介质 | |
CN116563493A (zh) | 基于三维重建的模型训练方法、三维重建方法及装置 | |
CN112884902A (zh) | 一种面向点云配准的标靶球位置优化方法 | |
CN110738730A (zh) | 点云匹配方法、装置、计算机设备和存储介质 | |
CN114758005B (zh) | 激光雷达与相机外参标定方法及装置 | |
Ye et al. | Accurate and dense point cloud generation for industrial Measurement via target-free photogrammetry | |
CN111612887B (zh) | 一种人体测量方法和装置 | |
Woodford et al. | Large scale photometric bundle adjustment | |
CN116310194A (zh) | 一种配电站房三维模型重建方法、系统、设备和存储介质 | |
CN115631317A (zh) | 隧道衬砌正射影像生成方法及装置、存储介质、终端 | |
CN113902847A (zh) | 基于三维特征约束的单目深度图像位姿优化方法 | |
CN108230377B (zh) | 点云数据的拟合方法和系统 | |
CN108921908B (zh) | 表面光场的采集方法、装置及电子设备 | |
Xu et al. | A LiDAR data-based camera self-calibration method | |
CN117237544B (zh) | 一种训练数据的生成方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |