本发明涉及计算机视觉,尤其涉及一种神经辐射场的深度配准方法及系统。
背景技术:
1、配准问题是计算机视觉的关键研究问题之一,在三维重建、无人驾驶、智能机器人等领域有着重要的应用,其目的是估计两个模型之间相对变换的过程。近年来,利用神经辐射场(neural radiance fields,nerf)进行高质量场景重建的研究取得了快速进展,但配准神经辐射场尚未得到太多关注。
2、在使用神经辐射场(nerf)进行大规模场景重建时,往往需要将场景分割为多个相交的部分,再利用融合多个高精度传感器提供的真实相机姿态,在同一坐标框架内训练多个nerf模型。然而,当使用数码相机或在没有gps的地区拍摄并收集图像时,没有获得绝对姿势信息。在这种情况下,由于nerf模型是在不同的坐标帧上训练的,现有的大规模场景重建的方法将不能工作。
3、目前上述问题尚未得到很好的解决,nerf2nerf是第一个尝试配准多个nerf模型的方法,其基于传统的优化方法进行配准,但是其严重依赖人工标注关键点;dreg-nerf在训练好nerf模型之后,从nerf中的占用网格中提取特征。随后,训练一个具有自注意力层和交叉注意力层的transformer架构来学习成对nerf块之间的关系,然后利用现有的点云配准的模式进行nerf的配准。但是这种方法,既需要训练nerf,又需要训练配准的模块,比较繁琐,且需要人工制作用于训练配准网络的数据集。
技术实现思路
1、本发明提供一种神经辐射场的深度配准方法及系统,解决的技术问题在于:简便配准在不同坐标帧中训练的两个神经辐射场。
2、为解决以上技术问题,本发明提供一种神经辐射场的深度配准方法,包括步骤:
3、s1、获取两个视角下的五维输入数据,并采用神经辐射场网络获取各五维输入数据所对应的神经辐射场,得到源神经辐射场和目标神经辐射场;
4、s2、在神经辐射场网络中加入符号距离函数网络,通过所述距离符号函数网络将所述源神经辐射场和目标神经辐射场分别表示为隐式曲面fs和ft;
5、s3、从空间中随机采一批点作为伪点集p;
6、s4、利用所述伪点集p对所述隐式曲面fs和ft进行配准,获取每一次迭代过程中的刚性变换增量估计,得到最后的刚性变换估计θest。
7、进一步地,所述步骤s4具体包括步骤:
8、s41、利用所述伪点集p计算隐式曲面fs和ft的距离度量d=|dt-ds|,其中dt表示伪点集p到隐式曲面ft的距离,ds表示伪点集p到隐式曲面ft的距离;
9、s42、获取距离度量d的雅克比矩阵j;
10、s43、利用基于梯度的列文伯格-马夸尔特算法进行迭代以细化刚体变换参数ξ的迭代增量δξ,迭代公式如下:
11、(jtj+λdiag(jtj))δξ=jtd
12、其中,λ是列文伯格-马夸尔特算法中的阻尼参数,diag(jtj)是包含(jtj)对角项的对角阵,jt是j的转置矩阵,ξ表示在三维情况下将源神经辐射场和目标神经辐射场配准在一起的刚性变换θ所对应的6自由度变换向量;
13、s44、列文伯格-马夸尔特算法迭代产生的结果δξ被映射到相应的刚体变换矩阵δθ中,并用其更新伪点集p:
14、δθ=exp(δξ^)p←δθ·p
15、exp(δξ^)表示δξ的反对称矩阵的指数映射;
16、s45、s45、迭代结束时,组合迭代循环中的所有增量估计δθ0至δθn,得到最后的刚性变换估计θest=δθn·...·δθ1·δθ0,n表示迭代次数,δθn表示第n次迭代计算出的增量刚性变换,n=0,1,...,n。
17、进一步地,在所述步骤s41中,伪点集p到隐式曲面ft和fs的距离dt、ds由下式计算:
18、dt=sdf(p,ft)
19、ds=sdf(p,fs)
20、sdf()表示符号距离函数网络。
21、进一步地,在所述步骤s42中,雅克比矩阵j的第i行第j列的元素为:
22、
23、其中,ξj表示ξ向量的第j列,pi表示伪点集p中的第i个点,t表示刚性变换θ中的平移向量,r表示刚性变换θ中的旋转矩阵,符号距离函数网络的梯度通过拟合符号距离函数网络的神经网络的反向传播直接解析得出。
24、进一步地,在所述步骤s45中,当d小于预设阈值时,停止迭代。
25、进一步地,该方法还包括步骤:
26、s5、根据所述刚性变换估计θest对配准结果进行可视化渲染;
27、该步骤s5具体包括步骤:
28、s51、将所述源神经辐射场和所述目标神经辐射场进行可视化渲染;
29、s52、根据所述刚性变换估计θest将渲染后的源神经辐射场旋转平移后与渲染后的目标神经辐射场进行配准,得到可视化渲染的配准结果图。
30、进一步地,在所述步骤s51中,对任一神经辐射场进行可视化渲染具体为:
31、采用多层感知机mlp作为神经辐射场编码光线上的所有采样点的体密度σ和颜色c;
32、使用体渲染对每条光线上的所有点进行积分后得到相关联的像素的颜色c(r,d),公式如下:
33、
34、其中σ(r(ta))、t(ta)、c(r(ta),d)分别是碰到粒子的概率、没有碰到粒子的概率和采样点的颜色,tn表示一条光线上的起点,tf表示该条光线上的终点,ta表示该条光线上的第a个点,r(ta)表示穿过ta的相机射线,d表示相机角度;
35、t(ta)由下式计算:
36、
37、进一步地,在训练所述神经辐射场网络中所采用的损失函数为:
38、l=lcolor+leikonal
39、其中,lcolor表示颜色损失,leikonal表示正则损失,lcolor、leikonal表示如下:
40、
41、
42、其中,c'k、ck表示第k个像素点的渲染颜色和真实颜色,|p|表示伪点集的点数,r(c'k,ck)表示一范数损失,p表示伪点集中的任一个点,表示符号距离函数网络的梯度在点p处的梯度,||||2表示二范数。
43、本发明还提供一种神经辐射场的深度配准系统,其关键在于:包括输入模块、隐式曲面生成模块、伪点集生成模块、配准模块,分别用于执行上述方法中所述的步骤s1~s4。
44、该系统还包括可视化渲染模块,所述可视化渲染模块用于根据所述刚性变换估计θest对配准结果进行可视化渲染。
45、本发明提供的一种神经辐射场的深度配准方法及系统,通过在训练nerf的过程中引入符号距离函数网络(signed distance function,sdf),源nerf场和目标nerf场之间的距离直接由sdf网络得出。并通过列文伯格-马夸尔特算法(levenberg-marquardtalgorithm,lma算法)进行迭代优化,从而精确地将nerf场配准到一起。该方法直接在隐式空间配准,并通过基于梯度的优化算法解决配准问题,不需要将隐式的nerf场转化为显式的特征点表示,也不需要再训练配准部分的网络模块,更加简便快捷。