协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
augmentation-pipelines【开发与工程】Use when building, combining, or debugging imgaug image augmentation pipelines, augmenter families, or deterministic image-only transforms.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Use this sub-skill when the task is about image augmentation pipelines in imgaug: choosing augmenter families, composing them with Sequential/SomeOf/OneOf/Sometimes, applying transforms deterministically, or debugging image-only augmentation behavior.
iaa.Sequential, iaa.SomeOf, iaa.OneOf, iaa.Sometimes, and iaa.WithChannels.imgcorruptlike when installed.to_deterministic().uint8 expectations, and shape preservation when keep_size=True.../augmentables-and-batches/SKILL.md.../parameters-random-and-utilities/SKILL.md.Pool behavior belong to ../multicore-and-diagnostics/SKILL.md.references/pipeline-workflows.md for the minimal image-pipeline recipes.references/augmenter-family-reference.md for family selection and parameter defaults.scripts/generate_augmentation_contact_sheet.py when you need a safe contact sheet or a tiny visual smoke.references/troubleshooting.md if the pipeline gives unexpected shapes, dtypes, or color results.Image pipelines usually take numpy.ndarray input of shape (N, H, W, C) or a list of (H, W, C) arrays. Most examples assume RGB uint8 images.
import numpy as np
import imgaug.augmenters as iaa
images = np.zeros((4, 64, 64, 3), dtype=np.uint8)
seq = iaa.Sequential([
iaa.Fliplr(0.5),
iaa.Affine(rotate=(-10, 10), translate_px={"x": (-2, 2)}),
iaa.GaussianBlur(sigma=(0.0, 1.0)),
])
images_aug = seq(images=images)
Use to_deterministic() when you need the same sampled transform in separate calls. Prefer a single call containing all aligned data whenever the task also includes annotations.
Sequential for ordered pipelines.SomeOf when a bounded subset of augmenters should run.OneOf when exactly one branch should run.Sometimes for probability-gated branches.WithChannels when only selected channels should change.fit_output=False and keep_size=True as safe defaults until a task explicitly needs output resizing.uint8/RGB in mind when the task starts from OpenCV or camera data.Affine, PerspectiveTransform, ElasticTransformation, Jigsaw: geometric distortions.Crop, Pad, CropAndPad, Resize, KeepSizeByResize: size and framing.GaussianBlur, AverageBlur, MedianBlur, MotionBlur, BilateralBlur, MeanShiftBlur: smoothing/blur.Add, Multiply, Dropout, CoarseDropout, Invert, Solarize, JpegCompression: arithmetic/noise/compression.WithHueAndSaturation, ChangeColorspace, Grayscale, Posterize, KMeansColorQuantization, UniformColorQuantization: color and palette changes.LinearContrast, GammaContrast, HistogramEqualization, CLAHE: contrast shaping.BlendAlpha, SimplexNoiseAlpha, FrequencyNoiseAlpha: masked blending and partial effects.Superpixels, Voronoi, Snowflakes, Rain, Fog, Clouds, FastSnowyLandscape: segmentation-like and weather effects.A good image-pipeline smoke should prove three things:
Use the bundled script to check those properties with tiny arrays before moving to annotation-aware or multicore workflows.