roifilt2 - Filter region of interest (ROI) in image

Syntax

J = roifilt2(h, I, BW)
J = roifilt2(I, BW, fun)

Description

J = roifilt2(h, I, BW) filters the data in I with the two-dimensional linear filter h. BW is a binary image the same size as I that defines an ROI used as a mask for filtering. roifilt2 returns an image that consists of filtered values for pixels in locations where BW contains 1's, and unfiltered values for pixels in locations where BW contains 0's. For this syntax, roifilt2 calls filter2 to implement the filter.

J = roifilt2(I, BW, fun) processes the data in I using the function fun. The result J contains computed values for pixels in locations where BW contains 1's, and the actual values in I for pixels in locations where BW contains 0's.

fun must be a function handle.

Class Support

For the syntax that includes a filter h, the input image can be logical or numeric, and the output array J has the same class as the input image. For the syntax that includes a function, I can be of any class supported by fun, and the class of J depends on the class of the output from fun.

Examples

This example continues the roipoly example, filtering the region of the image I specified by the mask BW. The roifilt2 function returns the filtered image J, shown in the following figure.

I = imread('eight.tif');
c = [222 272 300 270 221 194];
r = [21 21 75 121 121 75];
BW = roipoly(I,c,r);
H = fspecial('unsharp');
J = roifilt2(H,I,BW);
figure, imshow(I), figure, imshow(J)

See Also

imfilter, filter2, function_handle, roipoly

For more information about ROIs, see ROI-Based Processing.

  


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