Albumentation使用指南
Albumentation使用指南
import最好放在最前面否则可能会和其他模块冲突,import之后如果包OMP的错误就加两行
import os
os.environ['KMP_DUPLICATE_LIB_OK'] = 'TRUE'
资源
官方example
官方demo
使用
import albumentations as A
from PIL import Image
import cv2 as cv
import numpy as np
from data import get_dir, get_data, get_regr_tagtrans = A.Compose([A.HorizontalFlip(p = 0.5),# A.Transpose(),A.OneOf([A.IAAAdditiveGaussianNoise(),A.GaussNoise(),], p=0.3),A.OneOf([A.MotionBlur(p=0.2),A.MedianBlur(blur_limit=3, p=0.1),A.Blur(blur_limit=3, p=0.1),], p=0.5),A.ShiftScaleRotate(shift_limit=0.0625, scale_limit=0.2, rotate_limit=45, p=0.2),A.OneOf([A.OpticalDistortion(p=0.3),A.GridDistortion(p=0.1),A.IAAPiecewiseAffine(p=0.3),], p=0.5),A.OneOf([A.CLAHE(clip_limit=2),A.IAASharpen(),A.IAAEmboss(),A.RandomBrightnessContrast(),], p=0.5),A.HueSaturationValue(p=0.3),])
src_data = get_data(f'D:/face_five', n_class = 5)
image = src_data[0][0]
img = trans(image = image)['image']cv.imshow("da", img)
cv.waitKey(0)
A.OneOf是从列表里选一个相当于transforms里的randomCoice
A.Compose与transforms里的一样
简单增样:
随机调整亮度:
RandomBrightness(limit=2, p=0.5)
limit最大时现在的两倍,p是调整的概率
随机旋转:
Rotate(limit=89, p=0.5)
色度偏移:
RGBShift(r_shift_limit=133, g_shift_limit=146, b_shift_limit=26, p=0.5)
三原色在原本基础上增加或减小
伽马变换:
RandomGamma(gamma_limit=148, p=0.5)
色域的非线性变换
垂直翻转:
VerticalFlip(p=0.5)
水平翻转:
HorizontalFlip(p=0.5)
随机90度旋转:
RandomRotate90(p = 0.5)
旋转平移缩放:
ShiftScaleRotate(shift_limit=0.8, scale_limit=1, rotate_limit=118, p=0.5)
rotate_limit:旋转角度限制
scale_limit:缩放尺寸限制,(0到2)
shift_limit:平移限制(0 到1)
周围空缺部分均镜面填补
转灰度图:
trans_test = A.ToGray()
中心裁剪:
CenterCrop(height=480, width=480, p=0.5)
HSV偏移:
HueSaturationValue(hue_shift_limit=20, sat_shift_limit=20, val_shift_limit=27, p=0.5)
hue:色度
sat:饱和度
val:亮度
随机对比度:
RandomContrast(limit=2.3, p=0.5)
limit:0到3, 1为正常值
高级增样:
图片压缩:
JpegCompression(quality_lower=80, quality_upper=100, p=0.5)
quality_lower&quality_upper设置压缩百分比的上下限
质量压缩:
模糊处理:
box模糊:
trans_test = A.Blur(blur_limit=7, p=1)
blur_limit:最大的核尺寸,核尺寸的最小值是3,blur_limit默认为7
中值模糊:
A.MedianBlur(blur_limit=3, p=0.1)
blur_limit:同上(但只能是奇数)
动态模糊:
A.MotionBlur(p=0.2)
blur_limit同上
高斯模糊:
blur_limit(奇数)
trans_test = A.GaussianBlur(blur_limit=7, p=1)
棱镜模糊:
trans_test = A.GlassBlur(sigma=0.7, max_delta=4)
sigma:高斯核的标准差
max_delta:像素交换的最大距离
变形:
弹性变形:
文本图像分析最好的变形
ElasticTransform(alpha=155, sigma=210, alpha_affine=157, p=0.5)
光学变形:
OpticalDistortion(distort_limit=0.25, shift_limit=0.2, p=0.5)
distort_limit四周镜像填充宽度(图片大小不变)
shift_limit
栅格变形:
trans_test = A.GridDistortion(num_steps=5, distort_limit=0.3, p=1)
num_steps:一条边有几个格子
distort_limit:变形范围
自适应直方图均衡化:
trans_test = A.CLAHE(clip_limit=4.0, tile_grid_size=(8, 8))
挖小洞:
trans_test = A.Cutout(num_holes=8, max_h_size=8, max_w_size=8)
num_holes:小洞的数量
max_h_size:最大高度
max_w_size:最大宽度
特效:
加雪花:
trans_test = A.RandomSnow(p = 1)
加雨滴:
trans_test = A.RandomRain(p = 1)
加雾:
trans_test = A.RandomFog(p = 1)
加阳光:
trans_test = A.RandomSunFlare(p = 1)
加阴影:
trans_test = A.RandomShadow(p = 1)
添加噪声:
添加传感器噪声:
trans_test = A.ISONoise(p = 1)
高斯噪声:
trans_test = A.IAAAdditiveGaussianNoise(p = 1)
多层偏移噪声:
trans_test = A.MultiplicativeNoise(p = 1)
IAA:
浮雕:
trans_test = A.IAAEmboss(p = 1)
超像素:
trans_test = A.IAASuperpixels(p = 1)
锐化:
trans_test = A.IAASharpen(p = 1)
透视变换:
trans_test = A.IAAPerspective(p = 1)
pytorch:
albumentation有两种转换张量, ToTensor和ToTensorV2
from albumentations.pytorch import ToTensorV2, ToTensorA.ToTensorV2(p=1.0),A.ToTensor()
ToTensor就是最普通的最大值归一化并且转化为chw
ToTensor就是把图片转成张量适合跟在A.Normalize后面
不定期更新。。
Albumentation使用指南相关推荐
- 超详细中文预训练模型ERNIE使用指南-源码
作者 | 高开远,上海交通大学,自然语言处理研究方向 最近在工作上处理的都是中文语料,也尝试了一些最近放出来的预训练模型(ERNIE,BERT-CHINESE,WWM-BERT-CHINESE),比对 ...
- 入门指南目录页 -PaddlePaddle 飞桨 入门指南 FAQ合集-深度学习问题
入门指南目录页 -PaddlePaddle 飞桨 入门指南 FAQ合集 GT_Zhang关注 0.1012019.08.01 18:43:34字数 1,874阅读 795 Hi,欢迎各位来自Paddl ...
- ASIC设计-终极指南
ASIC设计-终极指南 ASIC Design – The Ultimate Guide ASIC设计-终极指南 ASICs代表特定于应用的集成电路,指的是针对特定应用而设计的半导体解决方案,与其他解 ...
- Python神经网络集成技术Guide指南
Python神经网络集成技术Guide指南 本指南将介绍如何加载一个神经网络集成系统并从Python运行推断. 提示 所有框架的神经网络集成系统运行时接口都是相同的,因此本指南适用于所有受支持框架(包 ...
- 深度学习框架集成平台C++ Guide指南
深度学习框架集成平台C++ Guide指南 这个指南详细地介绍了神经网络C++的API,并介绍了许多不同的方法来处理模型. 提示 所有框架运行时接口都是相同的,因此本指南适用于所有受支持框架(包括Te ...
- HTML5与CSS3权威指南之CSS3学习记录
title: HTML5与CSS3权威指南之CSS3学习记录 toc: true date: 2018-10-14 00:06:09 学习资料--<HTML5与CSS3权威指南>(第3版) ...
- Maven入门指南⑦:Maven的生命周期和插件
Maven入门指南⑦:Maven的生命周期和插件 一个完整的项目构建过程通常包括清理.编译.测试.打包.集成测试.验证.部署等步骤,Maven从中抽取了一套完善的.易扩展的生命周期.Maven的生命周 ...
- ini文件怎么使用_ftp文件下载工具,ftp文件下载工具是怎么使用的?使用指南
ftp文件下载工具是什么工具,可能有人会回答说不知道,因为一般只有从事网站管理的工作者会使用的多一点.但不是每个人生来就会的,所以刚开始肯定都会学习怎么使用.这篇文章就来教一下大家ftp文件下载工具是 ...
- 王建春计算机应用基础,计算机应用基础(本)教学指南.pdf
"计算机应用基础(本 )"教学指南 一.课程概况 课程性质.教学目标.教学内容等详见 "课程导学--学什么". 1.学习资源 现有教学资源 功能 "学 ...
- java修改 nsf中的数据_最新NSF申请指南中的一些重要改动
作者:孟津 美国NSF已更新其申请书的写作和提交指南,从2009年1月5日起实施.比较重要的变化有下列几点,涉及几个方面: 1. 博士后指导:每一个含有支持博士后资金的申请,必须在申请书规定的15页课 ...
最新文章
- 使用PHP将HTTP标头设置为UTF-8
- PHP CURL 中文说明
- Struts2 随笔1
- Mysql 练习 总结
- java软件字如何放大_放大Java Swing应用程序
- PHP高效的敏感词过滤方法
- Java EE:异步构造和功能
- 整数因子分解c语言递归,整数因子分解:计算一个整数所有的分解式(递归实现)...
- 面向关系数据库的智能索引调优方法
- BugkuCTF-Reverse题不好用的ce
- hibernate学习内容
- 实践:在运维大数据这事上,Apache Kylin比ELK更擅长?
- Linux(2) vi和vim编辑器
- 最大后验估计与共轭分布
- 短视频如何制作?前期、拍摄和后期,三个步骤很重要
- 杂记 什么是IP核?
- 猫眼网历史日票房数据爬取
- 计算机语言与语法,编程语言中语法和语义有什么区别?
- Data Import Handler - DIH相关命令
- 爱情本身就是一种习惯
热门文章
- PostgreSQL透明数据加密
- linux红帽8怎么安yum,RedHat Linux 8本地Yum源配置方法
- oracle用户新建和授权,oracle创建用户及受权
- AI赋能的视频编辑器效果如何? | MixLab智能产品
- 计算机安装程序的文件名一般是什么,[电脑基础知识]什么是文件的后缀名.doc
- HDU4747 MEX(dp ,递推)
- BetterScroll 2.0网络数据过慢,不能滚动问题
- 2022-2027年中国科技孵化器市场竞争态势及行业投资前景预测报告
- python colorsys模块 RGB和其他色彩系统(颜色空间)(YIQ、HLS、HSV)之间的转换 hsv_to_rgb(h, s, v)函数
- 腾讯视频播放插件Txplayer的使用