function to decrease image size

function [y] = ImageDecrease(i,n)
y=imresize(i,n);
size(y)
end
I need to create a function to decrease the image size. Ex. image size is 512px x 512px and if n=4 the size of image has to be 64x64 (the i parameter is the image)
This function doesnt work bc if scale is >1 it increases the image..

 Accepted Answer

I know it sounds obvious, so you've probably already done it by now, but did you try inverting the number:
function outputImage = ImageDecrease(inputImage, n)
[rows, columns, numberOfColorChannels] = size(inputImage);
fprintf('Input image has %d rows, %d columns, and %d color channels',rows, columns, numberOfColorChannels)
outputImage = imresize(inputImage, 1/n);
[rows, columns, numberOfColorChannels] = size(outputImage);
fprintf('Output image has %d rows, %d columns, and %d color channels',rows, columns, numberOfColorChannels)
end

3 Comments

THis isnt working, i think its a bad idea to use imresize. bc i cant get the output i want
It DOES work. And using imresize is not a bad idea.
rgbImage = imread('Peppers.png');
subplot(2, 1, 1);
imshow(rgbImage);
axis('on', 'image');
outputImage = ImageDecrease(rgbImage, 4);
subplot(2, 1, 2);
imshow(outputImage);
axis('on', 'image');
function outputImage = ImageDecrease(inputImage, n)
[rows, columns, numberOfColorChannels] = size(inputImage);
fprintf('Input image has %d rows, %d columns, and %d color channels',rows, columns, numberOfColorChannels)
outputImage = imresize(inputImage, 1/n);
[rows, columns, numberOfColorChannels] = size(outputImage);
fprintf('Output image has %d rows, %d columns, and %d color channels',rows, columns, numberOfColorChannels)
end
Note on the axes how the number of colums goes from 512 to 128, indicating a reduction by a factor of 4.
You can also pass in the exact number of rows and columns you want, if you prefer that way.
outputImage = imresize(inputImage, [123, 456]); % Make 123 rows by 456 columns.
THank you it helped!!!

Sign in to comment.

More Answers (0)

Products

Release

R2018a

Community Treasure Hunt

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

Start Hunting!