Data Augmentation: 基于albumentations库的图像数据增强

Data Augmentation: 基于albumentations库的图像数据增强,第1张

Python Data Augmentation 基于albumentations库的图像数据增强

​ Albumentations 是一个用于图像增强的 Python 库。图像增强用于深度学习计算机视觉任务,以提高训练模型的质量。图像增强的目的是从现有数据中创建新的训练样本。

​ 这是一个示例,说明如何应用来自 Albumentations 的一些增强功能从原始图像创建新图像:

为什么选择albumentations
  • Albumentations支持所有常见的计算机视觉任务,例如分类、语义分割、实例分割、对象检测和姿势估计。

  • 该库提供了一个简单的统一 API**来处理所有数据类型:图像(RBG 图像、灰度图像、多光谱图像)、分割蒙版、边界框和关键点。

  • 该库包含70 多种不同的增强功能,可从现有数据中生成新的训练样本。

  • albumentations很快(http://www.kaotop.com/file/tupian/20220507/albumentations格式,需要用cvtcolor转为RGB通道)

    image = cv2.cvtColor(cv2.imread('test.png'), cv2.COLOR_BGRA2RGB)
    
    # Augment an image
    transformed = transform(image=image)
    transformed_image = transformed["image"]
    

    定义一个显示多图的函数

    def visualize(**images):
        """
        Plot images in one row
        """
        n_images = len(images)
        plt.figure(figsize=(20,8)) # (20,8)
        for idx, (name, image) in enumerate(images.items()):
            plt.subplot(1, n_images, idx + 1)
            plt.xticks([]); 
            plt.yticks([])
            # get title from the parameter names
            plt.title(name.replace('_',' ').title(), fontsize=20)
            plt.imshow(image)
        plt.show()
    

    visualize原图和augmentation后的图像

    visualize(
        origin_image = image,
        transformed_image = transformed_image
    )
    

    Reference

    ​ https://github.com/albumentations-team/albumentations

    欢迎分享,转载请注明来源:内存溢出

    原文地址: http://outofmemory.cn/langs/869351.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存