资源描述:
《matlab学习笔记(入门).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、个人收集整理勿做商业用途数据类:double,unit8,unit16,unit32,int8,int16,int32,single,char,logical!Matlab中所有数值计算都可以用double类来进行!,unit8实际中最常用的图像图像类型:亮度图像,二值图像,索引图像,RGB图像亮度图像:是数据矩阵,若是unit8或uint16则是【0,255】或者是【0,65535】,若是double类,则像素取值是浮点数二值图像只有:0和1的逻辑数组!、 简单操作:读图并显示详细情况>> f=imread('E:image\book.
2、pgm');whos Name Size Bytes ClassAttributes f 289x338 97682uint8 将图像垂直翻转:>>f=imread('E:\image\book.pgm');fp=f(end:-1:1,:);imshow(fp)将图像上下左右翻转: f=imread('E:\imagebook.pgm');fc=f(end:-1:1,end:-1:1);imshow(fc)将图像二次采样并显示详情:>>fs=f(1:2:end,1:2:end);imshow(fs)>> whosfs Nam
3、e Size BytesClassAttributesfs 145x169 24505uint8将图像取出一部分:>>fg=f(200:250,200:300);imshow(fg)显示图像中的一条水平扫描线:>>plot(f(200,: )将两幅图像进行相乘:f=imread('c:imageliangdian.jpg');g=imread('c:\imageshuiguo.jpg');g=g(300:715,500:1149);f=f(1:416,1:650);fd=double(f);gd=double(g);p=fd.*
4、gd;数组乘!pmax=max(p(:));pmin=min(p(:));取最大最小值!个人收集整理勿做商业用途pn=mat2gray(p);figure,imshow(pn)亮度变化:函数imadjust是对灰度图像进行亮度变化的基本ipt工具:g=imadjust(f,[low-in high-in],[low-in high-in],gamma)Gamma为1线性映射,大于1,则映射被加权至更低(更暗的)输出值,小于一,加权至更高的输出值明暗反转图像(负片)参数不同:>>f=imread('E:\imagebook.pgm');g=imad
5、just(f,[0 1],[1 0]);imshow(g)>>f=imread('E:\image\book.pgm');g=imadjust(f, [0 1],[10],2);imshow(g)>>f=imread('E:image\book.pgm');g=imadjust(f,[01],[10],0.5);imshow(g)另外也可以这样:进行明暗反转:g=imcomplement(f);imshow(g)将0.5到0.75之间的灰度级拓展到0-1,可用于突出我们感兴趣的亮度带g2=g2=imadjust(f,[0.50.75],[01])
6、;imshow(g2)这个类似上面语句,但又更多的灰色调,方法是压缩灰度级的低端并扩展灰度级的高端g3=imadjust(f,[],[],2);imshow(g3)对数和对比度拉伸变换:对数变换通过此式子完成:g=c*log(1+double(f))对8比特而言,最简便:gs=im2uint8(mat2gray(g))使用mat2gray可将值限定在0-1之间,im2uint可将值限定在0-255之间使用对数变化减小动态范围:>>g=im2uint8(mat2gray(log(1+double(f)));imshow(g)图像g与原图像相比,在视觉
7、方面的改善效果是非常明显的函数intrans:建立一个函数intrans,利用对比度拉伸方法得到增强图像然后在主界面输入: f=imread('E:\imagebook.pgm');g=intrans(f,'stretch',mean2(im2double(f)),0.9);figure,imshow(g)个人收集整理勿做商业用途函数gscale,亮度标度的函数:g=gscale(f,method,low,high)处理图像时,即管中间没问题,但想利用8比特或者16比特格式包村或查看一副图像时会出现问题,则要将图像调度在全尺度。将彩色图像变成灰度
8、图像并变小:>>I=imread('d:\image\tupian2.jpg');whosIName Size