MATLAB出图的几种方式

来源:互联网 发布:淘宝怎么查年花费 编辑:程序博客网 时间:2024/06/10 15:04

MATLAB代码控制出图有三种方式:

1、Saveas
无视你设置的图像大小,按默认保存
其实就是可视界面中的另存为操作
2、Imwrite
保存图像为所见即所得
它的一个重要用途是可以保存指定alpha值的图片(见下文)
它传入的参数需要是图像数据,不能为图像句柄,所以经常与imread或getframe共用
3、Print
原本不是用来进行图像保存了,而是操作打印机的,但是这里我们可以借用下
可以保存各种格式,指定图片大小、质量,还可以保存为矢量图
它是用途最广的保存图片的方法


出图大小的公式:
Imagewidth为图片宽度(Imagewidth可换为Imageheight),dpi为用户指定的输出分辨率(默认为150),Screen dpi为屏幕分辨率,因不同显卡和设置而异
1、Saveas:
Imagewidth*dpi/ Screen dpi
所以如果指定的输出分辨率与屏幕分辨率不一样,输出大小就与显示的图片大小不一样
2、Imwrite:
Imagewidth
所见即所得
3、Print :
PaperPosition *dpi
PaperPosition 是用户设置的输出图片的大小,单位为inches|centimeters|points(point=1/72inch)
非常重要的一点是PaperPosition *dpi的结果一样,输出的图片质量不一定一样,还要根据PaperPosition 和dpi各个值的大小,PaperPosition是指图片的大小,dpi是指细节的清晰程度,比如要输出一条矢量的线,PaperPosition大的线条细,dpi大的线条粗。

最后保存透明背景图片
图片的透明性,由其属性'Alpha' 决定,所以改变图像的'Alpha'值则改变透明度
Alpha为与图像分辨率相同大小的矩阵,0为透明,1为不透明。保存图片时,如要保存为透明图片,须保存为png格式,保存代码为:imwrite(I,'图像名.png','Alpha',alpha)

参考资料:

http://jiangshuxia.9.blog.163.com/blog/static/348758602011678534342/

http://blog.csdn.net/lsg32/article/details/8111956

http://www.ilovematlab.cn/thread-179337-1-1.html




原创粉丝点击