前言:纯自己记录,代码可以直接搜chatgpt!
1、设置图像
get current figure/axes/object
gcf :返回当前Figure 对象的句柄值;
gca:返回当前axes 对象的句柄值;
gco:返回当前鼠标单击的句柄值,该对象可以是除root 对象外的任意图形对象,并且Matlab 会把当前图形对象的句柄值存放在Figure 的CurrentObject属性中。
1)图像大小设置:
set(gcf,‘units’,‘centimeter’,‘position’,[0 0 9 8]);
[0 0 9 8]:(x y width height)
2)设置坐标轴
set(gca,‘linewidth’,1,‘fontsize’,8,‘box’,‘off’,‘ygrid’,‘on’);
3) 坐标轴与图窗边距
set(gca,‘looseinset’,[0 0 0 0])
[0 0 0 0]:[上 下 左 右]
imagesc:https://blog.youkuaiyun.com/qq_45241385/article/details/124900563
shading interp;
2、显示图像
问题:在使用imshow(A)显示一张灰度图片时,显示出的是一张纯白的图片。(A为double类型的图像矩阵)
原因:在matlab中,为了保证精度,经过了运算的图像矩阵A其数据类型会从unit8型变成double型。imshow()显示图像时对double型是认为在01范围内,即大于1时都是显示为白色。imshow显示uint8型时是0255范围。
解决:使用imshow(A,[]),即可把图像矩阵A显示为正常的灰度图像。
原理:imshow(A,[])是将A的最大值(max(A))和最小值(min(A))分别作为纯白(255)和纯黑(0),中间的K值相应地映射为0到255之间的标准灰度值,这样就可以正常显示了(相当于将double型的矩阵A拉伸成为了0-255的uint8型的矩阵,因此就可以正常显示)