一点点开始学习用matlab进行数字图像处理(1)

1.imread()用于读取一个图像,括号里为图像路径及图像名

Ipath='C:\Users\mydell\Desktop\DIP作业\DIP上机实验\images';%输入图像路径
Opath='C:\Users\mydell\Desktop\DIP作业\DIP上机实验\输出图像';%输出图像路径
lena=inread([Ipath,'\lena.bpm');%读取lena图像
tiger=imread([Ipath,'\tiger.bmp']);%读取tiger图像

2.figure(s),s为参数,如果是数值要大于0,figure用于创建一个新的窗口,参数可多可少
3.imshow()用于展示图像

imshow(tiger);

4.imwrite()用于输出图像,第一个参数为需要输出的数据,第二个参数为路径

imwrite(lena,[Opath,'\lena-原图像.bpm']);

5.imhist()用于产生图像的直方图

imhist(lena);%求解直方图

6.getframe我查的英文翻译过来是返回当前图像(坐标轴)的边框,我的理解是返回以坐标轴为界的图像,而frame2im应该是在得到图像边框的基础上返回图像的相关参数

[X,map] = frame2im(F)

这里的X就是图像索引,我觉得应该就相当于图像名,以 m×n 数值矩阵形式返回。
map是颜色图,具体干什么的我也不太清楚,查到的说法是以范围 [0, 1] 内的值组成的 c×3 数值矩阵形式返回。map 的每行都是一个三元素 RGB,指定颜色图的单种颜色的红、绿和蓝分量。不过我觉得灰度图像的map应该为空

7.matlab做灰度映射使用imadjust()函数,具体的使用方式和参数设置可以看看下边的链接
imadjust函数的详细使用方法
关于灰度映射的更详细阐述
imdajust函数的参数设置这个关于上下界设置好像更合理
8.直方图均衡利用的原理是均衡前后图像各像素出现的概率和相等
一点点开始学习用matlab进行数字图像处理(1)_第1张图片
将输入图像中灰度级为r的像素映射到输出图像中灰度级为s的对应像素得到
将输入图像中灰度级为r的像素映射到输出图像中灰度级为s的对应像素得到直方图的均衡化
一点点开始学习用matlab进行数字图像处理(1)_第2张图片
直方图均衡用matlab实现可以看看下边这个链接
histeq
9.直方图匹配
histeq函数也可以用来做直方图匹配,不过要给出希望匹配的对象

malena=histeq(lena,imhist(adlena));

你可能感兴趣的:(一点点开始学习用matlab进行数字图像处理(1))