CN116721231A - 基于无人机机载定位的可扩展场景三维重建方法及系统 - Google Patents
基于无人机机载定位的可扩展场景三维重建方法及系统 Download PDFInfo
- Publication number
- CN116721231A CN116721231A CN202310555482.6A CN202310555482A CN116721231A CN 116721231 A CN116721231 A CN 116721231A CN 202310555482 A CN202310555482 A CN 202310555482A CN 116721231 A CN116721231 A CN 116721231A
- Authority
- CN
- China
- Prior art keywords
- dimensional
- camera
- depth image
- depth
- scene
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 239000002245 particle Substances 0.000 claims abstract description 74
- 230000015654 memory Effects 0.000 claims abstract description 25
- 230000011218 segmentation Effects 0.000 claims abstract description 24
- 238000005070 sampling Methods 0.000 claims abstract description 17
- 238000004441 surface measurement Methods 0.000 claims abstract description 7
- 238000012800 visualization Methods 0.000 claims abstract description 7
- 230000005540 biological transmission Effects 0.000 claims abstract description 4
- 230000033001 locomotion Effects 0.000 claims description 16
- 238000010586 diagram Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 8
- 238000005259 measurement Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 230000004927 fusion Effects 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000005457 optimization Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000005192 partition Methods 0.000 claims description 5
- 238000007781 pre-processing Methods 0.000 claims description 4
- 230000001960 triggered effect Effects 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 3
- 238000005266 casting Methods 0.000 claims description 2
- 230000008859 change Effects 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 description 4
- 239000004973 liquid crystal related substance Substances 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 3
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000004323 axial length Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000003746 surface roughness Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/08—Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/28—Indexing scheme for image data processing or generation, in general involving image processing hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Abstract
本发明公开了一种基于无人机机载定位的可扩展场景三维重建方法及系统,基于在无人机上搭载的深度相机采集所得彩色影像和深度影像进行三维重建,包括在6D状态空间中的单位球内对粒子进行均匀采样,得到粒子群模板;对输入的每一帧深度影像进行表面测量,将深度影像的逐像素投射到三维空间中并计算每一个三维点的法线,同时计算分割法线图;依据三维点法线间的相关性,在GPU中自适应分配重建体素内存;仅利用深度影像和当前GPU活动空间中存在的已构建的三维模型,跟踪快速运动的相机位姿;随着深度影像帧序列的持续传入,基于截断符号距离场TSDF融合带有传感器噪声的测量值,构建密集三维点云模型,在需要可视化时提取三维表面,生成三维网格模型。
Description
技术领域
本发明属于三维重建技术领域,具体涉及一种无人机机载实时定位的可扩展场景三维重建技术方案。
背景技术
实景三维模型作为表征真实世界的重要的数据基础,被广泛应用于智慧城市、室内设计、防灾救灾、增强现实、混合现实等诸多领域。传统三维重建通常是将二维彩色影像作为输入,输出重建的三维模型。但是,受限于输入的数据固定,重建出的三维模型通常不够完整,且真实感较低。此外,多视图深度估计庞大的计算量也导致重建效率不高,使得传统三维重建技术难以扩展到一些对实时性要求较高的应用场景,如增强现实、混合现实、无人机导航、未知封闭环境灾后搜寻等。虽然同步定位与建图(SLAM)技术可以利用单目彩色相机实现对场景的实时重建,但是单目SLAM系统生成的稀疏点云模型只支持基本的场景重建,难以提供真实、直观的三维场景表达。
基于飞行时间或结构光的深度相机(RGB-D Camera)在高度集成的小型化设备中提供了可靠、密集的深度测量。凭借一颗单目彩色镜头和一组深度感知装置,深度相机能以足够的分辨率和实时速率捕获周围环境的彩色影像(RGB Image)和深度影像(DepthImage),为场景实时重建和模型实时更新提供了可能。随着深度相机的低成本化,越来越受到学术界和工业界的青睐,使得基于深度相机的三维重建技术在近十年间得到了蓬勃发展。结合这些特点,消费级深度相机甚至领先于一些更昂贵的3D扫描系统,特别是应用于消费级解决方案中。
目前,基于深度相机的三维重建的作业模式大多是手持深度相机,将采集到的彩色影像和深度影像在高性能数据处理终端上进行实时处理,其中包括深度相机自主定位定姿(Camera Tracking)、构建并更新三维模型(Update Reconstruction)。现有基于深度相机的三维重建方法存在三个不足之处:其一,系统的适用条件被限制在缓慢的相机运动,通常小于1m/s,在快速相机运动下,重建系统极易崩溃;其二,依赖高性能计算设备,只有在高性能的图形计算设备的加持下系统才能展现实时性,在计算资源有限的板载计算机上,实时性难以体现;其三,受限于有限的显卡内存资源,可重建的场景范围被限制在了一个固定且十分有限的大小,当相机运动超出这一范围,重建系统将停止工作。由于上述技术缺陷,极大地限制了仅利用廉价的、小型化的、计算资源有限的机载计算机,在快速运动下的无人机实时重建大场景三维模型。
发明内容
本发明的主要目的在于克服现有技术的缺点与不足,提出一种无人机机载实时定位与可扩展场景三维重建方法,该方法实现了在快速运动的无人机的机载计算机上实时重建大场景三维模型。
为了达到上述目的,本发明的技术方案为一种基于无人机机载定位的可扩展场景三维重建方法,基于在无人机上搭载的深度相机采集所得彩色影像和深度影像进行三维重建,包括以下步骤,
步骤1,在6D状态空间中的单位球内对粒子进行均匀采样,得到粒子群模板,其中任意一个粒子都表示一个在三维空间中的有效刚体运动;
步骤2,对输入的每一帧深度影像进行表面测量,根据相机内参将深度影像的逐像素投射到三维空间中并计算每一个三维点的法线,同时计算分割法线图;
步骤3,依据三维点法线间的相关性,在GPU中自适应分配重建体素内存,实现表面的稀疏性表达,在相机离开当前重建区域后,管理已分配的体素空间;
步骤4,仅利用深度影像和当前GPU活动空间中存在的已构建的三维模型,跟踪快速运动的相机位姿,解算出相机在拍摄当前帧时的相对位置和姿态;
步骤5,随着深度影像帧序列的持续传入,基于截断符号距离场TSDF融合带有传感器噪声的测量值,构建密集三维点云模型,在需要可视化时提取三维表面,生成三维网格模型。
而且,所述步骤1中,在6D状态空间的单位球体内均匀地预采样固定数量的粒子,每个粒子表示一个三维空间中刚体运动,预采样的粒子集被称为粒子群模板;构建多级粒子群模板,与不同分辨率的深度影像组合使用支持位姿估计。
而且,所述步骤2中,通过以下方式进行深度影像预处理,
由深度相机内参矩阵K和深度影像Id计算得到顶点图
步根据顶点图计算对应的法线图/>
在法线图的基础上,利用区域生长法计算得到分割法线图/>
而且,所述步骤3中,通过以下方式进行法线相关性约束的场景表面稀疏表示,
当序列中新一帧深度影像传入重建系统时,遍历深度影像中的每个像素,对于每个深度测量值Id(u)与摄影中心构建一条射线
设置TSDF的截断范围为μ,沿着射线的方向在Id(u)-μ到Id(u)+μ的截断带内创建一条线段,由粗到细获取该线段上体素的坐标,计算其哈希值h,并检查该哈希值对应体素块b是否已经在GPU中分配内存,若未分配,则为其分配,在哈希表和体素块数组中创建新的条目;将分割法线图作为掩膜,为分割平面区域内的像素在最粗级别的分辨率层次上分配体素块;分割区域外的像素则越过最粗级别,直接在次粗糙级别上分配体素空间,并在其对应的最粗级别哈希表entry上,通过一个特殊的标记隐式地指向该sub-block所在的位置;
体素内存分配完成后,基于法线的相关性计算体素块b所在表面的粗糙程度r(b),作为融合和细分体素的执行标准;
当粗糙度大于分割阈值ts时,分割当前层级体素;当粗糙度小于合并阈值tm时,合并当前层级体素;
定义一个包含当前相机视场的球形活动空间,对于不同的深度相机,根据有效深度范围l,设置活动空间的球心位于距离深度相机l/2处,半径为l,当相机移动,使当前场景离开相机视场时,其对应的表面体素也被移出活动空间,体素从CPU传递至GPU;当相机回访曾经重建过的区域时,体素从GPU传递至CPU。
而且,所述步骤4中,通过以下方式实现仅利用深度影像实现快速相机位姿估计
步骤4.1,从粒子群模板中抽样,以当前深度影像生成的分割法线图作为掩膜,利用六自由度位姿粒子将深度影像投影至三维世界,检查是否位于活动空间中,过滤掉活动空间之外的粒子集合后计算分割区块位于L0级体素块中的比例,若小于相应阈值,则淘汰该位姿粒子近;
步骤4.2,基于通过步骤4.1约束的六自由度位姿粒子,计算第t帧深度影像与第k次迭代候选最优位姿/>之间的适应度/>将适应度/>大于前一次次迭代最优位姿/>的粒子集合作为下一次迭代的粒子采样范围;
步骤4.3,在每一次迭代中,设置三种不同分辨率的粒子群模板和深度影像的组合,在迭代中依次使用;
步骤4.4,设置迭代终止的条件为优化迭代前后两次六自由度位姿变化分别小于相应阈值或迭代次数大于迭代上限,重复步骤4.2和步骤4.3直至触发迭代终止条件。
而且,所述步骤5中,通过以下方式实现利用带有传感器噪声的深度影像进行场景表面重建的,
步骤5.1,在截断符号距离场TSDF融合的基础上引入一个置信度因子α,将模型点被观测到的次数加权平均为/>其中/>σ是经验值,γ表示深度相机测量值误差距摄影中心的归一化径向距离;
步骤5.2,采用光线投射法提取场景表面,在进行非整体素的插值时,如果一点X=(X,Y,Z)所在体素与其周边的体素为一个层级,则通过该点所在体素的8个角点,由已知的三线性插值系数求解;如果该点所在体素与其周边的体素存在跨层级,则插值函数形式为:F(X,Y,Z)=z1XYZ+a2XY+a3YZ+a4XZ+a5X+a6Y+a7Z+a8,对该点周围八个网格点分别给出插值函数形式的方程,组成线性方程组。
另一方面,本发明还提供一种基于无人机机载定位的可扩展场景三维重建系统,用于实现如上所述的一种基于无人机机载定位的可扩展场景三维重建方法。
而且,包括以下模块,
第一模块,用于在6D状态空间中的单位球内对粒子进行均匀采样,得到粒子群模板,其中任意一个粒子都表示一个在三维空间中的有效刚体运动;
第二模块,用于对输入的每一帧深度影像进行表面测量,根据相机内参将深度影像的逐像素投射到三维空间中并计算每一个三维点的法线,同时计算分割法线图;
第三模块,用于依据三维点法线间的相关性,在GPU中自适应分配重建体素内存,实现表面的稀疏性表达,在相机离开当前重建区域后,管理已分配的体素空间;
第四模块,用于仅利用深度影像和当前GPU活动空间中存在的已构建的三维模型,跟踪快速运动的相机位姿,解算出相机在拍摄当前帧时的相对位置和姿态;
第五模块,用于随着深度影像帧序列的持续传入,基于截断符号距离场TSDF融合带有传感器噪声的测量值,构建密集三维点云模型,在需要可视化时提取三维表面,生成三维网格模型。
或者,包括处理器和存储器,存储器用于存储程序指令,处理器用于调用存储器中的存储指令执行如上所述的一种基于无人机机载定位的可扩展场景三维重建方法。
或者,包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如上所述的一种基于无人机机载定位的可扩展场景三维重建方法。
本发明提供的技术方案实现了集群无人机建立复杂构筑物精细三维模型的自动化。和现有技术相比,本发明的关键区别在于:
第一,本发明的相机位姿估计是通过随机优化得到的,现有技术中通常是ICP和关键帧匹配;
第二,本发明的重建表面采用了分层稀疏表达,现有技术采用的是规则体素网格;
第三,现有技术的深度融合只是简单的观测次数,本发明加入了深度相机测量值误差距摄影中心的归一化径向距离约束。
相应地,本发明具有以下优点:
1、能够在完全黑暗的环境中工作;
2、能够鲁棒地估计快速的相机运动;
3、能够实时重建大规模场景的三维模型;
4、整个系统能够在计算资源有限的机载电脑上实时运行。
本发明方案实施简单方便,实用性强,解决了相关技术存在的实用性低及实际应用不便的问题,能够提高用户体验,具有重要的市场价值。
附图说明
图1为本发明实施例一种无人机机载实时定位与可扩展场景三维重建方法的流程图;
图2为本发明实施例对场景表面稀疏表达构建方法的流程图;
图3为本发明实施例位姿估计方法的流程图;
图4为本发明实施例的效果示意图,其中(a)部分展示了利用本发明方法正在进行自主三维扫描的无人机,(b)和(c)部分分别展示了实时生成的三维模型和用法线图渲染的三维模型,不同的颜色表示表面的起伏化。
具体实施方式
以下结合附图和实施例具体说明本发明的技术方案。
参见图1,本发明实施例提出的一种基于无人机机载定位的可扩展场景三维重建方法,基于在无人机上搭载的深度相机采集所得进行彩色影像和深度影像进行三维重建,包括以下步骤:
步骤1,在6D状态空间中的单位球内对粒子进行均匀采样,得到粒子群模板,其中任意一个粒子都表示一个在三维空间中的有效刚体运动;
本发明进一步提出,在6D状态空间的单位球体内均匀地预采样固定数量的粒子,每个粒子表示一个三维空间中刚体运动,预采样的粒子集被称为粒子群模板Ω。本发明构建多级粒子群模板,与不同分辨率的深度影像组合使用以平衡位姿估计的精度和效率。
实施例中,步骤1优选采用的的具体实施方式为:在6D状态空间的单位球体内均匀地预采样固定数量的粒子,每个粒子表示一个三维空间中刚体运动,即相机位姿s=(R,t)=(qx,qy,qz,x,y,z),R为旋转矩阵,qx,qy,qz为三个旋转四元数的虚部,t=(x,y,z)T为三维平移量。预采样的粒子集被称为粒子群模板Ω,用一个中心点c和一个6D的轴长r=(rd)d=1:6来表示,粒子群模板从单位球体的中心开始采样,即本发明构建多级粒子群模板,在单位球内采样粒子数分别为:1024个、3072个和10240个,与不同分辨率的深度影像组合使用以平衡位姿估计的精度和效率。
其中,(rd)d=1:6表示一个6D的轴长;rd表示各维度的具体长度数值;d表示维度标号;是表示三维向量,0为三维零向量。
步骤2,对输入的每一帧深度影像进行表面测量,根据相机内参将深度影像的逐像素投射到三维空间中并计算每一个三维点的法线,同时计算分割法线图;
本发明进一步提出,所述步骤2中,深度影像预处理方法具体为:
步骤2.1,由深度相机内参矩阵K和深度影像Id计算得到顶点图
步骤2.2,根据顶点图计算对应的法线图/>
步骤2.3,在法线图的基础上,利用区域生长法计算得到分割法线图/>
上述三步均基于CUDA在GPU中并行处理。
实施例的步骤2中,深度影像预处理方法主要为构建三张辅助图,即顶点图法线图/>和分割法线图/>三图均依次基于CUDA在GPU中并行生成,其优选采用的具体实施方式为:
步骤2.1,设置深度相机内参矩阵为K,将二维空间中的深度影像Id的每个像素u=转换为三维空间中的顶点vi(u),转换方式为:/>最终得到顶点图/>
其中,(x,y)表示影像像素的横纵坐标。
步骤2.2,根据顶点图计算对应的法线图/>计算方法为:其中/>表示u点水平两侧三维点的方向向量,同理/> 表示u点垂直两侧三维点的方向向量。将叉乘结果归一化得到当前点的法线ni(u),此时法线的方向指向远离摄影中心的方向,将法线方向取反,使其指向摄影中心的方向。位于深度影像边缘的点不计算法线。
步骤2.3,通过区域生长法获取分割法线图以法线图/>中一个像素为种子像素,计算与之相邻的像素和它之间的法线夹角以及它们之间的曼哈顿距离,若两个指标同时小于给定的相应阈值,那么这个像素就被接收为区域生长的单位,本发明实施例优选设置:法线夹角阈值为0.4°,曼哈顿距离阈值为影像的长加宽;生长完成后,如果的得到的像素点个数少于影像总像素的2%,则拒绝该区域,否则分割的区域将过小;在一个区域生长中,种子像素以及以分割区域的像素不会被重复计算。
步骤3,依据三维点法线间的相关性,在GPU中为其自适应分配重建体素内存,实现表面的稀疏性表达,在相机离开当前重建区域后,管理已分配的体素空间;
在步骤3中,本发明实施例基于一种可拆分体素数据结构实现表面体素分层表达,即一个L级的体素可以被细分为8个L-1级的体素,反之亦可合并。同时,基于一种结合分层树特征的哈希结构来管理这些体素,具体实现可采用现有技术,本发明不予赘述,如附图2所示,实施例优选采用的具体实施方式为:
步骤3.1,摄影光线构建:当序列中新一帧深度影像传入重建系统时,遍历深度影像中的每个像素,对于每个深度测量值Id(u)与摄影中心构建一条射线其方法可记为 其中/>是前一帧(当前帧为第k帧)的位姿,表示将相机坐标系下的帧k转换到全局帧g的变换量,其中/>为旋转变换矩阵,/>为平移变换向量,0T表示为三维零向量的转置。
其中,是特殊欧式群,/>是特殊正交群。
步骤3.2,由粗到细的体素分配:设置TSDF的截断范围为μ,沿着射线的方向在Id(u)-μ到Id(u)+μ的截断带内创建一条线段,由粗到细获取该线段上体素的坐标,计算其哈希值h,并检查该哈希值对应体素块b是否已经在GPU中分配内存。哈希值的计算方法为: 其中(bx,by,bz)是体素块b的三维坐标,(P1,P2,P3)=(73856093,19349669,83492791)为常数。如果哈希值h(b)对应体素块b未在GPU中分配内存,则为其分配,即在哈希表和体素块数组中创建新的条目;
在本发明中,分割法线图在此作为掩膜作用,进一步提出:为分割平面区域内的像素在最粗级别的分辨率层次上分配体素块;分割区域外的像素则越过最粗级别,直接在次粗糙级别上分配体素空间,并在其对应的最粗级别哈希表entry上,通过一个特殊的标记隐式地指向该sub-block所在的位置。其中,entry表示条目,sub-block表示子体素块。
步骤3.3,表面粗糙度评估:体素内存分配完成后,计算体素块b所在表面的粗糙程度,这是融合和细分体素的执行标准。本发明用法线的相关性来定义表面的粗糙程度。
实施例通过体素块中各体素之间的法线相关性计算体素块b的粗糙程度r(b),计算方法为其中ΔFk表示体素块b中储存有TSDF的部分,其个数为k,Δ为梯度运算符,ΔFk(i)表示在体素i处的法线,/>表示k个体素的法线均值。需要说明的是,此处之所以通过TSDF值的梯度来计算体素的法线,而不是直接采用法线图中的法线,其原因有二:其一,体素中存储的TSDF是经过多次被观测加权融合的结果(见步骤5.1),可信度高;其二,由深度影像的测量值直接转换得到的法线图中存在一定的噪声干扰。
步骤3.4,体素块分割与合并:当体素块粗糙度大于分割阈值ts时,分割当前层级体素;当子体素块粗糙度小于合并阈值tm时,合并当前层级体素。具体实施时可根据情况预先设置阈值取值。本发明实施例设置ts=0.8,tm=0.4,体素大小为L0=8mm,L1=5mm,L2=2mm三层由粗到精的分辨率级别,分割合并完成后记录体素分辨率级别。
步骤3.5,体素内存管理:定义一个包含当前相机视场的球形活动空间,对于不同的深度相机,根据其有效深度范围l,设置活动空间的球心位于距离深度相机l/2处,半径为l。当相机移动,使当前场景离开相机视场时,其对应的表面体素也被移出活动空间,其方法是在哈希表中由细到粗标记出需要移除的体素哈希索引,若同属一个体素分割出的几个同级体素均需被移出,则只标记其母级体素。然后哈希索引及其对应的体素块复制并传输到中间缓冲区,并由中间缓冲区传递至CPU中保存,并在GPU中删除这些索引及体素块。体素从CPU传递至GPU的操作为其逆过程,当相机回访曾经重建过的区域时,触发该操作,即如果一个体素块被识别为“曾经被重建过”,则将其从主机中传输回到GPU中,返回至步骤3.2进行迭代,用以和新的测量数据进行深度融合。
步骤4,仅利用深度影像和当前GPU活动空间中存在的已构建的三维模型,跟踪快速运动的相机位姿,解算出相机在拍摄当前帧时的相对位置和姿态;
实施例中,步骤4的主要作用是仅以深度影像作为输入,结合粒子群模板,快速估计出当前影像的最优位姿T*,流程图如附图3所示,其具体实施方式为:
步骤4.1,粒子筛选:从粒子群模板中抽样,以当前深度影像生成的分割法线图作为掩膜,利用六自由度位姿粒子将深度影像投影至三维世界,首先检查是否位于活动空间中,过滤掉活动空间之外的粒子集合后计算分割区块位于L0级体素块中的比例,若小于相应阈值,则淘汰该位姿粒子,此举可以快速定向到最优位姿附近,减少诸多不必要的计算量,加快迭代优化收敛速度。具体实施时可根据情况预先设置阈值取值。
步骤4.2-4.3迭代进行粒子适应度评估、粒子群模版更新,实现更新粒子采样范围。
步骤4.2,基于通过步骤4.1约束的六自由度位姿粒子,计算第t帧深度影像与第k次迭代候选最优位姿/>之间的适应度/>其方法为/>其中/>和/>分别表示位姿/>中的旋转和平移变换量,xij为深度影像/>的像素,表示第k次迭代时第t帧深度影像与第t-1帧深度影像之间的重叠像素集。将适应度大于前一次迭代最优位姿/>的粒子集合作为下一次迭代的粒子采样范围Ω,即
其中,(i,j)表示深度影像像素的行列号;
ψ表示计算TSDF值;
τ是一个常数,实施例默认为1;
表示重叠像素个数;
exp表示取自然指数函数;
Ωk和Ωk+1分别表示第k次和第k+1次迭代的粒子采样范围;
表示第k次迭代中第i个粒子的位姿;
f(*)表示计算位姿*的适应度。
步骤4.3,在每一次迭代中,设置(1024,1/8),(3072,1/16),(10240,1/32)三种不同分辨率的粒子群模板和深度影像的组合,在迭代中依次使用,从而减少迭代时间消耗。
步骤4.4,优化终止:设置迭代终止的条件为优化迭代前后两次六自由度位姿变化分别小于预设相应阈值(实施例优选设置1×10-6)或迭代次数大于预设迭代上限,本发明实施例优选设置迭代上限为10次。重复步骤4.2和步骤4.3直至触发迭代终止条件,得到最优位姿T*。
步骤5,随着深度影像帧序列的持续传入,基于截断符号距离场(TruncatedSigned Distance Field,TSDF)融合带有传感器噪声的测量值,构建密集三维点云模型,在需要可视化时提取三维表面,生成三维网格模型。
实施例通过步骤4获得了当前影像的最优位姿T*后,在步骤5中结合带有传感器噪声的深度影像进行场景表面重建,具体实施方式为:
步骤5.1,本发明在传统TSDF融合的基础上引入一个置信度因子α,将模型点被观测到的次数加权平均为/>其中,/>表示模型点上一次被观测到时的权重, 实施例中优选设置σ=0.6经验值,γ表示深度相机测量值误差距摄影中心的归一化径向距离。此外,点云的颜色信息(来自RGB图像)也在此步骤中进行融合。
步骤5.2,本发明采用光线投射法提取场景表面,与传统方法不同的是,在进行非整体素(即细分后的体素)的插值时,如果一点X=(X,Y,Z)所在体素与其周边的体素为一个层级,则可以通过该点所在体素的8个角点,由已知的三线性插值系数求解;如果该点所在体素与其周边的体素存在跨层级,如位于不同分辨率层级边界的点,则插值函数形式为:F(X,Y,Z)=a1XYZ+a2XY+a3YZ+a4XZ+a5X+a6Y+a7Z+a8,该点周围八个网格点都需要给出这一形式的方程,组成线性方程组:其中/>
其中,
a1…a8表示插值函数系数;
(X1,Y1,Z1)…(X8,Y8,Z8)表示插值位置周围八个网格点的三维坐标。
附图4中(a)部分展示了利用本发明方法正在进行自主三维扫描的无人机,其用以运动规划的位置信息来源于本发明步骤4中方法估计所得的位姿。附图4中(b)和(c)部分分别展示了实时生成的三维模型和用法线图渲染的三维模型,不同的颜色表示表面的起伏化。
具体实施时,本发明技术方案提出的方法可由本领域技术人员采用计算机软件技术实现自动运行流程,实现方法的系统装置例如存储本发明技术方案相应计算机程序的计算机可读存储介质以及包括运行相应计算机程序的计算机设备,也应当在本发明的保护范围内。
在一些可能的实施例中,提供一种基于无人机机载定位的可扩展场景三维重建系统,包括以下模块,
第一模块,用于在6D状态空间中的单位球内对粒子进行均匀采样,得到粒子群模板,其中任意一个粒子都表示一个在三维空间中的有效刚体运动;
第二模块,用于对输入的每一帧深度影像进行表面测量,根据相机内参将深度影像的逐像素投射到三维空间中并计算每一个三维点的法线,同时计算分割法线图;
第三模块,用于依据三维点法线间的相关性,在GPU中自适应分配重建体素内存,实现表面的稀疏性表达,在相机离开当前重建区域后,管理已分配的体素空间;
第四模块,用于仅利用深度影像和当前GPU活动空间中存在的已构建的三维模型,跟踪快速运动的相机位姿,解算出相机在拍摄当前帧时的相对位置和姿态;
第五模块,用于随着深度影像帧序列的持续传入,基于截断符号距离场TSDF融合带有传感器噪声的测量值,构建密集三维点云模型,在需要可视化时提取三维表面,生成三维网格模型。
在一些可能的实施例中,提供一种基于无人机机载定位的可扩展场景三维重建系统,包括处理器和存储器,存储器用于存储程序指令,处理器用于调用存储器中的存储指令执行如上所述的一种基于无人机机载定位的可扩展场景三维重建方法。
在一些可能的实施例中,提供一种基于无人机机载定位的可扩展场景三维重建系统,包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如上所述的一种基于无人机机载定位的可扩展场景三维重建方法。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
Claims (10)
1.一种基于无人机机载定位的可扩展场景三维重建方法,其特征在于:基于在无人机上搭载的深度相机采集所得彩色影像和深度影像进行三维重建,包括以下步骤,
步骤1,在6D状态空间中的单位球内对粒子进行均匀采样,得到粒子群模板,其中任意一个粒子都表示一个在三维空间中的有效刚体运动;
步骤2,对输入的每一帧深度影像进行表面测量,根据相机内参将深度影像的逐像素投射到三维空间中并计算每一个三维点的法线,同时计算分割法线图;
步骤3,依据三维点法线间的相关性,在GPU中自适应分配重建体素内存,实现表面的稀疏性表达,在相机离开当前重建区域后,管理已分配的体素空间;
步骤4,仅利用深度影像和当前GPU活动空间中存在的已构建的三维模型,跟踪快速运动的相机位姿,解算出相机在拍摄当前帧时的相对位置和姿态;
步骤5,随着深度影像帧序列的持续传入,基于截断符号距离场TSDF融合带有传感器噪声的测量值,构建密集三维点云模型,在需要可视化时提取三维表面,生成三维网格模型。
2.根据权利要求1所述基于无人机机载定位的可扩展场景三维重建方法,其特征在于:所述步骤1中,在6D状态空间的单位球体内均匀地预采样固定数量的粒子,每个粒子表示一个三维空间中刚体运动,预采样的粒子集被称为粒子群模板;构建多级粒子群模板,与不同分辨率的深度影像组合使用支持位姿估计。
3.根据权利要求1所述基于无人机机载定位的可扩展场景三维重建方法,其特征在于:所述步骤2中,通过以下方式进行深度影像预处理,
由深度相机内参矩阵K和深度影像Id计算得到顶点图
步根据顶点图计算对应的法线图/>
在法线图的基础上,利用区域生长法计算得到分割法线图/>
4.根据权利要求1所述基于无人机机载定位的可扩展场景三维重建方法,其特征在于:所述步骤3中,通过以下方式进行法线相关性约束的场景表面稀疏表示,
当序列中新一帧深度影像传入重建系统时,遍历深度影像中的每个像素,对于每个深度测量值Id(u)与摄影中心构建一条射线
设置TSDF的截断范围为μ,沿着射线的方向在Id(u)-μ到Id(u)+μ的截断带内创建一条线段,由粗到细获取该线段上体素的坐标,计算其哈希值h,并检查该哈希值对应体素块b是否已经在GPU中分配内存,若未分配,则为其分配,在哈希表和体素块数组中创建新的条目;将分割法线图作为掩膜,为分割平面区域内的像素在最粗级别的分辨率层次上分配体素块;分割区域外的像素则越过最粗级别,直接在次粗糙级别上分配体素空间,并在其对应的最粗级别哈希表entry上,通过一个特殊的标记隐式地指向该sub-block所在的位置;
体素内存分配完成后,基于法线的相关性计算体素块b所在表面的粗糙程度r(b),作为融合和细分体素的执行标准;
当粗糙度大于分割阈值ts时,分割当前层级体素;当粗糙度小于合并阈值tm时,合并当前层级体素;
定义一个包含当前相机视场的球形活动空间,对于不同的深度相机,根据有效深度范围l,设置活动空间的球心位于距离深度相机l/2处,半径为l,当相机移动,使当前场景离开相机视场时,其对应的表面体素也被移出活动空间,体素从CPU传递至GPU;当相机回访曾经重建过的区域时,体素从GPU传递至CPU。
5.根据权利要求1所述基于无人机机载定位的可扩展场景三维重建方法,其特征在于:所述步骤4中,通过以下方式实现仅利用深度影像实现快速相机位姿估计
步骤4.1,从粒子群模板中抽样,以当前深度影像生成的分割法线图作为掩膜,利用六自由度位姿粒子将深度影像投影至三维世界,检查是否位于活动空间中,过滤掉活动空间之外的粒子集合后计算分割区块位于L0级体素块中的比例,若小于相应阈值,则淘汰该位姿粒子近;
步骤4.2,基于通过步骤4.1约束的六自由度位姿粒子,计算第t帧深度影像与第k次迭代候选最优位姿/>之间的适应度/>将适应度/>大于前一次次迭代最优位姿的粒子集合作为下一次迭代的粒子采样范围;
步骤4.3,在每一次迭代中,设置三种不同分辨率的粒子群模板和深度影像的组合,在迭代中依次使用;
步骤4.4,设置迭代终止的条件为优化迭代前后两次六自由度位姿变化分别小于相应阈值或迭代次数大于迭代上限,重复步骤4.2和步骤4.3直至触发迭代终止条件。
6.根据权利要求1所述基于无人机机载定位的可扩展场景三维重建方法,其特征在于:所述步骤5中,通过以下方式实现利用带有传感器噪声的深度影像进行场景表面重建的,
步骤5.1,在截断符号距离场TSDF融合的基础上引入一个置信度因子α,将模型点被观测到的次数加权平均为/>其中/>σ是经验值,γ表示深度相机测量值误差距摄影中心的归一化径向距离;
步骤5.2,采用光线投射法提取场景表面,在进行非整体素的插值时,如果一点X=(X,Y,Z)所在体素与其周边的体素为一个层级,则通过该点所在体素的8个角点,由已知的三线性插值系数求解;如果该点所在体素与其周边的体素存在跨层级,则插值函数形式为:F(X,Y,Z)=z1XYZ+a2XY+a3YZ+a4XZ+a5X+a6Y+a7Z+a8,对该点周围八个网格点分别给出插值函数形式的方程,组成线性方程组。
7.一种基于无人机机载定位的可扩展场景三维重建系统,其特征在于:用于实现如权利要求1-6任一项所述的一种基于无人机机载定位的可扩展场景三维重建方法。
8.根据权利要求7所述基于无人机机载定位的可扩展场景三维重建系统,其特征在于:包括以下模块,
第一模块,用于在6D状态空间中的单位球内对粒子进行均匀采样,得到粒子群模板,其中任意一个粒子都表示一个在三维空间中的有效刚体运动;
第二模块,用于对输入的每一帧深度影像进行表面测量,根据相机内参将深度影像的逐像素投射到三维空间中并计算每一个三维点的法线,同时计算分割法线图;
第三模块,用于依据三维点法线间的相关性,在GPU中自适应分配重建体素内存,实现表面的稀疏性表达,在相机离开当前重建区域后,管理已分配的体素空间;
第四模块,用于仅利用深度影像和当前GPU活动空间中存在的已构建的三维模型,跟踪快速运动的相机位姿,解算出相机在拍摄当前帧时的相对位置和姿态;
第五模块,用于随着深度影像帧序列的持续传入,基于截断符号距离场TSDF融合带有传感器噪声的测量值,构建密集三维点云模型,在需要可视化时提取三维表面,生成三维网格模型。
9.根据权利要求7所述基于无人机机载定位的可扩展场景三维重建系统,其特征在于:包括处理器和存储器,存储器用于存储程序指令,处理器用于调用存储器中的存储指令执行如权利要求1-6任一项所述的一种基于无人机机载定位的可扩展场景三维重建方法。
10.根据权利要求7所述基于无人机机载定位的可扩展场景三维重建系统,其特征在于:包括可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序执行时,实现如权利要求1-6任一项所述的一种基于无人机机载定位的可扩展场景三维重建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310555482.6A CN116721231A (zh) | 2023-05-17 | 2023-05-17 | 基于无人机机载定位的可扩展场景三维重建方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310555482.6A CN116721231A (zh) | 2023-05-17 | 2023-05-17 | 基于无人机机载定位的可扩展场景三维重建方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116721231A true CN116721231A (zh) | 2023-09-08 |
Family
ID=87865056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310555482.6A Pending CN116721231A (zh) | 2023-05-17 | 2023-05-17 | 基于无人机机载定位的可扩展场景三维重建方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116721231A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116992513A (zh) * | 2023-09-26 | 2023-11-03 | 北京大学 | 一种适应复杂几何的模拟仿真软件贴体粒子生成方法 |
CN117270561A (zh) * | 2023-09-28 | 2023-12-22 | 湖南省茂泽信息科技有限公司 | 基于无人机目标跟踪的赋予诸元方法和系统 |
CN117496074A (zh) * | 2023-12-29 | 2024-02-02 | 中国人民解放军国防科技大学 | 一种适应相机快速移动的高效三维场景重建方法 |
CN117710469A (zh) * | 2024-02-06 | 2024-03-15 | 四川大学 | 一种基于rgb-d传感器的在线稠密重建方法及系统 |
CN117270561B (zh) * | 2023-09-28 | 2024-05-14 | 湖南省茂泽信息科技有限公司 | 基于无人机目标跟踪的赋予诸元方法和系统 |
-
2023
- 2023-05-17 CN CN202310555482.6A patent/CN116721231A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116992513A (zh) * | 2023-09-26 | 2023-11-03 | 北京大学 | 一种适应复杂几何的模拟仿真软件贴体粒子生成方法 |
CN116992513B (zh) * | 2023-09-26 | 2024-01-02 | 北京大学 | 一种适应复杂几何的模拟仿真软件贴体粒子生成方法 |
CN117270561A (zh) * | 2023-09-28 | 2023-12-22 | 湖南省茂泽信息科技有限公司 | 基于无人机目标跟踪的赋予诸元方法和系统 |
CN117270561B (zh) * | 2023-09-28 | 2024-05-14 | 湖南省茂泽信息科技有限公司 | 基于无人机目标跟踪的赋予诸元方法和系统 |
CN117496074A (zh) * | 2023-12-29 | 2024-02-02 | 中国人民解放军国防科技大学 | 一种适应相机快速移动的高效三维场景重建方法 |
CN117496074B (zh) * | 2023-12-29 | 2024-03-22 | 中国人民解放军国防科技大学 | 一种适应相机快速移动的高效三维场景重建方法 |
CN117710469A (zh) * | 2024-02-06 | 2024-03-15 | 四川大学 | 一种基于rgb-d传感器的在线稠密重建方法及系统 |
CN117710469B (zh) * | 2024-02-06 | 2024-04-12 | 四川大学 | 一种基于rgb-d传感器的在线稠密重建方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116721231A (zh) | 基于无人机机载定位的可扩展场景三维重建方法及系统 | |
US7940279B2 (en) | System and method for rendering of texel imagery | |
JP4685313B2 (ja) | 任意の局面の受動的な体積画像の処理方法 | |
US9942535B2 (en) | Method for 3D scene structure modeling and camera registration from single image | |
CN110717494B (zh) | Android移动端室内场景三维重建及语义分割方法 | |
CN106504320B (zh) | 一种基于gpu及面向深度图像的实时三维重构方法 | |
Hoppe et al. | Incremental Surface Extraction from Sparse Structure-from-Motion Point Clouds. | |
CN111612882B (zh) | 图像处理方法、装置、计算机存储介质及电子设备 | |
CN111640180B (zh) | 一种三维重建方法、装置及终端设备 | |
CN110097582B (zh) | 一种点云优化配准与实时显示系统及工作方法 | |
WO2013176894A2 (en) | Combining narrow-baseline and wide-baseline stereo for three-dimensional modeling | |
CN112991537B (zh) | 城市场景重建方法、装置、计算机设备和存储介质 | |
CN112465849B (zh) | 一种无人机激光点云与序列影像的配准方法 | |
CN113593027B (zh) | 一种三维航电显控界面装置 | |
Reguera-Salgado et al. | GPU geocorrection for airborne pushbroom imagers | |
CN114002701A (zh) | 一种实时渲染点云的方法、装置、电子设备及系统 | |
CN114187589A (zh) | 一种目标检测方法、装置、设备和存储介质 | |
CN115631317B (zh) | 隧道衬砌正射影像生成方法及装置、存储介质、终端 | |
Bullinger et al. | 3D Surface Reconstruction from Multi-Date Satellite Images | |
Song et al. | Real-time terrain reconstruction using 3D flag map for point clouds | |
Frommholz et al. | Inlining 3d reconstruction, multi-source texture mapping and semantic analysis using oblique aerial imagery | |
Davis et al. | 3d modeling of cities for virtual environments | |
Qin et al. | Geometric Processing for Image-based 3D Object Modeling | |
CN117332840B (zh) | 神经辐射场的训练方法、获取目标场景图像的方法及装置 | |
CN116993924B (zh) | 三维场景建模方法及装置、存储介质、计算机设备 |
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 |