教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 资格考试 >

6实验指导书-专业课程设计I-信工 - 图文(4)

来源:网络收集 时间:2026-07-24
导读: 实验二:空域图像增强实验(一)----灰度变换与直方图方法 一、实验目的: 1、掌握灰度直方图的概念及其计算方法; 2、掌握直力图均衡化的算法原理与编程步骤; 3、熟练Matlab中的空域图像增强命令; 4、掌握MATLAB

实验二:空域图像增强实验(一)----灰度变换与直方图方法

一、实验目的:

1、掌握灰度直方图的概念及其计算方法; 2、掌握直力图均衡化的算法原理与编程步骤; 3、熟练Matlab中的空域图像增强命令;

4、掌握MATLAB编程实现直方图均衡化程序的方法; 5、掌握在VS2010环境中编程实现直方图均衡化功能的方法; 6、了解灰度变换法图像增强的应用价值。 二、实验设备:

1、PC机或笔记本电脑,Windows操作系统;

2、安装Matlab与VS2010软件,准备实验相关图像或M文件; 3、按照如下实验内容与步骤,编写相应Matlab程序,完成实验任务。 三、实验原理:

1、灰度映射:通过改变图像所有或部分像素的灰度值来达到改善图像视觉效果的目的。

(1)对数变换,是指输出图像g的像素点的灰度值与对应的输入图像f的像素灰度值之间为对数关系,其一般公式为:

g(x,y)=lg[f(x,y)] (14-1)

其中lg表示以10为底,也可以选用自然对数ln。为了增加变换的动态范围,在上述一般公式中可以加入一些调制参数,这时的变换公式为:

g(x,y)=a+

ln[f(x,y)+1]

(14-2)

b

式中a,b,c都是可以选择的参数,式中f(x, y)+1是为了避免对0求对数,确保ln[f(x,y)+1]30。当f(x,y)=0时,ln[f(x,y)+1]=0,则y=a,所以a为Y轴上的截距,确定了变换曲线的初始位置的变换关系,b这个参数确定变换曲线的变化速率。对数变换用于扩展低灰度区,一般适用于过暗的图像。对数变换相应的变换曲线如图14-1所示。当希望对图像的低灰度区作较大的拉伸,而对高灰度区压缩时,可采用这种变换,它能使图像灰度分布与人的视觉特性相匹配。

(2)指数变换,是指输出图像的像素点的灰度值与对应的输入图像的像素灰度值之间满足指数关系,其一般公式为:

g(x,y)=bf(x,y) (14-4)

其中b为底数。为了增加变换的动态范围,在上述一般公式中可以加入一些调制参数,以改变变换曲线的初始位置和曲线的变化速率。这时的变换公式为:

g(x,y)=bc′[f(x,y)-a]-1 (14-5)

式中a,b,c都是可以选择的参数,当f(x,y)=a时,g(x,y)=0,此时指数曲线交于X轴,由此可见参数a决定了指数变换曲线的初始位置,参数c决定了变换曲线的陡度,即决定曲线的变化速率,是指数变换的函数曲线。指数变换用于扩展高灰度区,一般适于过亮的图像。

2、灰度直方图

? 概念:灰度直方图是关于灰度级分布的函数,是对图像中灰度级分布的统计。灰度直方图是将数字

图像中的所有像素,按照灰度值的大小,统计其出现的频率。 ? 数学定义:

13

假设一幅数字图像的像素总数为N,共有L个灰度级,其直方图定义为如下离散函数:

h(rk)=nk

其中,rk表示第k级灰度值,nk是灰度级rk在图像中出现的次数(频数)。:

3、归一化的直方图

通常,会用到归一化直方图,即用所有元素h(rk)除以图像中的像素总数N所得到的图形:

p(rk)=

h(rk)nk

=,NN

k=1,2,...,L

P(rk)表示灰度级rk出现的概率。 4、直方图均衡化原理(重点)

? 概念:直方图均衡化也叫做直方图均匀化,是将一已知灰度概率密度分布的图像,经过某种变换,

变成一幅具有均匀灰度概率密度分布的新图像。 ? 均衡化处理之后的图像,因各灰度值出现的概率是相同的,则此时图像的熵最大(等概率下则熵最

最大),图像所包含的信息量最大,且扩展了像元取值的动态范围,从而达到增强图像整体对比度的效果。 ? 原理:

详见PPT。

? 直方图均衡化编程步骤(重点) Step 1:列出原始图像的灰度级nk

Step 2:统计各灰度级的像素数目

Step 3:计算原始图像直方图各灰度级的频数 Step 4:计算累计分布函数

Step 5:依据累计分布函数计算灰度映射表

Step 6:用计算的映射关系修改原始图像的灰度级,从而获得直方图近似为均匀分布的输出图像,程序结束。

四、练习内容:

启动电脑,打开MATLAB编程编程环境,依次完成下列实验: 1、图像直方图计算实验。

方法:利用MATLAB图像处理工具箱提供的imhist函数来计算和显示图像的直方图,其调用格式为: ? 语法一:imhist(I,b)

说明:其中I为输入图像,b为指定的灰度级数目,默认值为256。 ? 语法二:[COUNTS, X] = imhist(I)

说明:(1) [COUNTS,X]=imhist(…)返回直方图统计的数据和相应的灰度级向量X。

(2)使用表达式 p= imhist(I,b)/N 就可简单地获得归一化直方图,这里N为图像中的像素总数。

l 在Matlab中,建立M文件Lab3_Test1.m,编写以下指令,观察分析实验结果。

clear all;

I=imread('lena.bmp'); %打开一幅灰度图像 [W, H]=size(I); N=W*H;

J=imhist(I)./N; %计算图像的归一化直方图 subplot(1,3,1), imshow(I), title(‘原图像’);

14

subplot(1,3,2), imhist(I,64) , title(‘直方图’); subplot(1,3,3), plot(J) , title(‘归一化直方图’);

(a)

(a)原图 (b) 直方图 (c) 归一化直方图

图1 灰度图像的直方图及归一化直方图

2、图像直方图均衡化实验。

n MATLAB图像处理工具箱提供了直方图均衡函数histeq。其调用格式为:

J = histeq(I,n); [J,T] = histeq(I,…); newmap=histeq(X,map); [new,T]=histeq(X,…);

n 在matlab环境中,编写M文件Lab3_Test2.m,首先读取图像,然后调用灰度均衡函数,再输出处

理后的图像。程序代码如下:

clc; close all; clear all

I=imread('cameraman.tif'); %读取图像 subplot(2,2,1),imshow(I) %输出图像

title('原始图像') %在原始图像中加标题 subplot(2,2,3),imhist(I) %输出原图直方图 title('原始图像直方图') %在原图直方图上加标题 a=histeq(I,256); %直方图均衡化,灰度级为256 subplot(2,2,2),imshow(a) %输出均衡化后图像 title('均衡化后图像') %在均衡化后图像中加标题 subplot(2,2,4),imhist(a) %输出均衡化后直方图 title('均衡化后图像直方图') %在均衡化后直方图上加标题

15

图2 图像直方图均衡化对比

3、自编直方图均衡化程序。

n 在Matlab中,建立M文件Lab3_Test3.m,编写如下代码,实现直方图均衡化子程序function

I=MyHistEq(Img),且对它进行调用与对比实验。 n 代码如下:

function Lab3_Test3_Main()

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clc;close all;clear all;

%这个相当于主程序,打开图像,调用自己编写的直方图均衡化子程序,对图像进行处理 Img = imread('office_1.jpg'); %打开图像 II=MyHistEq(Img); %调用自编直方均衡化 disp('Run OK') %主程序到此结束

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %说明:自己编 …… 此处隐藏:3324字,全部文档内容请下载后查看。喜欢就下载吧 ……

6实验指导书-专业课程设计I-信工 - 图文(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/413363.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)