ビジュアルオドメーター:特徴点法の包括的なソート

必要VO、VO特定方法基づいて特徴点を抽出する場合に基づいて分類することができるVO VO直接法と特徴点方式(KO「ビジュアルSLAM 14応力」)。VO特徴点方式は、画像内の特徴点を抽出することに基づいており、ベース学者は長期試験を持って、より安定し、照明の変化及びロバスト動的シーンを実行し、それは比較的成熟したVOの実装です。欠点VO VO特徴点法の一部を克服するための直接的な方法(例えば、計算集約など、質感を欠いているシーンには適用されません)が発生し、いくつかのオープンソースはVO直接法を投影して、主流に徐々にです。

 

本論文では、特徴点方式のVOの開発を紹介する比較的成熟して、次は直接法VOをご紹介します。

 

VOはどのように良い結果を得るには?

まずはについてお話しましょう、VOは良い結果を取得したい、あなたは何が必要ですか?

 

図1に示すように、暗すぎる、または明るすぎる、より適切でない環境の光強度(左下)カメラ画像とノイズがたくさんあった暗いシーンは明確ではないが、カメラ(右下の)あまりにも多くの光は、特徴点に特に有害である過度の露出を引き起こすことは容易です。

 

 

 

2、環境は比較的豊かな質感を持っています適切な光強度、VO、及び効果は、シーンの内容に関連しています。(このような極端な白い壁など、など)テクスチャシーン信頼性と効果的な特徴点の欠如はVOのパフォーマンスが大幅に低下したようになりますしながら、シーンの豊かな質感を簡単に、効果的な特徴点の数が多いから抽出することができました。図に示すように。

 

図3は、隣接する画像フレームの内容が十分なオーバーラップ領域を有することを保証するために、連続する画像をキャプチャする必要がありますなぜなら、隣接する一致の重複領域における画像特徴点の必要性、重複領域が小さすぎないか、特徴点を一致させることができる傾向誤差、非常に小さいです。

 

4、最高のは、静的なシーンを実行することですそしてダイナミックなシーンに悪化する移動物体の効果があります。最初の3点が、隣接するフレーム間の一致特徴点する必要があるため、高速移動物体が隣接するフレームが同じ変異である特徴点の位置に、そのような人が速いスイングを歩くアームとして、シーンに表示され、そして場合、これは、あります特徴点突然変異の整合性チェックが対を排除する場合、特徴点となるよう静止物体の特徴点の位置を連続的に、わずかに変更されます。

 

 

アルゴリズムは、特徴点方式VOをカーディング

VO特徴点法アルゴリズム手順を以下に示します:

 

特徴点検出

我々は、一般的なRGBカラー画像は、一般的にRGBフォーマットが容易にグレースケールに変換することができ、このカラーマップの3つの成分から作られていることを知っています。次のようにRGB階調変換は、実際には、人間の目が心理的な問題である明度、色変換の感覚を感じるように、変換式は次のとおりです。

グレー= 0.299 * R + 0.587 * G + 0.114 * B

このようにして得られたグレースケール画像は、マトリックス組成物の輝度値と異なり、特徴点画像は、それらの代表点の特定の直感的な理解(典型的にはグレースケール)です我々は、グレー値は、光、オブジェクト変形、撮影角度の要因に脆弱であることを知っているので、特徴点の選択および設計は非常に重要です優れた特徴点は、次のような特徴を持っている必要があります。

  • 1、認知度の高いですこれは、強い表現で、明確に区別し、周辺画素することができます。

  • 2、再現性の強いです点マッチングを備えていますように、画像中の同じ特徴点は、次再び検出されてもよいです。

  • 3、高い堅牢性照明変化、幾何学的変形(回転、スケール、遠近歪み)が有意に変化しなかった場合に検出することができる画像、圧迫損傷、依然としてファジーなどのノイズがある、維持することができます。

  • 4、高い計算効率設計ルールは、それがリアルタイムアプリケーションを助長している、シンプルな、小さなフットプリントです。しかし、一般的に反比例堅牢性と計算効率に。

常见的比较知名的特征点有:

 

SIFT(Scale-invariant feature transform)

1999年提出,2004年完善。优点:不同光照下性能稳定、尺度不变,旋转不变,鲁棒性好;缺点:匹配成功数目少,速度较慢,有专利保护。目前在普通台式机上还无法实时计算SIFT特征,所以在对实时性要求较高的SLAM系统中用的很少。2006年提出了加速版,称为SURF。

 

FAST(Features from Accelerated Segment Test) 

2006年提出。仅仅比较像素间亮度差,速度比较快。缺点:特征点数目庞大且不确定,不具备旋转不变性、尺度不变性。

ORB (Oriented FAST and Rotated BRIEF)

2011年提出。是对FAST的改进,可以指定最终需要提取的特征点数量,具有旋转不变性和尺度不变性。采用速度极快的二进制描述子,速度仅为SURF的1/15。ORB在特征点质量和性能之间取得了较好的折中,在实时SLAM中非常受欢迎。

 

2 特征匹配

根据上述的特征检测方法,我们可以分别得到相邻两张图中各自的特征点集合。特征匹配的目的就是把两张图中相同的特征点一一对应起来,如下图所示。

通常检测到的特征点都是成百上千个,那么这么多特征点如何进行匹配呢?

暴力匹配

最容易想到的办法就是对左图中的每一个特征点,计算它和右图所有特征点的相似程度(特征描述子的距离),然后按照相似程度进行排序,取最相似的那个作为匹配点,这称为暴力匹配。

暴力匹配虽然思想直观,但是有很明显的缺点:

  • 1、计算复杂度是特征点数目的二次方。由于特征点一般数量巨大,所以该方法的计算量无法接受。

  • 2、误匹配率高。由于特征点都是基于局部区域的特征,所以当场景中出现大量重复纹理(很常见)的时候很容易出现错误的匹配对。

由于上述原因,暴力匹配很少有人使用。

握手匹配

是对上述暴力匹配的改进。暴力匹配是左图的每个特征点和右图所有的特征点进行匹配,建立了多个匹配对(在此称为匹配对网);然后握手匹配在这基础上又用右图每个特征点和左图的所有特征点进行匹配,也建立了新的匹配对网。这两个匹配对网的交集就是相互认为对方是最优选的匹配对应。我们称之为握手匹配。

握手匹配虽然减少了错误匹配的数量,但是计算复杂度至少是暴力匹配的2倍,仍然不实用。

 

快速近似最近邻匹配

快速近似最近邻匹配(FLANN)是一种适合于特征点数量极多情况下的方法,该方法比较成熟,且已经集成到OPENCV(开源计算机视觉库)中了,调用很方便。

匹配后的特征对可能包含一些错误匹配对,我们可以人为的设定一些筛选条件,剔除异常的匹配对。比如剔除距离(欧氏距离或者汉明距离)超过中值距离3倍以外的匹配对。

虽然经过了筛选,但是我们也不能保证每一个匹配对都是完全正确的,这其中仍然会存在错误的匹配。在后面的运动估计中,还需要去除错误匹配的方法RANSAC(随机采样一致性)。

 

3 运动估计

 

确定了特征匹配对,下一步就是根据这些特征匹配对估计相机的运动。根据 特征匹配对的不同维度(2D或3D),运动估计分为三种方法:

1、2D-2D

一般是单目RGB相机拍摄的相邻两帧图片,当我们得到了2D像素坐标的特征点匹配对,目标就是根据两组2D特征点对来估计相机的运动。该问题用对极约束(极线约束)来解决。

如图所示,空间点X和两个相机中心点Ck-1、Ck形成了3D空间中的一个平面,称为极平面(epipolar plane)。极平面和两幅图像相交于两条直线,这两条直线称为对极线(epipolar line)。从图中看如果已知了正确的特征点匹配对p,p',那么可以推断出三维点X的空间位置,以及相机的运动。

具体求解过程:根据匹配好的2D点求出本征矩阵E或者基础矩阵F(一般使用八点法来求解);然后根据E或者F求出旋转矩阵R和平移矩阵t,就得到了相机的位姿估计。

2D-2D的对极几何方法通常需要8个或8个以上的点对,且需要初始化(不能是纯旋转,必须有一定程度的平移)来解决尺度的不确定性。

2、3D-3D

双目相机或者RGB-D相机可以得到图像点的三维空间位置,这时匹配好的特征点对就是两组3D点,这种情况下通过迭代最近点(iterative closest point, ICP)来估计相机的运动。

3、3D-2D

当知道3D空间点及其在图像上的2D投影位置时,可以用PnP(perspective-n-point)来估计相机的位姿。至少需要3个点对(需要至少一个额外点验证结果)就可以估计相机的运动。

 

特征点的3D位置可以通过三角化或者RGB-D相机深度图确定,因此在双目或者RGB-D的VO中,可以直接使用PnP估计相机运动。而单目VO必须先初始化,才能使用PnP。3D-2D方法不需要使用对极约束,又可以在很少的匹配点中获得较好的运动估计,是最重要的一种姿态估计方法。

 

上述三种运动估计的方法的适用条件如下所示:

 

4 离群点移除

图像是现实三维世界的投影,在成像的过程中受到光照变化、视角变化、运动模糊等多种因素的影响,相邻图像可能呈现较大的差异。此时,匹配好的点对仍会夹杂不少错误的匹配,我们称之为离群点,这会造成错误的数据关联。如果需要相机运动准确地估计,那么移除离群点就非常重要。

 

最常用的离群点去除方法就是随机采样一致算法(RANdom SAmple Consensus,RANSAC),该方法对包含较多离群点的情况仍然适用。RANSAC的核心思想是多次随机提取数据点计算假设模型,再在其他数据点中验证这个假设。如果其他数据都一致验证通过这个假设模型,就认为该模型是真实的模型。

其流程如下:

 

下图是RANSAC的一个示例,左边是所有的数据点,右边是RANSAC后的结果。

 

下图显示了移除离群点前后的视觉里程计结果。

 

5 Bundle Adjustment优化

Bundle Adjustment(BA)中文有多种翻译法:光束法平叉、束调整、捆集调整、捆绑调整等。BA的本质是一个优化模型,其目的是最小化重投影误差。什么是重投影误差呢?

 

如下图所示,空间物体通过相机在图像平面所成像就称之为投影。下图中红色的qij特征点就是空间三维立方体(不是图上方的那个立方体,图中未画出)在图像平面的投影。然后我们利用前面所述的运动估计方法可以估计qij对应的可能的三维空间点位置(Xj点,不一定是真实的位置)。然后我们利用估计的三维空间点Xj和计算的相机参数Ci(不一定是真值)重新进行投影,此时投影到图像中的位置为P(Ci,Xj),由于估计位姿和相机参数时存在一定的误差,所以重投影点P(Ci,Xj)和第一次的投影qij有一定的偏差,就称为重投影误差。目标函数就是最小化这个重投影误差。

 

而通常使用的是窗口BA,它将当前图像和之前的n-1幅图像帧作为一个窗口进行优化,这样不仅可以跟踪前一个相机位姿还可以跟踪更之前的相机位姿,保证当前和前n-1个相机位姿一致。因此,窗口BA可以减小漂移。窗口大小n的选择决定了计算复杂度,选择较小的窗口数量可以限制优化的参数的数量,使得实时BA成为可能。

 

以上就是特征点法视觉里程计的一个典型算法流程。下篇介绍另外一种VO方法:直接法。

おすすめ

転載: blog.csdn.net/wb790238030/article/details/90773401