How to display a jpg or bmp figure on GUI pane with high quality?

조회 수: 23 (최근 30일)
The jpg or bmp figure displays well if I open it outside matlab. But if I implement imread()and image() to display the image in axes on GUI pane, the quality of the image is unsatisfactory. Can anyone help?
  댓글 수: 2
Jing
Jing 2013년 5월 10일
What's the exact code you used?
Yao Li
Yao Li 2013년 5월 13일
filename='aaa.bmp';
h=imread(filename);
image(h);

댓글을 달려면 로그인하십시오.

채택된 답변

Walter Roberson
Walter Roberson 2013년 5월 14일
First you need to calculate the width and height of your image in pixels. Then you need to create an axis whose dimensions in pixels exceed that width and height; you can do that by specifying the name/value pair 'Units', 'pixels', and giving the appropriate Position property
Then
image(h)
axis image
You might need to play with the axis InnerPosition or Position properties in order to ensure that the portion of the image actually used to draw on is as big as you need.
If your image size exceeds the amount of screen space you can afford, you will not be able to fit the entire image in without decline in quality unless you only show a portion of the image at a time and then either have the user use the "pan" tool or else provide scroll bars such as by using http://www.mathworks.com/matlabcentral/fileexchange/14984-scrollplot-scrollable-xy-axes

추가 답변 (1개)

Lisa Wu
Lisa Wu 2013년 5월 13일
Try imshow(I),displaying the grayscale image I
  댓글 수: 1
Yao Li
Yao Li 2013년 5월 13일
thx, but sorry, I don't have this toolbox and can't call the function imshow(). Any other suggestions?

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Import, Export, and Conversion에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by