In imaging science, image processing is processing of images using mathematical operations by using any form of signal processing for which the input is an image, a series of images, or a video, such as a photograph or video frame; the output of image processing may be either an image or a set of characteristics or parameters related to the image. Most image-processing techniques involve treating the image as a two-dimensional signal and applying standard signal-processing techniques to it. Images are also processed as three-dimensional signals with the third-dimension being time or the z-axis.
Image processing usually refers to digital image processing, but optical and analog image processing also are possible.
Image processing can also be used to find out the differences between two images. Hence it can be used to differentiate a sample from a pure one and can be used to analyze the results with ease. Before experimenting with the hardware & machine learning part, I have tried to analyze different samples of adulterated substances in a trial and error method. I have experimented by simply analyzing impure sample with that of a pure sample. There are lot of software that support image processing but right now I have used MATLAB R2017a version.
This new version comes with extra features such as image enhancement, image segmentation,image transform, image analysis, geometric transformation and image registration, image processing and computer vision, feature extraction, stereo vision, optical flow, color profile, image analysis, image thresholding, edge detection, image registration, ransac, pattern recognition, affine transformation, lab color etc.
Image Processing Toolbox™ provides a comprehensive set of reference-standard algorithms and workflow apps for image processing, analysis, visualization, and algorithm development. One can perform image segmentation, image enhancement, noise reduction, geometric transformations, image registration, and 3D image processing.
Image Processing Toolbox apps can be used to automate common image processing workflows. One can interactively segment image data, compare image registration techniques, and batch-process large data sets. Visualization functions and apps can be used to explore images, 3D volumes, and videos; adjust contrast; create histograms; and manipulate regions of interest (ROIs).
We can easily accelerate algorithms by running them on multicore processors and GPUs. Many toolbox functions support C/C++ code generation for desktop prototyping and embedded vision system deployment.