Deep Image Homography Estimation 个人解读

原创 2017年01月03日 22:19:06

      本篇博文主要讲解2016年发表在 Computer Visionand Pattern Recognition上的一篇文章Deep Image Homography Estimation文章地址,该文章主要讲述了使用ConvNet来实现对Homography的估计,作者来自于Magic Leap,一家做AR的公司,大家可能对这个名字不是很熟悉,但是相信该链接中的视频确实引起一阵AR的浪潮。Homography(单应性)为SLAM领域的问题,由于本人对SLAM并不是特别的了解,对该文章中的卷积神经网络的应用比较感兴趣,所以如果有领域内的专业术语理解有误或者措辞不当的请谅解。

     需要解决的问题?

     传统、简单的解决Homography的方法是使用一个3*3的矩阵和一个固定的尺度比例,如下公式所示:

                                                                      

其中[u,v]为图像1中点p的位置,[u',v']为同一物体相机位于不同视角拍摄的图片2中所对应p'的位置,为旋转 项,[H_13 H_23]为平移偏移项。可以将问题寻找9个参数的问题转化为8个参数的问题,如下图所示。

                                                        

 其中∆u_1=u_1^'-u_1,其中左图中的4个角点组成一个4边形,对应右图中由4个角点组成的4边形,这样参数就由9个变成现在的8个。问题现在比较明确为求这8个参数。

     数据集构造

        对于深度学习来说,构造数据集是一个非常关键的问题。

                                                                                           

     step1:随机的以p为中心(注意边界)切一个正方形大小的patch,该patch由4个角点组成,step2:对这4个角点加扰动量[-ρ,ρ],就生成了step3中的绿色的4变形,将该多边形的变化矩阵应用到整幅图中就可以得到step4中的图。这样就可以得到左右两幅图的图像对。

    其中在训练网络中,采用SGD,动量值为0.9,基本的学习速率为0.005,每经过30000次迭代产生学习速率会下降0.1,训练网络中共有90000次迭代,batch size为64.在caffe框架中训练,采用Titan X GPU加速,大概每个网络训练时间为8小时。

    training data

    采用MS-COCO的训练集,将所有图片转化为320*240的灰度图,通过上述的构造数据集的方法共产生500,000对128*128的图像对,其中ρ=32,大约为图像尺寸的1/4。

   testing data

   采用MS-COCO14的测试集,将图片转化为640*480的灰度图,并裁剪成256*256的图像对,其中ρ=64。

 

       HomographyNet构建

       结构类似于VGG的网络,卷积核为3*3,采用了Batch Norm和ReLU,总共网络包含8个卷积层,每个卷积层的个数为:64、64、64、64、128、128、128、128,每两个卷积层之后又一个max pooling(2*2,步长为2),以及2个全连接层,输入为2-通道的灰度图,即将左图和右图叠加成2通道的图片,可以参考该博客理解。 

其中文中构造了两种HomographyNet网络,

                                                                

Classificationnetwork:采用量化机制(会产生量化误差),训练过程中交叉熵为代价函数,最后一层为softmax层产生每个角点置信度的8维向量。

Regression network:产生8个真实值,训练过程中欧式距离为代价函数,最后一层的输出为8*21,基于classionation网络的缺点,8个方向的输出用21个量化量来表示。

       效果如何?

                                                                                                      

        可以看出,Regression Network的效果最好,不过文中也提到了HomographyNet相比较于传统的ORB的方法在有些优势,并且对噪声的鲁棒性强,但是在有些场景下传统的也会比HomographyNet表现的好。

       深度学习目前在各个领域开始有应用,正如文中在结尾所说,如何将homography估计由之前的计算机视觉方面的角度转到学习的角度,是我们现在要思考的,相信深度学习将会在各个领域的问题中有所建树。以上是我对该paper的理解,如果有误,请指出,共同进步。

 

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

笔记:Deep multi patch aggregation network for image style, aesthetics and quality estimation

Image style, aesthetics and quality estimation

Homography estimation实现

1、RANSAC:RANdom Sample Consensus算法2、Poisson blending/Mix blending3、Homography estimation 这边先讲讲怎么实现h...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

论文PCANet: A Simple Deep Learning Baseline for Image Classification?的matlab源码解读(一)

本文参考的文献   http://www.lai18.com/content/1452306.html  https://my.oschina.net/Ldpe2G/blog/275922 htt...

深度学习论文随记(二)---VGGNet模型解读-2014年(Very Deep Convolutional Networks for Large-Scale Image Recognition)

深度学习论文随记(一)---VGGNet模型解读 Very Deep Convolutional Networks forLarge-Scale Image Recognition Author:...

Deep Residual Learning for Image Recognition(ResNet)残差网络解读

Kaiming 的Resnet在2015年横扫各大视觉主流比赛榜单,对工业界和学术界都产生了巨大而深远的影响,论文拿下了CVPR2016的best paper award。首先来看看ResNet的威力...

论文PCANet: A Simple Deep Learning Baseline for Image Classification?的matlab源码解读(四)

PCANet_train.m函数 function [f V BlkIdx] = PCANet_train(InImg,PCANet,IdtExt) % =======INPUT===========...

论文PCANet: A Simple Deep Learning Baseline for Image Classification?的matlab源码解读(二)

PCANet_output.m function [OutImg OutImgIdx] = PCA_output(InImg, InImgIdx, PatchSize, NumFilters, V) ...

DeepPose: Human Pose Estimation via Deep Neural Networks(精读)

一.文献名字和作者 DeepPose: Human Pose Estimation via Deep Neural Networks, CVPR2014     二.阅读时间 2014...

几分钟走进神奇的光流|FlowNet 2.0: Evolution of Optical Flow Estimation with Deep Networks

故事背景 那是15年的春天,本文的作者和其他几个人,看着美丽的春光,突发奇想使用CNN做光流估计,于是FlowNet成了第一个用CNN做光流的模型,当时的结果还不足以和传统结果相匹配。201...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)