读入保存的图像(jpg BMP等格式)时,用image imshow等函数表示时经常会发生失真,但可以通过以下步骤使显示图像的效果更清晰。
set(0,' units ',' pixes ' );
获取%图像的屏幕分辨率
sreensize0=get(0,' MonitorPosition ';
SCRwidth=screensize0(3; %%屏幕宽度
screight=screensize0(4; %%屏幕高度
m=imread(123.jpg ); %%获取此图像的像素值,并获取三维的
rowscolsm=size(m; %%最后一个为rgb,前两个分辨率较高
maxval=max([rowscolsm(2)/scrwidthrowscolsm(1)1)/screight] );
m=imresize(m,[rowscolsm(1)/maxvalrowscolsm(1)1)/maxval],' bilinear ' ); %%将按屏幕分辨率和图像本身的分辨率进行压缩。 压缩算法使用双线性差值。 该差分算法可以在以下三个中选择。
“nearest”最近邻插值(默认)
bilinear双线性插值
双三次插值
试验效果表明,第一种算法效果最低,后两种效果基本相同
image(m;