Image Processing Toolbox User's Guide |
Perform neighborhood operations using columnwise functions
Syntax
B = colfilt(A,[m n],block_type
,fun
) B = colfilt(A,[m n],[mblock nblock],block_type
,fun
) B = colfilt(A,'indexed',...)
Description
colfilt
processes distinct or sliding blocks as columns. colfilt
can perform operations similar to blkproc
and nlfilter
, but often executes much faster.
B = colfilt(A,[m n],block_type,fun)
processes the image A
by rearranging each m
-by-n
block of A
into a column of a temporary matrix, and then applying the function fun
to this matrix. fun
must be a function handle. colfilt
zero-pads A
, if necessary.
Before calling fun
, colfilt
calls im2col
to create the temporary matrix. After calling fun
, colfilt
rearranges the columns of the matrix back into m
-by-n
blocks using col2im
.
block_type
is a string that can have one of the values listed in this table.
B = colfilt(A,[m n],[mblock nblock],block_type,fun)
processes the matrix A
as above, but in blocks of size mblock
-by-nblock
to save memory. Note that using the [mblock nblock]
argument does not change the result of the operation.
B = colfilt(A,'indexed',...)
processes A
as an indexed image, padding with 0's if the class of A
is uint8
or uint16
, or 1's if the class of A
is double
or single
.
Class Support
The input image A
can be of any class supported by fun
. The class of B
depends on the class of the output from fun
.
Example
This example sets each output pixel to the mean value of the input pixel's 5-by-5 neighborhood.
See Also
blkproc
, col2im
, function_handle
, im2col
, nlfilter
col2im | colorbar |
© 1994-2005 The MathWorks, Inc.