剩余配准

图像配准是图像处理中的一个基本问题。其目的是对齐同一场景的两个或多个图像,通常是在不同的时间、从不同的角度或由不同的传感器拍摄的。它是正射纠正、图像拼接、图像融合、变化检测等的基本步骤。但这一过程也是立体重建过程能够获得准确的极线几何估计的关键。

传感器模型通常不足以提供图像配准。事实上,光学遥感图像中可以包含几个几何失真的来源,包括地球自转、平台运动、非线性等。

它们会导致场景级、图像级和像素级的几何误差。在生成专题地图之前,尤其是当遥感数据需要与其他地理信息系统数据集成时,纠正误差是至关重要的。

此图说明了图像系列配准的一般工作流程:

../_images/residual_registration-figure.png

现在,我们将通过应用此工作流来配准两个图像来说明此过程。该过程可以很容易地扩展以执行图像序列配准。

这个例子的目的是描述如何在法国图卢兹地区的Pleiades正射校正图像上配准1级QuickBird图像。

image1 image2

图4.10:从左到右:Pleiades正射影像和图卢兹上空的QuickBird原始影像

从图像引用中提取元数据

我们首先将要优化的图像的几何元数据转储到文本文件中。在OTB中,我们使用扩展名 .geom 用于此类型的文件。估计精细几何图形的应用程序只需要输入该元数据和一组同源点。优化应用程序将创建一个新的 .geom 包含精细化的几何参数的文件,这些参数可以在重新投影后使用。

外部 .geom 文件还可以与一起使用 extended filenames

otbcli_ReadImageInfo -in slave_image
                     -outkwl TheGeom.geom

从图像中提取同源点

残差配准的主要思想是估计二次变换(在应用传感器模型之后)。同源点应用程序使用兴趣点检测方法来获得两幅图像中具有匹配点的一组点。

基本思想是使用这组同源点来估计两幅图像之间的残差变换。

文献中有各种各样的关键点检测器,它们允许检测和描述图像中的局部特征。这些算法为每个兴趣点提供了一个“特征描述”。该描述符具有对图像平移、缩放和旋转不变、对光照变化部分不变以及对局部几何失真稳健的特性。关键点。然后,将从输入图像中提取的特征相互匹配。然后使用这些对应关系来创建同源点。

SIFTSURF 可以在应用程序中计算关键点。可以为这两个图像分别设置计算关键点的频段。

该应用程序提供两种模式:

  • 第一种是全图模式,从两幅图像的全图中提取关键点(请注意,在此模式下不支持大图像文件)。
  • 第二种模式,称为 geobins 允许设置空间入库,以便在整个图像上散布较少的点。在这种模式下,使用地理变换或传感器建模来估计第二幅图像中对应的空间面元,并根据用户定义的精度进行填充。

此外,在这两种模式下,应用程序都可以过滤其在第一幅图像中的协同定位超过该精度的匹配。最后,高程参数允许在传感器几何数据的情况下更精确地处理传感器建模。这个 outvector 选项允许创建具有与匹配之间的本地化误差相对应的段的矢量文件。

最后,使用 2wgs84 选项,您可以将两个传感器几何图像或一个传感器几何图像与正射校正的参考进行匹配。在所有情况下,您都会得到一个遍布图像的地面控制点列表。

otbcli_HomologousPointsExtraction   -in1 slave_image
                                    -in2 reference_image
                                    -algorithm surf
                                    -mode geobins
                                    -mode.geobins.binstep 512
                                    -mode.geobins.binsize 512
                                    -mfilter 1
                                    -precision 20
                                    -2wgs84 1
                                    -out homologous_points.txt
                                    -outvector points.shp
                                    -elev.dem dem_path/SRTM4-HGT/
                                    -elev.geoid OTB-Data/Input/DEM/egm96.grd

请注意,为了正确使用应用程序,必须正确设置高程(包括DEM和大地水准面文件)。

利用同源点进行几何精化

现在我们可以使用这组连接点来估计残差变换。 RefineSensorModel 。此应用程序利用OSSIM功能来调整传感器型号。

它读取输入几何元数据文件( .geom ),它包含我们要改进的传感器型号信息,以及包含地面控制点列表的文本文件(homologous_point ts.txt)。它将传感器模型的可调参数与这些连接点进行最小二乘拟合,并生成更新后的几何文件作为输出(通常使用的扩展名为 .geom )

该应用程序还可以提供可选的基于地面控制点的统计文件和包含残留物的矢量文件,您可以在地理信息系统软件中显示这些文件。

请再次注意,为了正确使用应用程序,必须正确设置高程(包括DEM和大地水准面文件)。地图参数设置地图投影,其中将估计精度(以米为单位)。

精确值作为应用程序的输出提供(使用连接点位置计算),并允许控制估计模型的精度。

otbcli_RefineSensorModel   -elev.dem dem_path/SRTM4-HGT/
                           -elev.geoid OTB-Data/Input/DEM/egm96.grd
                           -ingeom slave_image.geom
                           -outgeom refined_slave_image.geom
                           -inpoints homologous_points.txt
                           -outstat stats.txt
                           -outvector refined_slave_image.shp

利用仿射几何对图像进行正射校正

现在我们将展示如何使用这种新的传感器模型。在我们的例子中,我们将使用此传感器模型在Pléiade参考上对图像进行正射校正。 Orfeo ToolBox 从版本3.16开始,可以使用hrefhttp://wiki.orfeo-toolbox.org/index.php/ExtendedFileNameextend图像路径来使用不同的元数据文件作为输入。这就是我们要用来对QuickBird图像进行正射校正的方法 .geom 对象获取的文件 RefineSensorModel 申请。在第一种情况下,对第二种图像使用了估计传感器模型,该模型考虑了从属的原始传感器模型,并且该模型也适用于连接点集合。

otbcli_OrthoRectification   -io.in slave_image?&geom=TheRefinedGeom.geom
                            -io.out ortho_slave_image
                            -elev.dem dem_path/SRTM4-HGT/
                            -elev.geoid OTB-Data/Input/DEM/egm96.grd

因此,如果图像中有足够多的同源点,并且控制了连接点集合与估计的传感器模型之间的残差很小,那么现在必须在两幅校正后的图像之间实现良好的配准。通常情况下,这比对两幅图像进行单独的正射纠正要好得多。

这种方法可以适用于几种情况,例如:

  • 配准立体图像对并估计精确的核线几何
  • 在检测更改之前进行注册