概述
前言
毕设关于文本检测算法,优化思路中有关于反卷积操作。首先让我们了解一下反卷积操作:反卷积就是卷积的反操作,但是通常情况下反卷积被用来和池化对应起来。被认为是池化的逆操作。原因是池化的作用是缩小图片大小,而池化恰好和他相反。
下面让我们看两种反卷积。
反卷积
可以看到反卷积有两种,当不同步长时采用不同方式。注意一下,由于反卷积对应的卷积操作,认为是卷积的逆过程。所以步长是对应正卷积的步长,然后在用逆向过来所以才会产生这样的区别。
附上TensorFlow函数:tf.nn.conv2d_transpose。
双线性插值
反卷积是基于补0做的,其实效果并不好,最近研究EAST算法发现了一种代替算法:双线性插值。
首先看一下线性插值:
已知数据 (x0, y0) 与 (x1, y1),要计算 [x0, x1] 区间内某一位置 x 在直线上的y值。这很好理解,那么让我们看一下双线性插值:
这就是双线性插值法,我们把它运行用到求像素点上,然后用这种插值法,代替反卷积,这样我们获得了一种更合理的恢复图像大小的方法。
下面提供一种函数实现方法:
img_resized = tf.image.resize_images(image_data, [300, 300], method=0)
通过tf.image.resize_images函数调整图像的大小。这个函数第一个参数为原始图像,第二个和第三个分别为调整后图像的大小,method参数给出了调整图像大小的算法
method = 0 双线性插值法
method = 1 最近邻居法
method = 2 双三次插值法
method = 3 面积插值法
最后
就写到这了,希望能帮到大家,本人也是小白,若有错误还请指出,多谢
最后
以上就是香蕉香菇为你收集整理的反卷积实现及优化的全部内容,希望文章能够帮你解决反卷积实现及优化所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复