数字图像处理课程设计 matlab

合集下载

数字图像处理MATLAB程序【完整版】

数字图像处理MATLAB程序【完整版】

第一部分数字图像处理实验一图像的点运算实验1.1直方图一.实验目的1.熟悉matlab图像处理工具箱及直方图函数的使用;2.理解和掌握直方图原理和方法;二.实验设备1.PC机一台;2.软件matlab。

三.程序设计在matlab环境中,程序首先读取图像,然后调用直方图函数,设置相关参数,再输出处理后的图像。

I=imread('cameraman.tif’);%读取图像subplot(1,2,1),imshow(I) %输出图像title(’原始图像') %在原始图像中加标题subplot(1,2,2),imhist(I) %输出原图直方图title('原始图像直方图') %在原图直方图上加标题四.实验步骤1。

启动matlab双击桌面matlab图标启动matlab环境;2。

在matlab命令窗口中输入相应程序。

书写程序时,首先读取图像,一般调用matlab自带的图像,如:cameraman图像;再调用相应的直方图函数,设置参数;最后输出处理后的图像;3.浏览源程序并理解含义;4.运行,观察显示结果;5.结束运行,退出;五.实验结果观察图像matlab环境下的直方图分布.(a)原始图像(b)原始图像直方图六.实验报告要求1、给出实验原理过程及实现代码;2、输入一幅灰度图像,给出其灰度直方图结果,并进行灰度直方图分布原理分析。

实验1.2 灰度均衡一.实验目的1.熟悉matlab图像处理工具箱中灰度均衡函数的使用;2.理解和掌握灰度均衡原理和实现方法;二.实验设备1.PC机一台;2.软件matlab;三.程序设计在matlab环境中,程序首先读取图像,然后调用灰度均衡函数,设置相关参数,再输出处理后的图像.I=imread('cameraman.tif’);%读取图像subplot(2,2,1),imshow(I) %输出图像title(’原始图像’) %在原始图像中加标题subplot(2,2,3),imhist(I) %输出原图直方图title(’原始图像直方图’) %在原图直方图上加标题a=histeq(I,256); %直方图均衡化,灰度级为256subplot(2,2,2),imshow(a) %输出均衡化后图像title(’均衡化后图像’) %在均衡化后图像中加标题subplot(2,2,4),imhist(a) %输出均衡化后直方图title('均衡化后图像直方图’)%在均衡化后直方图上加标题四.实验步骤1。

matlab数字图像课程设计

matlab数字图像课程设计

matlab数字图像课程设计一、教学目标本课程的教学目标是使学生掌握MATLAB在数字图像处理方面的基本理论和应用技能。

通过本课程的学习,学生应能理解数字图像处理的基本概念,熟练使用MATLAB进行数字图像的处理和分析。

具体来说,知识目标包括:1.掌握数字图像处理的基本概念和原理。

2.了解数字图像处理的基本算法和应用。

3.熟悉MATLAB数字图像处理工具箱的使用。

技能目标包括:1.能够使用MATLAB进行数字图像的基本处理,如图像读取、显示、转换等。

2.能够运用MATLAB实现数字图像的增强、滤波、边缘检测等算法。

3.能够利用MATLAB进行数字图像处理的实际应用,如图像分割、特征提取等。

情感态度价值观目标包括:1.培养学生的创新意识和实践能力,使他们能够运用所学知识解决实际问题。

2.培养学生团队合作精神,提高他们的问题解决能力。

3.培养学生对科学研究的兴趣和热情,提高他们的学术素养。

二、教学内容本课程的教学内容主要包括MATLAB的基本操作、数字图像处理的基本概念和算法,以及MATLAB在数字图像处理方面的应用。

具体来说,教学大纲如下:1.MATLAB基本操作:包括MATLAB的安装和界面熟悉,基本语法和函数的使用。

2.数字图像处理基本概念:包括数字图像的定义、表示方法和基本属性。

3.数字图像处理基本算法:包括图像增强、滤波、边缘检测等算法的学习和实现。

4.MATLAB数字图像处理应用:包括图像分割、特征提取等实际应用案例的分析和解题方法。

三、教学方法本课程采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等,以激发学生的学习兴趣和主动性。

具体来说,教学方法如下:1.讲授法:通过讲解和演示,使学生掌握MATLAB的基本操作和数字图像处理的基本概念。

2.讨论法:通过小组讨论和问题解答,培养学生的思考和问题解决能力。

3.案例分析法:通过分析实际案例,使学生掌握数字图像处理的基本算法和应用。

4.实验法:通过实验操作,使学生熟练使用MATLAB进行数字图像处理的应用。

matlab数字图像课程设计

matlab数字图像课程设计

matlab数字图像课程设计一、课程目标知识目标:1. 学生能理解数字图像处理的基本概念,掌握图像的表示和存储方法。

2. 学生能够运用MATLAB软件进行基本的图像读取、显示和保存操作。

3. 学生能够掌握图像的灰度变换、直方图处理等基本图像处理技术。

4. 学生能够了解并运用图像滤波、边缘检测等高级图像处理技术。

技能目标:1. 学生能够独立使用MATLAB软件进行数字图像的读取、显示、保存等基本操作。

2. 学生能够运用MATLAB函数进行图像的灰度变换,实现图像增强的效果。

3. 学生能够运用MATLAB进行图像滤波,改善图像质量,并能进行边缘检测处理。

4. 学生能够结合实际问题,设计简单的数字图像处理流程,解决具体问题。

情感态度价值观目标:1. 学生培养对数字图像处理领域的兴趣,激发学习热情,提高主动学习的积极性。

2. 学生通过实践操作,培养动手能力,提高解决问题的自信心。

3. 学生在学习过程中,培养合作意识,学会分享和交流,提高团队协作能力。

4. 学生能够认识到数字图像处理技术在现实生活中的广泛应用,增强对技术发展的关注和责任感。

1. 数字图像基础理论:- 图像的表示与存储(教材第1章)- 图像的读取、显示和保存(教材第2章)2. 图像灰度变换与直方图处理:- 灰度变换方法(教材第3章)- 直方图均衡化(教材第4章)3. 图像滤波与边缘检测:- 基本滤波器原理及应用(教材第5章)- 边缘检测算子(教材第6章)4. 实践操作与案例分析:- 图像处理综合实践(教材第7章)- MATLAB图像处理函数应用(教材附录)教学进度安排:第一周:数字图像基础理论,图像的表示与存储第二周:图像的读取、显示和保存,图像灰度变换第三周:直方图处理,图像滤波第四周:边缘检测,实践操作与案例分析教学内容确保覆盖课程目标中所涉及的知识点和技能点,结合教材章节,使学生能够系统地掌握数字图像处理的基本方法和技能。

同时,注重实践操作,提高学生的动手能力,并结合案例分析,使学生能够将所学知识应用于实际问题中。

数字图像处理课程设计 matlab

数字图像处理课程设计 matlab

《数字图像处理》课程设计文档目录一、课程设计目的 (2)二、课程设计要求 (2)三、课程设计的内容 (2)四、课题分析 (3)五、总体设计 (3)六、具体设计 (4)6.1、文件 (4)6.1.1、打开 (4)6.1.2、保存 (4)6.1.3、打印 (4)6.1.4、退出 (4)6.2、直方图统计 (4)6.2.1、R直方图 (4)6.2.2、G直方图 (4)6.2.3、B直方图 (4)6.3、图像增强处里 (5)6.3.1、直方图均衡化 (5)6.3.2、对比度展宽 (6)6.3.3、动态范围调整 (6)6.3.4、空间域平滑算法 (6)6.3.4.1、均值滤波 (7)6.3.4.2、中值滤波 (7)6.3.4.3、边界保持滤波 (8)6.4、图像分割 (8)6.4.1、均匀性度量法 (8)6.4.2、类间最大距离法 (9)6.4.3、局部阈值法 (9)6.5、颜色空间转化 (9)6..5.1、RGB转HSV (10)6.5.2、RGB转HIS (10)6.6、其他图像处理功能 (10)6.6.1、锐化 (10)6.6.2、傅里叶………………………………………………………….10\\七、程序调试及结果分析 (11)八、心得体会 (11)九、参考文献 (11)十、附录 (12)基于MATLAB的图像处理的课程设计一、课程设计目的1、提高分析问题、解决问题的能力,进一步巩固数字图像处理系统中的基本原理与方法。

2、熟悉掌握一门计算机语言,可以进行数字图像的应用处理的开发设计。

二、课程设计要求1、要求独立完成设计项目,开发工具为MATLAB,也可为C、C++、java等,具体自选。

各组长有责任督促组员完成任务并提交报告;2、时间为4月28日~6月28日为其两个月的业余时间。

三、课程设计的内容学习MATLAB GUI程序设计,利用MATLAB图像处理工具箱,设计和实现自己的Photoshop 。

要求:按照软件工程方法,根据需求进行程序的功能分析和界面设计,给出设计详细说明。

数字图像处理matlab课程设计

数字图像处理matlab课程设计

数字图像处理matlab课程设计一、课程目标知识目标:1. 理解数字图像处理的基本概念,掌握图像的表示和存储方式;2. 学会使用MATLAB软件进行数字图像处理,掌握相关函数和工具箱的使用方法;3. 掌握图像增强、滤波、边缘检测等基本图像处理技术;4. 了解图像分割、特征提取等高级图像处理技术。

技能目标:1. 能够运用MATLAB进行图像读取、显示和保存操作;2. 能够独立完成图像的增强、滤波等基本处理操作;3. 能够运用边缘检测算法对图像进行处理,提取关键特征;4. 能够根据实际需求选择合适的图像处理技术,解决实际问题。

情感态度价值观目标:1. 培养学生对数字图像处理技术的兴趣,激发其学习热情;2. 培养学生的团队合作意识,使其学会在团队中分享和交流;3. 培养学生严谨的科学态度,使其注重实验数据的真实性;4. 培养学生的创新思维,鼓励其探索新方法,提高解决问题的能力。

本课程旨在通过数字图像处理MATLAB课程设计,使学生在掌握基本理论知识的基础上,运用MATLAB软件进行图像处理实践。

课程注重理论与实践相结合,培养学生具备实际操作能力,并能运用所学知识解决实际问题。

针对学生的年级特点,课程目标既注重知识技能的传授,又关注情感态度价值观的培养,为学生今后的学习和工作奠定基础。

二、教学内容1. 数字图像处理基础- 图像表示与存储(RGB、灰度、二值图像)- 图像类型转换- MATLAB图像处理工具箱介绍2. 图像增强- 直方图均衡化- 伽玛校正- 图像锐化3. 图像滤波- 均值滤波- 中值滤波- 高斯滤波- 双边滤波4. 边缘检测- 索贝尔算子- 拉普拉斯算子- Canny边缘检测5. 图像分割- 阈值分割- 区域生长- 分水岭算法6. 特征提取与描述- 霍夫变换- SIFT算法- ORB算法教学内容根据课程目标进行选择和组织,注重科学性和系统性。

教学大纲明确分为六个部分,分别对应数字图像处理的基础知识、图像增强、滤波、边缘检测、图像分割和特征提取与描述。

图像处理matlab的课程设计

图像处理matlab的课程设计

图像处理matlab的课程设计一、教学目标本课程的教学目标是使学生掌握图像处理的基本原理和方法,能够使用MATLAB软件进行图像处理和分析。

具体目标如下:1.了解图像处理的基本概念和常用算法。

2.掌握MATLAB图像处理工具箱的使用。

3.理解图像处理在实际应用中的重要性。

4.能够使用MATLAB进行图像读取、显示和保存。

5.能够使用MATLAB进行图像滤波、边缘检测、图像增强等基本操作。

6.能够运用所学知识解决实际图像处理问题。

情感态度价值观目标:1.培养学生的创新意识和实践能力。

2.培养学生的团队合作精神和沟通协调能力。

3.培养学生的科学思维和解决问题的能力。

二、教学内容根据课程目标,教学内容主要包括以下几个方面:1.图像处理基本概念:图像的定义、图像的表示、图像的属性等。

2.MATLAB图像处理工具箱:MATLAB图像处理工具箱的介绍、常用函数和工具的使用方法等。

3.图像处理基本算法:图像滤波、边缘检测、图像增强、图像分割等。

4.图像处理应用案例:图像处理在实际应用中的案例分析,如医学影像处理、工业检测等。

三、教学方法为了达到课程目标,将采用多种教学方法相结合的方式进行教学。

包括:1.讲授法:通过讲解图像处理的基本概念和原理,使学生掌握基本知识。

2.案例分析法:通过分析实际图像处理案例,使学生了解图像处理的应用和实际意义。

3.实验法:通过实验操作,使学生掌握MATLAB图像处理工具箱的使用和基本算法。

4.讨论法:通过小组讨论和交流,促进学生思考和解决问题,培养团队合作精神。

四、教学资源为了支持教学内容和教学方法的实施,将准备以下教学资源:1.教材:《图像处理matlab教程》等。

2.参考书:《数字图像处理》、《MATLAB图像处理》等。

3.多媒体资料:PPT课件、实验演示视频等。

4.实验设备:计算机、MATLAB软件、图像处理相关硬件设备等。

通过以上教学资源的支持,将能够丰富学生的学习体验,提高学生的学习效果。

数字图像处理-课程设计报告-matlab

数字图像处理-课程设计报告-matlab

数字图像处理课程设计报告姓名:学号:班级: .net设计题目:图像处理教师:赵哲老师提交日期:12月29日一、设计内容:主题:《图像处理》详细说明:对图像进行处理(简单滤镜,模糊,锐化,高斯模糊等),对图像进行处理(上下对称,左右对称,单双色显示,亮暗程度调整等),对图像进行特效处理(反色,实色混合,色彩平衡,浮雕效果,素描效果,雾化效果等),二、涉及知识内容:1、二值化2、各种滤波3、算法等三、设计流程图插入图片对图片进行处理二值化处理重复输出两幅图结束四、实例分析及截图效果:运行效果截图:第一步:读取原图,并显示close all;clear;clc;% 清楚工作窗口clc 清空变量clear 关闭打开的窗口close all I=imread('1.jpg');% 插入图片1.jpg 赋给Iimshow(I);% 输出图II1=rgb2gray(I);%图片变灰度图figure%新建窗口subplot(321);% 3行2列第一幅图imhist(I1);%输出图片title('原图直方图');%图片名称一,图像处理模糊H=fspecial('motion',40);%% 滤波算子模糊程度40 motion运动q=imfilter(I,H,'replicate');%imfilter实现线性空间滤波函数,I图经过H滤波处理,replicate反复复制q1=rgb2gray(q);imhist(q1);title('模糊图直方图');二,图像处理锐化H=fspecial('unsharp');%锐化滤波算子,unsharp不清晰的qq=imfilter(I,H,'replicate');。

数字图像处理课程设计报告matlab

数字图像处理课程设计报告matlab

数字图像处理课程设计报告姓名:号:学级: .net班设计题目:图像处理教师:赵哲老师12:提交日期月29日一、设计内容:《图像处理》主题:详细说明:对图像进行处理(简单滤镜,模糊,锐化,高斯模糊等),对图像进行处理(上下对称,左右对称,单双色显示,亮暗程度调整等),对图浮雕效果,素描效果,雾化色彩平衡像进行特效处理(反色,实色混合,,效果等),二、涉及知识内容:1、二值化2、各种滤波3、算法等三、设计流程图插入图对图片进行处二值化处理重复输出两幅图结束四、实例分析及截图效果:运行效果截图:第一步:读取原图,并显示close all;clear;clc;close all 关闭打开的窗口clear % 清楚工作窗口clc 清空变量I=imread('1.jpg'); I赋给1.jpg 插入图片%I输出图imshow(I);%I1=rgb2gray(I);%图片变灰度图新建窗口%figuresubplot(321);% 3行2列第一幅图输出图片%imhist(I1);title('原图直方图');%图片名称一,图像处理模糊H=fspecial('motion',40);运动40 motion 模糊程度%% 滤波算子q=imfilter(I,H,'replicate');%imfilter实现线性空间滤波函数,I图经过H滤波处理,反复复制replicate q1=rgb2gray(q);imhist(q1););模糊图直方图'title('二,图像处理锐化不清晰的锐化滤波算子,unsharp'unsharp');%H=fspecial();qq=imfilter(I,H,'replicate'qq1=rgb2gray(qq);imhist(qq1););'title('锐化图直方图三,图像处理浮雕(来源网络)浮雕图%);'1.jpg'l=imread(变灰度图%f0=rgb2gray(l);f1=imnoise(f0,'speckle',0.01);%高斯噪声加入密度为0.01的高斯乘性噪声 imnoise噪声污染图像函数 speckle斑点把图像数据类型转换为双精度浮点类型f1=im2double(f1);%h3=1/9.*[1 1 1;1 1 1;1 1 1];进行卷积滤波f2对图像%采用h3);'same'f4=conv2(f1,h3,滤波sobel%进行);'sobel'h2=fspecial(相同的卷积和多项式相乘 same g3=filter2(h2,f1,'same');%实现图像矩阵的归一化操作% k=mat2gray(g3);四,图像处理素描(来源网络) );f=imread('1.jpg'[VG,A,PPG] = colorgrad(f);ppg = im2uint8(PPG);ppgf = 255 - ppg;[M,N] = size(ppgf);T=200;ppgf1 = zeros(M,N);ii = 1:M for jj = 1:N for ppgf(ii,jj)<T if ppgf1(ii,jj)=0; elseppgf1(ii,jj)=235/(255-T)*(ppgf(ii,jj)-T);endendend ppgf1 = uint8(ppgf1););'unsharp' H=fspecial();'replicate'Motionblur=imfilter(ppgf1,H,figure;imshow(ppgf1);调用[VG, A, PPG] = colorgrad(f, T)function (ndims(f)~=3) ||(size(f,3)~=3)if);'Input image must be RGB' error(end);'sobel'sh = fspecial(sv = sh';);Rx = imfilter(double(f(:,:,1)), sh, 'replicate');Ry = imfilter(double(f(:,:,1)), sv, 'replicate');Gx = imfilter(double(f(:,:,2)), sh, 'replicate');'replicate'Gy = imfilter(double(f(:,:,2)), sv,);'replicate'Bx = imfilter(double(f(:,:,3)), sh,);'replicate'By = imfilter(double(f(:,:,3)), sv,gxx = Rx.^2 + Gx.^2 + Bx.^2;gyy = Ry.^2 + Gy.^2 + By.^2;gxy = Rx.*Ry + Gx.*Gy + Bx.*By; A = 0.5*(atan(2*gxy./(gxx-gyy+eps)));G1 = 0.5*((gxx+gyy) +(gxx-gyy).*cos(2*A) + 2*gxy.*sin(2*A)); A = A + pi/2;G2 = 0.5*((gxx+gyy) + (gxx-gyy).*cos(2*A) + 2*gxy.*sin(2*A));G1 = G1.^0.5;G2 = G2.^0.5;VG =mat2gray(max(G1, G2));RG = sqrt(Rx.^2 + Ry.^2);GG = sqrt(Gx.^2 + Gy.^2);BG = sqrt(Bx.^2 + By.^2);PPG = mat2gray(RG + GG + BG); nargin ==2if VG =(VG>T).*VG; PPG = (PPG>T).*PPG;endf1=rgb2gray(f);imhist(f1););素描图直方图''title(五,图像处理实色混合(来源网络)实色混合%0127,置I(I<=127)=0; %对像素进行处理,若值小于等于255127,置I(I>127)=255; %对像素进行处理,若值大于imshow(I););'像素图title('I1=rgb2gray(f);imhist(I1););'title('像素图直方图六,图像处理反色图);'1.jpg'f=imread(q=255-q;imshow(q););''反色图title(imhist(q1););反色图直方图'title('七,图像处理上下对称A=imread('1.jpg');B=A;[a,b,c]=size(A); a1=floor(a/2); b1=floor(b/2); c1=floor(c/2);B(1:a1,1:b,1:c)=A(a:-1:a-a1+1,1:b,1:c); figureimshow(B));''上下对称title( A=rgb2gray(A);figure imhist(A));上下对称直方图' title('八,图像处理类左右对称);'1.jpg' C=imread( A=C;C(1:a,1:b1,1:c)=A(1:a,b:-1:b+1-b1,1:c); figure imshow(C));'左右对称title(' A=rgb2gray(A);figureimhist(A););''左右对称直方图title(九,图像处理单双色显示); '1.jpg'a=imread( a1=a(:,:,1);a2=a(:,:,2); a3=a(:,:,3); aa=rgb2gray(a); a4=cat(3,a1,aa,aa); a5=cat(3,a1,a2,aa); figure subplot(121);imshow(a4););'' title(单色显示 subplot(122); imshow(a5););''双色显示title( a4=rgb2gray(a4); a5=rgb2gray(a5); figure subplot(121);imhist(a4););' title('单色显示直方图 subplot(122); imhist(a5); title('双色显示直方图');十,图像处理亮暗度调整);a=imread('1.jpg' a1=0.8*a;a2=2*a;figure subplot(121);imshow(a1););''暗图title(subplot(122);imshow(a2);)亮图'title('q3=rgb2gray(a1);q4=rgb2gray(a2);figure)暗图直方图'subplot(121);mhist(q3);title('subplot(122);imhist(q4);)亮图直方图'title('十一,图像处理雾化处理);'1.jpg'q=imread(m=size(q,1);n=size(q,2);r=q(:,:,1);g=q(:,:,2);b=q(:,:,3); i=2:m-10 for j=2:n-10for产生一个随机数作为半径% k=rand(1)*10;得到随机横坐标% di=i+round(mod(k,33));得到随机纵坐标% dj=j+round(mod(k,33));将原像素点用随机像素点代替%r(i,j)=r(di,dj); g(i,j)=g(di,dj); b(i,j)=b(di,dj);endend a(:,:,1)=r;a(:,:,2)=g;a(:,:,3)=b;imshow(a));''title(雾化处理图q=rgb2gray(a);figure imhist(q););''雾化处理图直方图title(十二,图像处理高斯滤波);I = imread('1.jpg', [5 5], 2);'gaussian'G =fspecial(生成一个高斯滤波器% fspecial);Ig =imfilter(I,G,'same'使用该滤波器处理图片%imfilterimshow(Ig););''title(高斯滤波I1=rgb2gray(Ig);figure imhist(I1););'title('高斯滤波直方图十三,图像处理色彩平衡(来自网络));'1.jpg'im=imread(存储元图像%im2=im;im1=rgb2ycbcr(im);是蓝色分量和一个参考值得差 Cb Y亮度信息。

数字图像处理matlab课程设计

数字图像处理matlab课程设计

数字图像处理matlab课程设计一、教学目标本课程的教学目标是使学生掌握数字图像处理的基本理论和方法,学会使用MATLAB软件进行图像处理和分析。

通过本课程的学习,学生应达到以下具体目标:1.理解数字图像处理的基本概念、原理和算法。

2.熟悉MATLAB图像处理工具箱的使用。

3.能够运用数字图像处理的基本算法解决实际问题。

4.能够使用MATLAB进行图像处理和分析,撰写相关的程序代码。

情感态度价值观目标:1.培养学生的创新意识和团队协作精神。

2.培养学生对数字图像处理技术的兴趣,提高其综合素质。

二、教学内容根据课程目标,本课程的教学内容主要包括以下几个部分:1.数字图像处理基本概念:图像处理的基本概念、图像数字化、图像表示和图像变换。

2.图像增强和复原:图像增强、图像去噪、图像复原。

3.图像分割和描述:图像分割、图像特征提取和描述。

4.图像形态学:形态学基本运算、形态学滤波、形态学重建。

5.MATLAB图像处理工具箱的使用:MATLAB图像处理工具箱的基本功能、常用图像处理函数。

6.图像处理实例分析:结合实际案例,分析数字图像处理技术的应用。

三、教学方法为了实现课程目标,本课程将采用以下教学方法:1.讲授法:通过讲解图像处理的基本概念、原理和算法,使学生掌握图像处理的基本知识。

2.案例分析法:通过分析实际案例,使学生了解数字图像处理技术在实际中的应用。

3.实验法:通过上机实验,使学生熟练掌握MATLAB图像处理工具箱的使用,提高学生的实际操作能力。

4.讨论法:学生进行课堂讨论,激发学生的思维,培养学生的创新意识和团队协作精神。

四、教学资源为了支持教学内容和教学方法的实施,本课程将采用以下教学资源:1.教材:《数字图像处理(MATLAB版)》。

2.参考书:相关领域的经典教材和论文。

3.多媒体资料:教学PPT、视频教程等。

4.实验设备:计算机、MATLAB软件、图像处理相关硬件设备。

五、教学评估本课程的评估方式包括平时表现、作业、考试等多个方面,以全面、客观、公正地评价学生的学习成果。

基于matlab的图像处理的课程设计

基于matlab的图像处理的课程设计

基于matlab的图像处理的课程设计一、教学目标本课程旨在通过Matlab软件平台,让学生掌握图像处理的基本原理和方法,培养学生的实际操作能力和创新意识。

具体目标如下:1.知识目标:使学生了解并掌握图像处理的基本概念、理论和技术,包括图像的表示、图像的增强、滤波、边缘检测、分割和特征提取等。

2.技能目标:通过Matlab软件的操作练习,使学生能够熟练运用图像处理技术处理实际问题,提高学生的实践能力和问题解决能力。

3.情感态度价值观目标:培养学生对图像处理技术的兴趣,激发学生的创新思维,使学生认识到图像处理技术在实际生活和科学研究中的重要应用价值。

二、教学内容本课程的教学内容主要包括以下几个部分:1.图像处理的基本概念和数学基础:包括图像的表示、图像的采样和量化、图像的频率域处理等。

2.图像增强:包括直方图均衡化、对比度增强、锐化等方法。

3.图像滤波:包括线性滤波、非线性滤波、频率域滤波等方法。

4.边缘检测:包括Sobel算子、Canny算子、Laplacian算子等方法。

5.图像分割:包括阈值分割、区域生长、边缘追踪等方法。

6.特征提取:包括颜色特征、纹理特征、形状特征等提取方法。

三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式进行教学:1.讲授法:通过讲解图像处理的基本概念、理论和技术,使学生掌握图像处理的基本知识。

2.案例分析法:通过分析典型的图像处理案例,使学生了解图像处理技术在实际问题中的应用。

3.实验法:通过Matlab软件的操作练习,使学生熟练掌握图像处理技术的具体操作方法。

4.讨论法:学生进行小组讨论,激发学生的创新思维,提高学生的问题解决能力。

四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:《数字图像处理》(冈萨雷斯著),为学生提供图像处理的基本理论和技术。

2.多媒体资料:包括教学PPT、视频教程等,为学生提供直观的学习材料。

3.实验设备:计算机、投影仪等,为学生提供实践操作的平台。

matlab数字图像处理课程设计

matlab数字图像处理课程设计

matlab数字图像处理课程设计一、课程目标知识目标:1. 学生能理解数字图像处理的基本概念,掌握图像的表示方法和存储格式。

2. 学生能掌握MATLAB软件的基本操作,并运用其进行数字图像处理。

3. 学生能掌握图像的灰度变换、图像滤波、边缘检测等基本图像处理技术。

4. 学生能了解频域图像处理的基本原理,并运用MATLAB进行频域滤波。

技能目标:1. 学生能够运用MATLAB软件进行数字图像的读取、显示和保存。

2. 学生能够运用MATLAB实现基本的图像处理算法,如灰度变换、滤波等。

3. 学生能够分析图像处理算法的效果,并进行相应的参数调整。

4. 学生能够运用所学知识解决实际问题,如图像增强、边缘检测等。

情感态度价值观目标:1. 学生对数字图像处理产生兴趣,培养主动学习和探究的精神。

2. 学生通过实践操作,培养团队合作意识和解决问题的能力。

3. 学生能够认识到数字图像处理在科技、医疗、安全等领域的广泛应用,增强社会责任感。

4. 学生能够遵循学术道德,尊重他人成果,树立正确的价值观。

课程性质:本课程为数字图像处理相关学科的教学实践,旨在通过MATLAB软件的使用,使学生掌握数字图像处理的基本方法和技能。

学生特点:学生具备一定的数学基础和编程能力,对图像处理有一定了解,但实践经验不足。

教学要求:结合课本内容,注重理论与实践相结合,强调学生的动手实践能力,培养解决实际问题的能力。

通过课程目标的具体分解,使学生在学习过程中能够达到预期的学习成果,为后续深入学习打下坚实基础。

二、教学内容本课程教学内容围绕以下几部分展开:1. 数字图像处理基础理论- 图像的表示与存储格式- 图像处理的基本操作(读取、显示、保存)2. MATLAB软件操作- MATLAB界面与基本操作- MATLAB图像处理工具箱的使用3. 灰度变换与图像增强- 灰度变换函数及其应用- 直方图均衡化与规定化4. 图像滤波- 空域滤波器设计- 频域滤波器设计- 常用滤波算法(如高斯滤波、中值滤波等)5. 边缘检测- 基本边缘检测算法(如Sobel、Prewitt)- 高级边缘检测算法(如Canny)6. 频域图像处理- 频域变换(傅里叶变换、DCT等)- 频域滤波(低通、高通、带通滤波器)教学大纲安排如下:1. 基础理论(1课时)2. MATLAB软件操作(2课时)3. 灰度变换与图像增强(2课时)4. 图像滤波(2课时)5. 边缘检测(2课时)6. 频域图像处理(2课时)教学内容与教材章节紧密关联,通过以上安排,使学生系统掌握数字图像处理的基本概念、方法和技能。

基于matlab的图像处理课程设计

基于matlab的图像处理课程设计

基于matlab的图像处理课程设计一、教学目标本课程的教学目标是使学生掌握基于MATLAB的图像处理基本理论和方法,培养学生运用MATLAB进行图像处理和分析的能力。

具体分解为以下三个维度:1.知识目标:学生需要掌握MATLAB图像处理的基本概念、原理和方法,包括图像读取、显示、转换、滤波、边缘检测等。

2.技能目标:学生能够熟练使用MATLAB进行图像处理操作,具备解决实际图像处理问题的能力。

3.情感态度价值观目标:培养学生对图像处理技术的兴趣,使其认识图像处理在实际生活中的重要性,激发学生探索新知识、新方法的欲望。

二、教学内容教学内容围绕MATLAB图像处理展开,具体包括以下几个部分:1.MATLAB图像处理基础:介绍MATLAB图像处理工具箱的安装和使用,图像的基本概念和属性,图像的读取和显示。

2.图像处理基本算法:包括图像的灰度变换、空间滤波、频率域滤波、边缘检测、图像分割等。

3.图像处理实践案例:通过具体案例使学生掌握图像处理方法在实际问题中的应用,如车牌识别、人脸识别等。

4.图像处理进阶知识:介绍一些先进的图像处理方法,如图像压缩、特征提取、机器学习在图像处理中的应用等。

三、教学方法为了提高教学效果,我们将采用以下几种教学方法:1.讲授法:用于讲解图像处理的基本概念、原理和方法。

2.案例分析法:通过分析实际案例,使学生掌握图像处理方法在实际问题中的应用。

3.实验法:安排实验课,让学生亲自动手操作,加深对图像处理方法的理解。

4.讨论法:学生进行课堂讨论,激发学生的思维,培养学生的创新能力。

四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:《MATLAB图像处理教程》等相关教材。

2.参考书:提供一些图像处理领域的经典论文和书籍,供学生课后阅读。

3.多媒体资料:制作课件、视频等多媒体资料,丰富教学手段。

4.实验设备:计算机、MATLAB软件、摄像头等实验设备,用于实验教学。

matleb图像处理课程设计

matleb图像处理课程设计

matleb图像处理课程设计一、教学目标本课程的教学目标是使学生掌握Matlab图像处理的基本原理和方法,具备使用Matlab进行图像处理和分析的能力。

具体目标如下:1.理解图像处理的基本概念和原理。

2.掌握Matlab图像处理的基本函数和工具箱。

3.了解图像处理在实际应用中的重要性。

4.能够使用Matlab进行基本的图像处理操作,如图像读取、显示、转换和滤波。

5.能够运用Matlab图像处理工具箱进行高级图像处理,如边缘检测、特征提取和图像分割。

6.能够结合实际问题,设计和实现Matlab图像处理算法。

情感态度价值观目标:1.培养学生的创新意识和解决问题的能力。

2.培养学生的团队合作精神和沟通协调能力。

3.培养学生的科学态度和严谨的学术风气。

二、教学内容根据教学目标,本课程的教学内容主要包括以下几个方面:1.图像处理基本概念和原理:包括图像的表示、图像的运算和图像的属性等。

2.Matlab图像处理基本函数:包括图像读取、显示、转换和滤波等操作。

3.Matlab图像处理工具箱:包括边缘检测、特征提取和图像分割等高级处理技术。

4.实际应用案例:结合具体问题,介绍Matlab图像处理在实际应用中的解决方案。

三、教学方法为了达到教学目标,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。

1.讲授法:通过教师的讲解,使学生掌握图像处理的基本概念和原理,以及Matlab图像处理的基本函数和工具箱。

2.讨论法:通过小组讨论,培养学生的团队合作精神和沟通协调能力,同时促进学生对图像处理问题的深入思考和理解。

3.案例分析法:通过分析实际应用案例,使学生能够将图像处理理论和方法应用于解决实际问题,培养学生的创新意识和解决问题的能力。

4.实验法:通过实验操作,使学生能够亲手实践图像处理操作,加深对图像处理原理和方法的理解,培养学生的实验技能和动手能力。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,本课程将使用以下教学资源:1.教材:选择权威、实用的Matlab图像处理教材,作为学生学习的基础资料。

基于matlab的图像处理的课程设计

基于matlab的图像处理的课程设计

基于matlab的图像处理的课程设计一、课程目标知识目标:1. 理解图像处理的基本概念,掌握图像处理的基本原理;2. 学习使用MATLAB软件进行图像处理,掌握相关函数和工具箱的使用方法;3. 掌握图像增强、边缘检测、图像分割等常用图像处理技术;4. 了解图像处理在实际应用中的典型案例,如数字图像处理、计算机视觉等领域。

技能目标:1. 能够运用MATLAB软件进行图像读取、显示、保存等基本操作;2. 熟练运用MATLAB进行图像增强、边缘检测、图像分割等处理技术;3. 能够结合实际问题,运用所学知识解决图像处理中的具体问题;4. 培养编程思维和动手能力,提高实际操作和解决问题的能力。

情感态度价值观目标:1. 培养学生对图像处理技术的兴趣,激发学生的学习热情;2. 培养学生的团队合作精神,提高沟通与协作能力;3. 增强学生对我国图像处理技术发展的自豪感,树立科技创新意识;4. 引导学生关注图像处理技术在现实生活中的应用,培养学以致用的意识。

课程性质:本课程为选修课,适合对图像处理和计算机视觉感兴趣的 学生,具有一定的编程基础。

学生特点:学生具备一定的数学基础和编程能力,对新鲜事物充满好奇,喜欢探索和实践。

教学要求:结合课程特点,注重理论与实践相结合,强调动手实践,培养学生的实际操作能力。

通过案例分析,使学生更好地理解图像处理技术的应用价值。

在教学过程中,注重启发式教学,引导学生主动思考,提高解决问题的能力。

二、教学内容1. 图像处理基本概念:图像类型、图像格式、颜色空间等;2. MATLAB软件入门:安装与配置、基本操作、函数与脚本编写;3. 图像读取与显示:imread、imshow、imwrite等函数的使用;4. 图像增强:线性变换、直方图均衡化、自适应直方图均衡化等;5. 边缘检测:Sobel算子、Prewitt算子、Canny算子等;6. 图像分割:阈值分割、区域生长、分水岭算法等;7. 特征提取与描述:颜色特征、纹理特征、形状特征等;8. 图像处理在实际应用中的案例分析:数字图像处理、计算机视觉等;9. 综合实践:结合所学内容,完成一个图像处理项目。

matlab图像处理课程设计

matlab图像处理课程设计

matlab图像处理课程设计一、课程目标知识目标:1. 理解并掌握Matlab软件在图像处理领域的基本功能与操作方法。

2. 学习并掌握图像处理的基本概念,包括图像的表示、类型转换、灰度变换、滤波等。

3. 掌握图像处理中常用的算法,如边缘检测、图像增强、图像分割等。

技能目标:1. 能够独立使用Matlab软件进行图像读取、显示、保存等基本操作。

2. 能够运用Matlab进行图像的灰度变换、滤波处理,实现图像增强。

3. 能够运用边缘检测、图像分割等方法对图像进行处理,解决实际问题。

情感态度价值观目标:1. 培养学生对图像处理领域的兴趣,激发其探索精神,使其乐于学习、主动探究。

2. 培养学生的团队协作意识,使其在课程实践过程中学会与他人合作、共同解决问题。

3. 引导学生认识到图像处理技术在现实生活中的广泛应用,提高学生的技术应用意识。

课程性质分析:本课程为高中年级的选修课程,以实践操作为主,理论讲解为辅。

课程内容紧密联系实际,注重培养学生的动手能力和解决实际问题的能力。

学生特点分析:高中年级学生具备一定的数学基础和编程能力,对新鲜事物充满好奇,但学习时间有限,需要在课程设计中充分考虑学生的学习负担。

教学要求:1. 确保课程内容与教材紧密关联,注重实用性和操作性。

2. 课程设计要符合学生特点,难度适中,注重激发学生的学习兴趣。

3. 教学过程中要注重理论与实践相结合,引导学生将所学知识应用于实际问题。

二、教学内容1. 图像处理基础知识:- 图像的表示与类型转换- 图像的读取、显示与保存2. 图像灰度变换与滤波:- 灰度变换方法(线性、对数、幂次)- 图像滤波(低通、高通、带通滤波器)3. 图像增强:- 直方图均衡化- 自适应直方图均衡化- 图像锐化4. 边缘检测:- 索贝尔算子- 拉普拉斯算子- Canny边缘检测5. 图像分割:- 阈值分割- 区域生长- 水平集方法6. 实践案例分析:- 选择具有代表性的图像处理案例,如车牌识别、人脸识别等,结合所学的理论知识进行实践操作。

matlab用于图像处理课程设计

matlab用于图像处理课程设计

matlab用于图像处理课程设计一、教学目标本课程的目标是使学生掌握MATLAB在图像处理方面的基本知识和技能,能够运用MATLAB进行简单的图像处理操作。

通过本课程的学习,学生应能够理解图像处理的基本概念,掌握MATLAB图像处理工具箱的使用,学会运用MATLAB进行图像处理的基本操作,如图像读取、显示、转换、滤波、边缘检测等。

同时,通过实践操作,学生应能够培养解决问题的能力和创新思维,提高对图像处理的兴趣和热情。

二、教学内容本课程的教学内容主要包括MATLAB图像处理的基本概念和操作。

首先,将介绍MATLAB图像处理工具箱的基本功能和用法,使学生能够熟悉MATLAB图像处理环境。

然后,将讲解图像处理的基本概念和原理,如图像读取、显示、转换等。

接着,将介绍图像处理的基本操作,如滤波、边缘检测、形态学处理等。

最后,将结合实际案例,使学生能够运用所学知识和技能解决实际问题。

三、教学方法为了提高教学效果,将采用多种教学方法相结合的方式进行教学。

首先,将采用讲授法,为学生讲解图像处理的基本概念和原理,使学生能够理解并掌握相关知识。

其次,将采用讨论法,引导学生进行思考和讨论,培养学生的创新思维和解决问题的能力。

同时,将采用案例分析法,通过分析实际案例,使学生能够将所学知识和技能运用到实际问题中。

最后,将采用实验法,让学生亲自动手进行实验操作,巩固所学知识和技能。

四、教学资源为了支持教学内容和教学方法的实施,将准备适当的教学资源。

教材方面,将选用《MATLAB图像处理》一书,作为学生学习的主要参考资料。

参考书方面,将推荐《数字图像处理》等相关书籍,供学生深入学习和参考。

多媒体资料方面,将制作PPT课件和教学视频,以直观展示图像处理的基本概念和操作。

实验设备方面,将准备计算机和MATLAB软件,供学生进行实验操作。

同时,还将提供在线资源和网络平台,供学生随时查阅和学习。

五、教学评估本课程的评估方式将包括平时表现、作业和考试三个部分,以全面客观地评估学生的学习成果。

matlab数字图像处理课程设计

matlab数字图像处理课程设计

matlab 数字图像处理课程设计一、课程目标知识目标:1. 掌握Matlab中数字图像处理的基本概念和常用算法;2. 学习并理解数字图像处理中的图像增强、边缘检测和图像分割等关键技术;3. 了解数字图像处理在实际应用中的发展及其在各领域的应用。

技能目标:1. 能够运用Matlab软件进行数字图像的读取、显示和保存等基本操作;2. 熟练运用Matlab实现图像增强、边缘检测和图像分割等算法;3. 能够运用所学知识解决实际问题,对图像进行处理和分析。

情感态度价值观目标:1. 培养学生对数字图像处理的兴趣,激发学生的学习热情;2. 培养学生的团队合作意识和创新精神,使其在学习和实践中不断探索新知识;3. 使学生认识到数字图像处理技术在科技发展和国防建设中的重要作用,增强学生的社会责任感和使命感。

课程性质:本课程为选修课,适用于高年级本科生或研究生。

课程内容紧密结合实际,强调实践操作和动手能力。

学生特点:学生已具备一定的编程基础和数学知识,对数字图像处理有一定了解,但实践能力有待提高。

教学要求:注重理论与实践相结合,强调学生的主体地位,鼓励学生积极参与讨论和动手实践。

通过课程学习,使学生能够将所学知识应用于实际问题中,提高解决实际问题的能力。

二、教学内容1. 数字图像处理基础- 图像的基本概念、类型和表达方式- Matlab中图像的读取、显示和保存- 图像的数学变换:灰度变换、几何变换2. 图像增强- 线性滤波和非线性滤波- 图像锐化技术- 频域滤波:低通滤波、高通滤波3. 边缘检测- 边缘检测的基本原理- 常用边缘检测算子:Sobel、Prewitt、Roberts、Canny4. 图像分割- 阈值分割法- 区域分割法- 边缘分割法5. 应用案例分析- 图像增强在医学图像处理中的应用- 边缘检测在机器视觉中的应用- 图像分割在目标识别中的应用教学内容安排与进度:1. 数字图像处理基础(2周)2. 图像增强(3周)3. 边缘检测(2周)4. 图像分割(3周)5. 应用案例分析(2周)本教学内容基于教材章节进行组织,涵盖数字图像处理的核心知识点,注重理论与实践相结合,旨在提高学生的实际操作能力。

matleb图像处理课程设计

matleb图像处理课程设计

matleb图像处理课程设计一、课程目标知识目标:1. 理解MATLAB中图像处理的基本概念,掌握图像的读取、显示和保存方法。

2. 学习图像的基本运算,包括算术运算、逻辑运算以及几何变换。

3. 掌握图像滤波、边缘检测和图像分割等常用图像处理技术。

技能目标:1. 能够运用MATLAB软件进行图像的读取、显示和保存,并熟练操作图像处理工具箱。

2. 培养学生运用MATLAB进行图像处理算法编程的能力,实现图像的基本运算和常用处理技术。

3. 提高学生分析问题、解决问题的能力,使其能够针对实际图像处理问题选择合适的算法并优化。

情感态度价值观目标:1. 激发学生对图像处理领域的兴趣,培养其主动探索、积极进取的学习态度。

2. 培养学生的团队协作能力,使其在合作中学会相互尊重、分享经验。

3. 增强学生的实践意识,使其认识到理论知识在实际应用中的重要性。

课程性质:本课程为选修课,旨在让学生在学习过程中掌握MATLAB图像处理的基本知识和技能。

学生特点:学生具备一定的编程基础,对图像处理有一定了解,但对MATLAB软件的使用和图像处理算法的实践应用尚不熟练。

教学要求:结合学生特点和课程性质,注重理论与实践相结合,充分调动学生的积极性,引导学生在实践中掌握图像处理技术。

通过课程学习,使学生能够独立完成图像处理相关任务,并具备一定的实际问题解决能力。

二、教学内容1. 图像处理基础- 图像的表示和分类- MATLAB图像处理工具箱介绍- 图像的读取、显示和保存2. 图像基本运算- 算术运算与逻辑运算- 几何变换原理及实现3. 图像滤波- 基本滤波原理及分类- 常用滤波器设计与应用4. 边缘检测- 边缘检测算法原理- 常用边缘检测算子及应用5. 图像分割- 图像分割方法概述- 基于阈值的分割方法- 基于边缘的分割方法6. 实践应用- 实践项目一:图像增强与滤波- 实践项目二:边缘检测与图像分割- 实践项目三:综合应用案例分析教学内容安排与进度:- 第1周:图像处理基础,图像读取、显示和保存- 第2周:图像基本运算,算术运算与逻辑运算- 第3周:图像基本运算,几何变换- 第4周:图像滤波,基本滤波原理及分类- 第5周:图像滤波,常用滤波器设计与应用- 第6周:边缘检测,边缘检测算法原理及算子- 第7周:图像分割,分割方法概述及实践- 第8周:实践应用,三个实践项目的实施与讨论教学内容与教材关联性:本教学内容紧密结合教材,按照教材章节进行组织,涵盖图像处理的基础知识、核心技术和实践应用。

数字图像处理课程设计报告matlab

数字图像处理课程设计报告matlab

数字图像处理课程设计报告姓名:学号:班级:.net设计题目:图像处理教师:赵哲老师提交日期:12 月 29 日一、设计内容:主题:《图像处理》详细说明:对图像进行处理(简单滤镜,模糊,锐化,高斯模糊等),对图像进行处理(上下对称,左右对称,单双色显示,亮暗程度调整等),对图像进行特效处理(反色,实色混合,色彩平衡,浮雕效果,素描效果,雾化效果等),二、涉及知识内容:1、二值化2、各种滤波3、算法等三、设计流程图插入图片对图片进行处理二值化处理重复输出两幅图结束四、实例分析及截图效果:运行效果截图:第一步:读取原图 , 并显示close all;clear;clc;% 清楚工作窗口clc清空变量clear关闭打开的窗口close all I=imread('1.jpg');%插入图片 1.jpg赋给Iimshow(I);% 输出图II1=rgb2gray(I);%图片变灰度图figure%新建窗口subplot(321);% 3 行 2 列第一幅图imhist(I1);%输出图片title(' 原图直方图 ' ); %图片名称一,图像处理模糊H=fspecial('motion',40);%% 滤波算子模糊程度40 motion运动q=imfilter(I,H,'replicate'); %imfilter实现线性空间滤波函数,I 图经过 H 滤波处理, replicate反复复制q1=rgb2gray(q);imhist(q1);title(' 模糊图直方图' );二,图像处理锐化H=fspecial('unsharp'); %锐化滤波算子,unsharp不清晰的qq=imfilter(I,H,'replicate');qq1=rgb2gray(qq);imhist(qq1);title(' 锐化图直方图' );三,图像处理浮雕 ( 来源网络 )%浮雕图l=imread('1.jpg');f0=rgb2gray(l);%变灰度图f1=imnoise(f0,'speckle',0.01);%高斯噪声加入密度为0.01的高斯乘性噪声imnoise噪声污染图像函数speckle斑点f1=im2double(f1); %把图像数据类型转换为双精度浮点类型h3=1/9.*[1 1 1;1 1 1;1 1 1];%采用 h3 对图像f2 进行卷积滤波f4=conv2(f1,h3,'same' );%进行 sobel滤波h2=fspecial('sobel');g3=filter2(h2,f1,'same' ); %卷积和多项式相乘same相同的k=mat2gray(g3);% 实现图像矩阵的归一化操作四,图像处理素描 ( 来源网络 )f=imread('1.jpg');[VG,A,PPG] = colorgrad(f);ppg = im2uint8(PPG);ppgf = 255 - ppg;[M,N] = size(ppgf);T=200;ppgf1 = zeros(M,N);for ii = 1:Mfor jj = 1:Nif ppgf(ii,jj)<Tppgf1(ii,jj)=0;elseppgf1(ii,jj)=235/(255-T)*(ppgf(ii,jj)-T);endendendppgf1 = uint8(ppgf1);H=fspecial('unsharp');Motionblur=imfilter(ppgf1,H,'replicate');figure;imshow(ppgf1);调用function[VG, A, PPG] = colorgrad(f, T)if (ndims(f)~=3) || (size(f,3)~=3)error('Input image must be RGB');endsh = fspecial('sobel');sv = sh';Rx = imfilter(double(f(:,:,1)), sh,'replicate'); Ry = imfilter(double(f(:,:,1)), sv,'replicate'); Gx = imfilter(double(f(:,:,2)), sh,'replicate'); Gy = imfilter(double(f(:,:,2)), sv,'replicate'); Bx = imfilter(double(f(:,:,3)), sh,'replicate'); By = imfilter(double(f(:,:,3)), sv,'replicate');gxx = Rx.^2 + Gx.^2 + Bx.^2;gyy = Ry.^2 + Gy.^2 + By.^2;gxy = Rx.*Ry + Gx.*Gy + Bx.*By;A = 0.5*(atan(2*gxy./(gxx-gyy+eps)));G1 = 0.5*((gxx+gyy) + (gxx-gyy).*cos(2*A) + 2*gxy.*sin(2*A));A = A + pi/2;G2 = 0.5*((gxx+gyy) + (gxx-gyy).*cos(2*A) + 2*gxy.*sin(2*A));G1 = G1.^0.5;G2 = G2.^0.5;VG = mat2gray(max(G1, G2));RG = sqrt(Rx.^2 + Ry.^2);GG= sqrt(Gx.^2 + Gy.^2);BG = sqrt(Bx.^2 + By.^2);PPG = mat2gray(RG + GG + BG);if nargin ==2VG = (VG>T).*VG;PPG = (PPG>T).*PPG;endf1=rgb2gray(f);imhist(f1);title(' 素描图直方图' );五,图像处理实色混合(来源网络) %实色混合I(I<=127)=0;%对像素进行处理,若值小于等于127 ,置0 I(I>127)=255;%对像素进行处理,若值大于127 ,置 255 imshow(I);title(' 像素图 ' );I1=rgb2gray(f);imhist(I1);title(' 像素图直方图' );六,图像处理反色图f=imread('1.jpg');q=255-q;imshow(q);title(' 反色图 ' );imhist(q1);title(' 反色图直方图' );七,图像处理上下对称A=imread('1.jpg');B=A;[a,b,c]=size(A);a1=floor(a/2); b1=floor(b/2); c1=floor(c/2); B(1:a1,1:b,1:c)=A(a:-1:a-a1+1,1:b,1:c); figureimshow(B)title(' 上下对称 ' );A=rgb2gray(A);figureimhist(A)title(' 上下对称直方图' );八,图像处理类左右对称C=imread('1.jpg');A=C;C(1:a,1:b1,1:c)=A(1:a,b:-1:b+1-b1,1:c); figureimshow(C)title(' 左右对称 ' );A=rgb2gray(A);figureimhist(A);title(' 左右对称直方图' );九,图像处理单双色显示a=imread('1.jpg');a1=a(:,:,1);a2=a(:,:,2); a3=a(:,:,3);aa=rgb2gray(a);a4=cat(3,a1,aa,aa); a5=cat(3,a1,a2,aa); figuresubplot(121);imshow(a4);title(' 单色显示 ' );subplot(122);imshow(a5);title(' 双色显示 ' );a4=rgb2gray(a4);a5=rgb2gray(a5);figuresubplot(121);imhist(a4);title(' 单色显示直方图' ); subplot(122);imhist(a5);title(' 双色显示直方图' );十,图像处理亮暗度调整a=imread('1.jpg');a1=0.8*a;a2=2*a;figuresubplot(121);imshow(a1);title(' 暗图 ' );subplot(122);imshow(a2);title(' 亮图 ' )q3=rgb2gray(a1);q4=rgb2gray(a2);figuresubplot(121);mhist(q3);title(' 暗图直方图 ' ) subplot(122);imhist(q4);title(' 亮图直方图 ' )十一,图像处理雾化处理q=imread('1.jpg');m=size(q,1);n=size(q,2);r=q(:,:,1);g=q(:,:,2);b=q(:,:,3);for i=2:m-10for j=2:n-10k=rand(1)*10;%产生一个随机数作为半径di=i+round(mod(k,33));%得到随机横坐标dj=j+round(mod(k,33));%得到随机纵坐标r(i,j)=r(di,dj);%将原像素点用随机像素点代替g(i,j)=g(di,dj);b(i,j)=b(di,dj);endenda(:,:,1)=r;a(:,:,2)=g;a(:,:,3)=b;imshow(a)title(' 雾化处理图 ' );q=rgb2gray(a);figureimhist(q);title(' 雾化处理图直方图' );十二,图像处理高斯滤波I = imread('1.jpg');G =fspecial('gaussian', [5 5], 2); % fspecial生成一个高斯滤波器Ig =imfilter(I,G,'same' );%imfilter使用该滤波器处理图片imshow(Ig);title(' 高斯滤波 ' );I1=rgb2gray(Ig);figureimhist(I1);title(' 高斯滤波直方图' );十三,图像处理色彩平衡(来自网络)im=imread('1.jpg');im2=im; %存储元图像im1=rgb2ycbcr(im);%将 im RGB 图像转换为YCbCr 空间。

数字图像matlab课程设计

数字图像matlab课程设计

数字图像matlab课程设计一、课程目标知识目标:1. 学生能理解数字图像处理的基本概念,掌握图像的表示方法。

2. 学生能掌握MATLAB软件的基本操作,并运用其进行数字图像处理。

3. 学生能掌握数字图像处理的基本算法,如图像增强、滤波、边缘检测等。

技能目标:1. 学生能运用MATLAB软件读取、显示和保存图像。

2. 学生能运用MATLAB实现基本的数字图像处理算法,并对图像进行处理。

3. 学生能分析处理结果,优化算法,提高图像处理效果。

情感态度价值观目标:1. 学生通过学习数字图像处理,培养对图像信息处理的兴趣,提高学习积极性。

2. 学生通过动手实践,培养解决问题的能力和团队合作精神。

3. 学生能够认识到数字图像处理在科技领域的广泛应用,增强对科技创新的认识。

课程性质:本课程为实践性较强的课程,侧重于数字图像处理技术的应用。

学生特点:学生具备一定的计算机操作基础,对图像处理有一定了解,但实践经验不足。

教学要求:结合课本内容,注重理论与实践相结合,充分调动学生的主观能动性,提高学生的动手能力和创新能力。

通过本课程的学习,使学生能够达到上述课程目标,并为后续相关课程打下坚实基础。

二、教学内容1. 数字图像处理基础知识:- 图像的表示方法:像素、灰度、颜色空间。

- 图像的基本属性:分辨率、对比度、亮度。

- MATLAB软件入门:安装、界面、基本操作。

2. 图像读取、显示与保存:- 使用MATLAB读取、显示和保存图像。

- 图像类型转换:灰度图像、二值图像、彩色图像。

3. 数字图像处理基本算法:- 图像增强:直方图均衡化、伽马校正。

- 图像滤波:低通滤波、高通滤波、带阻滤波。

- 边缘检测:Sobel算子、Canny算子。

4. 实践项目:- 图像增强处理:对给定的图像进行增强处理,观察并分析处理效果。

- 图像滤波应用:使用不同滤波器处理图像,比较滤波效果。

- 边缘检测实践:对图像进行边缘检测,评价检测结果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数字图像处理》课程设计文档目录一、课程设计目的 (2)二、课程设计要求 (2)三、课程设计的内容 (2)四、课题分析 (3)五、总体设计 (3)六、具体设计 (4)6.1、文件 (4)6.1.1、打开 (4)6.1.2、保存 (4)6.1.3、打印 (4)6.1.4、退出 (4)6.2、直方图统计 (4)6.2.1、R直方图 (4)6.2.2、G直方图 (4)6.2.3、B直方图 (4)6.3、图像增强处里 (5)6.3.1、直方图均衡化 (5)6.3.2、对比度展宽 (6)6.3.3、动态范围调整 (6)6.3.4、空间域平滑算法 (6)6.3.4.1、均值滤波 (7)6.3.4.2、中值滤波 (7)6.3.4.3、边界保持滤波 (8)6.4、图像分割 (8)6.4.1、均匀性度量法 (8)6.4.2、类间最大距离法 (9)6.4.3、局部阈值法 (9)6.5、颜色空间转化 (9)6..5.1、RGB转HSV (10)6.5.2、RGB转HIS (10)6.6、其他图像处理功能 (10)6.6.1、锐化 (10)6.6.2、傅里叶………………………………………………………….10\\七、程序调试及结果分析 (11)八、心得体会 (11)九、参考文献 (11)十、附录 (12)基于MATLAB的图像处理的课程设计一、课程设计目的1、提高分析问题、解决问题的能力,进一步巩固数字图像处理系统中的基本原理与方法。

2、熟悉掌握一门计算机语言,可以进行数字图像的应用处理的开发设计。

二、课程设计要求1、要求独立完成设计项目,开发工具为MATLAB,也可为C、C++、java等,具体自选。

各组长有责任督促组员完成任务并提交报告;2、时间为4月28日~6月28日为其两个月的业余时间。

三、课程设计的内容学习MATLAB GUI程序设计,利用MATLAB图像处理工具箱,设计和实现自己的Photoshop 。

要求:按照软件工程方法,根据需求进行程序的功能分析和界面设计,给出设计详细说明。

然后按照自己拟定的功能要求进行程序设计和调试。

整个系统要完成的基本功能大致如下:1、能对图像文件(bmp、 jpg、 tiff、 gif等)进行打开、保存、另存、打印、退出等功能操作;2、数字图像的统计信息功能:直方图的统计及绘制;3、数字图像的增强处理功能:(1)直方图的均衡化(2)对比度展宽(3)动态范围调整(4)空间域平滑算法的各种算法(如均值滤波、中值滤波、边界保持的滤波方法等)4、数字图像由RGB转换成HIS空间并分别显示其分量图。

5、数字图像分割功能:可采用两种以上方法进行图像分割。

总体设计由于要实现的功能并不是很多,所以在排版的过程中,把各个功能都安排在目录栏上,整体安排如下图所示:四、具体设计6.1、文件6.1.1、打开为了让使用者更方便的使用,所以在设计的时候,通过对话框的形式来选择文件,选择uigetfile函数来实现,uigetfile函数显示一个打开文件对话框,该对话框自动列出当前路径下的目录和文件,由于这个GUI程序的操作对象是图像文件。

Uigetfile函数的调用格式为[name,path]=yigetfile(…), 在按下对话框中的执行按钮“打开”后,返回选择的文件名和路径,分别保存到“name”和“path”中。

如果按下取消按钮或是发生错误,则返回值是0。

根据返回值的情况,如果是0,则弹出提示错误的对话框,否则,通过imread函数读出图像数据,把图像数据赋值给全局变量handles.image。

6.1.2、保存同样也通过对话框的形式来保存图像数据,通过uigetfile函数选择文件名和路径,用getimage(gca)取出坐标2变换后的图像数据保存到变量i,最后用imwrite 函数,把数据i存到指定的文件。

6.1.4、退出退出比较简单,程序如下所示:clc;close all;close(gcf);6.1.3、打印打印功能没能实现,将它设置为不可使用,可用如下代码实现set(handles.print, 'Enable','off' ); %放在open_callback函数末尾set(handles.print, 'Enable','off' );%放在two_OpeningFcn中6.2、直方图统计6.2.1、R直方图由于RGB图像是三维图像,所以图像数据是一个三维数组,为了显示R直方图像,把三维图像降为二维,且是当最后一个参数为1时是R直方图:x=imhist(handles.image(:,:,1)); %当然也可以选择(:,:,2) 或(:,:,3)••••imshow(y);处理前后图片效果如下:6.2.2、G直方图G直方图与R直方图的程序差不多只需将数值为1的R直方图变成2即可成为G直方图x=imhist(handles.image(:,:,2));6.2.3、B直方图同理可得B直方图x=imhist(handles.image(:,:,3));RGB三种直方图统计图如下:原图R直方图G直方图B直方图6.3、图像增强处理6.3.1、直方图均衡化在balance_Callback回退函数中实现直方图均衡化每个回退函数中都要获取图片,上面的RGB直方图也一样需获取打开的图片。

打开图片的为以下程序代码:set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);直方图均衡化是判断是否为灰度图。

用函数isrgb了来判断,不是灰度则将其转化,否则就直接用函数:histeq(handles.image)%handles.image是获取的图片来直方图均衡化处理图片图片前后效果如下:6.3.2、对比度展宽对图像的对比度展宽刻可自己编写算法来处理,同样的,,处理结果如图:6.3.3、动态范围调整共图像处理功能未能实现,程序中已给出处理其图像的代码,但有错误,不能找出其错位,将其正确的处理,原因是:nw=1./(b-a).*(h-a.*ones(sx,sy));Error:Matrix dimensions must agree也查过资料修改该语句,有的资料说是乘除和幂方要改成点乘点除,点幂方,这个是合理,但是改正后仍然有错,是在无能为力,代码在后面将给出,可供参考。

6.3.4、空间域平滑算法6.3.4.1、均值滤波经常用到的噪声有两种,高斯噪声,椒盐噪声,可以通过以下两个函数来实现:y=imnoise(handles.img,'gaussian',p1,p2);%高斯噪声y=imnoise(x,'salt & pepper',p1); %椒盐噪声均值滤波中可对高斯滤波,也可以对椒盐滤波,设计过程中采用其一种图片进行处理。

但两种处理的效果就不同,对高斯噪声处理的效果更加明显均值滤波是一种采取平均灰度值的方法进行滤波,用imnoise获得噪声的图片。

这个函数可获得高斯噪声,亦可获得椒盐噪声。

在采用函数conv2进行均值处理,处理前后的图片比较如下:6.3.4.2、中值滤波中值滤波同均值滤波的程序差不多,只是进行滤波的原理不同,则采用不同的函数进行代替,用以下函数可进行中值滤波处理:I = imnoise(handles.image,'salt & pepper', 0.02); imshow(I);j=medfilt2(I);前后图片效果如下:6.3.4.3、边界保持滤波原理不同,采用knn 函数是处理边界保持滤波的,程序代码的形式跟前两种滤波差不多:I = imnoise(handles.image,'salt & pepper', 0.02);imshow(I);j=knn2(I);前后图片效果如下:6.4、 图像分割:图象分割是按照某些特性(如灰度级,频谱,颜色,纹理等)将图象划分成一些区域,在这些区域内其特性是相同的或者说是均匀的,两个相邻区域彼此特性则是不同的,其间存在着边缘或边界6.4.1、均匀性度量法当图像被分为目标物和背景两个类时,属于同一类别的像素值分布方差最小,也即具有均匀性。

给定一初始阈值Th=Th0,将图像分为C1和C2两类 分别计算两类中的方差 分别计算两类在图像中的分布概率选择最佳阈值 Th=Th*, 将图像分为C1和C2两类,满足均匀性度量方法的处理结果:2221σσ和6.4.2、类间最大距离法.采用最佳阈值分割后,两类之间的差异最大,且差异采用两类中心与阈值间的距离差度量给定一初始阈值Th=Th0,将图像分为C1和C2两类分别计算两类的灰度均值 计算相对距离度量值 s选择最佳阈值 Th=Th*, 将图像分为C1和C2两类图片效果:6.4.3、局部阈值法不均匀照射,物体背景对比明显, 不能只使用一门限灰度级校正。

图象分成小块,选择局部门限局部阈值法的处理前后结果:6.5、 颜色空间转化6..5.1、RGB 转HSV21μμ和}m ax {|*S S Th Th ==色彩空间相互转化:其中有很多种色彩空间,这里只介绍两种转换关系:RGB转HSV,图像处理中有专门的函数将其进行转化,即rgb2hvs函数转化图像前后对比如下:6.5.2、RGB转HIS首先获取图像的RGB 3个通道R=w(:,:,1);G=w(:,:,2);B=w(:,:,3);观察HSI通道图像因系统没有rgb2hsi函数,只有rgb2hsv函数,可自己编写程序实现算法,用一个循环处理,分别得到HIS的色度,饱和度以及强度图,代码在后面实现图形处理效果如下:6.6、其他图像处理功能6.6.1、锐化6.6.2、傅里叶这两个是附加的图像处理功能,在次不做过多的说明,可向大家看看处理图像结果进行对比一下,看看效果,可在后面附上代码锐化.四种傅里叶变参考文献【1】 郑阿奇,曹戈,赵阳.MATLAB 实用教程[M].北京:电子工业出版社 【2】 精通matlab6[1].5_(北航_张志涌).pdf 【3】MATLAB 编程 (第二版)MATLAB Programming for Engineers Second Edition ) Stephen J. Chapman 著 邢树军 郑碧波 译 【4】相关的MATLAB 图像处理函数五、 附录function varargout = two(varargin)% Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State =struct('gui_Name',mfilename, ...'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn', @two_OpeningFcn, ...'gui_OutputFcn', @two_OutputFcn, ...'gui_LayoutFcn',[] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback =str2func(varargin{1});endif nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});elsegui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before erzhi is made visible.function two_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.---------------------------------------------------------%接下来是菜单的程序---------------------------------------------------------function file_Callback(hObject, eventdata, handles)--------------------------------------------------------%文件打开程序function open_Callback(hObject, eventdata, handles)[name,path]=uigetfile({'*.bmp'},'载入图像');if isequal(name,0)|isequal(path,0)errordlg('没有选中文件','出错');return;elsex=imread([path,name]);axes(handles.axes1);imshow(x);handles.img=x;handles.noise_img=x;guidata(hObject,handles)end---------------------------------------------------function save_Callback(hObject, eventdata, handles)%文件保存[filename,pathname] = uiputfile('*.bmp','图片保存为');if isequal([filename,pathname],[0,0])errordlg('没有保存','出错');return;elsefile=strcat(pathname,filename);(handles.axes2);i=getimage(gca);imwrite(i,file);end-----------------------------------------------------function exit_Callback(hObject, eventdata, handles)clc;close all;close(gcf);---------------------------------------------------------% 直方图------------------------------------------------------function zhf_Callback(hObject, eventdata, handles)-------------------------------------------------function red_Callback(hObject, eventdata, handles)% R直方图data (see GUIDA TA)set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);x=imhist(handles.image(:,:,1));x1=x(1:10:256);horz=1:10:256;bar(horz,x1);set(handles.axes2,'xtick',0:50:255);------------------------------------------------------function green_Callback(hObject, eventdata, handles)% G直方图set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);x=imhist(handles.image(:,:,2));x1=x(1:10:256);horz=1:10:256;bar(horz,x1);set(handles.axes2,'xtick',0:50:255);------------------------------------------------------function blue_Callback(hObject, eventdata, handles)% B直方图set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);%if isrgb(handles.img)x=imhist(handles.image(:,:,3));x1=x(1:10:256);horz=1:10:256;bar(horz,x1);set(handles.axes2,'xtick',0:50:255);-----------------------------------------------------%图像增强处理--------------------------------------------------------- function zhf_Callback(hObject, eventdata, handles) -------------------------------------------------function balance_Callback(hObject, eventdata, handles)%直方图均衡化set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);if isrgb(handles.image)a=histeq(handles.image(:,:,1));b=histeq(handles.image(:,:,2));c=histeq(handles.image(:,:,3));k(:,:,1)=a;k(:,:,2)=b;k(:,:,3)=c;imshow(k);elseh=histeq(handles.image);imshow(h);endfunction zq_Callback(hObject, eventdata, handles)----------------------------------------------------------------- function duibidu_Callback(hObject, eventdata, handles)%对比度展宽set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);h=im2double(handles.image);[sx,sy]=size(h);nw=h.^0.3;subplot(2,2,1);imshow(h);title('original');subplot(2,2,2);imshow(nw);title('r=0.4');subplot(2,2,3);imshow(h.^0.5);title('r=0.7');subplot(2,2,4);imshow(h.^2);title('r=3');--------------------------------------------------------------------function dongtai_Callback(hObject, eventdata, handles)%动态调整范围set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);h=im2double(handles.image);a=0.01;b=0.35;[sx,sy]=size(h);[w,n]=find(h(:)<=a);h(n)=0;[w1,n1]=find(h(:)>b);h(n1)=1;nw=1./(b-a).*(h-a.*ones(sx,sy));subplot(1,2,1);imshow(h);subplot(1,2,2);imshow(nw);----------------------------------------------------------------- %空间域平滑算法function pinghua_Callback(hObject, eventdata, handles)-----------------------------------------------------------------function junzhi_Callback(hObject, eventdata, handles)%均值滤波h=[1 1 1;1 1 1;1 1 1];h=h/9;set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);x=imnoise(handles.image,'gaussian',0,0.02);imshow(x);j=conv2(x,h);figure,imshow(j,[]);--------------------------------------------------------------------function zhongzhi_Callback(hObject, eventdata, handles)%中值滤波set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);% I=imnoise(I,'gaussian',0,0.02);I = imnoise(handles.image,'salt & pepper',0.02);%j=medfilt2(I);figure,imshow(j,[]);--------------------------------------------------------------------function bianjie_Callback(hObject, eventdata, handles)% 边界保持滤波set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);% I=imnoise(I,'gaussian',0,0.02);I = imnoise(handles.image,'salt & pepper',0.02);imshow(I);j=knn2(I);figure,imshow(j,[]);-------------------------------------------------------------------------------------------------------------------------------------function junyunxing_Callback(hObject, eventdata, handles)%均与性度量法set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);v=double(handles.image);[sx,sy]=size(v);num=sx*sy;t=[];for th=6:254[r1,c1]=find(v(:)>=th);[r2,c2]=find(v(:)<th);if(length(r1)~=0 & length(c1)~=0 )L1=v(r1);elseL1=[];endif(length(r2)~=0 & length(c2)~=0 )L2=v(r2);elseL2=[];endm1=mean(L1(:)); m2=mean(L2(:));Var1=sum((L1(:)-m1).^2);Var2=sum((L2(:)-m2 ).^2);Var1=var(L1(:));Var2=var(L2(:));P1=length(L1(:))/num;P2=length(L2(:))/num;t=[t,P1*Var1+P2*Var2];end[c,l]=min(t);B=v;[r1,c1]=find(v(:)>=l+5);[r2,c2]=find(v(:)<l+5);B(r1)=255; B(r2)=0;imshow(uint8(B));%--------------------------------------------------------------------function jubuyuzhi_Callback(hObject, eventdata, handles)%局部阈值法set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);v=rgb2gray(handles.image);imshow(v); R=zeros(size(v));H = FSPECIAL('gaussian',9,2.4);v = imfilter(v,H);t=graythresh(v); t=t*255;[c,l]=find( v(:)>t);R(c)=1;[x,y]=size(R); q=R;for i=10:x-10for j=10:y-10if R(i,j)==0t=[R(i-1,j-1),R(i-1,j),R(i-1,j+1),R(i,j-1),R(i,j+1),R(i+1 ,j-1),R(i+1,j),R(i+1,j+1)];if sum(t)==0q(i,j)=1;endendendendfigure, imshow(q,[]);--------------------------------------------------------------------function leijianzuidajuli_Callback(hObject, eventdata, handles)%类间最大法set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);X=rgb2gray(handles.image);[r,c]=size(X);figure (1)subplot(1,2,1)imshow(X)R=zeros(1,256);for i=50:150Xi0=X0<=i;N0=sum(sum(Xi0));Xm0=X0(Xi0);u0=sum(Xm0)/N0;Xi1=X0>i;N1=sum(sum(Xi1));Xm1=X0(Xi1);u1=sum(Xm1)/N1;R(i+1)=(u1-i)*(i-u0)/((u1-u0)^2);endTh=find(R==max(R(51:151)))-1X2=zeros(r,c);for i=1:rfor j=1:cX2(i,j)=X0(i,j)>Th;endendsubplot(2,2,2)imshow(X2)----------------------------------------------------------------- %颜色空间转化--------------------------------------------------------------------function hsv_Callback(hObject, eventdata, handles)%RGB转HSVset(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);hv=rgb2hsv(handles.image);subplot(2,2,1);imshow(hv);title('RGB•• HSV');%RGB=reshape(ones(64,1)*reshape(jet(64),1,1 92),[64,64,3]); ••H=hv(:,:,1); •S=hv(:,:,2);V=hv(:,:,3);subplot(2,2,2);imshow(H) ;title('• •§•§');subplot(2,2,3);imshow(S);title('• •§•§');subplot(2,2,4);imshow(V);title('• •§•§');--------------------------------------------------------------------function HIS_Callback(hObject, eventdata, handles)%RGB转HSIset(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);W=im2double(handles.image);%获得double 型的图形矩阵[m,n,q]=size(W);R=W(:,:,1);G=W(:,:,2);B=W(:,:,3);% 改变通道来观察图像H=zeros(m,n);S=H;for i1=1:mfor i2=1:nnumerator=0.5*(R(i1,i2)-G(i1,i2)+R(i1,i2)-B(i1,i2));denominator=sqrt((R(i1,i2)-G(i1,i2))^2+(R(i1,i2)-B(i 1,i2))*(G(i1,i2)-B(i1,i2)));theta=acos(numerator/denominator)*180/pi;if(B(i1,i2)<=G(i1,i2))H(i1,i2)=theta;elseH(i1,i2)=360-theta;endmin1=min(R(i1,i2),G(i1,i2));min1=min(B(i1,i2),min1);S(i1,i2)=1-3/(R(i1,i2)+G(i1,i2)+B(i1,i2))*min1;endendI=(R+G+B)/3;figure,subplot(1,3,1),imshow(H,[]),title('色度图H');set(gcf,'outerposition',get(0,'screensize'));set(gcf,'NumberTitle','off','Name','HSI通道图像');subplot(1,2,2),imshow(S),title('饱和度图S');subplot(1,2,3),imshow(I),title('强度图•I');%----------------------------------------------------------------- %其他图像处理---------------------------------------------------------------------------function fly_Callback(hObject, eventdata, handles)%傅里叶变化set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);[m,n]=size(handles.image);d=zeros(m,n);d(60:100,60:100)=1;w=fft2(d);w1=fftshift(w);[sx,sy]=size(d);subplot(2,2,1); imshow(d);subplot(2,2,2); imshow(abs(w1));for i=1:sxt= fft(d(i,:));len=length(t)/2;F1(i,:)=[(t(len+1:end)),t(1:len)];endfor i=1:syF2=fft(F1(:,i));len=length(F2)/2;F(:,i)=[(F2(len+1:end));F2(1:len)];endsubplot(2,2,3);imshow(abs(F1));subplot(2,2,4);imshow((abs(F)));function ruihua_Callback(hObject, eventdata, handles)%锐化k=2;h1=[-1 0 1;-k 0 k;-1 0 1];h2=[1 k 1;0 0 0;-1 -k -1];set(handles.axes2,'HandleVisibility','ON');axes(handles.axes2);I=rgb2gray(handles.image);subplot(121);imshow(I);J1(:,:)=conv2(I(:,:),h1);J2(:,:)=conv2(I(:,:),h2);J=abs(J1)+abs(J2);subplot(122);imshow((J),[0 255]);。

相关文档
最新文档