欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

python工具方法21应用于语义分割、图像分类、自动编码机的图像随机mask方法

时间:2023-08-19

通过对图像随机添加mask可以消除模型在训练过程中对特定区域的过度依赖,让模型学习到对象中各个区域的联系。通过随机mask的方法,可以提升模型对语义区块的学习,提升模型的性能。其机理是,损失部分局部信息不会影响类别的判断。理论部分有待完善,先附上工程实现代码。

基于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 npfrom PIL import Imagefrom matplotlib import pyplot as pltdef myimshows(imgs, titles=False, size=12): lens = len(imgs) plt.figure(figsize=(size,size)) if titles == False: titles="ABCDEFGHIJKLMNOPQRST" for i in range(1, lens + 1): cols = 100 &#

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。