Sm1
Sm1

Reputation: 570

Image resize issue

This appears to be a trivial problem but the result is strange, totally lost where I am going wrong. There is an input RGB image which needs to be converted to gray scale and sized to 1000 x 1000 pixels. This is how I have done

img=imread('flowers.jpg');
flowers_gray=rgb2gray(img);
flowers_resize=imresize(flowers_gray,[1000 1000]);

but strangely the output image is not of 1000 by 1000 pixels. Moreover, matlab did not save the image (tried using SaveAs option and the File --->Export Setup) gray scale mode flowers_resize

and also the size was incorrect since when I opened the saved image by

img1=imread('flowers_resize.jpg')
s=size(img1)

it gave

s=586   665     3

And the image flowers_resize.jpg is saved with a white border surrounding it in the image folder. So, I went to Paint toolbox to select the image A1 and manually deleted the surrounding background and resized the image.But alas, it saved the image with 3 color channels and not in gray scale mode although the size was correct! Can somebody please point out the correct way of resizing to 1000 by 1000 pixels and saving in gray scale mode without the white border surrounding the saved output file? Thank you.

Upvotes: 1

Views: 163

Answers (1)

klurie
klurie

Reputation: 1060

When you use the image export processing, you are saving the entire figure including the space around the figure (white space).

Instead, use the imwrite command. In your case:

imwrite(A1,'flowers_resize.jpg','jpg');

Upvotes: 1

Related Questions