《数字图像处理》期末大作业(1)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数字图像处理》期末大作业
大作业题目及要求:
一、题目:
本门课程的考核以作品形式进行。作品必须用Matlab完成。并提交相关文档。
二、作品要求:
1、用Matlab设计实现图形化界面,调用后台函数完成设计,函数可以调用Matlab工具箱中的函数,也可以自己编写函数。设计完成后,点击GUI图形界面上的菜单或者按钮,进行必要的交互式操作后,最终能显示运行结果。
2、要求实现以下功能:每个功能的演示窗口标题必须体现完成该功能的小组成员的学号和姓名。
1)对于打开的图像可以显示其灰度直方图,实现直方图均衡化。
2)实现灰度图像的对比度增强,要求实现线性变换和非线性变换(包括对数变换和指数变换)。
3)实现图像的缩放变换、旋转变换等。
4)图像加噪(用输入参数控制不同噪声),然后使用空域和频域进行滤波处理。
5)采用robert算子,prewitt算子,sobel算子,拉普拉斯算子对图像进行边缘提取。
6)读入两幅图像,一幅为背景图像,一幅为含有目标的图像,应用所学的知识提取出目标。
3、认真完成期末大作业报告的撰写,对各个算法的原理和实验结果务必进行仔细分析讨论。报告采用A4纸打印并装订成册。
附录:报告模板
《数字图像处理》
期末大作业
班级:计算机
小组编号:第9组
组长:王迪
小组成员:吴佳达
浙江万里学院计算机与信息学院
2014年12月
目录(自动生成)
1 绘制灰度直方图,实现直方图均衡化 (5)
1.1 算法原理 (5)
1.2 算法设计 (5)
1.3 实验结果及对比分析 (5)
2 灰度图像的对比度增强 (5)
2.1 算法原理 (5)
2.2 算法设计 (5)
2.3 实验结果及分析 (5)
3 图像的几何变换 (5)
3.1 算法原理 (5)
3.2 算法设计 (5)
3.3 实验结果及分析 (5)
4 图像加噪(用输入参数控制不同噪声),然后使用空域和频域进行滤波处理 (5)
4.1 算法原理 (5)
4.2 算法设计 (6)
4.3 实验结果及分析 (6)
5 采用robert,prewitt,sobel,拉普拉斯算子对图像进行边缘提取 (6)
5.1 算法原理 (6)
5.2 算法设计 (6)
5.3 实验结果及分析 (6)
6 读入两幅图像,一幅为背景图像,一幅为含有目标的图像,应用所学的知识提取出目标 (6)
6.1 算法原理 (6)
6.2 算法设计 (6)
6.3 实验结果及分析 (6)
7 小结(感受和体会) (6)
1 绘制灰度直方图,实现直方图均衡化
1.1 算法原理
图像增强是指按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些不需要的信息的处理方法。其主要目的是处理后的图像对某些特定的应用比原来的图像更加有效。图像增强技术主要有直方图修改处理、图像平滑化处理、图像尖锐化处理和彩色处理技术等。本实验以直方图均衡化增强图像对比度的方法为主要内容,其他方法同学们可以在课后自行联系。
直方图是多种空间城处理技术的基础。直方图操作能有效地用于图像增强。除了提供有用的图像统计资料外,直方图固有的信息在其他图像处理应用中也是非常有用的,如图像压缩与分割。直方图在软件中易于计算,也适用于商用硬件设备,因此,它们成为了实时图像处理的一个流行工具。
直方图是图像的最基本的统计特征,它反映的是图像的灰度值的分布情况。直方图均衡化的目的是使图像在整个灰度值动态变化范围内的分布均匀化,改善图像的亮度分布状态,增强图像的视觉效果。灰度直方图是图像预处理中涉及最广泛的基本概念之一。
图像的直方图事实上就是图像的亮度分布的概率密度函数,是一幅图像的所有象素集合的最基本的统计规律。直方图反映了图像的明暗分布规律,可以通过图像变换进行直方图调整,获得较好的视觉效果。
直方图均衡化是通过灰度变换将一幅图像转换为另一幅具有均衡直方图,即在每个灰度级上都具有相同的象素点数的过程。
1.2 算法设计
f=imread('medicine_pic.jpg');
g=imhist(f,256); %显示其直方图
g1=imadjust(f,[0 1],[1 0]); %灰度转换,实现明暗转换(负片图像)
figure,imshow(g1)
%将0.5到0.75的灰度级扩展到范围[0 1]
g2=imadjust(f,[0.5 0.75],[0 1]);
figure,imshow(g2)
g=imread('point.jpg');
h=log(1+double(g)); %对输入图像对数映射变换
h=mat2gray(h); %将矩阵h转换为灰度图片
h=im2uint8(h); %将灰度图转换为8位图
figure,imshow(h) I=imread('camera.jpg'); % 读入原图像
J=histeq(I); %对原图像进行直方图均衡化处理
imshow(I); %显示原图像
title('原图像'); %给原图像加标题名
%对原图像进行屏幕控制;显示直方图均衡化后的图像
figure;imshow(J);
%给直方图均衡化后的图像加标题名
title('直方图均衡化后的图像') ;
%对直方图均衡化后图像进行屏幕控制;作一幅子图,并排两幅图的第1幅
figure; subplot(1,2,1) ;
imhist(I,64); %将原图像直方图显示为64级灰度