MATLAB作图之一

问题

在使用MATLAB当中的imagesc作图的时候,如果数据矩阵元素太少,得到的图看起来会很“粗糙”(图1)。那么如何得到更为“圆润”的图像呢?

A = rand(50, 50);
imagesc(A);


图1. “粗糙”的图

方法

图像粗糙的原因其实是数据点太少。因此,可以通过插值将原矩阵进行扩充,进而得到较为“圆润”的图像(图2)。

A = rand(50, 50);
[X, Y] = meshgrid(1:size(A,2), 1:size(A, 1)); 
[X2, Y2] = meshgrid(1:0.01:size(A, 2), 1:0.01:size(A, 1)); 
outData = interp2(X, Y, A, X2, Y2, 'linear');
imagesc(outData);


图2. “圆润”的图像

最后,祝大家心明眼亮。

posted @ 2020-03-05 22:55  海拉鲁捡垃圾  阅读(265)  评论(0)    收藏  举报