Average of tiles in an image
3 views (last 30 days)
Show older comments
0 down vote favorite
I have an image which is 256X256 pixels and that image 'a' has 16 '16X16' pixels similar tiles(random noise distributed over the image). I want to take the average of each tile and replace it with the first tile and then display the result.
I used the following code
im = imread('tiles.tif')
a = blockproc(im, [16 16], @(x)mean(x.data(:)));% this
imshow(im,[]);
I thought it worked but it is displaying the same original image. can someone please tell me what is wrong or what am I missing?Thanks
1 Comment
Anand
on 7 Apr 2013
Please clarify your question. What are you trying to achieve?
The code you have right now is going to replace each 16x16 tile in the image with a 1x1 tile containing the average intensity in the tile. So the size of a should be 16 x 16.
Accepted Answer
Image Analyst
on 7 Apr 2013
You never display the result - the badly-named "a". Try this
subplot(1, 2, 1);
imshow(im, []);
subplot(1, 2, 2);
imshow(a, []); % Pick a better name than "a"
% Enlarge figure to full screen.
set(gcf, 'units','normalized','outerposition',[0 0 1 1]);
0 Comments
More Answers (0)
See Also
Categories
Find more on Image Processing Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!