很坑的一个问题。
原代码如下:
img_path='D:/000001.jpg';%图片大小2510*1638
F1=figure;
IMG=imread(img_path);
imshow(IMG);
F = getframe(F1);
imwrite(F.cdata,'C:/0001.jpg');%保存的图像有白边
很不理解为啥在我的电脑上会有白边,换一个电脑又没有,然后和室友一块找到了一点……
原因有以下两个:
(1)我的电脑是15.6寸的,图片像素超过了电脑屏幕像素,解决方法是对显示的图像进行缩放;
(2)getframe函数,功能和另存为差不多。
修改后:
img_path='D:/000001.jpg';
F1=figure;
IMG=imread(img_path);
imshow(IMG);
set(gcf,'Position',[0 0 2510*0.45 1638*0.45]);
set(gca,'Position',[0 0 1 1]);
F = getframe(F1);
imwrite(F.cdata,'C:/0001.jpg');
论文10.2k,Paperyy查重23.4%