文章《Deep Image Homography Estimation》

 

之前自己也在思考如何利用神经网络实现图像的配准,没思考出什么结果来。大部分的深度学习中使用的是单幅图像进行训练,如果输入的是变形图像和参考图像,其实可以借鉴图像匹配的网络,但是还是不清楚具体如何进行。甚至开始怀疑配准的意义,既然都有一幅ground truth了,为什么不直接使用而需要将另外一幅进行配准。最后这个问题后来想通了:配准指的是形态配准到一致,但在异源图像的融合中,还需要两幅图像之间的互补信息才能得到更多的有效信息。剩下的问题在这篇文章中给出了一些思路。

总的来说,这篇文章的创新点主要有两个,一个是如知乎回答中的,将神经网络与图像处理的专业知识结合起来了,不再是使用一个黑箱直接得到结果,而是使用神经网络得到一个中间变量Homography,再使用Homography进行配准,而不必再将特征点检测和变换估计分开,因为传统的方法是先使用ORB等特征点检测找到一些角点,然后再使用RANSAC等方法进行变换矩阵的估计。因为关于Homography的研究其实已经很成熟了,只要是共面变换,就可以使用Homography单应矩阵描述图像之间的变换。文章中提到Homography的应用场景有三个:只有旋转的变换;平面场景;离观察者很远的场景。这三种条件正如之前博客中对于Homography的分析。

还有一个创新点我认为是作者以一种很简单的方式建立了训练样本并且得到了真正的Homography。作者借助了图像集MS-COCO(Microsoft COCO: Common Objects in Context)构建自己的训练样本。

首先Homography有8个自由度(8-dof),所以理论上只需要4对匹配点就可以估计出单应矩阵。所以参考图像就是在图像样本中随机裁剪得到一个128x128大小的图像patch A,然后对于图像的四个顶点坐标的x,y值分别在[-p,p]范围内进行偏移(偏移最大值为128的四分之一),于是就得到了一个变形的绿色的框B,并且可以得到A到B之间的变换矩阵HAB作为ground-truth training label。但是在训练网络中我们希望变形图像和参考图像都是大小一样的正方形,所以我们借助HAB矩阵的逆矩阵,将原图变形,同时将绿框恢复为正方形,对应Step4,Step4中的图像中的绿框就是变形图像B。A和B都是灰度图,二者构建一个2通道的图像作为网络的输入。关于2通道图像在神经网络中的训练,可以参考这个博客。

此外,还可以人为地在训练集上做一些模糊等处理来增强网络的鲁棒性。

关于网络的一些细节

常规操作:使用3x3的卷积模板,使用BatchNorm归一化,使用ReLU作为激活函数。整个网络的结构和Oxford VGG很相似,整个网络有10层,其中有8个卷积层,两个全连接层,每两个卷积层后面跟一个最大池化层,在最后一个卷积层和第一个全连接层之间还有一个Dropout,Dropout以0.5的概率随机丢弃神经元,避免过拟合。

在此基础上,其实作者提出了两个结构,一个是回归网络regression network,直接估计出Homography矩阵的参数值;一个是分类网络classification network,输出对于量化矩阵的分布函数produces a distribution over quantized homographies.

可以看到,两种网络只有最后一层是不同的。

回归网络在训练时最后一层使用的是L2 损失函数。这种方法的优点是计算简单,然而,没有计算出预测值的置信度confidence,这在某些应用中是不允许的prohibitive。

分类网络在最后一层使用的是softmax分类器训练时使用交叉熵cross entrop作为损失函数。文章中使用了量化方法,我的理解是这样的:文章首先将对单应矩阵的预测转换成对4对匹配点的预测,具体形式是横纵坐标的偏移量(对应于测试样本的构建),4个点对的偏移量构成的矩阵和单应矩阵是一一对应的。

所以,量化就是把当前点坐按概率分配给对应点。因为会产生量化误差,所以对每一个角点会生成一个关于偏移量的分布函数。

 

X和y坐标都可以在正向和负方向偏移。对8个维度,每个维度用21bins量化,这样输出就是168个神经元。

怎么实验的

实验使用了Titan X GPU进行训练,耗时8小时,使用了随机梯度下降法,动量momentum是0.9,学习率是0.005,每30000次迭代进行因子为10的下降。Batch size是64,total iteration为90000.使用Caffe深度学习框架。网络参数的初始值为随机值。

测试集和训练集的生成方法类似,只不过图像更大,patch也更大(256x256).因为在patch是128x128时,ORB检测出的特征点过少,而神经网络没有这个问题。因为网络的输入必须是固定大小的,所以测试时的patch必须进行因子为2的下采样,在计算得到homography时再乘2.

作者将HomographyNet的两个版本回归和分类网络与两个baseline进行了比较。一个baseline是ORB特征点检测+RANSAC+OpenCV中的getPerspectiveTransform函数的方法;一个baseline是对于测试集中的图像对使用单位矩阵identity matrix。ORB方法的效果与特征点的数目有关:In scenarios where too few ORB features are computed, the ORB+RANSAC approach outputs an identity estimate. In scenarios where the ORB+RANSAC’s estimate is too extreme, the 4-point homography estimate is clipped at [-64,64].

下图是实验结果。评价指标是对应点之间的平均距离。

可以看到回归的方法效果最好,但是分类的方法可以得到置信度,且可以可视化地纠正实验结果,在某些应用中是有优势的。

作者总结了这个系统的两个优势,一个是速度快,借助英伟达的泰坦显卡,可以实现每秒处理300帧的图像,with a batch size of one。第二,将计算机视觉中最基础的单应矩阵的估计问题转化为机器学习的问题,可以针对应用情景如使用SLAM的室内导航机器人做特定优化。事实上,单应矩阵在图像拼接,ORB-SLAM算法和Augmented Reality(AR),相机标定中都有很重要的应用。这篇文章的三个作者都来自Magic Leap公司,一家做AR的公司,已经得到了Google和阿里巴巴等公司是十几亿美金的投资。

Reference:

https://blog.csdn.net/ajing2014/article/details/53998866

### 回答1: Homography估计是一种计算机视觉技术,用于在两个平面之间进行几何变换。它可以用于图像配准、图像拼接、虚拟现实等应用中。Homography估计的目标是找到一个3x3的矩阵,将一个平面上的点映射到另一个平面上的点。这个矩阵可以通过多种方法来估计,包括最小二乘法、RANSAC等。 ### 回答2: Homography estimation是一种计算机视觉技术,指的是在图像处理中,通过计算两幅图像之间的变换关系,来实现不同图像之间的几何转换。这种技术可以应用于很多领域,包括但不限于机器人视觉、图像配准、增强现实、虚拟现实和数字图像处理等。 在homography estimation中,我们需要寻找两幅图像之间的变换矩阵。这个变换矩阵被称为幂律映射,可以将一幅图像的特征点集投影到另一幅图像的对应点集,从而实现两幅图像之间的几何变换。其中特征点可以是关键点、角点,也可以是一些其他算法提取出的特征点等。 常见的homography estimation算法有RANSAC和最小二乘法等。RANSAC算法是一种假设-验证的方法,它随机选择几个特征点,通过估计变换矩阵来验证这些点是否符合变换矩阵的假设。最小二乘法是一种基于矩阵代数的方法,通过最小化特征点之间距离的平方和来计算变换矩阵。 homography estimation的一个主要应用是图像配准。在医学影像、航拍影像、卫星影像等领域,需要将多幅图像进行配准,以实现更准确的测量和分析。homography estimation可以帮助我们计算不同图像之间的几何变换关系,从而实现图像的精确配准。 总之,homography estimation是一种重要的计算机视觉技术,它为图像处理和计算机视觉领域带来了很多便利和挑战。未来,随着人工智能和机器学习技术的不断发展,homography estimation将会得到更广泛的应用和深入的研究。 ### 回答3: homography estimation是指在计算机视觉中,通过图像对之间的空间变换关系来估计两个图像之间的投影映射。在计算机视觉领域中,对于单个图像来说,可以通过特征点的匹配关系来建立基础矩阵来描述两个图像之间的外参关系,而对于一组图像来说,则需要使用homography矩阵来描述它们之间的内参数和外参数关系。 homography estimation通常需要使用RANSAC算法来进行随机采样和模型拟合的过程,以确保对噪声和异常点有较好的鲁棒性和准确性。homography estimation主要应用于图像拼接、三维重建、目标跟踪、相机标定等领域,其优点在于适用于对于场景有较大的姿态变化、平面或近似平面场景、易于感知整个场景的视点调整等场景。同时,homography estimation也有其局限性,比如对于物体的旋转、缩放、形状变化等更为复杂的情况,其表现可能并不优秀。 总体来说,homography estimation可以为计算机视觉领域提供一种有效的图像对齐和重建的方法,有着广泛的应用场景和潜在的研究价值。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值