Image size reduction using scaling

2 vues (au cours des 30 derniers jours)
Sreya
Sreya le 20 Avr 2017
Commenté : Sreya le 21 Avr 2017
Hi, I want to reduce the size of an image in such a way that, the sample pixels are selected from the image with 16 pixel distance from each other, and in this manner, a smaller image is formed by using an average value of every other pixel in this neighborhood to represent the pixel value in the scaled image. Is it same as imresize(), or is there any other way to do this?

Réponse acceptée

Jan
Jan le 20 Avr 2017
This can be done efficiently by FEX: BlockMean. You can run the M-version, but if the process is time critical, compile the C-Mex function.
  3 commentaires
Jan
Jan le 20 Avr 2017
Img = rand(640, 480, 3); % Test data
Img16 = BlockMean(Img, 16, 16);
This creates the average over blocks of 16x16 pixels. Pixels on the right and bottom, which do not match into the 16x16 grid are ignored.
Sreya
Sreya le 21 Avr 2017
Thank you

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by