在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传递参数方式小结
Apr 17 Python
Python中map和列表推导效率比较实例分析
Jun 17 Python
python实现FTP服务器服务的方法
Apr 11 Python
python创建列表和向列表添加元素的实现方法
Dec 25 Python
Python2实现的图片文本识别功能详解
Jul 11 Python
python使用Matplotlib画条形图
Mar 25 Python
Pandas读取并修改excel的示例代码
Feb 17 Python
Python 中Django验证码功能的实现代码
Jun 20 Python
Python3+PyInstall+Sciter解决报错缺少dll、html等文件问题
Jul 15 Python
Pytorch mask-rcnn 实现细节分享
Jun 24 Python
Django+Uwsgi+Nginx如何实现生产环境部署
Jul 31 Python
python中validators库的使用方法详解
Sep 23 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实现ODBC数据分页显示一例
2006/10/09 PHP
php验证码生成代码
2015/11/11 PHP
WordPress中对访客评论功能的一些优化方法
2015/11/24 PHP
html读出文本文件内容
2007/01/22 Javascript
在html页面中包含共享页面的方法
2008/10/24 Javascript
JavaScript 面向对象的 私有成员和公开成员
2010/05/13 Javascript
js监听鼠标事件控制textarea输入字符串的个数
2014/09/29 Javascript
node.js中的http.request.end方法使用说明
2014/12/10 Javascript
jquery实现的点击翻书效果代码
2015/11/04 Javascript
一个极为简单的requirejs实现方法
2016/10/20 Javascript
Javascript 普通函数和构造函数的区别
2016/11/05 Javascript
javascript中this关键字详解
2016/12/12 Javascript
jquery使用EasyUI Tree异步加载JSON数据(生成树)
2017/02/11 Javascript
详解nodejs异步I/O和事件循环
2017/06/07 NodeJs
angularjs实现过滤并替换关键字小功能
2017/09/19 Javascript
详解Nodejs 通过 fs.createWriteStream 保存文件
2017/10/10 NodeJs
vue中element 上传功能的实现思路
2018/07/06 Javascript
详解Ubuntu安装angular-cli遇到的坑
2018/09/08 Javascript
elementUI 设置input的只读或禁用的方法
2018/10/30 Javascript
一步一步实现Vue的响应式(对象观测)
2019/09/02 Javascript
Element Breadcrumb 面包屑的使用方法
2020/07/26 Javascript
vant 解决tab切换插件标题样式自定义的问题
2020/11/13 Javascript
[06:11]2014DOTA2国际邀请赛 专访团结一心的VG战队
2014/07/21 DOTA
Python嵌套函数,作用域与偏函数用法实例分析
2019/12/26 Python
Python函数参数分类原理详解
2020/05/28 Python
HTML5 input新增type属性color颜色拾取器的实例代码
2018/08/27 HTML / CSS
KIKO MILANO英国官网:意大利知名化妆品和护肤品品牌
2017/09/25 全球购物
美国最值得信赖的宠物药房:Allivet
2019/03/23 全球购物
党员公开承诺书
2014/03/25 职场文书
4S店售后客服自我评价
2014/04/09 职场文书
中文专业求职信
2014/06/20 职场文书
统计员岗位职责
2015/02/11 职场文书
电影地道战观后感
2015/06/04 职场文书
小组组名及励志口号
2015/12/24 职场文书
2016年幼儿园教师政治学习心得体会
2016/01/23 职场文书
HTML5页面打开微信小程序功能实现
2022/09/23 HTML / CSS