在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 相关文章推荐
Flask 让jsonify返回的json串支持中文显示的方法
Mar 26 Python
Python WSGI的深入理解
Aug 01 Python
python斐波那契数列的计算方法
Sep 27 Python
Python3.5常见内置方法参数用法实例详解
Apr 29 Python
Python函数和模块的使用总结
May 20 Python
Python 3.8中实现functools.cached_property功能
May 29 Python
PyQt5图形界面播放音乐的实例
Jun 17 Python
python内存管理机制原理详解
Aug 12 Python
Python openpyxl读取单元格字体颜色过程解析
Sep 03 Python
Python 随机生成测试数据的模块:faker基本使用方法详解
Apr 09 Python
python调用私有属性的方法总结
Jul 24 Python
python math模块的基本使用教程
Jan 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
php类自动加载器实现方法
2015/07/28 PHP
php文件上传的两种实现方法
2016/04/04 PHP
jQuery 隔行换色 支持键盘上下键,按Enter选定值
2009/08/02 Javascript
初窥JQuery(二)事件机制(2)
2010/12/06 Javascript
JS控制阿拉伯数字转为中文大写示例代码
2013/09/04 Javascript
jqGrid增加时--判断开始日期与结束日期(实例解析)
2013/11/08 Javascript
javascript笛卡尔积算法实现方法
2015/04/08 Javascript
省市联动效果的简单实现代码(推荐)
2016/06/06 Javascript
使用Curl命令查看请求响应时间方法
2016/11/04 Javascript
jquery获取下拉框中的循环值
2017/02/08 Javascript
jQuery实现用户输入自动完成功能
2017/02/13 Javascript
React 子组件向父组件传值的方法
2017/07/24 Javascript
微信网页授权并获取用户信息的方法
2018/07/30 Javascript
layer插件select选中默认值的方法
2018/08/14 Javascript
VUE中使用HTTP库Axios方法详解
2020/02/05 Javascript
[02:02]2018DOTA2亚洲邀请赛Mineski赛前采访
2018/04/04 DOTA
Python线程下使用锁的技巧分享
2018/09/13 Python
Python判断以什么结尾以什么开头的实例
2018/10/27 Python
python登录WeChat 实现自动回复实例详解
2019/05/28 Python
PyCharm 创建指定版本的 Django(超详图解教程)
2019/06/18 Python
django之使用celery-把耗时程序放到celery里面执行的方法
2019/07/12 Python
python爬虫中多线程的使用详解
2019/09/23 Python
django 文件上传功能的相关实例代码(简单易懂)
2020/01/22 Python
python怎么对数字进行过滤
2020/07/05 Python
用canvas显示验证码的实现
2020/04/10 HTML / CSS
纽约家具、家居装饰和地毯店:ABC Carpet & Home
2017/06/21 全球购物
网站编辑求职信
2013/10/17 职场文书
教师自我评价范文
2013/12/16 职场文书
经典优秀毕业生求职信范文分享
2013/12/18 职场文书
高中物理教学反思
2014/02/08 职场文书
殡葬服务心得体会
2014/09/11 职场文书
作弊检讨书
2015/01/27 职场文书
小学教师师德师风自我评价
2015/03/04 职场文书
2019运动会广播加油稿汇总
2019/08/21 职场文书
MongoDB连接数据库并创建数据等使用方法
2021/11/27 MongoDB
Python OpenCV超详细讲解基本功能
2022/04/02 Python