在keras里实现自定义上采样层


Posted in Python onJune 28, 2020

Keras里的UpSampling2D层不是中的双线性内插,而是简单的重复图像。这点和pytorch不一样,pytorch默认使用的是双线性内插。

同样:这里仍然使用的是keras而不是tf.keras.

keras里UpSampling2D的部分定义说明如下:

class UpSampling2D(Layer):
  """Upsampling layer for 2D inputs.
  Repeats the rows and columns of the data
  by size[0] and size[1] respectively.

可以看出,这里的上采样确实只是简单的图像重复。

要想使用双线性或者最近邻或者双三次插值上采样,则需要在tf的tf.image.resize_images函数基础上进行包装,代码如下:

####定义:
def my_upsampling(x,img_w,img_h,method=0):
  """0:双线性差值。1:最近邻居法。2:双三次插值法。3:面积插值法"""
  return tf.image.resize_images(x,(img_w,img_h),0)
 
###调用:
Lambda(my_upsampling,arguments={'img_w':self.img_w,'img_h':self.img_h})(output_6)
 
###load_model时注意加上tf:
model = keras.models.load_model('my_model.h5', custom_objects={'tf': tf})

补充知识:keras中使用内置模型语义分割上采样维度不匹配

1.卷积时要使用padding=same因此要修改原来的padding=valid

x = conv2d_bn(img_input, 32, 3, strides=2, padding='same')

2.池化时卷积核大小修改为2而不是原来的3

branch_pool = layers.MaxPooling2D(2, strides=2, padding='same')(x)

以上这篇在keras里实现自定义上采样层就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 面向对象 成员的访问约束
Dec 23 Python
python使用7z解压软件备份文件脚本分享
Feb 21 Python
Python2.x版本中cmp()方法的使用教程
May 14 Python
谈谈Python进行验证码识别的一些想法
Jan 25 Python
Mac 上切换Python多版本
Jun 17 Python
pycharm设置注释颜色的方法
May 23 Python
利用python循环创建多个文件的方法
Oct 25 Python
python通过链接抓取网站详解
Nov 20 Python
PyCharm取消波浪线、下划线和中划线的实现
Mar 03 Python
如何用python 操作zookeeper
Dec 28 Python
python 数据类型强制转换的总结
Jan 25 Python
Python3+Appium安装及Appium模拟微信登录方法详解
Feb 16 Python
Python如何对XML 解析
Jun 28 #Python
keras 自定义loss层+接受输入实例
Jun 28 #Python
python批量处理多DNS多域名的nslookup解析实现
Jun 28 #Python
解决Keras TensorFlow 混编中 trainable=False设置无效问题
Jun 28 #Python
Keras: model实现固定部分layer,训练部分layer操作
Jun 28 #Python
sklearn的predict_proba使用说明
Jun 28 #Python
基于python实现ROC曲线绘制广场解析
Jun 28 #Python
You might like
初探PHP5
2006/10/09 PHP
《PHP编程最快明白》第五讲:php目录、文件操作
2010/11/01 PHP
PHP中spl_autoload_register函数的用法总结
2013/11/07 PHP
PHP中session跨子域的三种实现方法
2016/07/25 PHP
PHPUnit + Laravel单元测试常用技能
2019/11/06 PHP
JavaScript 输入框内容格式验证代码
2010/02/11 Javascript
深入理解JavaScript系列(9) 根本没有“JSON对象”这回事!
2012/01/15 Javascript
JS基于cookie实现来宾统计记录访客信息的方法
2015/08/04 Javascript
Bootstrap 最常用的JS插件系列总结(图片轮播、标签切换等)
2016/07/14 Javascript
Javascript将JSON日期格式化
2016/08/23 Javascript
解析ajaxFileUpload 异步上传文件简单使用
2016/12/30 Javascript
JavaScript实现的搜索及高亮显示功能示例
2017/08/14 Javascript
vue监听键盘事件的快捷方法【推荐】
2018/07/11 Javascript
vue表单验证之禁止input输入框输入空格
2020/12/03 Vue.js
[28:48]《真视界》- 2017年国际邀请赛
2017/09/27 DOTA
Python中处理unchecked未捕获异常实例
2015/01/17 Python
Python设计模式之享元模式原理与用法实例分析
2019/01/11 Python
pyqt5、qtdesigner安装和环境设置教程
2019/09/25 Python
Python使用Pyqt5实现简易浏览器(最新版本测试过)
2020/04/27 Python
Python绘图之柱形图绘制详解
2020/07/28 Python
详解python tcp编程
2020/08/24 Python
网购亚洲时装、美容产品和生活百货:YesStyle
2016/09/15 全球购物
澳大利亚最大的女装零售商:Millers
2017/09/10 全球购物
波兰补充商店:Muscle Power
2018/10/29 全球购物
美国时尚假发购物网站:Wigsbuy
2019/04/06 全球购物
如何在C# winform中异步调用web services
2015/09/21 面试题
大学生冰淇淋店商业计划书
2014/01/14 职场文书
洗手间标语
2014/06/23 职场文书
团日活动总结报告
2014/06/25 职场文书
2014年高数考试作弊检讨书
2014/12/14 职场文书
悬空寺导游词
2015/02/05 职场文书
个人总结格式范文
2015/03/09 职场文书
军训决心书范文
2015/09/22 职场文书
幼儿园2016年圣诞活动总结
2016/03/31 职场文书
Win11查看设备管理器
2022/04/19 数码科技
CSS link与@import的区别和用法解析
2023/05/07 HTML / CSS