What is The Difference Between the Smooth Filtering(kernel) And Blockproc Function

1 view (last 30 days)
Hi,
As I undersand that the blockproc function is used to divide the image into pixels size(ex. 3*3 pixels) and apply a fuction to the blockproc and get the output as follwoing code:
myfun = @(block_struct) uint8(mean2(block_struct.data)*ones(size(block_struct.data)))
out = blockproc(image,[3 3],myfun);
from above code, I took the avarage if 3*3 pixels and gereate a new output which is reduced the background of an image.
Also,
where is a smooth filtering of an image which is taking averaging kernel of an image and gerenrat ean output image based of this avarging.
so what is the differeace between the blockproc fuction and avrageing kernel?
the aim of asking this question is to find a better why to reduce the background of a complex image.
Thank you,
  3 Comments
Adam
Adam on 2 Mar 2020
blockproc is just a generic framework, as you showed above, for applying a wide range of functions to an image block-by-block. imgaussfilt is one specific filter which you could, I assume, write an equivalent version of to work with blockproc if you wished, but which hides all that fromo you and just applies the gaussian filter in one more intuitive instruction.

Sign in to comment.

Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!