日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Albumentation使用指南

發布時間:2023/12/18 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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使用指南的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。