美文网首页
数据增强库imgaug使用

数据增强库imgaug使用

作者: random_walk | 来源:发表于2018-12-16 18:47 被阅读0次

项目主页
imgaug是一个用于机器学习实验中图像增强的库。它支持多种增强技术,允许轻松组合这些技术,具有简单但强大的随机界面,可以增强图像和图像上的关键点/地标,并在背景处理中提供增强以提高性能。

基本使用

一个简单的例子

from imgaug import augmenters as iaa

seq = iaa.Sequential([
    iaa.Crop(px=(0, 16)), # crop images from each side by 0 to 16px (randomly chosen)
    iaa.Fliplr(0.5), # horizontally flip 50% of the images
    iaa.GaussianBlur(sigma=(0, 3.0)) # blur images with a sigma of 0 to 3.0
])

for batch_idx in range(1000):
    # 'images' should be either a 4D numpy array of shape (N, height, width, channels)
    # or a list of 3D numpy arrays, each having shape (height, width, channels).
    # Grayscale images must have shape (height, width, 1) each.
    # All images must have numpy's dtype uint8. Values are expected to be in
    # range 0-255.
    images = load_batch(batch_idx)
    images_aug = seq.augment_images(images)
    train_on_images(images_aug)

另一个简单的例子

import imgaug as ia
from imgaug import augmenters as iaa
import numpy as np

ia.seed(1)

# Example batch of images.
# The array has shape (32, 64, 64, 3) and dtype uint8.
images = np.array(
    [ia.quokka(size=(64, 64)) for _ in range(32)],
    dtype=np.uint8
)

seq = iaa.Sequential([
    iaa.Fliplr(0.5), # horizontal flips
    iaa.Crop(percent=(0, 0.1)), # random crops
    # Small gaussian blur with random sigma between 0 and 0.5.
    # But we only blur about 50% of all images.
    iaa.Sometimes(0.5,
        iaa.GaussianBlur(sigma=(0, 0.5))
    ),
    # Strengthen or weaken the contrast in each image.
    iaa.ContrastNormalization((0.75, 1.5)),
    # Add gaussian noise.
    # For 50% of all images, we sample the noise once per pixel.
    # For the other 50% of all images, we sample the noise per pixel AND
    # channel. This can change the color (not only brightness) of the
    # pixels.
    iaa.AdditiveGaussianNoise(loc=0, scale=(0.0, 0.05*255), per_channel=0.5),
    # Make some images brighter and some darker.
    # In 20% of all cases, we sample the multiplier once per channel,
    # which can end up changing the color of the images.
    iaa.Multiply((0.8, 1.2), per_channel=0.2),
    # Apply affine transformations to each image.
    # Scale/zoom them, translate/move them, rotate them and shear them.
    iaa.Affine(
        scale={"x": (0.8, 1.2), "y": (0.8, 1.2)},
        translate_percent={"x": (-0.2, 0.2), "y": (-0.2, 0.2)},
        rotate=(-25, 25),
        shear=(-8, 8)
    )
], random_order=True) # apply augmenters in random order

images_aug = seq.augment_images(images)

流程

简而言之,即需要先定义一个iaa.Sequential,里面是各种操作,然后图片传入即可。

相关文章

  • 数据增强库imgaug使用

    项目主页imgaug是一个用于机器学习实验中图像增强的库。它支持多种增强技术,允许轻松组合这些技术,具有简单但强大...

  • 几种数据增广神器介绍

    imgaug 机器学习避免不了数据增广,数据增广种的一大法宝神器莫过于imgaug的使用。imgaug的使用大大的...

  • 001 数据增强(imgaug)

    官方网址介绍:https://imgaug.readthedocs.io/en/latest/开源代码github...

  • Python + imgaug实现数据增强

    inference GitHub官网文档csdn blog 各功能中文介绍 安装 pip install imga...

  • 常用图像增强办法

    一 、 imgaug介绍 imgaug是一个封装好的用来进行图像augmentation的python库,安装最新...

  • 数据增广python库imgaug

    一个不错的用于机器学习数据增广的python库。支持多种增广方式,比如Affine,crop,pad,noise,...

  • Imgaug库介绍

    这个python的库可以帮助你在你的机器学习项目中增强你的数据。它可以将你的输入图片转换成很多新的、更大数据量的轻...

  • imgaug的使用

    中文简易版文档: https://blog.csdn.net/qq_38451119/article/detail...

  • [NAR|2019] SEanalysis 超级增强子相关调控分

    超级增强子可以调控基因的表达。SEanalysis是一个用来分析超级增强子调控的数据库。这个数据库可以鉴定超级增强...

  • 使用数据增强

    发生了过拟合。训练精度随着时间线性增加,直到接近 100%,而验证精度则停留在 70%~72%。验证损失仅在 5 ...

网友评论

      本文标题:数据增强库imgaug使用

      本文链接:https://www.haomeiwen.com/subject/zqpxkqtx.html