Manage photos and Python Scikit Learn
Overview
If you need to convert images, use the popular free open-source https://imagemagick.org
NOTE: Content here are my personal opinions, and not intended to represent any employer (past or present). “PROTIP:” here highlight information I haven’t seen elsewhere on the internet because it is hard-won, little-know but significant facts based on my personal research and experience.
Install
-
Install using HomeBrew (instead of downloading, gunzip, variables, etc.):
brew install imagemagick
-
Because ImageMagick depends on Ghostscript fonts, install them as well:
brew install ghostscript
Scikit Learn
https://www.pluralsight.com/courses/building-features-image-data Building Features from Image Data Aug 13, 2019 by Janani Ravi
In a Jupyter Notebook:
-
Install (within venv) from https://scikit-image.org/
pip3 install -U scikit-image
Convert
To improve CNN network performance:
- Crop for uniform Aspect Ratio (square, 16:9 HD)
- uniform Image size (downscaling to smaller image or upscaling to larger image)
- Mean and Perturbed images (detect faces and put them in the center of the image)
- Dimenionality reduction
-
Data augmentation (scaling, rotation, affine transforms to preserve collinearity (i.e., all points lying on a line initially still lie on a line after transformation) and ratios of distances (e.g., the midpoint of a line segment remains the midpoint after transformation). Also called an affinity.
- Normalized impage outputs around mean
-
To convert a file (such as a pdf) into a high-resolution image, use Imagemagick’s convert command:
convert -density 300 test.pdf -depth 8 -strip -background white -alpha off out.tiff
The last parameter is the output file.
This also takes off Alpha channels and outputs to a TIFF format file.
Alternative parameters are “-monochrome” to convert to black-and-white. These have a single “channel” whereas color images have 3 channels (Red, Green, Blue).
Flip image
Images seen reflected on a mirror or on a traditional letterpress need to be flipped (left to right). Sample scikit-learn code:
image_mirror_fliplr = np.fliplr(img_mirror)
Anti-aliasing
Denoising Images
More
This is one of a series on AI, Machine Learning, Deep Learning, Robotics, and Analytics:
- AI Ecosystem
- Machine Learning
- Microsoft’s AI
- Microsoft’s Azure Machine Learning Algorithms
- Microsoft’s Azure Machine Learning tutorial
- Python installation
- Image Processing
- Tessaract OCR using OpenCV
- Multiple Regression calculation and visualization using Excel and Machine Learning
- Tableau Data Visualization