数字图像处理第二次试验:图像增强

  • 前言
  • 一、实验目的
  • 二、实验主要仪器设备
  • 三、实验原理
  • 四、实验内容
  • 五、实验步骤
  • 六、实验程序
  • 七、实验报告要求
  • 八、预习要求
  • 九、思考题

前言

为了帮助同学们完成痛苦的实验课程设计,本作者将其作出的实验结果及代码贴至CSDN中,供同学们学习参考。如有不足或描述不完善之处,敬请各位指出,欢迎各位的斧正!

一、实验目的

(1)熟悉并学会使用MATLAB中图像增强的相关函数及Photoshop操作。
(2)掌握图像灰度修正、平滑去噪、锐化加强边缘和轮廓的方法,并编程实现。

二、实验主要仪器设备

(1)台式计算机或笔记本电脑
(2)MATLAB软件(含图像处理工具箱)、Photoshop
(3)典型的灰度、彩色图像文件

三、实验原理

数码相机的曝光量指达到数码相机(DC)感光器件上的光线总量,用曝光值(EV)表示。图像过度曝光或曝光不足时,可用曝光补偿调节曝光量,这种功能将修正自动曝光设置值为上升或下降几级。例如,某些DC的EV调整范围为+30-3。尝试对同一景象进行正确曝光、过度曝光和曝光不足三种情况成像情况。
(1)将一幅图像视为一个二维矩阵,用MATLAB进行图像增强。
(2)利用MATLAB图像处理工具箱中的函数imread(读)、imshow(显示)、imnoise(加噪)、filter2(滤波)对图像进行去噪处理。
(3)图像灰度修正:灰度变换。对不满意的图像通过线性或非线性灰度映射关系进行变换,其效果可以得到明显提高。通过分析,会发现变换前后图像的直方图也发生响应的变化。
(4)图像平滑方法:邻域平均、中值滤波。分析图像降质的性质,区分平稳型还是非平稳型、加性还是乘性等,采用合适的去噪方法,可以去除或降低噪声对图像的影响。从频率域看,平均操作在降低噪声的同时衰减了图像的高频分量,会影响图像细节的重现。中值滤波对某些信号具有不变性,适用于消除图像中的突发干扰,但如果图像含有丰富的细节,则不宜使用。
(5)图像锐化方法:人眼对目标的边缘和轮廓较为敏感,对图像进行锐化,有助于突出图像的这些特征。从频率域看,锐化提升了图像的高频分量。

四、实验内容

(1)MATLAB图像增强:①图像灰度修整;②图像平滑方法;③图像锐化方法

五、实验步骤

(1)MATLAB图像增强。
① 图像灰度修正。测试图像为pout.tif、tire.tif。读入一幅灰度级分布不协调的图像,分析其直方图。根据直方图,设计灰度变换表达式,或调用imadjust函数。调整变换表达式的参数,直到显示图像的灰度级分布较为均衡为止。
② 不均匀光照的校正。测试图像为pout.tif。采用分块处理函数blkproc和图像相减函数imsubtract校正图6.6存在的不均匀光照现象。
③ 三段线性变换增强。测试图像为couple.tif。选择合适的转折点,编程对图6.10进行三段线性变换增强。
④ 图像平滑方法。测试图像为eight.tif。对有噪图像或人为加入噪声的图像进行平滑处理。根据噪声的类型,选择不同的去噪方法,如邻域平均、中值滤波等方法,调用filter2,medfilt2函数,选择不同的滤波模板和参数,观测和分析各种去噪方法对不同噪声图像处理的去噪或降噪效果。
⑤ 图像锐化方法。测试图像为rice.tif、cameraman.tif。读入一幅边缘模糊的图像,利用罗伯茨梯度对图像进行四种锐化处理,比较各自的结果。

六、实验程序

① 图像灰度修正。测试图像为pout.tif、tire.tif。读入一幅灰度级分布不协调的图像,分析其直方图。根据直方图,设计灰度变换表达式,或调用imadjust函数。调整变换表达式的参数,直到显示图像的灰度级分布较为均衡为止。

clear
clc
I = imread('pout.tif');
subplot(2,2,1);
imshow(I);
subplot(2,2,2);
imhist(I);
J = imadjust(I,[0.3 0.7],[]);
subplot(2,2,3);
imshow(J);
subplot(2,2,4);
imhist(J)

运行截图如下:

② 不均匀光照的校正。测试图像为pout.tif。采用分块处理函数blkproc和图像相减函数imsubtract校正图6.6存在的不均匀光照现象。

clear
clc
I=imread('rice.png');
subplot(2,2,1);
imshow(I);
title('原始图像');
J = imnoise(I,'salt & pepper', 0.1);
subplot(2,2,2);
imshow(J);
title('加噪图像');
global thr;
thr=2;
J=double(J);
blocks=blkproc(J,[128 128],@estibackground);
background=imresize(blocks,[256 256],'bilinear');
subplot(2,2,3);
imshow(background,[]);
title('提取背景');
I2=imsubtract(J,background);
Iout=medfilt2(I2,[3 3]);
subplot(2,2,4);
imshow(Iout,[]);
title('校正图像');

运行截图如下:

③ 三段线性变换增强。测试图像为couple.tif。选择合适的转折点,编程对图6.10进行三段线性变换增强。

clear
clc
f = imread('rice.png');
[M,N]=size(f);
g=zeros(M,N);
f=double(f);
g=double(g);
k1=min(min(f));
k2=max(max(f));
a=k1+50;
b=k2-50;
c=k1-30;
d=k2+20;
for i=1:M for j=1:N  if((f(i,j)>=a)&&((f(i,j))<b)) g(i,j)=((d-c)/(b-a))*(f(i,j)-a)+c; endif(f(i,j)<a) g(i,j)=c;endif(f(i,j)>=b) g(i,j)=d;endend
end
figure;
subplot(1,2,1);
imshow(f,[]);
subplot(1,2,2);
imshow(g,[]);

运行截图如下:

④ 图像平滑方法。测试图像为eight.tif。对有噪图像或人为加入噪声的图像进行平滑处理。根据噪声的类型,选择不同的去噪方法,如邻域平均、中值滤波等方法,调用filter2,medfilt2函数,选择不同的滤波模板和参数,观测和分析各种去噪方法对不同噪声图像处理的去噪或降噪效果。

clear
clc
I = imread('eight.tif');
subplot(2,3,1);
imshow(I);
title('原始图像');
J=imnoise(I,'gaussian',0.01);
subplot(2,3,2);
imshow(J);
title('高斯白噪声');
h0=1/9.*[1 1 1 1 1 1 1 1 1];
h1=[0.1 0.1 0.1;0.1 0.2 0.1;0.1 0.1 0.1];
h2=1/16.*[1 2 1;2 4 2;1 2 1];
h3=1/8.*[1 1 1;1 0 1;1 1 1];
g0=filter2(h0,J);
g1=filter2(h1,J);
g2=filter2(h2,J);
g3=filter2(h3,J);
subplot(2,3,3);
imshow(g0,[]);
subplot(2,3,4);
imshow(g1,[]);
subplot(2,3,5);
imshow(g2,[]);
subplot(2,3,6);
imshow(g3,[]);

运行结果如图:

⑤  图像锐化方法。测试图像为rice.tif、cameraman.tif。读入一幅边缘模糊的图像,利用罗伯茨梯度对图像进行四种锐化处理,比较各自的结果。

clear
clc
I=imread('rice.png');
subplot(2,3,1);
imshow(I);
title('原始图像');
B1=edge(I,'roberts',0.1);
subplot(2,3,2);
imshow(B1);
title('0.1');
B2=edge(I,'roberts',0.05);
subplot(2,3,3);
imshow(B2);
title('0.05');
B3=edge(I,'roberts',0.07);
subplot(2,3,4);
imshow(B3);
title('0.07');
B4=edge(I,'roberts',0.01);
subplot(2,3,5);
imshow(B4);
title('0.01');

运行结果如图:


补充:estibackground.m如下(感谢 @jiaotshidi 的指正):

function backgray=estibackground(x)
global thr;
meanx=mean(x(:));
stdx=std(x(:));
minx=min(x(:));
backgray=max(meanx-thr*stdx,minx);
end

七、实验报告要求

(1)说明利用MATLAB图像处理工具箱实现图像灰度修正、图像平滑、图像锐化的方法。
(2)列出上述图像处理的程序
(3)记录灰度修正、图像平滑、图像锐化的图像
(4)回答思考题
(5)撰写心得和体会

八、预习要求

(1)了解MATLAB图像处理工具箱关于图像增强的有关功能。
(2)列出上述图像处理的流程

九、思考题

(1)如何针对图像过暗、过亮、对比度不足设计灰度变换函数?
灰度g与灰度f之间的关系为:g=a’+(b’-a’)(b-a)*(f-a),可见,如果b’-a’>b-a,则线性变换使得图像灰度范围增大,即对比度增大,图像会变得清晰;如果b’-a’<b-a,则使得图像灰度范围缩小,即对比度减小。在曝光不足或过度的情况下,图像灰度可能会局限在一个很小的范围内,这时在显示器上看到的将是一个模糊不清、没有灰度层次的图像。采用线性变换对图像的每一个像素灰度做线性拉伸,将有效地改进图像的视觉效果。以曝光不足为例,选取b’-a’>b-a,则使曝光不充分的图像中黑的更黑,拜的更白,从而有效的提高图像灰度的对比度。
(2)比较同一种去噪方法对不同噪声处理的效果。
对于高斯噪声,依然是中值滤波的峰值信噪比最低,总体变分的均方误差最小,情况一致。因此,对于高斯噪声,中值滤波的降噪效果不太理想,而总体变分模型则取得比较好。看出均值滤波的峰值信噪比最低,小波TV的峰值信噪比比较接近而总体变分的均方误差仍为最小,对于高斯噪声,线性均值滤波和TV去噪能够取得较好的去噪效果但对于根盐噪声,中值滤小波、总体变分(TV)的去噪平滑效果比较好其中,总体变分模型对两种噪声都取得了比较好的去噪效果,它是现在图像平滑去噪和复原最流行的方法但依然会丢失部分边界纹理信息。
(3)讨论用梯度法锐化图像的四种不同方法的应用范围。
Robert 算子一般会在图像边缘附近的区域内产生较宽的响应,用此算子能够很准确的定位边缘,可是她对噪声的敏感程度也相对较强。因此如果要用次算法进行锐化处理时,特别要考虑到噪声的影响。
Sobel 锐化算法也是图像微分锐化算法之一。一幅图像进行Sobel算子锐化后,图像的灰度变化的幅度会有所增加。

数字图像处理第二次试验:图像增强相关推荐

  1. 【计算机视觉】数字图像处理(四)—— 图像增强

    数字图像处理(四)-- 图像增强 图像增强的定义 图像增强方法 一.图像增强的点运算 (一)灰度变换 1. 线性变换 2. 分段线性变换 3. 非线性灰度变换 对数变换 指数变换 (二) 直方图修整法 ...

  2. 数字图像处理第二章——空间滤波

    数字图像处理第二章 数字图像处理---灰度变换与空间滤波 (四)空间滤波 4.1线性空间滤波 4.1.1 相关 4.1.2 卷积 4.1.3 imfilter函数 4.2 非线性空间滤波 (五)图像处 ...

  3. 【数字图像处理】七.MFC图像增强之图像普通平滑、高斯平滑、Laplacian、Sobel、Prewitt锐化详解

    本文主要讲述基于VC++6.0 MFC图像处理的应用知识,主要结合自己大三所学课程<数字图像处理>及课件进行讲解,主要通过MFC单文档视图实现显示BMP图像增强处理,包括图像普通平滑.高斯 ...

  4. 数字图像处理——第二章 数字图像基础

    文章目录 数字图像基础 1. 基本概念 2. 视觉感知要素 2.1 人眼结构中的成像要素 2.2 人眼成像的参考意义 3. 图像的获取.取样.量化 3.1 图像的感知和获取 3.2 图像取样和量化 3 ...

  5. matlab数字图像处理:时空域图像增强

    在数字图像处理领域,对于时空域图像的增强一般包括运用直方图均衡.亮度变换.空域平滑和锐化等方法实现对于给定图像的时空域的增强. 本文所展示的内容包括: (1)计算并绘制图像直方图,编程实现图像的直方图 ...

  6. 数字图像处理:实验三 图像增强

    实验三 图像增强 图像增强是数字图像处理过程中常采用的一种方法.为了改善视觉效果或便于人和机器对图像的理解和分析,根据图像的特点或存在的问题采取的改善方法或加强特征的措施称为图像增强.图像增强处理是改 ...

  7. MATLAB说明图像增强,MATLAB数字图像处理(二)图像增强

    1         图像增强 1.1            直方图均衡化 对于灰度图像,可以使用直方图均衡化的方法使得原图像的灰度直方图修正为均匀的直方图. 代码如下: 1 2 3I2=histeq( ...

  8. 数字图像处理(3)图像增强(上)

    内容来自于刘定生老师的数字图像处理课和课件,如有侵权,联系删除. 图像增强目的是改善图像质量. 造成图像质量损坏的因素: 1.图像传输时,由于信道带宽限制造成的图像模糊: 2.噪声干扰:加性噪声.乘性 ...

  9. 数字图像处理 第二章 图像处理基础

    数字图像处理基础 2.1 色度学基础 色度学 人的视觉特性 2.1.1 三基色原理 人眼的视网膜上存在有大量能在适当亮度下分辨颜色的锥状细胞,它们分别对应红.绿.蓝三种颜色,即分别对红光.绿光.蓝光敏 ...

  10. 数字图像处理第二章——数字图像基础

    目录 一.视觉感知要素: 1. 图像形成 2.亮度适应与鉴别 二.图像的形成 2.1 图像的感知与获取 2.1.1感知 2.1.2 图像的形成模型 2.2 取样与量化 2.2.1取样与量化的概念 2. ...

最新文章

  1. 对于Wannacry“永恒之蓝”病毒 查看自己电脑是否安全
  2. Trie(前缀树/字典树)及其应用
  3. Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序
  4. mba数学-幂学-2016
  5. JavaScript中带有示例的Math.abs()方法
  6. 盘点 8 种最坑的 SQL 错误用法
  7. (16)Zynq FPGA SD控制器介绍
  8. poi设置自动换行后显示不全_抖音企业号权益之POI领多和地址内容编辑,视频编辑...
  9. vs code搭建vue环境
  10. 【计算机组成原理】计算机系统概述 —— 计算机硬件组成与性能指标
  11. [RK3288][Android6.0] 调试笔记 --- RT5640播放时的Codec寄存器列表
  12. IPv4编址;A类、B类、C类、D类、E类IP地址(IP地址;网络地址和主机地址;子网掩码;网关;广播地址;)
  13. Ansible系列-基础篇-Ansible Inventory的合理化配置
  14. 如何用云服务器进行深度学习
  15. 【Linux】Linux虚拟内存空间描述
  16. matlab变量与常量、数据类型
  17. 使用再生龙制作linux系统镜像及还原
  18. html 做笔记,HTML笔记(一)
  19. Python一字一字的显示文本内容
  20. Linux 在线时间校准

热门文章

  1. 51单片机驱动TM1640实现多个LED灯控制
  2. smobiler php对比,Smobiler的开发讲解
  3. 牛顿插值法,泰勒公式
  4. FlinkSQL建表语句与插入语句
  5. Chrome 浏览器扩展神器暴力猴
  6. 360通讯录同步java版_360同步助手app下载_360同步助手官方下最新安卓版v 2.0.3-麦块安卓网...
  7. Kinect开发学习笔记之(一)Kinect介绍和应用
  8. 关于分布式服务中的中间件技术入门概述
  9. MS Navision专业BBS
  10. 设计模式---订阅发布模式(Subscribe/Publish)