基于MATLAB图像处理报告.docx
matlab图象处理实验报告

对图像lena.bmp 添加高斯噪声,并分别进行均值滤波和中值滤波。
程序:I=imread('d:\lena.bmp');subplot(2,2,1),imshow(I)title('原始图像')I=imnoise(I,'gaussian',0,0.02); % 添加均值为0,方差为0.02的高斯噪声 subplot(2,2,2),imshow(I)title('加噪图像')h=[1 1 1;1 1 1;1 1 1];h=h/9; % 产生3×3的均值滤波模板 J1=filter2(h,I,'same'); % 用均值模板对图像I 滤波 subplot(2,2,3),imshow(J1,[])%subplot(2,2,3),imshow(J1/255)%J1=uint8(J1);subplot(2,2,3),imshow(J1)title('均值滤波结果')J2=medfilt2(I); % 用3×3的滤波窗口对图像I 进行中值滤波 subplot(2,2,4),imshow(J2)title('中值滤波结果')结果:加噪图像中值滤波结果原始图像均值滤波结果I=imread('d:\lena.bmp');subplot(2,2,1),imshow(I)title('原始图像')hx=[-1 -2 -1;0 0 0;1 2 1]; % 生成Sobel 垂直梯度模板 hy=hx'; % 生成Sobel 水平梯度模板 gradx=filter2(hx,I,'same');gradx=abs(gradx); % 计算图像的Sobel 垂直梯度 subplot(2,2,2),imshow(gradx,[])title('图像的Sobel 垂直梯度')grady=filter2(hy,I,'same');grady=abs(grady);% 计算图像的Sobel 水平梯度 subplot(2,2,3),imshow(grady,[])title('图像的Sobel 水平梯度')grad=gradx+grady;% 得到图像的Sobel 梯度subplot(2,2,4),imshow(grad,[])title('图像的Sobel 梯度')结果:图像的Sobel 垂直梯度图像的Sobel 梯度原始图像图像的Sobel 水平梯度。
matlab图像处理实验报告

matlab图像处理实验报告《Matlab图像处理实验报告》摘要:本实验报告通过使用Matlab软件进行图像处理实验,对图像进行了灰度化、二值化、边缘检测、图像增强等处理,通过实验结果分析,验证了Matlab在图像处理领域的实用性和有效性。
1. 实验目的本实验旨在通过Matlab软件进行图像处理实验,掌握图像处理的基本方法和技术,提高对图像处理算法的理解和应用能力。
2. 实验原理图像处理是对图像进行数字化处理的过程,主要包括图像获取、图像预处理、图像增强、图像分割和图像识别等步骤。
Matlab是一种功能强大的科学计算软件,具有丰富的图像处理工具箱,可用于图像的处理、分析和识别。
3. 实验内容(1)图像灰度化首先,通过Matlab读取一幅彩色图像,并将其转换为灰度图像。
利用Matlab 中的rgb2gray函数,将RGB图像转换为灰度图像,实现图像的灰度化处理。
(2)图像二值化接着,对灰度图像进行二值化处理,将图像转换为黑白二值图像。
利用Matlab 中的im2bw函数,根据设定的阈值对灰度图像进行二值化处理,实现图像的二值化处理。
(3)边缘检测然后,对二值图像进行边缘检测处理,提取图像的边缘信息。
利用Matlab中的edge函数,对二值图像进行边缘检测处理,实现图像的边缘检测处理。
(4)图像增强最后,对原始图像进行图像增强处理,改善图像的质量和清晰度。
利用Matlab 中的imadjust函数,对原始图像进行图像增强处理,实现图像的增强处理。
4. 实验结果分析通过实验结果分析,可以发现Matlab在图像处理领域具有较高的实用性和有效性。
通过Matlab软件进行图像处理实验,可以快速、方便地实现图像的处理和分析,提高图像处理的效率和精度,为图像处理技术的研究和应用提供了重要的工具和支持。
5. 结论本实验通过Matlab图像处理实验,掌握了图像处理的基本方法和技术,提高了对图像处理算法的理解和应用能力。
数字图像处理实验报告-基于Matlab

华东师范大学电子工程系2017.6实验1:图像灰度级修正【实验目的】掌握常用的图像灰度级修正方法(灰度变换法和直方图均衡化),加深对直方图的理解。
观察图像的增强效果,对灰度级修正前后的图像加以比较。
【实验内容】1)编程实现图像的灰度变换,改变图像的输入、输出映射参数范围(线性拉伸和反比);2)修改参数gamma值(大于、小于、等于1),观察处理结果;3)对图像直方图作均衡化处理,显示均衡前后的图像及其直方图。
【实验代码】original=imread('lena.bmp');linstr=imadjust(original,[0.3 0.7],[0 1]); %线性拉伸opposite=imadjust(original,[0 1],[1 0]); %反比above=imadjust(original,[0 1],[0 1],2); %gamma>1equal=imadjust(original,[0 1],[0 1],1); %gamma=1below=imadjust(original,[0 1],[0 1],0.5); %gamma<1subplot(3,3,1);imshow(original);title('原图像');subplot(3,3,2);imshow(linstr);title('线性拉伸');subplot(3,3,3);imshow(opposite);title('反比');subplot(3,3,4);imshow(above);title('gamma>1');subplot(3,3,5);imshow(equal);title('gamma=1');subplot(3,3,6);imshow(below);title('gamma<1');subplot(3,3,7);imhist(original);title('原图像直方图'); histequal=histeq(original);%对图像均衡化subplot(3,3,8);imshow(histequal);title('均衡后的图像'); subplot(3,3,9);imhist(histequal);title('均衡图像的直方图'); axis([0 256 0 2000]);【输出图像】【实验思考】根据以下图片以及实验结果可知gamma>1时图像整体变暗,灰度级整体变小;gamma<1时图像整体变亮,灰度级整体变小;而gamma=1时,图像维持不变。
(完整word版)数字图像处理 实验报告(完整版)

数字图像处理实验一 MATLAB数字图像处理初步一、显示图像1.利用imread( )函数读取一幅图像,假设其名为lily.tif,存入一个数组中;2.利用whos 命令提取该读入图像flower.tif的基本信息;3.利用imshow()函数来显示这幅图像;实验结果如下图:源代码:>>I=imread('lily.tif')>> whos I>> imshow(I)二、压缩图像4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为lily.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。
6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flily.bmp。
7.用imread()读入图像Sunset.jpg和Winter.jpg;8.用imfinfo()获取图像Sunset.jpg和Winter.jpg的大小;9.用figure,imshow()分别将Sunset.jpg和Winter.jpg显示出来,观察两幅图像的质量。
其中9的实验结果如下图:源代码:4~6(接上面两个) >>I=imread('lily.tif')>> imfinfo 'lily.tif';>> imwrite(I,'lily.jpg','quality',20);>> imwrite(I,'lily.bmp');7~9 >>I=imread('Sunset.jpg');>>J=imread('Winter.jpg')>>imfinfo 'Sunset.jpg'>> imfinfo 'Winter.jpg'>>figure(1),imshow('Sunset.jpg')>>figure(2),imshow('Winter.jpg')三、二值化图像10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。
数字图像处理实验报告Word版

《数字图像处理上机》实验报告班级:电信1101姓名:XXXXXX学号:0703110107数字图像处理上机实验1、实验目的了解matlab软件/语言,学会使用matlab的图像处理工具箱(Image Processing Toolbox),使学生初步具备使用该软件处理图像信息的能力,并能够利用该软件完成本课程规定的其他实验和作业。
熟悉常用的图像文件格式与格式转换;熟悉图像矩阵的显示方法(灰度、索引、黑白、彩色);熟悉图像矩阵的格式转换。
,学会使用MatLab对图像作滤波处理,使学生有机会掌握滤波算法,体会滤波效果。
了解几种不同滤波方式的使用和使用的场合,培养处理实际图像的能力.2、实验要求学生应当基本掌握matlab的操作,掌握matlab图像处理工具箱中最常用的函数用法。
练习图像读写命令imread和imwrite并进行图像文件格式之间的转换。
学生应当完成对于给定图像+噪声,使用平均滤波器、中值滤波器对不同强度的高斯噪声和椒盐噪声,进行滤波处理;能够正确地评价处理的结果;能够从理论上作出合理的解释。
3、实验内容及步骤1、图像的显示与格式转换(1)学习matlab的基本操作;(2)使用imread函数读入图像;(3)使用figure函数创建窗口;(4)使用image或imshow函数显示图像;(5)使用colorbar函数在图像的右侧显示图像的亮度条。
2、图像的滤波(1) 考察平均滤波器对高斯噪声污染的图象去噪效果;(2) 考察中值滤波器对高斯噪声污染的图象去噪效果;(3) 考察平均滤波器对椒盐噪声污染的图象去噪效果;(4) 考察中值滤波器对椒盐噪声污染的图象去噪效果。
(5) 考察滤波器模板大小对平均滤波器滤波效果的影响;(6) 考察滤波器模板大小对中值滤波器滤波效果的影响;3、图像的频域变换在Matlab workspace中生成一幅大小为256×256像素的8位灰度图, 背景为黑色,中心有一个宽80像素高40像素的白色矩形。
实验一 MATLAB_图像处理实验报告

实验一 MATLAB_图像处理实验报告实验报告课程名称数字图像处理实验名称图像的几何变换姓名__吴征宇学号____ 3101110002 专业班级_ 实验日期__20XX_ 年_10 _月_18 日成绩_____ __ 指导教师___ _一、实验目的掌握图像平移、缩放、旋转与镜像变换;二、实验原理图像平移,自写平移函数function outImage=immove(inImage,Tx,Ty) [m, n] = size(inImage);%计算图象大小outImage = uint8(zeros(m+abs(Ty), n+abs(Tx))); if(Tx>0&&Ty>0) %往右下角平移的情况outImage(1+Ty:m+Ty,1+Tx:n+Tx) = inImage; else if(Tx0) %往左下角平移的情况outImage(1+Ty:m+Ty,1:n) = inImage; else % 往右上角平移的情况outImage(1:m,1+Tx:n+Tx) = inImage; end endend 主函数I=imread('C:\\Documents and Settings\\student\\桌面\\'); J=rgb2gray(I);imshow(J);title('原图像'); H=immove(J,100,-100);figure;imshow(H);title('平移后图像'); B=immove(J,80,-50);figure;imshow(B);title('平移后图像'); G=imresize(J,);figure;imshow(G);title('缩放后图像'); C=imresize(J,2);figure;imshow(C);title('缩放后图像'); D=imrotate(J,30);figure;imshow(D);title('旋转后图像'); E=imrotate(J,54);figure;imshow(E);title('旋转后图像'); F = flipdim(J,1);figure;imshow(F);title('垂直镜像图像'); G = flipdim(J,2);figure;imshow(G);title('水平镜像图像');三、实验环境Window 20XX Matlab1.利用imread( )函数读取一幅图像,假设其名为,存入一个数组中;a=imread('')2.利用whos 命令提取该读入图像的基本信息;3.利用imshow 函数来显示这幅图像;4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite 函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。
基于MATLAB图像处理报告

基于MATLAB图像处理报告一、设计题目图片叠加。
二、设计要求将一幅礼花图片和一幅夜景图片做叠加运算,使达到烟花夜景的美图效果。
三、设计方案3.1、设计思路利用matlab强大的图像处理功能,通过编写程序,实现对两幅图片的像素进行线性运算,利用灰度变换的算法使图片达到预期的效果。
3.2、软件介绍MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。
是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
MATLAB和Mathematica、Maple并称为三大数学软件。
它在数学类科技应用软件中在数值计算方面首屈一指。
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。
在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。
可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户直接进行下载就可以用。
3.3、常见简单程序语句及算法分析(1)CLC;清零。
matlab图像处理实验报告

图像处理实验报告姓名:陈琼暖班级:07计科一班学号:20070810104目录:实验一:灰度图像处理 (3)实验二:灰度图像增强 (5)实验三:二值图像处理 (8)实验四:图像变换 (13)大实验:车牌检测 (15)实验一:灰度图像处理题目:直方图与灰度均衡基本要求:(1) BMP灰度图像读取、显示、保存;(2)编程实现得出灰度图像的直方图;(3)实现灰度均衡算法.实验过程:1、BMP灰度图像读取、显示、保存;⏹图像的读写与显示操作:用imread( )读取图像。
⏹图像显示于屏幕:imshow( ) 。
⏹2、编程实现得出灰度图像的直方图;3、实现灰度均衡算法;⏹直方图均衡化可用histeq( )函数实现。
⏹imhist(I) 显示直方图。
直方图中bin的数目有图像的类型决定。
如果I是个灰度图像,imhist将使用默认值256个bins。
如果I是一个二值图像,imhist使用两bins。
实验总结:Matlab 语言是一种简洁,可读性较强的高效率编程软件,通过运用图像处理工具箱中的有关函数,就可以对原图像进行简单的处理。
通过比较灰度原图和经均衡化后的图形可见图像变得清晰,均衡化后的直方图形状比原直方图的形状更理想。
实验二:灰度图像增强题目:图像平滑与锐化 基本要求:(1)使用邻域平均法实现平滑运算; (2)使用中值滤波实现平滑运算; (3)使用拉普拉斯算子实现锐化运算.实验过程: 1、使用邻域平均法实现平滑运算;步骤:对图像添加噪声,对带噪声的图像数据进行平滑处理; ⏹ 对图像添加噪声J = imnoise(I,type,parameters)2、使用中值滤波实现平滑运算;3、使用拉普拉斯算子实现锐化运算;⏹采用可根据图像的局部方差来调整滤波器输出的自适应滤波对图像进行平滑,及采用拉氏算子运算使图像的模糊部分得到增强。
⏹在Matlab 中,各种滤波方法都是在空间域中通过不同的卷积模板即滤波算子实现,可用fspecial( )函数创建预定义的滤波算子,然后用filter2( )或conv2( )函数在实现卷积运算的基础上进行滤波。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于M A T L A B图像处理报告一、设计题目
图片叠加。
二、设计要求
将一幅礼花图片和一幅夜景图片做叠加运算,使达到烟花夜景的美图效果。
三、设计方案
3.1、设计思路
利用matlab强大的图像处理功能,通过编写程序,实现对两幅图片的像素进行线性运算,利用灰度变换的算法使图片达到预期的效果。
3.2、软件介绍
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。
是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
MATLAB和Mathematica、Maple并称为三大数学软件。
它在数学类科技应用软件中在数值计算方面首屈一指。
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB 也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。
在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。
可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户直接进行下载就可以用。
3.3、常见简单程序语句及算法分析
(1)CLC;清零。
(2)CLEAR ;清内存。
(3)r=imread(‘路径\图片名.jpg’);读入一幅图片。
(4)imshow(r);显示图片r。
(5)g=rgb2gray(r);灰度转变。
(6)%imhist(g);g1=histeq(g);figure,imsho(g1);直方图均衡化。
(7)Imwrite(‘g1,路径\图片名.jpg’);保存图片。
3.4、图片叠加及灰度变换分析
程序1
[m,n,l]=size(C);
for i=1:m
for j=1:n
for k=1:l
D(i,j,k)=C(i,j,k)+ B(i,j,k);
end
end
end
此程序的主要功能是对两幅图片通过算法来实现叠加的效果,程序中的几个变量都是像素点的值,通过三个循环使得两幅图片对应的值线性相加,最大值应该是以255输出,超过255也是以255输出。
程序2
J = imadjust(I,[low_in high_in], [low_out high_out])
如果原图像f(x, y)的灰度范围是[m, M],我们希望对图像的灰度范围进行线性调整,调整后的图像g(x, y)的灰度范围是[n, N],那么下述变换:g(x,y)?N?n?f(x,y)?m??n就可以实现这一要求。
MATLAB图像处理工具箱中提供的imadjust函数,可以实现上述的线性变换对比度调整。
四、设计步骤
(1)处理之前,我们先来看看两幅原图,一幅是带有礼花的图片,另一幅是一幅东方明珠的夜景图。
图 1
图 2
通过图片我们发现,礼花的图片非常的亮,而夜景图则显得有些灰暗。
我们推测,如果让礼花和夜景的图片叠加到一起,会不会由于礼花的亮度太大而掩盖了城市的夜光,达不到我们想要的效果。
(2)打开matlab图像处理软件,7.0及以上版本就可以,打开之后,显示界面如下(我的版本是2012b)。
图3
(3)新建script文件,点击’New script‘,或点击’New‘,选择script。
图4
(4)在打开的界面之中输入程序。
图片的位置是你所要用的图片的准确位置,尽量写详细点,减少计算机的读取时间,加快读取速度。
如图所示。
图5
(5)点击运行按钮,即界面上的绿色按钮。
图6
(6)查看效果,如下图。
图7
通过处理后的图片,我们看到由于礼花太亮,完全将城市的夜景掩盖住了,效果不是太理想。
我们设想加入灰度变换函数,将礼花的图片变的暗一点,将夜景的亮度提高一点,看看效果怎么样,加入灰度变换程序,如下图。
图8
(7)软件调试后运行程序,如下图。
图9
结果显示加入灰度变换的函数之后,图片效果较之前好多了,达到了预期的目的。
五、软件代码
通过matlab进行图像处理,代码如下:
clear;
clc;
A=imread('C:\Users\Administrator\Desktop\作业\礼花.jpg');
C=imresize(A,[300,400]);
B=imread('C:\Users\Administrator\Desktop\作业\夜景提亮天空中加入礼花.jpg'); [m,n,l]=size(C);
for i=1:m
for j=1:n
for k=1:l
D(i,j,k)=C(i,j,k)+ B(i,j,k);
end
end
end
figure
imshow(D);
imwrite('C:\Users\Administrator\Desktop\作业\礼花效果图1.jpg') 调试之后的程序代码如下:
clear;
clc;
A=imread('C:\Users\Administrator\Desktop\作业\礼花.jpg');
B=imread('C:\Users\Administrator\Desktop\作业\夜景提亮天空中加入礼花.jpg'); A1=imadjust(A,[0,1],[0,0.9]);
B1=imadjust(B,[0.3,0.6],[0,1]);
C=imresize(A1,[300,400]);
[m,n,l]=size(C);
for i=1:m
for j=1:n
for k=1:l
D(i,j,k)=C(i,j,k)+ B1(i,j,k);
end
end
end
figure
imshow(D);
imwrite('C:\Users\Administrator\Desktop\作业\礼花效果图2.jpg') 处理后的图片如下:
图 10
六、结果分析
通过两幅图的对比,发现第二幅图片较第一幅,效果明显增强。
是由于加入灰度变换函数,使原图的灰度值发生变化,以达到实际的效果。
效果对比图11
七、心得体会
通过这次任务,以前在课堂上没太听明白怎么回事的东西,通过上网,查资料,以及用软件处理,通通实践了一遍,加深了对这门课程的认识和理解。
Matlab是一款功能
很强大的应用软件,它不仅可以对图像进行处理,而且可以进行各种数字计算和符号计算功能,具有绘图功能,语言体系等等。
这次的任务我们乐在其中,喜悦的是看到了成果,内心充满了满足感和成就感,就如同看到了图片中的烟花,有种过年的感觉。
不过这些都只是皮毛而已,要想真正地掌握它,还得更进一步地学习理论知识。
参考文献:
【冈萨雷斯数字图像处理(MATLAB版)】[美] RafaelC.Gonzalez RichardE.Woods StevenL.Eddins 着电子工业出版社。
【数字图像处理及MATLAB实现】杨杰主编电子工业出版社。