Newsletters - MATLAB News & Notes
Image Processing Toolbox 2.0
Broader, faster, and more memory efficient
Extensive suite of image processing and analysis tools for MATLAB
![]() MATLAB in Astronomy |
![]() MATLAB in Genetics Research |
![]() MATLAB in Remote Sensing |
Version 2.0 of the Image Processing Toolbox offers significant advancements that provide increased processing speed, optimized memory efficiency, and a broadened image processing and analysis suite. These new features, coupled with MATLAB 5's support for true-color image display, arbitrary N-dimensional arrays, convolutions, and FFTs enable you to develop effective solutions to your most challenging image processing and analysis applications.
![]() |
2-D image and 3-D surface plot visualizations of a human retinal nerve. Courtesy of the University of Manchester, Institute of Science and Technology (UMIST). |
"MATLAB and the Image Processing Toolbox gave us access to high-quality image processing algorithms that have proven to be very reliable. They saved us time and money that we would have spent developing these algorithms in-house."Michael Paluszek
Princeton Satellite Systems
Powerful new functions
New features and benefits introduced in the Image Processing Toolbox 2.0 include:
- Support for 8-bit Image Data Types (uint8)--For faster processing of images and greater memory efficiency
- Object Labeling Algorithm--For automatically determining which pixels belong to which objects in binary images and assigning unique numbers to objects
- Quadtree Decomposition Algorithm--For performing locally adaptive image compression and regional homogeneity analysis
- 2-D Order-Statistic Filter--For performing noise reduction and enhancement operations on grayscale images using generalized median filtering and grayscale morphology methods
- Region-of-Interest Fill--For smooth interpolations pixels within arbitrary regions to eliminate undesirable artifacts in grayscale images
- Binary Image Background Fill--For performing flood-fill operations on binary images, enabling you to change the value of pixels in the background
- Image File I/O Enhancements--For faster image read/write performance and support for JPEG file format
Functional Features
The Image Processing Toolbox 2 provides over 110 functions for image manipulation, enhancement, noise filtering, data reduction, quantitative analysis, and more. Functional categories include:
- Geometric operations
- Pixel values and statistics
- Image analysis
- Image enhancement and noise removal
- Linear filtering
- Linear 2-D filter design
- Image transforms
- Neighborhood and block processing
- Region-of-Interest (ROI) processing
- Binary image operations
- Colormap manipulation
- Color space conversions
- Image type conversions
Performance Improvements
The new version of the Image Processing Toolbox (IPT) introduces significant speedups for many functions of the toolbox. For example, the following performance benchmarks compare IPT 2.0 to its predecessor, IPT 1.0:
Compute image histogram with 256 bins
IPT 1.0: 0.1 s IPT 2.0: 0.005 s
Compute total area of objects in binary image
IPT 1.0: 0.6 s IPT 2.0: 0.1 s
Median filtering with 5-by-5 window on 258-by-350 image
IPT 1.0: 22.1 s IPT 2.0: 1.5 s
Convert 362-by-500 RGB image to indexed image
IPT 1.0: 4.7 s IPT 2.0: 1.1 s
Read a 258-by-350 TIFF file
IPT 1.0: 1.2 s IPT 2.0: 0.039 s
Note: Benchmarks were performed on a PentiumPro
200 MHz PC with 64 MB RAM.
Solving new technical challenges
The following illustrates a problem that you can quickly solve using MATLAB and the new Image Processing Toolbox 2.0.
Problem: Measure the rotation angle of an image containing lots of edges that are supposed to be horizontal and vertical, such as an image of a circuit board.
Solution: A combination of edge detection and the Radon transform can be used to measure the image's angle of orientation. Key concepts used: rotation, edge detection, Radon transform
Step 1: Load and display the image ic.tif.
I = double(imread('ic.tif'))/255;
imshow(I)
Note that the image is rotated slightly so that the circuit paths are not quite horizontal and vertical.
Step 2: Perform edge detection.
BW = edge(I);
imshow(BW);
Step 3: Compute the Radon transform of the edge image. The Radon transform computes projections through the image at various angles. Peaks in the Radon transform indicate the possible presence of lines.
theta = 0:179;
[R,xp] = radon(BW,theta);
imagesc(theta, xp, R); colormap(hot)
Find the angle and offset corresponding to the maximum value in the Radon transform. These values correspond to the strongest line.
[r,c] = find(R == max(R(:)));
thetap = theta(c(1))
xpp = xp(r(1))
The values computed above tell us that there is a strong line oriented at 3 degrees at an offset of -101 from the center of the image.
Step 4: Now rotate the image by -3 degrees to align the edges with the horizontal and vertical axes.
I2 = imrotate(I,-3,'bilinear');
imshow(I2)
Develop solutions to complex multidisciplinary problems
Whether you are a scientist, engineer, or other technical professional whose multidisciplinary work often involves image processing and analysis, MATLAB and the Image Processing Toolbox can provide you with a unique set of tools that enable you to render effective solutions to your most challenging technical problems.
To learn more, send for a free technical information kit.



