Image Processing Software
Image processing software performs calculations to extract or enhance the important information in an image. Algorithms such as edge detection, segmentation and morphological processing are examples of image processing operations. After applying suitable image processing, the relevant image features are easily identified. Image processing is usually the first step in computer vision, machine vision and pattern recognition systems.
Examples of Image Processing
The Canny edge detector is a well-known algorithm for detecting edges in images. The edge detector measures the strength and orientation of edges (sudden changes in intensity). The edges can be used to recognise shapes in the image, or for further processing.
Photograph of a letterbox
Results of edge detection
Edge detection using the Canny edge detector.
Segmentation algorithms separate regions of the image that are different in colour, brightness or texture. For example, a defect inspection system can use colour image segmentation to identify surface defects.
Efficient Image Processing
Image processing is computationally intensive. Algorithms must be designed with efficiency in mind. Some methods for efficient image processing include:
- Astute algorithm design. Often, the straightforward implementation of an image processing operation is not as efficient as what can be achieved with an improved algorithm design.
- Designing algorithms to make efficient use of the computer hardware, including the use of registers and the cache.
- Efficient and simple image data structures. Since image processing operations are applied to entire images, the image pixels must be accessed quickly and without any unnecessary overheads.
- Programming in a language that compiles to efficient native machine code such as C++ or C. In Windows, the image processing functions may be compiled as a DLL that can be called from other programming languages.
By applying these techniques to a text-book implementation of the Canny edge detector, we were able to improve the speed by a factor of 3, providing a very substantial performance improvement for the application.
Application-specific Image Processing
Different applications require different image processing algorithms. Hamey
Vision Systems can help you by developing the appropriate image processing
software for your application. We have developed image processing
software for biscuit quality inspection
and other colour measurement applications
including timber colour matching.
Contact us to find out how we can
help you with your image processing application.
Hamey Vision Systems Pty. Ltd. -- Innovative machine vision
A.B.N. 31 721 169 683