本文整理汇总了Python中imgaug.augmenters.Affine方法的典型用法代码示例。如果您正苦于以下问题:Python augmenters.Affine方法的具体用法?Python augmenters.Affine怎么用?Python augmenters.Affine使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类imgaug.augmenters
的用法示例。
在下文中一共展示了augmenters.Affine方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def __init__(self, dataset_path,scale,k_fold_test=1, mode='train'):
super().__init__()
self.mode = mode
self.img_path=dataset_path+'/img'
self.mask_path=dataset_path+'/mask'
self.image_lists,self.label_lists=self.read_list(self.img_path,k_fold_test=k_fold_test)
self.flip =iaa.SomeOf((2,4),[
iaa.Fliplr(0.5),
iaa.Flipud(0.5),
iaa.Affine(rotate=(-30, 30)),
iaa.AdditiveGaussianNoise(scale=(0.0,0.08*255))], random_order=True)
# resize
self.resize_label = transforms.Resize(scale, Image.NEAREST)
self.resize_img = transforms.Resize(scale, Image.BILINEAR)
# normalization
self.to_tensor = transforms.ToTensor()
示例2: example_augment_images_and_keypoints
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def example_augment_images_and_keypoints():
print("Example: Augment Images and Keypoints")
import numpy as np
import imgaug.augmenters as iaa
images = np.zeros((2, 128, 128, 3), dtype=np.uint8) # two example images
images[:, 64, 64, :] = 255
points = [
[(10.5, 20.5)], # points on first image
[(50.5, 50.5), (60.5, 60.5), (70.5, 70.5)] # points on second image
]
seq = iaa.Sequential([
iaa.AdditiveGaussianNoise(scale=0.05*255),
iaa.Affine(translate_px={"x": (1, 5)})
])
# augment keypoints and images
images_aug, points_aug = seq(images=images, keypoints=points)
print("Image 1 center", np.argmax(images_aug[0, 64, 64:64+6, 0]))
print("Image 2 center", np.argmax(images_aug[1, 64, 64:64+6, 0]))
print("Points 1", points_aug[0])
print("Points 2", points_aug[1])
示例3: example_augment_images_and_bounding_boxes
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def example_augment_images_and_bounding_boxes():
print("Example: Augment Images and Bounding Boxes")
import numpy as np
import imgaug as ia
import imgaug.augmenters as iaa
images = np.zeros((2, 128, 128, 3), dtype=np.uint8) # two example images
images[:, 64, 64, :] = 255
bbs = [
[ia.BoundingBox(x1=10.5, y1=15.5, x2=30.5, y2=50.5)],
[ia.BoundingBox(x1=10.5, y1=20.5, x2=50.5, y2=50.5),
ia.BoundingBox(x1=40.5, y1=75.5, x2=70.5, y2=100.5)]
]
seq = iaa.Sequential([
iaa.AdditiveGaussianNoise(scale=0.05*255),
iaa.Affine(translate_px={"x": (1, 5)})
])
images_aug, bbs_aug = seq(images=images, bounding_boxes=bbs)
示例4: example_augment_images_and_polygons
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def example_augment_images_and_polygons():
print("Example: Augment Images and Polygons")
import numpy as np
import imgaug as ia
import imgaug.augmenters as iaa
images = np.zeros((2, 128, 128, 3), dtype=np.uint8) # two example images
images[:, 64, 64, :] = 255
polygons = [
[ia.Polygon([(10.5, 10.5), (50.5, 10.5), (50.5, 50.5)])],
[ia.Polygon([(0.0, 64.5), (64.5, 0.0), (128.0, 128.0), (64.5, 128.0)])]
]
seq = iaa.Sequential([
iaa.AdditiveGaussianNoise(scale=0.05*255),
iaa.Affine(translate_px={"x": (1, 5)})
])
images_aug, polygons_aug = seq(images=images, polygons=polygons)
示例5: example_augment_images_and_heatmaps
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def example_augment_images_and_heatmaps():
print("Example: Augment Images and Heatmaps")
import numpy as np
import imgaug.augmenters as iaa
# Standard scenario: You have N RGB-images and additionally 21 heatmaps per
# image. You want to augment each image and its heatmaps identically.
images = np.random.randint(0, 255, (16, 128, 128, 3), dtype=np.uint8)
heatmaps = np.random.random(size=(16, 64, 64, 1)).astype(np.float32)
seq = iaa.Sequential([
iaa.GaussianBlur((0, 3.0)),
iaa.Affine(translate_px={"x": (-40, 40)}),
iaa.Crop(px=(0, 10))
])
images_aug, heatmaps_aug = seq(images=images, heatmaps=heatmaps)
示例6: example_augment_images_and_segmentation_maps
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def example_augment_images_and_segmentation_maps():
print("Example: Augment Images and Segmentation Maps")
import numpy as np
import imgaug.augmenters as iaa
# Standard scenario: You have N=16 RGB-images and additionally one segmentation
# map per image. You want to augment each image and its heatmaps identically.
images = np.random.randint(0, 255, (16, 128, 128, 3), dtype=np.uint8)
segmaps = np.random.randint(0, 10, size=(16, 64, 64, 1), dtype=np.int32)
seq = iaa.Sequential([
iaa.GaussianBlur((0, 3.0)),
iaa.Affine(translate_px={"x": (-40, 40)}),
iaa.Crop(px=(0, 10))
])
images_aug, segmaps_aug = seq(images=images, segmentation_maps=segmaps)
示例7: _test_cba_hooks_limit_propagation
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def _test_cba_hooks_limit_propagation(cls, augf_name, cbaoi):
aug = iaa.BlendAlpha(
0.0,
iaa.Affine(translate_px={"x": 1}),
iaa.Affine(translate_px={"y": 1}),
name="AlphaTest")
def propagator(cbaoi_to_aug, augmenter, parents, default):
if "Alpha" in augmenter.name:
return False
else:
return default
# no hooks for polygons yet, so we use HooksKeypoints
hooks = ia.HooksKeypoints(propagator=propagator)
observed = getattr(aug, augf_name)([cbaoi], hooks=hooks)[0]
assert observed.items[0].coords_almost_equals(cbaoi.items[0])
示例8: __init__
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def __init__(self, augmentation_rate):
self.augs = iaa.Sometimes(
augmentation_rate,
iaa.SomeOf(
(4, 7),
[
iaa.Affine(rotate=(-10, 10)),
iaa.Fliplr(0.2),
iaa.AverageBlur(k=(2, 10)),
iaa.Add((-10, 10), per_channel=0.5),
iaa.Multiply((0.75, 1.25), per_channel=0.5),
iaa.ContrastNormalization((0.5, 2.0), per_channel=0.5),
iaa.Crop(px=(0, 20))
],
random_order=True
)
)
示例9: img_aug
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def img_aug(img, mask):
mask = np.where(mask > 0, 0, 255).astype(np.uint8)
flipper = iaa.Fliplr(0.5).to_deterministic()
mask = flipper.augment_image(mask)
img = flipper.augment_image(img)
vflipper = iaa.Flipud(0.5).to_deterministic()
img = vflipper.augment_image(img)
mask = vflipper.augment_image(mask)
if random.random() < 0.5:
rot_time = random.choice([1, 2, 3])
for i in range(rot_time):
img = np.rot90(img)
mask = np.rot90(mask)
if random.random() < 0.5:
translater = iaa.Affine(translate_percent={"x": (-0.2, 0.2), "y": (-0.2, 0.2)},
scale={"x": (0.8, 1.2), "y": (0.8, 1.2)},
shear=(-8, 8),
cval=(255)
).to_deterministic()
img = translater.augment_image(img)
mask = translater.augment_image(mask)
# if random.random() < 0.5:
# img = cv2.cvtColor(img,cv2.COLOR_BGR2RGB)
mask = np.where(mask > 0, 0, 255).astype(np.uint8)
return img, mask
示例10: img_aug
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def img_aug(img):
if random.random() < 0.5:
translater = iaa.Affine(translate_percent={"x": (-0.2, 0.2), "y": (-0.2, 0.2)},
scale={"x": (0.8, 1.2), "y": (0.8, 1.2)},
cval=(255)
).to_deterministic()
img = translater.augment_image(img)
#vertically flip
if random.random() < 0.5:
img = np.flip(img,0)
# horizontally flip
if random.random() < 0.5:
img = np.flip(img,1)
if random.random() < 0.5:
rot_time = random.choice([1, 2, 3])
img = np.rot90(img,rot_time)
return img
示例11: create_augmenter
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def create_augmenter(stage: str = "train"):
if stage == "train":
return iaa.Sequential([
iaa.Fliplr(0.5),
iaa.CropAndPad(px=(0, 112), sample_independently=False),
iaa.Affine(translate_percent={"x": (-0.4, 0.4), "y": (-0.4, 0.4)}),
iaa.SomeOf((0, 3), [
iaa.AddToHueAndSaturation((-10, 10)),
iaa.Affine(scale={"x": (0.9, 1.1), "y": (0.9, 1.1)}),
iaa.GaussianBlur(sigma=(0, 1.0)),
iaa.AdditiveGaussianNoise(scale=0.05 * 255)
])
])
elif stage == "val":
return iaa.Sequential([
iaa.CropAndPad(px=(0, 112), sample_independently=False),
iaa.Affine(translate_percent={"x": (-0.4, 0.4), "y": (-0.4, 0.4)}),
])
elif stage == "test":
return iaa.Sequential([])
示例12: amaugimg
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def amaugimg(image):
#数据增强
image = cv2.cvtColor(np.asarray(image), cv2.COLOR_RGB2BGR)
seq = iaa.Sequential([
# iaa.Affine(rotate=(-5, 5),
# shear=(-5, 5),
# mode='edge'),
iaa.SomeOf((0, 2), #选择数据增强
[
iaa.GaussianBlur((0, 1.5)),
iaa.AdditiveGaussianNoise(loc=0, scale=(0.0, 0.01 * 255), per_channel=0.5),
# iaa.AddToHueAndSaturation((-5, 5)), # change hue and saturation
iaa.PiecewiseAffine(scale=(0.01, 0.03)),
iaa.PerspectiveTransform(scale=(0.01, 0.1))
],
random_order=True
)
])
image = seq.augment_image(image)
image = Image.fromarray(cv2.cvtColor(image, cv2.COLOR_BGR2RGB))
return image
示例13: augment
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def augment(image, bbox):
x = random.randint(-50, 50)
y = random.randint(-50, 50)
aug = iaa.Sequential([iaa.Multiply(random.uniform(0.5, 1.5)),
iaa.AdditiveGaussianNoise(random.uniform(0.01, 0.1) * 255),
iaa.Affine(translate_px={"x": x, "y": y},
scale=random.uniform(0.5, 1.5),
rotate=random.uniform(-45, 45),
cval=(0, 255))])
bbs = ia.BoundingBoxesOnImage([ia.BoundingBox(x1=bbox[0], y1=bbox[1], x2=bbox[2], y2=bbox[3])], shape=image.shape)
aug = aug.to_deterministic()
image_aug = aug.augment_image(image)
bbs_aug = aug.augment_bounding_boxes([bbs])[0]
b = bbs_aug.bounding_boxes
bbs_aug = [b[0].x1, b[0].y1, b[0].x2, b[0].y2]
bbs_aug = np.asarray(bbs_aug)
bbs_aug[0] = bbs_aug[0] if bbs_aug[0] > 0 else 0
bbs_aug[1] = bbs_aug[1] if bbs_aug[1] > 0 else 0
bbs_aug[2] = bbs_aug[2] if bbs_aug[2] < size else size
bbs_aug[3] = bbs_aug[3] if bbs_aug[3] < size else size
return image_aug, bbs_aug
示例14: augment
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def augment(image, bbox):
x = random.randint(-60, 60)
y = random.randint(-60, 60)
aug = iaa.Sequential([iaa.AdditiveGaussianNoise(scale=random.uniform(.001, .01) * 255), # gaussian noise
iaa.Multiply(random.uniform(0.5, 1.5)), # brightness
iaa.Affine(translate_px={"x": x, "y": y}, # translation
scale=random.uniform(0.5, 1.5), # zoom in and out
rotate=random.uniform(-25, 25), # rotation
shear=random.uniform(-5, 5), # shear transformation
cval=(0, 255))]) # fill the empty space with color
aug.add(iaa.Salt(.001))
bbs = ia.BoundingBoxesOnImage([ia.BoundingBox(x1=bbox[0], y1=bbox[1], x2=bbox[2], y2=bbox[3])], shape=image.shape)
aug = aug.to_deterministic()
image_aug = aug.augment_image(image)
bbs_aug = aug.augment_bounding_boxes([bbs])[0]
b = bbs_aug.bounding_boxes
bbs_aug = [b[0].x1, b[0].y1, b[0].x2, b[0].y2]
bbs_aug = np.asarray(bbs_aug)
bbs_aug[0] = bbs_aug[0] if bbs_aug[0] > 0 else 0
bbs_aug[1] = bbs_aug[1] if bbs_aug[1] > 0 else 0
bbs_aug[2] = bbs_aug[2] if bbs_aug[2] < size else size
bbs_aug[3] = bbs_aug[3] if bbs_aug[3] < size else size
return image_aug, bbs_aug
示例15: chapter_augmenters_sequential
# 需要导入模块: from imgaug import augmenters [as 别名]
# 或者: from imgaug.augmenters import Affine [as 别名]
def chapter_augmenters_sequential():
aug = iaa.Sequential([
iaa.Affine(translate_px={"x":-40}),
iaa.AdditiveGaussianNoise(scale=0.2*255)
])
run_and_save_augseq(
"sequential.jpg", aug,
[ia.quokka(size=(128, 128)) for _ in range(8)], cols=4, rows=2
)
aug = iaa.Sequential([
iaa.Affine(translate_px={"x":-40}),
iaa.AdditiveGaussianNoise(scale=0.2*255)
], random_order=True)
run_and_save_augseq(
"sequential_random_order.jpg", aug,
[ia.quokka(size=(128, 128)) for _ in range(8)], cols=4, rows=2
)