实现语义分割标签和图像的同步变换
imgaug的图像增强比较全面,省得自己写还不能很全面。可以torch或tensorflow的python联合编程写入即可。
import cv2
import numpy as np
import imgaug as ia
import imgaug.augmenters as iaa
from imgaug.augmentables import Keypoint, KeypointsOnImage # 关键点
from imgaug.augmentables.segmaps import SegmentationMapsOnImage # 分割图
image_name = "xxx.jpg"
segmap_name = xxx.png"
image = cv2.cvtColor(cv2.imread(image_name),cv2.COLOR_BGR2RGB) # rgb
segmap = cv2.imread(segmap_name, 0) # 0,1,2,3
# 1.execute ths instantiation
segmap = SegmentationMapsOnImage(np.array(segmap), shape=image.shape) # 实例化分割图
# 2.execute ths Sequential
seq = iaa.SomeOf((1, None),
[iaa.Fliplr(),
iaa.Flipud(),
iaa.GaussianBlur(sigma=(1.5, 2.5)),
iaa.CropAndPad(percent=(-0.15, 0), keep_size=False),
iaa.Affine(r