| 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.