Products & Services Solutions Academia Support User Community Company

Learn more about Image Processing Toolbox   

Version 6.4 (R2009b) Image Processing Toolbox

This table summarizes what's new in Version 6.4 (R2009b).

New Features and ChangesVersion Compatibility ConsiderationsFixed Bugs and Known ProblemsRelated Documentation at Web Site
Yes
Details below
Yes—Details labeled as Compatibility Considerations, below. See also Summary.Bug Reports
Includes fixes

No

The following sections describe new features and changes introduced in this version:

New blockproc Function to Process Large Images

The new blockproc function supports file-based block processing for arbitrarily large TIFF images. The new function supports in-memory operations as well as file-to-file processing of images which are too large to load completely into memory.

Compatibility Considerations

In previous releases, you could use the blkproc function for in-memory block-processing of images. The blkproc function will be removed in a future release. Replace all instances of blkproc with blockproc.

When updating your code from blkproc to blockproc, it is important to note that the user-defined function, fun, has a new signature. It now takes a structure, the "block struct," as input instead of simply a matrix of image data.

The examples below demonstrate how to update your code from blkproc to blockproc.

Example One: DCT2.  

% BLKPROC code 
I = imread('cameraman.tif');
fun = @dct2;
J = blkproc(I,[8 8],fun);
% BLOCKPROC equivalent (using an anonymous function)
fun = @(block_struct) dct2(block_struct.data);
J = blockproc(I,[8 8],fun);

Example Two: Filtering.  

% BLKPROC code
I = imread('concordorthophoto.png');
h = fspecial('gaussian',[11 11],2.5);
fun = @(x) imfilter(x,h,'conv','same');
J = blkproc(I,[500 500],[5 5],fun);
% BLOCKPROC equivalent (using an anonymous function)
fun = @(block_struct) imfilter(block_struct.data,h,'conv','same');
J = blockproc(I,[500 500],fun,'BorderSize',[5 5]);

Intel Integrated Performance Primitives Library Upgraded and Support Extended to maci64

The Intel® Integrated Performance Primitives (Intel IPP) Library has been upgraded from Version 5.3.1 to Version 6.0 Update 1. Intel IPP Library support has been extended to 64-bit Intel-based Mac computers.

Expanded hough Function Allows Specification of Arbitrary Theta Search Space

The hough function now yields faster results for narrower theta ranges due to the addition of a parameter/value pair for specifying theta values.

Compatibility Considerations

In previous releases, the 'ThetaResolution' parameter controlled the theta values for the hough function. Now 'ThetaResolution' is being replaced by the new 'Theta' parameter.

Function Elements Being Removed

Function and SyntaxWhat Happens When You Use the Function or Element?Use This InsteadCompatibility Considerations
hough(BW,
'ThetaResolution',val)
Still runs hough(BW,'Theta',
-90:val:(90-val))
Input parameter no longer recommended. Use new 'Theta' parameter.

Note that with the introduction of the 'Theta' parameter, not all abbreviated forms of 'ThetaResolution' will still work. In previous releases, if you entered the following syntax:

hough(BW, 'T', val)

'T' stood for 'ThetaResolution'. Now if you enter this same syntax, 'T' stands for the new 'Theta' parameter.

If you have old code that uses the 'ThetaResolution' parameter, please see the definition below:

ParameterDescription
'ThetaResolution'Real scalar value between 0 and 90, exclusive, that specifies the spacing (in degrees) of the Hough transform bins along the theta axis. Default: 1.

For 'ThetaResolution', ntheta = 2*ceil(90/ThetaResolution). theta angle values are in the range [-90, 90) degrees. If 90/ThetaResolution is not an integer, the actual angle spacing is 90/ceil(90/ThetaResolution).

The imfilter Function Now Faster for uint16 and double Inputs

The imfilter function now runs faster with uint16 and double inputs than in previous releases. This performance enhancement is due to the use of the Intel IPP Library with inputs of these types.

Compatibility Considerations

Using the Intel IPP library for uint16 images, poses no compatibility issues. The same is not true, however, for the double data type.

If an input image contains NaN values and a filtering kernel contains zero values, the imfilter function now gives different results when the Intel IPP library is enabled versus when it is disabled. If you want to preserve the behavior of previous releases, use iptsetpref('UseIPPL',false) to disable the Intel IPP library.

Improved Speed for Calculating N-D Euclidean Distance Transforms with the bwdist Function

A new algorithm improves the speed and reduces the memory footprint for the bwdist function.

Compatibility Considerations

In previous releases, the bwdist function used different algorithms for computing the Euclidean distance transform and the associated label matrix. If you need the same results produced by the previous implementation, use the function bwdist_old.

Modified Behavior for the regionprops ConvexHull Property

The 'ConvexHull' property of regionprops depends on the MATLAB convhull function. Due to changes in convhull, the results returned by 'ConvexHull' will now be slightly different than in previous releases.

Compatibility Considerations

The order of the vertices returned by the 'ConvexHull' property of regionprops may differ from that returned in releases before R2009b. Also, the returned hull may contain additional collinear points that were omitted in previous releases.

Efficient Display and Navigation of Very Large NITF-File Images in imtool

The rsetwrite function allows you to create multi-resolution image pyramids (R-Sets) that you can open in imtool. In previous releases, rsetwrite worked only with TIFF files. Now it accepts NITF files, as well, as long as they are Version 2.0 or greater, contain an uncompressed image, have integer data (no floating point data), and have three or fewer image bands. Finally, if a NITF file has more than one band of data, the data must be unsigned.

Performance Improvements

The performance of several existing toolbox functions has been improved in this release. In some cases, other toolbox functions call these functions and therefore will also benefit from these speed improvements.

Faster Functions

Multithreaded Functions

  


Recommended Products

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.

 © 1984-2010- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS