数字图像直方图统计报告
图像直方图实验报告

图像直方图实验报告实验目的本实验旨在通过使用Python编程语言对图像直方图进行分析和可视化,加深对图像亮度分布的理解,并通过实验结果来探索不同图像的特点和相似性。
实验步骤1. 导入必要的库在开始实验之前,首先需要导入所需的Python库,包括numpy、matplotlib.pyplot和cv2。
可以使用以下代码导入这些库:import numpy as npimport matplotlib.pyplot as pltimport cv22. 读取图像数据选择一张感兴趣的图像作为实验对象,并使用cv2库中的imread()函数读取图像数据。
例如,可以使用以下代码读取名为image.jpg的图像:image = cv2.imread('image.jpg', 0)3. 计算图像直方图使用numpy库中的histogram()函数计算图像的直方图。
直方图是一个表示图像亮度级别频率分布的数组。
可以使用以下代码计算直方图:histogram = np.histogram(image.flatten(), bins=256, range=[0, 256])上述代码将返回一个包含图像直方图数据的数组。
4. 可视化直方图使用matplotlib.pyplot库中的bar()函数将图像直方图可视化。
可以使用以下代码绘制直方图:plt.figure()plt.title('Image Histogram')plt.xlabel('Bins')plt.ylabel('Frequency')plt.bar(histogram[1][:-1], histogram[0], width=1, color='gray')plt.show()上述代码将绘制一个表示图像亮度级别频率分布的直方图。
5. 结果分析通过观察直方图,可以分析图像的亮度特性和分布情况。
用MATLAB统计图像直方图

提示:从1 开始,不 是从0开始!
有用的命令和函数
3、矩阵元素索引
2、双下标:
有用的命令和函数
循环控制: for 语法:for 控制条件
执行语句; end
找出5阶魔方矩阵中的25的坐标。 a=magic(5); m=0; n=0; for i=1:5 for j=1:5 if a(i,j)==25 m=i; n=j; end end end
字母 颜色
y 黄色 m 粉红 c 亮蓝 r 大红 g 绿色 b 蓝色 w 白色 k 黑色
标点 线型
· 点线
○ 圈线
× ×线
+ +字线
- 实线
*
星形线
: 虚线
-·(--) 点划线
bar(x,y)
while 使用while语句,找出最小的n,使得 n!<10e100
n = 1; while prod(1:n) < 1e100
n = n+1 end fprintf('%g! = %e > 1e100\n', n, prod(1:n)); 70! = 1.197857e+100 > 1e100
绘图:plot(x,y) x = -pi:pi/10:pi; y = tan(sin(x)) - sin(tan(x)); plot(x,y,'--rs','LineWidth',2,...
'MarkerEdgeColor','k',... 'MarkerFaceColor','g',... 'MarkerSize',10)
基本概念
数字图像处理实验报告直方图均衡化

数字图像处理实验报告实验名称:直方图均衡化姓名:班级:学号:专业:电子信息工程(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,这个条件保证了变换前后灰度值动态范围的一致性。
数字图像实验报告

五、实验过程原始记录(数据、图表、计算等)原始图像camera.jpg lenna.jpgrose.jpg在Matlab中输入以下语句。
I=imread('E:\tupian\rose.tif');whos(I)imshow(I)imwrite(I,'Rose.jpg','quality',10)imfinfo('Rose.jpg')imwrite(I,'Rose.bmp')A=imread('E:\tupian\lenna.jpg');B=imread('E:\tupian\camera.jpg');imfinfo('lenna.jpg')imfinfo('camera.jpg')figure;imshow(A)figure;imshow(B)C=imread('E:\tupian\camera.jpg');C1=im2bw(C);imshow(C1)六、实验结果及分析通过whos I查看图像信息。
二值化后图片转化成黑白图片,即灰度值小于等于127时赋值为0,灰度值大于127时赋值为1。
五、实验过程原始记录(数据、图表、计算等)原始图像在Matlab中输入以下语句。
A=imread('E:\tupian\lianhua.jpg');B=imread('E:\tupian\add1.jpg');C=imadd(A,B);imshow(C)A=imread('E:\tupian\camera.jpg');A1=imadd(A,50);A2=imadd(A,-50); %同imsubtract(A,50)subplot(131);imshow(A);title('原图')subplot(132);imshow(A1);title('+50')subplot(133);imshow(A2);title('-50')A=imread('E:\tupian\camera.jpg');background=imopen(A,strel('disk',50));Ip=imsubtract(A,background);subplot(121);imshow(A);subplot(122);imshow(Ip);I=imread('E:\tupian\house.jpg');J=immultiply(I,1.5);subplot(121);imshow(I);subplot(122);imshow(J);A=imread('E:\tupian\camera.jpg');A=rgb2gray(A);I=double(A);J= I*0.43+90;A1=uint8(J);Ip=imdivide(A,A1);imshow(Ip,[])六、实验结果及分析1.叠加后的图像2. 减去背景后的图像4.乘以1.5后的结果六、实验结果及分析1. 绘制图像直方图2. 图像的明暗转换3. 图像的对数变换由图可以看出,图片对数变换后显示更多的内容,即对低频进行拉伸,对高频进行压缩。
4.图像增强—直方图变换 - 数字图像处理实验报告

计算机与信息工程学院验证性实验报告一、实验目的1.掌握灰度直方图的概念及其计算方法;2.熟练掌握直力图均衡化和直方图规定化的计算过程;3.熟练掌握空域滤波中常用的平滑和锐化滤波器;4.掌握色彩直方图的概念和计算方法5.利用MATLAB程序进行图像增强。
二、实验原理图像增强是指按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些不需要的信息的处理方法。
其主要目的是处理后的图像对某些特定的应用比原来的图像更加有效。
图像增强技术主要有直方图修改处理、图像平滑化处理、图像尖锐化处理和彩色处理技术等。
本实验以直方图均衡化增强图像对比度的方法为主要内容,其他方法同学们可以在课后自行联系。
直方图是多种空间城处理技术的基础。
直方图操作能有效地用于图像增强。
除了提供有用的图像统计资料外,直方图固有的信息在其他图像处理应用中也是非常有用的,如图像压缩与分割。
直方图在软件中易于计算,也适用于商用硬件设备,因此,它们成为了实时图像处理的一个流行工具。
直方图是图像的最基本的统计特征,它反映的是图像的灰度值的分布情况。
直方图均衡化的目的是使图像在整个灰度值动态变化范围内的分布均匀化,改善图像的亮度分布状态,增强图像的视觉效果。
灰度直方图是图像预处理中涉及最广泛的基本概念之一。
图像的直方图事实上就是图像的亮度分布的概率密度函数,是一幅图像的所有象素集合的最基本的统计规律。
直方图反映了图像的明暗分布规律,可以通过图像变换进行直方图调整,获得较好的视觉效果。
直方图均衡化是通过灰度变换将一幅图像转换为另一幅具有均衡直方图,即在每个灰度级上都具有相同的象素点数的过程。
下面给出直方图均衡化增强图像对比度的MATLAB程序:clc;clear allI=imread('Fig0308(a)(pollen).tif'); %读入原图像J=histeq(I); %对原图像进行直方图均衡化处理imshow(I); %显示原图像title('原图像'); %给原图像加标题名%对原图像进行屏幕控制;显示直方图均衡化后的图像figure;imshow(J);%给直方图均衡化后的图像加标题名title('直方图均衡化后的图像') ;%对直方图均衡化后图像进行屏幕控制;作一幅子图,并排两幅图的第1幅figure; subplot(1,2,1) ;imhist(I,64); %将原图像直方图显示为64级灰度title('原图像直方图') ; %给原图像直方图加标题名subplot(1,2,2); %作第2幅子图imhist(J,64) ; %将均衡化后图像的直方图显示为64级灰度title('均衡变换后的直方图') ; %给均衡化后图像直方图加标题名处理后的图像直方图分布更均匀了,图像在每个灰度级上都有像素点。
数字图像处理(直方图).

21
其他类型的统计图
• 误差条:errorbar x = 1:10; y = sin(x); e = std(y)*ones(size(x)); errorbar(x,y,e)
22
其他类型的统计图
• 针状图:stem x = 1:60; y = sin(x/4); stem(x,y,'markerFace','b');
explode
17
环形饼图
ph = pie([2 4 3 5],{'North','South','East','West'}); hold on; z = 0.6*exp(i*linspace(0,pi*2,100)); fill(real(z),imag(z), 0.8*[1,1,1]);
18
二阶导数:
f m, n 1 f m, n 1 2 f m, n f x m, n , 2 x
[1 -2 1]
算子(Operator)
31
点操作
Y = F (X)
32
大局域操作
JP i, j G G IP i, j
38
for k = 1:1000
a(k) = a(k-1)+1; end 并行结构:a = [1:1000]+1;
6.递归过程
an = F(an-1) 计算过程中存在着相似的 部分,这里以阶乘为例 给出递归程序。
function y = fractorial(n); % 递归过程 if n==0; y=1; else y=fractorial(n-1)*n; end
数字图像处理实验报告
数字图像处理实验报告⼆○⼀⼋~⼆○⼀九学年第⼀学期信息科学与⼯程学院课程设计报告书课程名称:数字图像处理班级:学号:姓名:指导教师:⼆○⼀⼋年⼗⼆⽉⼀、课程设计⽬的:1. 掌握读、写、显⽰图像的基本⽅法。
2. 掌握图像直⽅图的概念、计算⽅法以及直⽅图归⼀化、均衡化⽅法。
3. 掌握图像灰度变换的基本⽅法,理解灰度变换对图像外观的改善效果。
⼆、课程设计内容及要求:1. 读⼊⼀幅图像,判断其是否为灰度图像,如果不是灰度图像,将其转化为灰度图像。
2. 完成灰度图像的直⽅图计算、直⽅图归⼀化、直⽅图均衡化等操作。
3. 完成灰度图像的灰度变换操作,如线性变换、伽马变换、阈值变换(⼆值化)等,分别使⽤不同参数观察灰度变换效果(对灰度直⽅图的影响)。
三、详细设计步骤:1、所使⽤的图像⽂件都保存在Matlab 安装⽬\toolbox\images\imdemos⼦⽬录下。
2、图像的读、写、显⽰操作。
运⽤Matlab 图像处理⼯具箱中的imread函数分别读⼊灰度图像pout.tif、⼆值图像blobs.png 和RGB 图像peppers.png,观察相应的图像矩阵,并运⽤imshow 函数显⽰相应图像。
3、对⼀个RGB 彩⾊图像peppers.png,分别抽取其R、G、B 三个分量层,并显⽰各层图像。
1、以灰度图像pout.tif 为例,运⽤灰度变换法实现图像增强。
2、运⽤Matlab 编程实现灰度直⽅图的统计以及直⽅图均衡化处理过程:(1)计算并绘制原始图像的灰度直⽅图;(2)根据离散累计分布函数,对原始灰度直⽅图进⾏均衡化处理,绘制均衡化后的灰度直⽅图;(3)⽣成均衡化处理后的新图像,显⽰并保存。
(4)⽐较原始图像和新图像的对⽐度。
(1)利⽤Matlab 函数IMNOISE(),在原图上分别叠加⾼斯噪声和椒盐噪声(2)实现均值滤波和中值滤波的功能,去除噪声;(3)调整窗⼝⼤⼩,采⽤对⽐均值滤波中值滤波的性能;1、以灰度图像rice.png 为例,实现Roberts 算⼦、Sobel 算⼦、Prewitt算⼦对其进⾏边缘检测,并实现根据梯度⽣成 5 种不同的增强图像。
数字图像处理实验报告
数字图像处理实验报告光信13-2班2013210191韩照夏数字图像处理实验报告实验一数字图像空间域平滑一、实验目的掌握图像空间域平滑的原理和程序设计;观察对图像进行平滑增强的效果。
二、实验设备计算机,Matlab程序平台。
三、实验原理图像平滑处理的目的是改善图像质量和抽出对象特征。
任何一幅未经处理的原始图像,都存在着一定程度的噪声干扰。
噪声恶化了图像质量,使图像模糊,甚至淹没特征,给分析带来困难。
消除图像噪声的工作称为图像平滑或滤波。
针对不同噪声源(如光栅扫描、底片颗粒、机械元件、信道传输等)引起的不同种类噪声(如加性噪声、乘性噪声、量化噪声等),平滑方法也不同。
平滑可以在空间域进行,也可以在频率域进行。
1.局部平均法局部平滑法是一种直接在空间域上进行平滑处理的技术。
假设图像由许多灰度恒定的小块组成,相邻象素间存在很高的空间相关性,而噪声则是统计独立的。
因此,可用邻域内各象素的灰度平均值代替该象素原来的灰度值,实现图像的平滑。
对图像采用3×3的邻域平均法,其作用相当于用以下模板与图像进行卷积运算。
2. 超限象素平滑法 对邻域平均法稍加改进,可导出超限象素平滑法。
其原理是将f(x,y)和邻域平均g(x,y)差的绝对值与选定的阈值进行比较,根据比较结果决定点(x,y )的最后灰度g ´(x,y)。
其表达式为3. 二维中值滤波中值滤波就是用一个奇数点的移动窗口, 将窗口中心点的值用窗口内各点的中值代替。
二维中值滤波可由下式表示常用的窗口有:四、实验步骤1.实验准备:打开计算机,进入Matlab 程序界面。
2.输入图像空间域平滑处理程序,程序如下:⎩⎨⎧>-= ),(),(),( ),,(),('其他,当y x f T y x g y x f y x g y x g )},({),(y x f Med y x g A=程序1.1 图像平滑处理clear;clc;I=imread('lena.jpg');subplot(3,2,1);imshow(I);title('原图像');I1=imnoise(I,'salt & pepper',0.02);subplot(3,2,2);imshow(I1);title('对I加椒盐噪声的图像');h2=fspecial('average',[3 3]);I2=imfilter(I1,h2,'replicate');subplot(3,2,3);imshow(I2);title('3×3邻域平滑');h3=fspecial('average',[5 5]);I3=imfilter(I1,h3,'replicate');subplot(3,2,4);imshow(I3);title('5×5邻域平滑');I4=I1;I4((abs(I1-I2))>64)=I2((abs(I1-I2))>64);subplot(3,2,5);imshow(I4);title('3×3超限象素平滑(T=64)'); I5=I1;I5((abs(I1-I3))>48)=I3((abs(I1-I3))>48);subplot(3,2,6);imshow(I5);title('5×5超限象素平滑(T=48)');程序1.2 图像平均平滑与中值滤波clear;clc;I=imread('lena.jpg');subplot(3,3,1);imshow(I);title('原图像');I1=imnoise(I,'gaussian',0.02);subplot(3,3,2);imshow(I1);title('高斯噪声');I2=imnoise(I,'salt & pepper',0.02);subplot(3,3,3);imshow(I1);title('椒盐噪声');h1=fspecial('average',[3 3]);I3=imfilter(I1,h1,'replicate');subplot(3,3,4);imshow(I3);title('对I1 3×3邻域平滑');h2=fspecial('average',[3 3]);I4=imfilter(I2,h2,'replicate');subplot(3,3,5);imshow(I4);title('对I2 3×3邻域平滑');I5=medfilt2(I1,[5 5]);subplot(3,3,6);imshow(I5);title('对I1 5×5中值滤波');I6=medfilt2(I2,[5 5]);subplot(3,3,7);imshow(I6);title('对I2 5×5中值滤波');3.运行图像处理程序,并保存处理结果图像。
数字图像实验 图像直方图分析1234
试验三:图像直方图分析一·实验目的1.掌握VC++6.0图像编程的基本操作2. 应用VC++6.0编程绘制灰度直方图。
二·实验内容1.用VC++6.0绘制灰度直方图;2. 对图像进行直方图分析。
三·实验步骤(1)启动VC++6.0,打开Dip工程。
(2)将Pointpro.h、Pointpro.cpp文件及Areapro.h、Areapro.cpp文件拷贝到当前工程目录文件里面。
(3)在Fileview-->Dipfiles→右键→Setting→Link→添加Pointpro.h、Pointpro.cpp 文件及Areapro.h、Areapro.cpp文件。
(4)在菜单栏→insert→resouce→dialog→new,在对话框模版的非控制区点击鼠标右键,在弹出的对话框中选properties,设置为ID:IDD_DLG_Intensity,C标题:Histogram,关闭属性对话框,回到“建立类向导”(MFC classwizard),在弹出的对话框中选创建新类CDlgIntensity后确定。
并且在FileView中修改DlgIntensity.cpp和DlgIntensity.h相应的代码;(5)在弹出的对话框中,添加如下的按钮等控件:例如右键单击上面最大的静态文本,在弹出的对话框中选“属性”,在属性对话框中添加如下内容:(6)在ResourceView栏中→Menu→选IDR_DIPTYPE ,如图在View菜单栏下空的一栏中,右键鼠标,在弹出的对话框中选属性properties,在弹出的对话框中,设置:ID:ID_VIEW_HIST,标题为Histogram,在建立的类向导中选类为CDlgIntensity,确定。
(7)在StdAfx.h中添加#include<math.h>(8)在DipView.h中//{{AFX_MSG(CDipView)下添加afx_msg void OnViewHist();afx_msg void OnUpdateViewHist(CCmdUI* pCmdUI); (9)DipView.cpp添加#include "PointPro.h"和#include "DlgIntensity.h",在BEGIN_MESSAGE_MAP(CDipView, CScrollView)处添加:ON_COMMAND(ID_VIEW_HIST, OnViewHist)ON_UPDATE_COMMAND_UI(ID_VIEW_HIST, OnUpdateViewHist) 在// CDipView message handlers下面添加:void CDipView::OnViewHist(){CDipDoc* pDoc = GetDocument();ASSERT_V ALID(pDoc);//判断当前是否有图像对象if( pDoc->m_pDibObject == NULL ) return;//在点处理CPointPro类中创建用来绘制直方图的数据CPointPro PointOperation( pDoc->m_pDibObject );int *pHistogram = PointOperation.GetHistogram();//生成一个对话框CHistDlg类的实例CDlgIntensity HistDlg;//将绘制直方图的数据传递给CHistDlg对话框类的公有成员变量m_pnHistogramif( pHistogram != NULL ){//设置直方图数据指针HistDlg.m_pnHistogram = pHistogram;//设置当前像素值为0的像素数HistDlg.m_nCurrentPiexsNum = pHistogram[0];//设置是否为256级灰度图像HistDlg.m_bIsGray256 = PointOperation.IsGray256();}//显示对话框if ( HistDlg.DoModal() != IDOK)return;delete [] pHistogram;}void CDipView::OnUpdateViewHist(CCmdUI* pCmdUI){CDipDoc* pDoc = GetDocument();ASSERT_V ALID(pDoc);pCmdUI->Enable( pDoc->m_pDibObject->GetNumBits() >= 8);}(10)在DipDoc.h中添加:protected:long m_lHeight;long m_lWidth;(11)在DipDoc.cpp中添加菜单命令:#include "AreaPro.h",在CDipDoc::CDipDoc()下面添加{m_pDibObject = NULL;m_bImageLoaded = FALSE;// TODO: add one-time construction code herem_lHeight = 0;m_lWidth = 0;}在最下面添加:void CDipDoc::OnFileSaveAs(){// TODO: Add your command handler code herestatic int nIndex = 1;CFileDialog DialogSaveAs( FALSE, NULL, m_pDibObject->GetImageName(),OFN_HIDEREADONLY, szFilter );DialogSaveAs.m_ofn.nFilterIndex = (DWORD) nIndex;if( DialogSaveAs.DoModal() == IDOK ){CMainFrame *pMainFrame = ( CMainFrame * )AfxGetMainWnd();CChildFrame *pChildFrame = ( CChildFrame * )pMainFrame->MDIGetActive();CDipView *pDipView = ( CDipView * )pChildFrame->GetActiveView();nIndex = (int) DialogSaveAs.m_ofn.nFilterIndex;if( nIndex == 5 ){if( m_pDibObject->GetNumBits() != 24 ){AfxMessageBox("必须是24位真彩色图像才能存为JPEG格式!");return;}}if( m_pDibObject != NULL ){CString strPathName = DialogSaveAs.GetPathName();int nFindIndex = strPathName.Find(".");if( nFindIndex != -1)strPathName = strPathName.Left( nFindIndex );strPathName += CDibObject::szExtensions[ nIndex - 1 ];//m_pDibObject->ProcessImageHeader();//m_pDibObject->ProcessPalette();m_pDibObject->Save( strPathName );CString strFileName = DialogSaveAs.GetFileName();nFindIndex = strFileName.Find(".");if ( nFindIndex != -1 )strFileName = strFileName.Left( nFindIndex );strFileName += CDibObject::szExtensions[ nIndex - 1 ];pChildFrame->SetWindowText( strFileName );SetPathName( strPathName );if( nIndex == 5 ){m_pDibObject->Load( strPathName );pDipView->InvalidateRect( NULL, FALSE );pDipView->UpdateWindow();}}}}(12)在ChildFrm.h中添加public:CChildFrame();int m_nWidth, m_nHeight;(13)在ChildFrm.cpp中添加CChildFrame::CChildFrame(){m_nWidth = 300;m_nHeight = 150;}在BOOL CChildFrame::PreCreateWindow(CREATESTRUCT& cs)添加:{// TODO: Modify the Window class or styles here by modifying// the CREATESTRUCT cscs.cx = m_nWidth;cs.cy = m_nHeight;if( !CMDIChildWnd::PreCreateWindow(cs) ) return FALSE;return TRUE;}一、实验结果二、实验心得及体会通过做这次实验,使我又学到了关于图像直方图的知识,进一步掌握了图像编程的基本操作:会应用VC++6.0编程绘制灰度直方图。
南理工数字图象处理报告
数字图像处理实验报告姓名:学号:班级:指导老师: 王欢实验一1.实验目的对一幅图像的直方图进行均衡化,即产生一幅灰度级分布具有均匀概率密度的图像,扩展像素取值的动态范围,达到了图象增强的目的2.实验原理(1).直方图的理论基础:a.直方图概念:灰度直方图表示图像中每种灰度出现的频率。
b.直方图的作用:反映一幅图像的灰度分布特性c.直方图的计算:(2).直方图的优点直方图具有很多的优点,直方图能反映图像的概貌,比如图像中有几类目标,目标和背景的分布如何;通过直方图可以直接计算图像中的最大亮度、最小亮度、平均亮度、对比度以及中间亮度等。
使用直方图可以完成图像分割、目标检索等。
因为不同的目标具有不同的颜色分布。
使用归一化直方图作目标匹配,还不易受到目标翻转和目标大小变化的影响。
在图像查询的系统中,直方图有很大的应用,用它存储目标的特征占有空间小,且执行速度快。
(3).均衡化原理∑==ki ik nn r P 0)(根据熵理论可知当H[0],H[1]…,H[n-1]相等时,图像信息量Hi 都相等,即把原始图的直方图变换为均匀分布的形式,这样就增加了象素值的范围,增强了图像的对比效果。
令A0是图像面积,N 是有效亮度级的个数,对于一个完全平坦的直方图来说,应该在每一个亮度级上A0/N 个象素。
设g 是原来的灰度级,G 是变换后的灰度级,则可描述为:G=F(g)。
实际应用中,有两种情况需要考虑:(1)多个至一个:若有连续n 个灰级的频数之和级等于A/N, 则必导致它们合并成一个灰度级。
(2)一个到多个:若有某个灰级的频数是A0 /N 的R 倍,则必须将其分为R 个不同的灰阶级,每一个上都是A0 /N 。
情况(1)导致的灰度级的合并是简单的(是多到一的映射关系),但情况(2)时的分解是不容易的(是一到多的关系) ,因为确实难以判定g 在图像的不同位置,到底如何分解才是最好。
假设灰度级g 要映射到[GL, GR]中,有3种规则可以遵循: (1)规则1:总是将g 映射为(GL+GR)/2。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、学习情况
灰度直方图均衡化进行数字图像处理的基本原理
01
直方图均衡化:利用这一特性对图像中像素个数多的灰度 级进行展宽,而对图像中像素个数少的灰度进行压缩,从
而提高了对比度和灰度色调的变化,使图像更加清晰。
实现步骤: (1) 根据输入的灰度图像计算其原始直方图 (2) 对输入的原始直方图进行累加,计算其cdf (3) 使用累计分布函数的线性插值计算新的灰度值
一、学习情况
Matlab仿真
02
Imhist():直接显示图像的灰度直方图
均衡化: (1) 根据输入的灰度图像计算其原始直方图 (2) 对输入的原始直方图进行累加,计算其cdf (3) 使用累计分布函数的线性插值计算新的灰度值
二、已完成的工作及仿
真结果
二、已完成的工作及仿真结果 1 MATLAB仿真
阈值为100 200
阈值为120 200
阈值为140 180
阈值为150 170
由思考题得出的结论
阈值选择在波谷时,图片黑白分化更加明 显,对比度有所增强,当阈值靠近波峰时, 丢失信息过多,图片失真较为严重。
仿真1 MATLAB仿真
2 修改程序课后题的完成结果
双峰阈值分割法
在一些简单的图像中,物体的灰度分布比较有 规律,背景与各个目标在图像的直方图各自形 成一个波峰(区域与波峰一一对应),每两个 波峰之间会形成一个波谷,选择此波谷作为阈 值。
阈值为60 200
阈值为80 200
数字图像直方图均衡化增强实验 中期汇报
组员:张三
一、学习情况
一、学习情况
灰度直方图均衡化进行数字图像处理的基本原理
01
灰度直方图:横坐标是灰度级别,纵坐标是图像中该灰 度值的出现频率,是一个统计结果。
特性:如果一副图像的像素占有很多的灰度级而且分布 均匀,那么这样的图像往往有高对比度和多变的灰度色调。