每天一篇小文章 --- 基于边缘引导的图像拼接网络

原文:Edge-guided Composition Network for Image Stitching,2021

作者 :华东师范大学, Qinyan Dai,Faming Fang ∗

发表期刊:PATTERN RECOGNITION


热身部分:主要介绍一下相关的研究,包括图像拼接的传统方法和基于深度学习的边缘检测方法。

传统的图像拼接方法:略

基于深度学习的边缘检测:

     用于图像超分辨率(image super-resolution):

        SeaNet:提出一种预测软边缘(soft-edge)的网络;

        EGNet:明确建模互补显著对象信息和显著边缘信息,便于保持显著对象和进行更好的定位;

        ENFNet:提出一种引导块,把边缘先验信息映射到特征空间;

看不懂,留着吧,以后说不定看得懂!


进入主题,对神经网络整体思路的介绍:

        首先明确一下总体思路:作者的思路很明确,也是一个正常人就能想到的思路,图像凭借,重要的是把图像的重合部分给识别出来,重点处理,其他不重合部分依次保留,用公式表示:

         I1, I2 就是对应的输入图片,那怎么样才能更好地识别是否重合部分呢,作者任务使用边缘图像作为输入是有很大帮助的!所以总体思路: 边缘轮廓检测----重合部分识别-----图像拼接,其网络框架如下:

每天一篇小文章 --- 基于边缘引导的图像拼接网络_第1张图片


网络第一部分:边缘轮廓识别:类似于HED,网络架构如下:

每天一篇小文章 --- 基于边缘引导的图像拼接网络_第2张图片


网络第二部分: 重合部分识别

        首先需要对输入图片的特征进行提取:

                值得一提的是,对于特征的提取需要注重低层次的信息和高层次的信息,因此在特征提取过程中加入了两个跳跃连接。而整体采用的是一个编码--解码机制,中间加入了一个ASPP层,用来获取不同的接受场信息,结构如图:特征提取后的图片表示如下:

每天一篇小文章 --- 基于边缘引导的图像拼接网络_第3张图片

         通道1:将两张图片的特征提取的信息结合轮廓识别的信息(channel叠加),如何使用1*1的卷积核进行混合:

         通道2:将两张图片的特征提取的信息结合轮廓识别的信息后,进行相似性检测,这里有一个小技巧,倘若采用全相关(full correlation),则对比单一一个channel之间的相关性,即相似性测量两个对应位置只被描述在一个值上,从而导致丢失很多信息。故采用多个channel作为一个组进行相似性求解,<>代表内积:

         之后将通道1、通道2 进行叠加:

         


网络第三部分:混合权重的求解,目的在于求得以下公式的两个系数W1和W2,然后以原来输入的两张图片作为权重叠加,获得最后的输出图片,这样的好处在于能够很好地保持图片的清晰度,该模块主要由3个residual block和一个1*1的卷积层构成,1*1的卷积层目的在于输出channel为二的两个权重值。

         总结以上,整个网络介绍完毕,以下是对训练方法和Loss函数的介绍:


LOSS函数:第一阶段训练边缘轮廓提取部分,采用cross-entropy作为loss,第二阶段,冻结轮廓提取部分的权重进行训练,其loss由三部分组成:

         L1 LOSS: OR--Overlapped,若是重叠区域,则拥有更大的权重值,OR = 1, 否则为零:

        边缘感知的平滑LOSS:我们希望整个混合权重的变化是光滑的,在不光滑的地方通过惩罚来提高其光滑度。那么具体如何保证其实现呢?作者从以下三个角度:1.直接计算图片梯度,保证其是光滑的,2、使用SSIM计算输出图片的结构特征,保证其与输入图片其中的一张相似,3、利用轮毂提取计算其轮廓图的梯度信息,保证其光滑性:

每天一篇小文章 --- 基于边缘引导的图像拼接网络_第4张图片

         边缘感知的细节保持LOSS:对于边缘轮廓比较明显的地方,进行混合容易造成图片模糊,因此我们希望这些轮廓能够比较完全相似或者完全不同于输入的一张图片,即使混合权重W偏离0.5,靠近0或者1:

你可能感兴趣的:(每天一篇小文章)