python工具方法 21 应用于语义分割、图像分类、自动编码机的图像随机mask方法(Cutout方法、Random Erasing方法)
2023-09-14 09:15:04 时间
图像随机mask方法也就是数据增强中的Cutout方法、Random Erasing方法,通过对图像随机添加mask可以消除模型在训练过程中对特定局部区域的过度依赖,让模型学习到对象中各个区域的联系。通过随机mask的方法,可以提升模型对语义区块的学习,提升模型的性能。其机理是,损失部分局部信息不会影响类别的判断。让CNN利用整幅图像的全局信息,而不是一些小特征组成的局部信息。
基于numpy实现,适用于任意深度学习框架中的数据预处理阶段。话不多说,直接上代码。
1、随机mask方法的实现
以下共实现了两个随机mask方法,random_mask_one只能随机处理一个图片,random_mask_list可以按照相同的随机参数同时处理多个图片。参数列表中的mask_shape表示最大的mask的shape(生成的mask大小在0.3*mask_shape到mask_shape之间),pad_v表示mask区域的值(通常默认是0),dfotmat是指传入的图片的数据格式(因为在不同的深度学习框架下图片的格式是不一样的,tf、keras框架是'HWC'格式,paddlepaddle、pytorch是'CHW'格式)
import numpy as np
from PIL import Image
from matplotlib import pyplot as plt
def myimshows(imgs, titles=False, size=12):
lens = len(imgs)
plt.figure(figsize=(size,size))
if titles == False:
titles="ABCDEFGHIJKLMN
相关文章
- 简介Python中用于处理字符串的center()方法
- python中的实例方法、静态方法、类方法、类变量和实例变量浅析
- Python操作SQLite数据库的方法详解
- python paramiko ssh.exec_command()启动tomcat服务器应用进程失败问题解决方法- Neither the JAVA_HOME nor the JRE_HOME environment variable is defined At least one of these environment variable is needed to run this progr
- Python集合类型详解(二)——集合处理方法与应用场景
- Python从入门到成神必须知道的找包方法
- Python之ffmpeg-python:ffmpeg-python库的简介、安装、使用方法之详细攻略
- Python:python语言中与时间有关的库函数简介、安装、使用方法(获取当前时间/计算程序块前后运行时间/模型训练时间或耗费时间)之详细攻略
- Python语言学习:Python语言学习之容器(列表&元组&字典&集合)简介、特点/意义/经验总结及容器魔法方法(定义可变&不可变容器的协议)的简介、案例应用之详细攻略
- Python语言学习:Python语言学习之python包/库package的简介(模块的封装/模块路径搜索/模块导入方法/自定义导入模块实现华氏-摄氏温度转换案例应用)、使用方法、管理工具之详细攻略
- Python语言学习:在python中,如何获取变量的本身字符串名字而非其值/内容及其应用(在代码中如何查找同值的所有变量名)
- Python编程语言学习:包导入和模块搜索路径(包路径)简介、使用方法(python系统环境路径的查询与添加)之详细攻略
- Python语言学习:复杂函数(yield/@property)使用方法、案例应用之详细攻略
- Python IDE之Pydev: 基于Eclipse搭建python的编译环境(Eclipse+pydev)简介、安装、使用技巧方法集合之详细攻略
- Python语言学习:基于python五种方法实现使用某函数名【func_01】的字符串格式('func_01')来调用该函数【func_01】执行功能
- Python语言学习之字符串那些事:python和字符串的使用方法之详细攻略
- python代码重构优化的方法,助你一臂之力
- Python编程:pyenv管理多个python版本环境
- 循环遍历Java字符串字符的规范方法——类似python for ch in string
- Python编程语言学习:python中浅复制/深复制(或浅拷贝/深拷贝)的简介、案例应用注意事项之详细攻略
- python使用技巧(二十四):彻底学会argparse与sys.argv方法