【技术实现步骤摘要】
一种使用Cuda加速大规模BA并行优化方法
[0001]本专利技术涉及巡检机器人算法
,具体指一种使用Cuda加速大规模BA并行优化方法。
技术介绍
[0002]BA(Bundle Adjustment)是许多视觉SLAM和激光SLAM的核心组件。它是经典的计算机视觉问题之一,已经被研究人员研究了60多年。虽然存在不同的公式,但潜在的问题总是相同的:给定一组近似的点(地标)位置,从许多不同姿势的相机观察,什么是实际的地标位置和相机姿势。人们已经可以用少量的图像计算出准确的3D位置。然而,有了更多可用的图像,我们将得到更完整的重建。随着大规模网络图片库的出现,需要解决大规模的捆绑调整问题,即成千上万的图片和成千上万的地标。大规模线性方程组的求解一直都是科学计算里的重要问题。随着图形处理器(GPU)硬件架构的不断发展,GPU的功能已经衍生到GPU通用计算领域。GPU作为CPU的协处理器完成大规模密集型计算任务,计算能力与小规模的集群相当。相比集群,GPU在功耗和成本上占有优势。2007年NVIDIA推出CUDA并行计算平台,降低了使用GPU加速计算的难度,科员人员可以更方便的使用GPU加速计算科研中的问题,这使得越来越多的领域开始引入GPU计算。
[0003]在BA优化问题中,其核心算法是对大规模线性方程组Ax=b的求解。同时,通过对实际数据的分析可知,线性方程组中的系数矩阵A通常为稀疏矩阵,SLAM系统大型稀疏矩阵的稠密度通常小于1%,如果不能有效的利用矩阵的稀疏性,在使用计算机处理大型稀疏矩阵操作时会把 ...
【技术保护点】
【技术特征摘要】
1.一种使用Cuda加速大规模BA并行优化方法,其特征在于,包括如下步骤:S1、构建系统的能量残差方程S1
‑
1定义世界坐标系下的点x
p
,通过旋转角度R和平移变换t,将点x
p
投影成像素坐标x
p
';S1
‑
2构建x
p
的像素坐标x
l
与投影的像素坐标x
p
'构成的系统误差方程r=(x
l
‑
Rx
p
'
‑
t)=(x
l
‑
x
p
');S1
‑
3通过Levenberg
‑
Marquardt算法最小化残差方程r,有其中,S2、求解线性方程组S2
‑
1对J
l
进行QR分解,有S2
‑
2使用QR分解边缘化线性方程组;S3、将求解得到Δx
p
,Δx
l
代入原系统方程实现BA优化。2.根据权利要求1所述的使用Cuda加速大规模BA并行优化方法,其特征在于,所述步骤2
‑
2将上式(2)中的Q左乘公式(1),有再将Q=(Q1,Q2)带入上式(3)中,实现系统的零空间边缘化,完成未知量Δx
p
,Δx
l
求解的解耦。3.根据权利要求2所述的使用Cuda加速大规模BA并行优化方法,其特征在于,所述步骤2
‑
2还包括将上式(3)通过QR分解成方程组Emin1(Δx
p
)、Emin2(Δx
p
,Δx
l
),先求解方程组Emin1(Δx
p
...
【专利技术属性】
技术研发人员:吴秋轩,周忠容,曾平良,田杨阳,毛万登,孟秦源,张波涛,袁少光,耿俊成,赵健,吕强,仲朝亮,罗艳斌,
申请(专利权)人:国网河南省电力公司电力科学研究院国家电网有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。