When
convolutional neural networks grew larger in mid-1990s, there was a lack of data to use, especially considering that some part of the overall dataset should be spared for later testing. It was proposed to perturb existing data with
affine transformations to create new examples with the same labels, which were complemented by so-called elastic distortions in 2003, and the technique was widely used as of 2010s. Data augmentation can enhance CNN performance and acts as a countermeasure against CNN profiling attacks. Data augmentation has become fundamental in image classification, enriching
training dataset diversity to improve model generalization and performance. The evolution of this practice has introduced a broad spectrum of techniques, including geometric transformations, color space adjustments, and noise injection.
Geometric Transformations Geometric transformations alter the spatial properties of images to simulate different perspectives, orientations, and scales. Common techniques include: •
Affine Transformation •
Rotation: Rotating images by a specified degree to help models recognize objects at various angles. •
Reflection: Reflecting images horizontally or vertically to introduce variability in orientation. •
Translation: Shifting images in different directions to teach models positional invariance. •
Scaling •
Shear Mapping •
Cropping: Removing sections of the image to focus on particular features or simulate closer views. •
Elastic Distortion Color Space Transformations Color space transformations modify the color properties of images, addressing variations in lighting,
color saturation, and contrast. Techniques include: •
Brightness Adjustment: Varying the image's brightness to simulate different lighting conditions. •
Contrast Adjustment: Changing the contrast to help models recognize objects under various clarity levels. •
Saturation Adjustment: Altering saturation to prepare models for images with diverse color intensities. •
Color Jittering: Randomly adjusting brightness, contrast, saturation, and
hue to introduce color variability.
Noise Injection Injecting noise into images simulates real-world imperfections, teaching models to ignore irrelevant variations. Techniques involve: •
Gaussian Noise: Adding
Gaussian noise mimics sensor noise or graininess. •
Salt and Pepper Noise: Introducing black or white
pixels at random simulates sensor dust or
dead pixels. == Data augmentation for signal processing ==