一种基于凝聚层次树的快速迭代重建方法与流程

文档序号:17742415发布日期:2019-05-24 20:17阅读:313来源:国知局
一种基于凝聚层次树的快速迭代重建方法与流程

本发明属于智能计算和数字图像处理交叉应用领域,具体涉及一种基于凝聚层次树的快速迭代重建方法。



背景技术:

基于图像的三维重建一直以来都是计算机视觉领域的研究热点。通过图像进行三维重建是一种对人的视觉系统的模仿过程,它的目标是将二维图像转换成为三维场景,并应用于计算机辅助设计、智能社会、游戏娱乐等广泛领域。

目前迭代重建现在已成为多幅图像的三维重建的主流方法,但随着图像数量的增长,会导致效率降低,结果漂移或者因为迭代的初值影响,导致整体求解时陷入局部最小值。而现有的bundler迭代重建中,在建立了初始的像对之后,就开始迭代的过程,每一步迭代需要通过计算已有模型点在待选图像上投影的个数,并选择个数最多的图像加入迭代计算,这是一个实时的排序过程,比较耗时。



技术实现要素:

本发明的目的就是针对上述技术的不足,提供一种既能提高重建效率又能提高重建结果准确性的基于凝聚层次树的快速迭代重建方法。

为实现上述目的,本发明所设计的基于凝聚层次树的快速迭代重建方法,包括如下步骤:

1)图像对间的相似度计算

1a)给定图像集合,采用sift特征提取算法提取给定图像集合中所有图像的sift特征,形成sift特征点集合,每一个图像包括m个sift特征点,sift特征点包含的信息有对应的图像序列、像点坐标;

1b)计算给定图像集合中每一个图像的m个sift特征点的idf;

1c)构造k个hash函数,使用这k个hash函数,对给定图像集合中每一个图像的每一个sift特征点进行哈希求值得到m×k个哈希值,然后由小到大对m×k个哈希值排序,由小到大取前k个最小哈希值,即每一个图像均得到k个最小哈希值;

1d)对给定图像集合中的任意两两图像在k个最小哈希值中求交集和并集之比,交集和并集之比为任意两两图像的相似度,即图像对间的相似度;

2)凝聚层次树生成

根据步骤1d)中得到的任意两两图像对间的相似度进行聚类预先生成一颗层次树,准确地记录迭代顺序;预先生成一颗层次树的聚类类型包括三类:第一类是图像对间的聚类、第二类是单张图像向一个类的聚类、第三类是两个类间的聚类,其中,l代表凝聚层次树的级数;

3)迭代计算

第一类是图像对间的聚类:以其中一个图像的相机坐标系为基准坐标系,即将其中一张图像的相机位置作为原点,对另一张图像通过五点法对其进行相对定向;

第二类是单张图像向一个类的聚类:首先利用在该单张图像上已有类中的可见模型点,通过dlt算法得到该单张图像的参数估值;在已知六个物方空间点坐标和对应像点坐标的前提下,通过dlt算法计算相机的内外参数,虽然它计算的结果精度不高,相机的内外参数用来作为光束法平差的初值;然后通过将该单张图像的参数估值和该单张图像所能观测到的可见模型点的坐标作为初值,与光束法平差的初值进行光束法平差,将该单张图像的参数估值和可见模型点坐标进行优化,经过优化之后,通过三角测量得到新加入模型点的坐标;

第三类是两个类间的聚类:每个类各自的聚类,都是建立在各自的相机坐标系下,为了进行两个类在三维空间的配准,必须统一坐标系,这个阶段就是利用两个类间的公共的模型点,计算两个类之间在平移、旋转和缩放上的相似变换,即七参数绝对定向从而完成迭代重建。

进一步地,所述步骤1c)中,hash函数为线性hash函数。

进一步地,所述步骤2)中,采用single-linkage聚类预先生成一颗层次树。

本发明与现有技术相比,具有以下优点:本发明基于凝聚层次树的快速迭代重建方法,在对图像相似度计算时,适合数量多、尺寸大的图像,能大大缩减图像的批次配时间;在迭代过程中,由于凝聚层次树指定了多条迭代的路径,把大的问题分割成为多个小问题,解决了参数的计算结果随图像数量增多出现漂移的问题。

附图说明

图1是本发明凝聚层次树示意图;

图2为实验二的对比效果示意图。

具体实施方式

下面结合附图和具体实施例对本发明作进一步的详细说明。

一种基于凝聚层次树的快速迭代重建方法(fira算法),包括如下步骤:

1)图像对间的相似度计算

1a)给定图像集合,采用sift特征提取算法提取给定图像集合中所有图像的sift特征,形成sift特征点集合,每一个图像包括m个sift特征点,sift特征点包含的信息有对应的图像序列、像点坐标;

1b)计算给定图像集合中每一个图像的m个sift特征点的idf(idf-倒排索引,即以特征点为索引,建立特征点和图像的反向对应关系),得到给定图像集合中每一个图像的每一个sift特征点在该图像上分布情况的稀疏矩阵;

1c)构造k个线性hash函数(例如k=50),因为线性哈希函数是单向映射函数,算法复杂度为o(n),所以选择标准较为宽泛,只要能够从[0,r-1]映射到[0,r-1]即可采用,主要的目标就是均匀的覆盖所有值域区间;使用这k个hash函数,对给定图像集合中每一个图像的每一个sift特征点进行哈希求值得到m×k个哈希值,然后由小到大对m×k个哈希值排序,由小到大取前k个最小哈希值,即每一个图像均得到k个最小哈希值;每一个图像的k个最小哈希值是图像中的每一个sift特征点元素经过hash函数变换后,具有最小哈希值的特征点元素;此时每一个图像维度为k,比原有的图像上特征点维度m大大降低了;

1d)对给定图像集合中的任意两两图像在k个最小哈希值中求交集和并集之比,交集和并集之比为任意两两图像的相似度,即图像对间的相似度;只需要利用k个计算出的hash值,就可以直接得到图像对间的相似度,降低了复杂度;

2)凝聚层次树生成

根据步骤1d)中得到的任意两两图像对间的相似度,采用single-linkage聚类预先生成一颗层次树,准确地记录迭代顺序,一方面可以保证迭代过程的高效,另一方面能够提前预知迭代算法的可靠性;如图1所示,预先生成一颗层次树的聚类类型包括三类:第一类是图像对间的聚类、第二类是单张图像向一个类的聚类、第三类是两个类间的聚类,其中,l代表凝聚层次树的级数;

3)迭代计算

第一类是图像对间的聚类:以其中一个图像的相机坐标系为基准坐标系,即将其中一张图像的相机位置作为原点,对另一张图像通过五点法对其进行相对定向;

第二类是单张图像向一个类的聚类:首先利用在该单张图像上已有类中的可见模型点,通过dlt算法(dlt是建立像点坐标和相应物点物方空间坐标之间直接线性关系的算法)得到该单张图像的参数估值;在已知六个物方空间点坐标和对应像点坐标的前提下,通过dlt算法计算相机的内外参数,虽然它计算的结果精度不高,相机的内外参数用来作为光束法平差的初值;然后通过将该单张图像的参数估值和该单张图像所能观测到的可见模型点的坐标作为初值,与光束法平差的初值进行光束法平差,将该单张图像的参数估值和可见模型点坐标进行优化,经过优化之后,通过三角测量得到新加入模型点的坐标;

第三类是两个类间的聚类:每个类各自的聚类,都是建立在各自的相机坐标系下,为了进行两个类在三维空间的配准,必须统一坐标系,这个阶段就是利用两个类间的公共的模型点,计算两个类之间在平移、旋转和缩放上的相似变换,也就是七参数绝对定向从而完成迭代重建。

下面结合具体实施例和对比例来进一步阐述本发明基于凝聚层次树的快速迭代重建方法。

实验一(效率实验):在无人机上利用佳能5d倾斜拍摄了108张图像作为实验数据。其中四个倾斜相机型号相同,同时进行快速的区域拍摄,初始的焦距为50mm,曝光时间1/800秒,单张图像分辨率为3000×5000。使用bundler软件和本发明基于凝聚层次树的快速迭代重建方法(fira算法)分别对这些图像进行迭代重建,并得到实验结果的对比见表1。

实验二(精度实验)中,因为已知相机的gps信息,可以用于迭代重建结果的验证。如图2所示,红色和蓝色的点表示bundler和fira算法解算出的相机位置在重建点云的正射图上的投影。其中蓝色相机的位置基本上是正确的,这也是本发明基于凝聚层次树的快速迭代重建方法(fira算法)的一个最大特点,就是与初始像对的选择无关,而且能够消除漂移问题。蓝色相机的位置随着路线的推进,会逐渐会产生明显偏移,这是累计误差带来的影响。对于bundler算法,会往往因为初始像对选择的不恰当导致整体计算失败。

因此,本发明基于凝聚层次树的快速迭代重建方法,在对图像相似度计算时,适合数量多、尺寸大的图像,能大大缩减图像的批次配时间;在迭代过程中,由于凝聚层次树指定了多条迭代的路径,把大的问题分割成为多个小问题,解决了参数的计算结果随图像数量增多出现漂移的问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1