imresize is blurring my image!

15 visualizzazioni (ultimi 30 giorni)
Michael
Michael il 20 Feb 2013
Hello
I have a 128x128 matrix and I want to scale it down to 32x32. MATLAB's algorithm "imresize" seems to involve a smoothing filter. My original image has sharp gradients across pixel edges which will remain pixel edges in the new image, but these gradients are being lost by a seemingly overenthusiastic filtering step.
Is there a simple way of simply saying "see this 4x4 box? well that's going to be a single pixel in the new image, so take the mean of these 16 values and ignore everything else around it"?
I could try to code this manually but I'm checking that there isn't a quicker alternative, since it'll take me a while.
Regards, Michael

Risposta accettata

Thorsten
Thorsten il 20 Feb 2013
I = imresize(I, [32 32], 'nearest');
  3 Commenti
Thorsten
Thorsten il 20 Feb 2013
T = blkproc(I, [4 4], @mean2);
Michael
Michael il 20 Feb 2013
Perfect, thanks very much.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Image Processing Toolbox in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by