




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Matlab图像处理郭磐
guopan@内容提要Matlab基本操作图像处理基本函数作业参考程序作业问题汇总基本图像操作函数(命令)[filename,pathname]=uigetfile(...
{'*.jpg;*.tif;*.png;*.gif','AllImageFiles';...
'*.*','AllFiles'},...
'请选择要修改的图片(可多选)',...
'MultiSelect','on');基本图像操作函数(命令)读入图像pic=imread('cameraman.bmp')对于RGB图像gray_pic=rgb2gray(pic);
对于索引图像[s,map]=imread('in.gif');[m,n]=size(s);s=ind2gray(s,map);
基本图像操作函数(命令)获取图像大小size()获取图像信息info=imfinfo('cameraman.bmp')显示图像imshow(pic,[low,high]); imshow(pic,[]);figuresubplot
基本图像操作函数(命令)判断图像是否为彩色图像rgb=imread(file);%读入图像image_size=size(rgb);if
numel(image_size)>2
A=rgb2gray(rgb);%将彩色图像转换为灰度图像elseA=rgb;end基本图像操作函数(命令)显示图像直方图imhist(pic)直方图均衡化histeq(pic)基本图像操作函数(命令)如何添加噪声采用函数imnoise来使用噪声污染一幅图像,该函数的基本语法为:g=imnoise(f,type,parameters)f为是输入图像。基本图像操作函数(命令)g=imnoise(f,'gaussian',m,var)将均值M,方差为var的高斯噪声加到图像f上,默认值为均值是0,方差是0.01的噪声。g=imnoise(f,'localvar',V)将均值为0,局部方差为V的高斯噪声添加到图像f上,其中V是与f大小相同的一个矩阵,它包含了每一个点的理想方差值。基本图像操作函数(命令)g=imnoise(f,'localvar',image_intensity,var)将均值为0的高斯噪声添加到图像f中,其中噪声的局部方差var是图像f的亮度值的函数。参量image_intensity和var是大小相同的向量,plot(image_intensity,var)绘制出噪声方差和图像亮度的函数关系。向量image_intensity必须包含范围在[0,1]内的归一化亮度值。基本图像操作函数(命令)g=imnoise(f,'salt&pepper',d)用椒盐噪声污染图像f,其中d是噪声密度(即包括噪声值的图像区域的百分比)。因此,大约有d*numel(f)个像素受到影响。默认的噪声密度为0.005。g=imnoise(f,'speckle',var)用方程g=f+n*f)将乘性噪声添加到图像f上,其中n是均值为0,方差为var的均匀分布的随机噪声,var的默认值是0.04。基本图像操作函数(命令)g=imnoise(f,'poisson')从数据中生成泊松噪声,而不是将人工的噪声添加到数据中,为了遵守泊松统计,unit8和unit16类图像的亮度必须和光子的数量相符合。当每个像素的光子数量大于65535时,就要使用双精度图像。亮度值在0到1之间变化,并且对应于光子的数量除以10e12。基本图像操作函数(命令)nargin函数输入的参数个数。nargout函数输出的参数个数。基本图像操作函数(命令)matlab的数据类型numeric:数值
double:双精度uint8:8位无符号整型char:字符
logical:逻辑
cell:单元、细胞、元胞
struct:结构基本图像操作函数(命令)matlab的数据类型基本图像操作函数(命令)生成全1阵:ones
(n)建立一个n×n的1矩阵。ones
(m,n,...,p)建立一个m×n×...×p的1矩阵。ones
(size
(A
))建立一个和矩阵A同样大小的1矩阵。生成全0阵:zeros(n)zeros(m,n,...,p)建立一个m×n×...×p的0矩阵。zeros(size(A))建立一个和矩阵A同样大小的0矩阵。二值图像处理函数1、imdilateIM2=imdilate(IM,SE)dilatesthegrayscale,binary,orpackedbinaryimageIM,returningthedilatedimage,IM2.SEisastructuringelementobject,orarrayofstructuringelementobjects,returnedbytheSTRELfunction.二值图像处理函数2、imerodeoriginalBW=imread('text.png');
se=strel('line',11,90);erodedBW=imerode(originalBW,se);figure,imshow(originalBW)figure,imshow(erodedBW)二值图像处理函数3、bwmorphBW2=bwmorph(BW1,OPERATION)BW2=bwmorph(BW1,OPERATION,N)‘bothat’'branchpoints''bridge''clean''close''diag''dilate''endpoints''erode''fill''hbreak''majority''open''remove''shrink''skel''spur''thicken''thin''tophat'二值图像处理函数4、strelse1=strel('square',11)%11-by-11squarese2=strel('line',10,45)%line,length10,angle45degreesse3=strel('disk',15)%disk,radius15se4=strel('ball',15,5)%ball,radius15,height5二值图像处理函数4、bwhitmissbw2=bwhitmiss(bw,interval)
bw=[000000
001100
011110
011110
001100
001000]interval=[0-1-1
11-1
010];
二值图像处理函数6、bwlabel对连通对象进行标注,bwlabel主要对二维二值图像中各个分离部分进行标注(多维用bwlabeln,用法类似)。L=bwlabel(BW,n)[L,num]=bwlabel(BW,n)L=bwlabel(BW,n)表示返回和BW相同大小的数组L。L中包含了连通对象的标注。参数n为4或8,分别对应4邻域和8邻域,默认值为8。[L,num]=bwlabel(BW,n)返回连通数num。Matlab程序优化思路尽量减少循环,利用:索引一行、一列或一个子矩阵,学会整体赋值,用.+.-
.*
./整体计算。把循环向量化、矩阵化。预先定义矩阵需要的大小,在循环中不断扩充矩阵的大小,非常耗时。把计算量大的、循环多的代码,写到函数中,利用Matlab的预编译特性。Matlab程序优化思路profileon开启profileoff关闭profileclear清空数据profileviewer在profiler中看结果Matlab程序优化思路ticx=
0;
for
k=
2:1000000
x(k)
=x(k-1)
+
5;
end
tocElapsedtimeis0.301528seconds.ticx=zeros(1,
1000000);fork=
2:1000000
x(k)
=x(k-1)
+
5;
end
tocElapsedtimeis0.011938seconds.作业中的GoodCode%绘制直方图
[m,n]=size(pic);%测量图像尺寸参数
G=zeros(1,256);%预创建存放灰度出现概率的向量
%计算每级灰度出现的概率,将其存入G中相应位置
fork=0:255G(k+1)=length(find(pic==k))/(m*n);end
作业中的GoodCode[dim1,dim2,dim3]=size(f);ifdim3==3f=rgb2gray(f);end作业中的GoodCode获取图像矩阵pic的最大值L=0;for
I
=1:imLength
for
j
=1:imWidth
if(pic(i,j)>L)L=pic(i,j);
end
endend
获取图像矩阵pic的最大值L=max(max(pic));或者L=max(pic(:));%统计源图像灰度等级出现的概率L=max(max(pic));p=zeros(1,L+1);fori=1:imLengthforj=1:imWidth
p(pic(i,j)+1)=p(pic(i,j)+1)+1;endendp=p/(imLength*imWidth);%绘制直方图[m,n]=size(pic);%测量图像尺寸参数G=zeros(1,256);%预创建存放灰度出现概率的向量%计算每级灰度出现的概率,将其存入G中相应位置fork=0:255
G(k+1)=length(find(pic==k))/(m*n);endGUI界面设计变量传递
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO/IEC 27562:2024 EN Information technology - Security techniques - Privacy guidelines for fintech services
- 知识产权和保密合同协议书
- 多维遥感技术应用合作协议
- 企业文化与品牌形象塑造合同
- 物流公司聘用驾驶员劳动合同
- 双方协商培育树苗合同书
- 挖机买卖合同书样本
- 场食品安全协议书
- 招投标合作代理协议
- 资源租赁合同
- 2025年度剧本杀剧本版权授权与收益分成合同
- 2025年春季学期学校工作计划及安排表
- 2025年一种板式过滤膜装置项目投资可行性研究分析报告
- BMS基础知识培训
- 水刀除锈施工方案
- 医院培训课件:《静脉采血法并发症的预防及处理》
- 《修缮学习交底资料》课件
- 2024-2025学年高二上学期期末复习解答题压轴题十七大题型专练(范围:第四、五章)(含答案)
- 筑牢安全防线共创平安校园
- 2024年大学生电子版三方协议书模板
- 2024初中数学课程标准测试题(含答案)精华版
评论
0/150
提交评论