搜档网
当前位置:搜档网 › 图像的直方图统计实验报告

图像的直方图统计实验报告

图像的直方图统计实验报告
图像的直方图统计实验报告

华侨大学

数字图像处理与图像通信实验报告

实验题目:图像的直方图统计

专业、班级:通信3班

学生姓名:

学号:

分数:

2014 年 6 月 4 日

一、实验目的:

掌握直方图统计的算法原理和程序设计,了解各种图像的直方图统计的意义及其用途。

二、实验设备:

计算机、matlab 7.0软件

三、实验原理

灰度直方图是灰度值的函数,描述的是图像中具有该灰度值的像素的个数,其横坐标表示像素的灰度级别,纵坐标是该灰度出现的频率(像素个数与图像像素总数之比)。 直方图的作法如下: a )将图像的灰度级归一化

若图像的灰度级为:0,1,

,1,L -则令

,0,1,,1

10 1.k k k

r k L L r =

=--≤≤则

在灰度级中,0k r =代表黑,1k r =代表白。对于一幅给定的图像来说,每一个像素取得[0,1]区间内的灰度级是随机的,也就是说k r 是一个随机变量。

b)计算各灰度级的像素概率

()()k k k r k k r k n r n n p r n n k p r =

设为灰度级为的像素的个数,为总的像素个数,令

是像素值为的像素的频数,为其出现的概率 c)作图

建立直角坐标系,横轴表示r k 的取值,纵轴表示p r (r k )的取值,作p r (r k )的函数图。

四、实验内容:

实现对一幅灰度图像的像素的统计,并绘制直方图。 程序编码:

I=imread('C:\MATLAB7\work\2.png'); figure(1)

subplot(1,2,1) imshow(I); title('原图') add=[];

tab1=zeros(1,256) for n=0:255 X=I==n;

add=[add;sum(sum(X))]; end;

[a b]=size(I); final=add/(a*b); subplot(1,2,2); bar(0:255,final,'g'); title('灰度级图象')

原图

-100

010*******

00.005

0.01

0.015

0.02

0.025

0.03

0.035

灰度级图象

数字图像处理实验报告

实验一灰度图像直方图统计 一、实验目的 掌握灰度图像直方图的概念和计算方法,了解直方图的作用和用途。提高学生编程能力,巩固所学知识。 二、实验内容和要求 (1)用Photoshop显示、了解图像平均明暗度和对比度等信息; (2)用MatLab读取和显示一幅灰度图像; (3)用MatLab编写直方图统计的程序。 三、实验步骤 1. 使用Photoshop显示直方图: 1)点击文件→打开,打开一幅图像; 2)对图像做增强处理,例如选择图像→调整→自动对比度对图像进行灰度拉伸,观察图像进行对比度增强前后的视觉变化。 3)利用统计灰度图像直方图的程序分别针对灰度拉伸前后的灰度图像绘制其灰度直方图,观察其前后的直方图变化。 2.用MatLab读取和显示一幅灰度图像; 3. 绘制图像的灰度直方图; function Display_Histogram()

Input=imread('timg.jpg'); figure(100); imshow(uint8(Input)); title('原始图像'); Input_Image=rgb2gray(Input); figure(200); imshow(uint8(Input_Image)); title('灰度图像'); sum=0; His_Image=zeros(1,256); [m,n]=size(Input_Image); for k=0:255 for I=1:m for j=1:n if Input_Image(I,j)==k His_Image(k+1)=His_Image(k+1)+1; end end end end figure(300); plot(His_Image); title('图像的灰度直方图'); 4.显示图像的灰度直方图。

图像灰度变换实验报告

图像灰度变换报告 一.实验目的 1.学会使用Matlab ; 2.学会用Matlab 软件对图像进行灰度变换,观察采用各种不同灰度变换发法对最终图像效果的影响; 二.实验内容 1.熟悉Matlab 中的一些常用处理函数 读取图像:img=imread('filename'); //支持TIF,JPEG,GIF,BMP,PNG 等文件格式。 显示图像:imshow(img,G); //G 表示显示该图像的灰度级数,如省略则默认为256。 保存图片:imwrite(img,'filename'); //不支持GIF 格式,其他与imread 相同。 亮度变换:imadjust(img,[low_in,high_in],[low_out,high_out]); //将low_in 至high_in 之间的值映射到low_out 至high_out 之 间,low_in 以下及high_in 以上归零。 绘制直方图:imhist(img); 直方图均衡化:histeq(img,newlevel); //newlevel 表示输出图像指定的灰度级数。 2.获取实验用图像:rice.jpg. 使用imread 函数将图像读入Matlab 。 3 .产生灰度变换函数T1,使得: 0.3r r < 0.35 s = 0.105 + 2.6333(r – 0.35) 0.35 ≤ r ≤ 0.65 1 + 0.3(r – 1) r > 0.65 用T1对原图像rice.jpg 进行处理,使用imwrite 函数保存处理后的新图像。 4.产生灰度变换函数T2,使得: s = 5.用T2imwrite 保存处理后的新图像。 6.分别用 s = r 0.6; s = r 0.4; s = r 0.3 对kids.tiff 图像进行处理。为简便起见,使用Matlab 中的imadjust 函数,最后用imwrite 保存处理后的新图像。 7.对circuit.jpg 图像实施反变换(Negative Transformation )。s =1-r; 使

图像工程概论实验报告——二值化直方图均衡化

图像工程概论 实验报告

课程报告1: 一、实验目的: 二、实验内容 把这幅图像分成同样大小的10幅人脸图片 然后分别对第一行5幅人脸图像的第3 第4 第5 第二行5幅人脸图像的第1 第5 进行如下处理: 1.进行大津法阈值分割的二值化处理 2.进行直方图均衡化处理 三、实验具体代码以及结果 (一)大津法阈值分割的二值化处理 1.实验代码 %图像分割部分 clear; clc; pic0=imread('G: \image\histogram matching.bmp'); figure(1),imshow(pic0); wdiv=5; hdiv=2; [hd,wd,l]=size(pic0);

sub_wd=floor(wd/wdiv); sub_hd=floor(hd/hdiv); for row=1:2 for col=1:5 pic1=pic0((row-1)*sub_hd+1:row*sub_hd+1,(col-1)*sub_wd+1:col*sub_ wd+1); figure(2),imshow(pic1); imwrite(pic1,['G: \image\'num2str(row) '-'num2str(col) '.jpg'],'jpg'); %存储图像 end end %————————图像处理部分 cd 'G:\pic' x1=imread('1-3.jpg'); %目标读取图像第一行第三幅人脸图像 x2=imread('1-4.jpg'); %第一行第四幅人脸图像 x3=imread('1-5.jpg'); %第一行第五幅人脸图像 x4=imread('2-1.jpg'); %第二行第一幅人脸图像 x5=imread('2-5.jpg'); %第二行第五幅人脸图像 %matlab 自动确定阈值的方法,大津法,类间方差 level1=graythresh(x1); level2=graythresh(x2); level3=graythresh(x3); level4=graythresh(x4); level5=graythresh(x5); %用得到的阈值直接对图像进行二值化处理并显示 BW1=im2bw(x1,level1); BW2=im2bw(x2,level2); BW3=im2bw(x3,level3); BW4=im2bw(x4,level4); BW5=im2bw(x5,level5); subplot(1,5,1),imshow(BW1); subplot(1,5,2),imshow(BW2); subplot(1,5,3),imshow(BW3); subplot(1,5,4),imshow(BW4); subplot(1,5,5),imshow(BW5); 2.实验结果显示 分割结果截图:

数字图像处理试题及参考答案

一、填空题(每题1分,共15分) 1、列举数字图像处理的三个应用领域医学、天文学、军事 1024?,256个灰度级的图像,需要8M bit。 2、存储一幅大小为1024 3、亮度鉴别实验表明,韦伯比越大,则亮度鉴别能力越差。 4、直方图均衡化适用于增强直方图呈尖峰分布的图像。 5、依据图像的保真度,图像压缩可分为无损压缩和有损压缩 6、图像压缩是建立在图像存在编码冗余、像素间冗余、心理视觉冗余三种冗余基础上。 7、对于彩色图像,通常用以区别颜色的特性是色调、饱和度 亮度。 8、对于拉普拉斯算子运算过程中图像出现负值的情况,写出一种标定方法: 二、选择题(每题2分,共20分) 1、采用幂次变换进行灰度变换时,当幂次取大于1时,该变换是针对如下哪一类图像进行增强。(B ) A 图像整体偏暗 B 图像整体偏亮 C图像细节淹没在暗背景中D图像同时存在过亮和过暗背景 2、图像灰度方差说明了图像哪一个属性。(B ) A 平均灰度 B 图像对比度 C 图像整体亮度D图像细节 3、计算机显示器主要采用哪一种彩色模型( A ) A、RGB B、CMY或CMYK C、HSI D、HSV 4、采用模板[-1 1]T主要检测( A )方向的边缘。 A.水平 B.45? C.垂直 D.135? 5、下列算法中属于图象锐化处理的是:( C ) A.低通滤波 B.加权平均法 C.高通滤波 D. 中值滤波 6、维纳滤波器通常用于( C ) A、去噪 B、减小图像动态范围 C、复原图像 D、平滑图像 7、彩色图像增强时, C 处理可以采用RGB彩色模型。 A. 直方图均衡化 B. 同态滤波 C. 加权均值滤波 D. 中值滤波 8、__B__滤波器在对图像复原过程中需要计算噪声功率谱和图像功率谱。 A. 逆滤波 B. 维纳滤波 C. 约束最小二乘滤波 D. 同态滤波 9、高通滤波后的图像通常较暗,为改善这种情况,将高通滤波器的转移函数加上一常数量以便引入 一些低频分量。这样的滤波器叫 B 。 A. 巴特沃斯高通滤波器 B. 高频提升滤波器 C. 高频加强滤波器 D. 理想高通滤波器 10、图象与灰度直方图间的对应关系是 B __ A.一一对应 B.多对一 C.一对多 D.都不 三、判断题(每题1分,共10分) 1、马赫带效应是指图像不同灰度级条带之间在灰度交界处存在的毛边现象。(√)

数字图像处理点运算和直方图处理

实验1 点运算和直方图处理 一、实验目的 1. 掌握利用Matlab图像工具箱显示直方图的方法 2. 掌握运用点操作进行图像处理的基本原理。 3. 进一步理解利用点操作这一方法进行图像处理的特点。 4. 掌握利用Matlab图像工具箱进行直方图均衡化的基本方法。 二、实验的硬件、软件平台 硬件:计算机 软件:操作系统:WINDOWS 7 应用软件:MATLAB 三、实验内容及步骤 1. 了解Matlab图像工具箱的使用。 2. 利用Matlab图像工具箱对图像进行点操作,要求完成下列3个题目中 的至少2个。 ⑴图1灰度范围偏小,且灰度偏低,改正之。 ⑵图2暗处细节分辨不清,使其能看清楚。 ⑶图3亮处细节分辨不清,使其能看清楚。 图1 图2 图3 3. 给出处理前后图像的直方图。 4. 利用MatLab图像处理工具箱中函数对以上图像进行直方图均衡化操 作,观察结果。 四、思考题 1. 点操作能完成哪些图像增强功能? 2. 直方图均衡化后直方图为何并不平坦?为何灰度级会减少? 五、实验报告要求

1.对点操作的原理进行说明。 2.给出程序清单和注释。 3.对处理过程和结果进行分析(包括对处理前后图像的直方图的分析)。 实验代码以及解读 点操作: I = imread('POINT1.BMP')。 %读入图像 j=rgb2gray(I)。%将图像转为灰度图像 INFO=IMFINFO('POINT1.BMP') %获取图片的格式、尺寸、颜色数量、修改时间等信息[l,r]=size(j)。%图片大小 figure。%建立一个图形框 subplot(221) imshow(j) %在两行两列的第一个位置放置图片j title('POINT1.BMP') %给该图片加上标题POINT1.BMP for m=1:l for n=1:r %从第一个像素循环到最后一个像素p1(m,n)=j(m,n)*1.2。%把各点乘上1.2得到p1图 end end for m=1:l for n=1:r p2(m,n)=j(m,n)*2。%%把各点乘上2得到p2图 end end for m=1:l for n=1:r p3(m,n)=j(m,n)*2+50。%把各点乘上2再加50得到p2图 end end subplot(222) imshow(p1) title('j(m,n)*1.2') %p1图放在第二个位置且冠名j(m,n)*1.2 subplot(223) imshow(p2) title('j(m,n)*2') %p1图放在第三个位置且冠名j(m,n)* 2 subplot(224) imshow(p3) title('j(m,n)*2+50') %p1图放在第四个位置且冠名j(m,n)*2+50 figure。%建立一个新的窗口并且依次显示以上四个图的直方图

数字图像处理实验报告--直方图均衡化

数字图像处理实验报告 实验名称:直方图均衡化 : 班级: 学号: 专业:电子信息工程(2+2) 指导教师:华华 实验日期:2012年5月24日

直方图均衡化 图像对比度增强的方法可以分成两类:一类是直接对比度增强方法;另一类是间接对比度增强方法。直方图均衡化是最常见的间接对比度增强方法。直方图均衡化则通过使用累积函数对灰度值进行“调整”以实现对比度的增强。 直方图均衡化处理的“中心思想”是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度围的均匀分布。直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度围的像素数量大致相同。直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布。 缺点: 1)变换后图像的灰度级减少,某些细节消失; 2)某些图像,如直方图有高峰,经处理后对比度不自然的过分增强。 直方图均衡化是图像处理领域中利用图像直方图对对比度进行调整的方法。 这种方法通常用来增加许多图像的局部对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布。这样就可以用于增强局部的对比度而不影响整体的对比度,直方图均衡化通过有效地扩展常用的亮度来实现这种功能。 直方图均衡化的基本思想是把原始图的直方图变换为均匀分布的形式,这样就增加了象素灰度值的动态围从而可达到增强图像整体对比度的效果。设原始图像在(x,y)处的灰度为f,而改变后的图像为g,则对图像增强的方法可表述为将在(x,y)处的灰度f映射为g。在灰度直方图均衡化处理中对图像的映射函数可定义为:g = EQ (f),这个映射函数EQ(f)必须满足两个条件(其中L为图像的灰度级数): (1)EQ(f)在0≤f≤L-1围是一个单值单增函数。这是为了保证增强处理没有打乱原始图像的灰度排列次序,原图各灰度级在变换后仍保持从黑到白(或从白到黑)的排列。 (2)对于0≤f≤L-1有0≤g≤L-1,这个条件保证了变换前后灰度值动态围的一致性。 累积分布函数即可以满足上述两个条件,并且通过该函数可以完成将原图像f的分布转换成g的均匀分布。此时的直方图均衡化映射函数为: gk = EQ(fk) = (ni/n) = pf(fi) , (k=0,1,2,……,L-1) 上述求和区间为0到k,根据该方程可以由源图像的各像素灰度值直接得到直方图均衡化后各像素的灰度值。在实际处理变换时,一般先对原始图像的灰度情况进行统计分析,并计算出原始直方图分布,然后根据计算出的累计直方图分布求出fk到gk的灰度映射关系。在重复上述步骤得到源图像所有灰度级到目标图像灰度级的映射关系后,按照这个映射关系对

摄像头编程并且对图像的处理以及直方图的算法

题目:图像的基本处理班级:2011级软件2班姓名:刘磊磊 时间:20130907

摘要:随着数字化与多媒体时代的来临,数字图像处理已经成为必备的基础知识。全国各大专院校的计算机、电子、通信、医学、光学及许多相关专业都开设了与数字图像预处理相关的课程。数字图像二值化是图像预处理中的一项重要技术,其在模式识别、光学字符识别、医学成像等方面都有着重要应用。本论文主要为大家介绍24位真彩图像的灰度、二值处理以及图像的一些简单的打开和保存和如何画直方图,还有一些通过这次小学期学到的一些知识。 关键字:灰度处理,二值化 图像的打开 void CText1Dlg::ShowPic() { if(m_path =="") //判断图片路径是否存在 { return; } hwnd = GetDlgItem(IDC_pic); hDesDC = hwnd->GetDC()->m_hDC; hSrcDC = CreateCompatibleDC(hDesDC); hBitmap=(HBITMAP)LoadImage(AfxGetInstanceHandle(),m_path,IMAGE_BITMAP,0,0, LR_LOADFROMFILE|LR_CREATEDIBSECTION); GetObject(hBitmap, sizeof(BITMAP), &bm); SelectObject(hSrcDC, hBitmap); hwnd->GetClientRect(&rect); ::SetStretchBltMode(hDesDC,COLORONCOLOR); ::StretchBlt(hDesDC, rect.left, rect.top, rect.right, rect.bottom, hSrcDC, 0, 0, bm.bmWidth, bm.bmHeight,+SRCCOPY); UpdateData(false);

数字图像处理实验报告

数字图像处理实验报告 实验一数字图像基本操作及灰度调整 一、实验目的 1)掌握读、写图像的基本方法。 2)掌握MATLAB语言中图像数据与信息的读取方法。 3)理解图像灰度变换处理在图像增强的作用。 4)掌握绘制灰度直方图的方法,理解灰度直方图的灰度变换及均衡化的方 法。 二、实验内容与要求 1.熟悉MATLAB语言中对图像数据读取,显示等基本函数 特别需要熟悉下列命令:熟悉imread()函数、imwrite()函数、size()函数、Subplot()函数、Figure()函数。 1)将MATLAB目录下work文件夹中的forest.tif图像文件读出.用到imread, imfinfo 等文件,观察一下图像数据,了解一下数字图像在MATLAB中的处理就是处理一个矩阵。将这个图像显示出来(用imshow)。尝试修改map颜色矩阵的值,再将图像显示出来,观察图像颜色的变化。 2)将MATLAB目录下work文件夹中的b747.jpg图像文件读出,用rgb2gray() 将其 转化为灰度图像,记为变量B。 2.图像灰度变换处理在图像增强的作用 读入不同情况的图像,请自己编程和调用Matlab函数用常用灰度变换函数对输入图像进行灰度变换,比较相应的处理效果。 3.绘制图像灰度直方图的方法,对图像进行均衡化处理 请自己编程和调用Matlab函数完成如下实验。 1)显示B的图像及灰度直方图,可以发现其灰度值集中在一段区域,用 imadjust函 数将它的灰度值调整到[0,1]之间,并观察调整后的图像与原图像的差别,调整后的灰

度直方图与原灰度直方图的区别。 2) 对B 进行直方图均衡化处理,试比较与源图的异同。 3) 对B 进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。 图1.1 分段线性变换函数 三、实验原理与算法分析 1. 灰度变换 灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。 1) 图像反转 灰度级范围为[0, L-1]的图像反转可由下式获得 r L s --=1 2) 对数运算:有时原图的动态范围太大,超出某些显示设备的允许动态范围, 如直接使用原图,则一部分细节可能丢失。解决的方法是对原图进行灰度压缩,如对数变换: s = c log(1 + r ),c 为常数,r ≥ 0 3) 幂次变换: 0,0,≥≥=γγc cr s 4) 对比拉伸:在实际应用中,为了突出图像中感兴趣的研究对象,常常要求 局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸: 其对应的数学表达式为:

数字图像处理试题集(终版)

第一章引言 一.填空题 1. 数字图像是用一个数字阵列来表示的图像。数字阵列中的每个数字,表示数字图像的一个最小单位,称为_像素_。 2. 数字图像处理可以理解为两个方面的操作:一是从图像到图像的处理,如图像增强等;二是_从图像到非图像的一种表示_,如图像测量等。 3. 数字图像处理可以理解为两个方面的操作:一是_从图像到图像的处理_,如图像增强等;二是从图像到非图像的一种表示,如图像测量等。 4. 图像可以分为物理图像和虚拟图像两种。其中,采用数学的方法,将由概念形成的物体进行表示的图像是虚拟图像_。 5. 数字图像处理包含很多方面的研究内容。其中,_图像重建_的目的是根据二维平 面图像数据构造出三维物体的图像。 二.简答题 1. 数字图像处理的主要研究内容包含很多方面,请列出并简述其中的5种。 ①图像数字化:将一幅图像以数字的形式表示。主要包括采样和量化两个过程。 ②图像增强:将一幅图像中的有用信息进行增强,同时对其无用信息进行抑制,提高图像的可观察性。 ③图像的几何变换:改变图像的大小或形状。 ④图像变换:通过数学映射的方法,将空域的图像信息转换到频域、时频域等空间上进行分析。 ⑤图像识别与理解:通过对图像中各种不同的物体特征进行定量化描述后,将其所期望获得的目标物进行提取,并且对所提取的目标物进行一定的定量分析。 2. 什么是图像识别与理解? 图像识别与理解是指通过对图像中各种不同的物体特征进行定量化描述后,将其所期望 获得的目标物进行提取,并且对所提取的目标物进行一定的定量分析。比如要从一幅照片上确定是否包含某个犯罪分子的人脸信息,就需要先将照片上的人脸检测出来,进而将检测出来的人脸区域进行分析,确定其是否是该犯罪分子。 4. 简述数字图像处理的至少5种应用。 ①在遥感中,比如土地测绘、气象监测、资源调查、环境污染监测等方面。 ②在医学中,比如B超、CT机等方面。 ③在通信中,比如可视电话、会议电视、传真等方面。 ④在工业生产的质量检测中,比如对食品包装出厂前的质量检查、对机械制品质量的监控和筛选等方面。 ⑤在安全保障、公安方面,比如出入口控制、指纹档案、交通管理等。 5. 简述图像几何变换与图像变换的区别。 ①图像的几何变换:改变图像的大小或形状。比如图像的平移、旋转、放大、缩小等,这些方法在图像配准中使用较多。 ②图像变换:通过数学映射的方法,将空域的图像信息转换到频域、时频域等空间上进行分析。比如傅里叶变换、小波变换等。

灰度图像直方图统计

1.灰度图像直方图统计实习报告 一、实习目的 在学习灰度图像直方图的概念、计算方法、性质和相关应用的基础上,应用Photoshop软件和编写灰度直方图统计程序,能初步掌握图像文件格式读写与图像数据处理,提高学生兴趣和编程能力,巩固所学知识。 二、实习内容 1.实习数据 E:\ 数字图像处理\实习一\Lena.raw 2.利用Photoshop显示图像的灰度直方图,从直方图上了解图像平均明暗度和对比度等信息。 3.要求利用C或C++语言编写灰度图像直方图统计的程序。 三、实习步骤 1.使用Photoshop显示直方图。 (1)点击“文件”-->“打开”,打开一幅图像,此处选取“lena.raw”; (2)点击“图像”-->“直方图”,显示图像的直方图;

(3)对图像做增强处理,例如选择“图像”-->“调整”-->“自动对比度”对图像进行灰度拉伸,然后再显示直方图,观察它的变化。 2.用C或C++编写显示直方图的程序。 具体代码如下: #include "stdio.h" #include "windows.h" void main() { FILE *fp; //文件类指针

fp=fopen("lena.raw","rb"); //打开二进制文件 if (fp==NULL) { printf("文件已损坏,请重新打开。 \n"); } else printf("文件已打开,已经生成.txt文档,请查看。\n"); BYTE PIXEL[512*512]; fread(PIXEL,1,512*512,fp);//二进制文件读取 fclose(fp);//关闭文件 int HistogramStat[256]; for(int i=0;i<256;i++) HistogramStat[i]=0;//赋初值 for (i=0;i<512*512;i++) { int a=PIXEL[i]; HistogramStat[a]++; } //统计像素个数 fp=fopen("灰度直方图.txt","rb"); fprintf(fp,"图像灰度,像素个数\n"); for (i=0;i<256;i++) { if (HistogramStat[i]!=0) fprintf(fp,"%5d,%5d\n",i,HistogramStat[i]); } fprintf(fp,"像素个数为0的已被省略。");//输出内容 } 四、思考题 1灰度直方图可以反映出一幅图像的哪些特性? 答:(1)表征了图像的一维信息。只反映图像中像素不同灰度出现的次数,而未反映像素所在的位置。即丢失了像素的位置信息。 (2)与图像之间的关系式多对一的映射关系。一幅图像唯一确定出与之对应的直方图,但不同的图像可能有相同的直方图。 (3)一幅图像可分为多个子区域,子图直方图之和为整图的直方图。 2灰度直方图有何用途?编程实现一种灰度直方图应用的程序。 答:(1)用于判断图像量化是否恰当。 (2)用于确定图像的二值化阈值。 (3)计算图像中物体的面积。 (4)计算图像信息量H(熵)。 3在本次实习的基础上,试编写直方图均衡的程序。 五、实习心得体会

图像处理实验报告

重庆交通大学 学生实验报告 实验课程名称数字图像处理 开课实验室数学实验室 学院理学院年级信息与计算科学专业 2 班学生姓名李伟凯学号631122020203 开课时间2014 至2015 学年第 1 学期

实验(一)图像处理基础 ?实验目的 学习Matlab软件的图像处理工具箱,掌握常用的一些图像处理命令;通过编程实现几种简单的图像增强算法,加强对图像增强的理解。 ?实验内容 题目A.打开Matlab软件帮助,学习了解Matlab中图像处理工具箱的基本功能;题目B.掌握以下常见图像处理函数的使用: imread( ) imageinfo( ) imwrite( ) imopen( ) imclose( ) imshow( ) impixel( ) imresize( ) imadjust( ) imnoise( ) imrotate( ) im2bw( ) rgb2gray( ) 题目C.编程实现对图像的线性灰度拉伸y = ax + b,函数形式为:imstrech(I, a, b); 题目D.编程实现对图像进行直方图均衡化处理,并将实验结果与Matab中imhist 命令结果比较。 三、实验结果 1).基本图像处理函数的使用: I=imread('rice.png'); se = strel('disk',1); I_opened = imopen(I,se); %对边缘进行平滑 subplot(1,2,1), imshow(I), title('原始图像') subplot(1,2,2), imshow(I_opened), title('平滑图像') 原始图像平滑图像

图像处理实验3(习题教学)

昆明理工大学信息工程与自动化学院学生实验报告 (2016—2017学年第一学期) 课程名称:数字图像基础开课实验室: 2016年月日 年级、专业、班学号姓名成绩 实验项目名称图像增强(1)指导教师 教师评语 该同学是否了解实验原理: A.了解□ B.基本了解□ C.不了解□ 该同学的实验能力: A.强□ B.中等□ C.差□ 该同学的实验是否达到要求: A.达到□ B.基本达到□ C.未达到□ 实验报告是否规范: A.规范□ B.基本规范□ C.不规范□ 实验过程是否详细记录: A.详细□ B.一般□ C.没有□ 教师签名: 2016年 11月 16日 一、实验目的及内容 目的:掌握和熟悉Matlab编程环境及语言;掌握直方图统计的算法和用途。 内容: 1.调试教材P25页例 2.1输出类似教材图2.3的结果。 2.调试教材P33页例2.4,编写一个程序,分别使用imhist、bar、stem、plot四种方式 显示一幅灰度图像的直方图 3.调试教材P37页例2.5。 4.直方图均衡化的公式如下所示: 11 ()() k k j k k r j j j n s T r p r n == === ∑∑ 根据上式及课堂所讲直方图均衡化原理及方法,自己写一个Matlab函数实现对灰度图像的直方图均衡化功能(类似于Matlab提供的hist eq函数)。(提示:实现中使用Matlab函数cumsum(P38)可能会使程序简单些)。

二、要求 1.描述直方图的概念并解释直方图均衡化原理。 2.程序结构清晰,运行结果正确。 3.对于第1、2、3小题在实验报告中给出所调试的程序,及其运行结果,对第4小题 描述程序的设计、实现和结果,并对结果进行分析。

图像的直方图是图像的重要统计特征

图像的直方图是图像的重要统计特征,它可以认为是图像灰度密度函数的近似。直方图虽然不能直接反映出图像内容,但对它进行分析可以得出图像的一些有用特征,这些特征能反映出图像的特点。当图像对比度较小时,它的灰度直方图只在灰度轴上较小的一段区间上非零,较暗的图像由于较多的像素灰度值低,因此它的直方图的主体出现在低值灰度区间上,其在高值灰度区间上的幅度较小或为零,而较亮的图像情况正好相反。通常一幅均匀量化的自然图像的灰度直方图在低值灰度区间上频率较大,这样的图像较暗区域中的细节常常看不清楚。为使图像变清晰,可以通过变换使图像的灰度动态范围变大,并且让灰度频率较小的灰度级经变换后,其频率变得大一些,使变换后的图像灰度直方图在较大的动态范围内趋于均化。事实证明,通过图像直方图修改进行图像增强是一种有效的方法。 均匀量化的自然图像的灰度直方图通常在低值灰度区间上频率较大,使得图像中较暗区域中的细节常常看不清楚。为了使图像清晰,可将图像的灰度范围拉开,并且让灰度频率较小的灰度级变大,即让灰度直方图在较大的动态范围内趋于一致。 前面介绍的直方图均衡化处理方法从实验效果看还是很不错的,从实现算法上也可以看出其优点主要在于能自动整幅图像的对比度,但具体的增强效果也因此不易控制,只能得到全局均衡化处理的直方图。在科研和工程应用中往往要根据不同的要求得到特定形状的直方图分布以有选择的对某灰度范围进行局部的对比度增强,此时可以采用对直方图的规定化处理,通过选择合适的规定化函数取得期望的效果。 a=imread('花.jpg'); subplot(2,2,1); imshow(a); title('原始图像'); subplot(2,2,2); a=rgb2gray(a); imhist(a); title('原始图像直方图'); subplot(2,2,3);

遥感数字图像处理习题与答案

《遥感数字图像处理》习题与答案 第一部分 1.什么是图像并说明遥感图像与遥感数字图像的区别。 答:图像(image)是对客观对象的一种相似性的描述或写真。图像包含了这个客观对象的信息。是人们最主要的信息源。 按图像的明暗程度和空间坐标的连续性划分,图像可分为模拟图像和数字图像。模拟图像(又称光学图像)是指空间坐标和明暗程度都连续变化的、计算机无法直接处理的图像,它属于可见图像。数字图像是指被计算机储存,处理和使用的图像,是一种空间坐标和灰度都不连续的、用离散数字表示的图像,它属于不可见图像。 2.怎样获取遥感图像 答:遥感图像的获取是通过遥感平台搭载的传感器成像来获取的。根据传感器基本构造和成像原理不同。大致可分为摄影成像、扫描成像和雷达成像三类。 m= 3.说明遥感模拟图像数字化的过程。灰度等级一般都取2m(m是正整数),说明8时的灰度情况。 答:遥感模拟图像数字化包括采样和量化两个过程。 ①采样:将空间上连续的图像变换成离散点的操作称为采样。空间采样可以将模拟图像具有的连续灰度(或色彩)信息转换成为每行有N个像元、每列有M个像元的数字图像。 ②量化:遥感模拟图像经离散采样后,可得到有M×N个像元点组合表示的图像,但其灰度(或色彩)仍是连续的,不能用计算机处理。应进一步离散、归并到各个区间,分别用有限个整数来表示,称为量化。 m=时,则得256个灰度级。若一幅遥感数字图像的量化灰度级数g=256级,则灰当8 度级别有256个。用0—255的整数表示。这里0表示黑,255表示白,其他值居中渐变。由于8bit就能表示灰度图像像元的灰度值,因此称8bit量化。彩色图像可采用24bit量化,分别给红,绿,蓝三原色8bit,每个颜色层面数据为0—255级。 4.什么是遥感数字图像处理它包括那些内容 答:利用计算机对遥感数字图像进行一系列的操作,以求达到预期结果的技术,称作遥感数字图像处理。 其内容有: ①图像转换。包括模数(A/D)转换和数模(D/A)转换。图像转换的另一种含义是为使图像处理问题简化或有利于图像特征提取等目的而实施的图像变换工作,如二维傅里叶变换、沃尔什-哈达玛变换、哈尔变换、离散余弦变换和小波变换等。 ②数字图像校正。主要包括辐射校正和几何校正两种。 ③数字图像增强。采用一系列技术改善图像的视觉效果,提高图像的清晰度、对比度,突出所需信息的工作称为图像增强。图像增强处理不是以图像保真度为原则,而是设法有选择地突出便于人或机器分析某些感兴趣的信息,抑制一些无用的信息,以提高图像的使用价值。 ④多源信息复合(融合)。 ⑤遥感数字图像计算机解译处理。

实验-数字图像的直方图统计

实验二数字图像的直方图统计 一、实验目的 1.了解对灰度图像进行直方图统计的基本原理; 2.掌握用VC编程实现直方图统计的方法; 3.在微机上调试程序; 5. 分析数字图像直方图的特点。 二、实验原理 图像的直方图 图像的(灰度统计)直方图是一个一维的离散函数。它的定义为: 设s k为图像f(x,y)的第k级灰度值,n k是f(x,y)中具有灰度值s k的象素的个数,n是图像象素总数,则: p s(s k)= n k/n k=0,1, ,L-1 称为图像f(x,y)的直方图。 这里p s(s k)代表原始图中第k个灰度级的出现概率。以n k为自变量,以p s(s k)为函数,得到的曲线就是图像的直方图,在实际中常常直接将对第k个灰度级的统计值n k作为图像的直方图。 它提供了原图灰度值的分布情况,也可以说给出了一幅图所有灰度值的整体描述。 对灰度图像进行直方图统计的程序流程图如图2-1所示。 图2-1 灰度图像直方图统计流程 三、实验前准备 1.预习本实验中关于数字图像直方图统计的有关内容; 2. 预习VC中添加对话框的步骤和方法; 3.了解本实验的目的和实验内容。 四、实验内容 1.在实验一的基础上读入并显示一幅数字图像; 2.编写对灰度图像进行直方图统计的程序,并将结果显示在屏幕上。 五、实验报告要求 1.总结对灰度图像进行直方图统计的过程,比较不同的图像其直方图特性;

2.对实验结果进行分析。 六、参考步骤和程序 在实验一的基础上,进行如下操作: 1、点击ResourceView,右键点击Dialog,选Insert Dialog 在属性对话框中将ID改为 ID_HIST,对话框名称改为“直方图” 2、在工具栏中点“插入”-“新建类”,输入类名,并选Base Class为CDialog,Dialog ID为 ID_HIST。这样就将对话框和类联系起来了,在该对话框中拖入一Edit控件,将其ID 设为IDC_HISTSHOW; 3、快捷键“Ctrl+W”,出现MFC ClassWizard对话框,在Messages栏中分别选 WM_INITDIALOG和WM_Paint,再点击“Add Function”,即将对话框初始化和画图函数加入对话框类之中。 4、在Hist.h文件“public:”下面输入如下变量定义: LONG m_lCount[256]; char* m_lpDIBBits; LONG m_lWidth; LONG m_lHeight; int m_iIsDraging; CDlgIntensity(CWnd* pParent = NULL); 5、打开Hist.cpp程序,在CHist::OnInitDialog()函数中“// TODO: Add extra initialization here” 前将如下代码拷贝进去: unsigned char* lpSrc; LONG i; LONG j; 6、在“// TODO: Add extra initialization here”后将如下代码拷贝进去: CWnd* pWnd=GetDlgItem(IDC_HISTSHOW); pWnd->GetClientRect(m_MouseRect); pWnd->ClientToScreen(&m_MouseRect); CRect rect; GetClientRect(rect); ClientToScreen(&rect); m_MouseRect.top-=rect.top; m_MouseRect.left-=rect.left; m_MouseRect.top+=25; m_MouseRect.left+=10; m_MouseRect.bottom=m_MouseRect.top+255; m_MouseRect.right=m_MouseRect.left+256; for(i=0;i<256;i++) { m_lCount[i]=0;

直方图均衡化及直方图规定化

《数字图像处理》实验 报告(二) 学号:____________ 姓名:__________ 专业:____ 课序号:__________ 计算机科学与技术学院

实验2直方图均衡化 一、实验学时:4学时(本部分占实验成绩的40%) 二、实验目的: 1、理解直方图均衡化的原理及步骤; 2、编程实现图像(灰度或彩色)的直方图均衡化。 三、必须学习和掌握的知识点: 直方图均衡化是一种快速有效且简便的图像空域增强方法,在图像处理中有着非常重要的意义,因此要求掌握。 四、实验题目: 编程实现灰度图像的直方图均衡化处理。要求给出原始图像的直方图、均衡化图像及其直方图和直方图均衡化时所用的灰度级变换曲线图。 五、思考题:(选做,有加分) 实现对灰度图像的直方图规定化处理。 六、实验报告: 请按照要求完成下面报告内容并提交源程序、可执行程序文件和实验结果图像。

1、请详细描述本实验的原理: 1.直方图均衡化概述 图像对比度增强的方法可以分成两类:一类是直接对比度增强方法;另一类是间接对比度增强方法。直方图拉伸和直方图均衡化是两种最常见的间接对比度增强方法。直方图拉伸是通过对比度拉伸对直方图进行调整,从而“扩大”前景和背景灰度的差别,以达到增强对比度的目的,这种方法可以利用线性或非线性的方法来实现;直方图均衡化则通过使用累积函数对灰度值进行“调整”以实现对比度的增强。 直方图均衡化的英文名称是Histogram Equalization. 直方图均衡化是图像处理领域中利用图像直方图对对比度进行调整的方法。这种方法通常用来增加许多图像的局部对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布。这样就可以用于增强局部的对比度而不影响整体的对比度,直方图均衡化通过有效地扩展常用的亮度来实现这种功能。 2基本思想 直方图均衡化处理的“中心思想”是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同。直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布。 直方图均衡化的基本思想是把原始图的直方图变换为均匀分布的形式,这样就增加了象素灰度值的动态范围从而可达到增强图像整体对比度的效果。设原始图像在(x,y)处的灰度为f,而改变后的图像为g,则对图像增强的方法可表述为将在(x,y)处的灰度f映射为g。在灰度直方图均衡化处理中对图像的映射函数可定义为:g = EQ (f),这个映射函数EQ(f)必须满足两个条件(其中L为图像的灰度级数): (1)EQ(f)在0≤f≤L-1范围内是一个单值单增函数。这是为了保证增强处理没有打乱原始图像的灰度排列次序,原图各灰度级在变换后仍保持从黑到白(或从白到黑)的排列。 (2)对于0≤f≤L-1有0≤g≤L-1,这个条件保证了变换前后灰度值动态范围的一致性。 累积分布函数(cumulative distribution function,CDF)即可以满足上述两个条件,并且通过该函数可以完成将原图像f的分布转换成g的均匀分布。此时的直方图均衡化映射函数为: gk = EQ(fk) = (ni/n) = pf(fi) , (k=0,1,2,……,L-1)

数字图像处理计算题复习精华版

30452 计算题复习
一、 直方图均衡化(P68)
对已知图像进行直方图均衡化修正。
例:表 1 为已知一幅总像素为 n=64×64 的 8bit 数字图像(即灰度级数为 8),各灰度级(出现的频率)分布
列于表中。要求将此幅图像进行均衡化修正(变换),并画出修正(变换)前后的直方图。
表1
原图像灰
度级 rk
r0=0 r1=1 r2=2 r3=3 r4=4 r5=5 r6=6 r7=7
原各灰度级 原分布概率
像素个数 nk pr(rk)
790
0.19
1023
0.25
850
0.21
656
0.16
329
0.08
245
0.06
122
0.03
81
0.02
解:对已知图像均衡化过程见下表:
原图像灰
度级 rk
原各灰度级 原分布概率 累积分布函
像素个数 nk
pr(rk)
数 sk 计
取整扩展
sk 并
r0=0
790
0.19
0.19
1
r1=1
1023
0.25
0.44
3
r2=2
850
0.21
0.65
5
r3=3
656
0.16
0.81
6
r4=4
329
0.08
0.89
6
r5=5
245
0.06
0.95
7
r6=6
122
0.03
0.98
7
r7=7
81
0.02
1.00
7
画出直方图如下:
确定映射 对应关系
rk→sk
0→1 1→3 2→5 3→6 4→6 5→7 6→7 7→7
新图像灰
度级 sk
1 3 5
新图像各灰 度级像素个
数 nsk
790 1023 850
新图像分 布概率
ps(sk)
0.19 0.25 0.21
6
985
0.24
7
448
0.11
1

绘制数字图像灰度直方图实验报告MATLAB实现

数字图像处理 实验报告 实验一绘制直方图 学号 姓名 日期

实验一绘制直方图 一、实验内容 1、编程绘制数字图像的直方图。 2、直方图均衡处理。 二、实验步骤 1、设计思想或者流程图。 灰度直方图是将数字图像的所有像素,按照灰度值的大小,统计其所出现的频度。通常,灰度直方图的横坐标表示灰度值,纵坐标为半个像素个数,也可以采用某一灰度值的像素数占全图像素数的百分比作为纵坐标。 直方图均衡方法的基本原理是:对在图像中像素个数多的灰度值(即对画面起主要作用的灰度值)进行展宽,而对像素个数少的灰度值(即对画面不起主要作用的灰度值)进行归并。从而达到清晰图像的目的。 2、源程序并附上注释。 clear all %一,图像的预处理,读入彩色图像将其灰度化 PS=imread('1.jpg');%读入JPG彩色图像文件 imshow(PS)%显示出来 title('输入的彩色JPG图像') imwrite(rgb2gray(PS),'PicSampleGray.bmp');%将彩色图片灰度化并保存 PS=rgb2gray(PS);%灰度化后的数据存入数组 %二,绘制直方图 [m,n]=size(PS);%测量图像尺寸参数 GP=zeros(1,256);%预创建存放灰度出现概率的向量for k=0:255 GP(k+1)=length(find(PS==k))/(m*n);%计算每级灰度出现的概率,将其存入GP中相应位置 end figure,bar(0:255,GP,'g')%绘制直方图 title('原图像直方图') xlabel('灰度值') ylabel('出现概率') %三,直方图均衡化 S1=zeros(1,256); for i=1:256 for j=1:i S1(i)=GP(j)+S1(i);%计算Sk end end S2=round((S1*256)+0.5);%将Sk归到相近级的灰度for i=1:256 GPeq(i)=sum(GP(find(S2==i)));%计算现有每个灰度级出现的概率

相关主题