【问题标题】:How to apply mutliple rotate values for one image in imgaug? (Not randomly)如何在 imgaug 中为一张图像应用多个旋转值? (不是随机的)
【发布时间】:2021-10-28 06:48:06
【问题描述】:
from imgaug import augmenters as iaa
from imgaug import parameters as iap

import cv2

aug=iaa.Affine(rotate=iap.DeterministicList([90,180,270]))


imglist = []

img = cv2.imread('i/1.jpg')

imglist.append(img)

images_aug = aug.augment_images(imglist)

cv2.imwrite('i/new.jpg', images_aug[0])

我有这段代码,想将我的 3 个旋转值 (90,180,270) 应用于图像。所以我的输出应该是 3 张图像(使用图像的 90,180,270 角度版本旋转)但是当我使用此代码时,它会分配一个随机旋转值并给我一个旋转图像。

【问题讨论】:

    标签: python machine-learning computer-vision data-augmentation


    【解决方案1】:

    这就是你想要的:

    from imgaug import augmenters as iaa
    from imgaug import parameters as iap
    import cv2
    
    rotations = [90,180,270]
    aug = iaa.Affine(rotate=iap.DeterministicList(rotations))
    img = cv2.imread('i/1.jpg')
    imglist = [img for i in range(len(rotations))]
    images_aug = aug.augment_images(imglist)
    for i in range(len(rotations)):
        cv2.imwrite('i/new_{}.jpg'.format(rotations[i]), images_aug[i])
    

    变化是:

    • 我们有一个旋转数组,在整个代码中都会用到。这只是有助于缩短后续代码。
    • 我们在imglist 中添加了足够多的imgs 来覆盖每个轮换。
    • 我们从images_aug输出每张图片。

    最终结果:

    【讨论】:

      猜你喜欢
      • 2019-04-15
      • 2021-11-30
      • 1970-01-01
      • 2012-11-10
      • 1970-01-01
      • 2011-11-21
      • 1970-01-01
      • 2015-07-03
      • 1970-01-01
      相关资源
      最近更新 更多