北工大数字图像处理实验2 直方图均衡

北工大数字图像处理实验2 直方图均衡

ID:12763439

大小:921.70 KB

页数:11页

时间:2018-07-18

北工大数字图像处理实验2 直方图均衡_第1页
北工大数字图像处理实验2 直方图均衡_第2页
北工大数字图像处理实验2 直方图均衡_第3页
北工大数字图像处理实验2 直方图均衡_第4页
北工大数字图像处理实验2 直方图均衡_第5页
资源描述:

《北工大数字图像处理实验2 直方图均衡》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、版权声明本文内的全部内容均由本人编写,可以用来参考学习,但不可用来进行商业活动。一切代码解释权均归作者扎楠所有。所有题目以实验指导书为准。之所以制作这个word只是为了给将来和即将面对数字图像处理课程的同学一些程序上的参考,避免走弯路,花更多的时间在缤纷多彩的大学生活中,不要纠结于这些琐事。数字图像处理实验二实验报告一、实验内容:对图像img2进行直方图均衡(img2为x光片手图像)并绘出均衡前后的直方图。对比实验前后直方图,并进行相应的思考。用一两个例子验证一下程序的正确性。二、过程分析:通过课上的学习,以及课下我阅读的一些关于数字图像处理的书中,我找到了

2、一些关于直方图均衡的原理和实现方法。首先需要进行直方图均衡的图片,它的直方图分布应该不太均衡,要么是分布在灰度值较低的暗色区,要么分布在在灰度值较高的亮色区,或者是集中分布在某一段。如图1所示,灰度值在较低的暗色区比较集中,在高值相对较少,这就造成了图片颜色总体偏暗,对暗色的细节很难分辨。我们要做的,就是通过编程,把他扩展到整个色度段上。图1主要思路是:对在图像中像素个数多的灰度值(即对画面起主要作用的灰度值)进行展宽,而对像素个数少的灰度值(即对画面不起主要作用的灰度值)进行归并。从而达到清晰图像的目的。拿到一张图以后,首先要做的是分别统计像素灰度值为0,

3、1,2,…,255的像素点的个数,把结果存入一个256个值的一维数组中,用hf[256]来表示(我都做了红绿蓝三色统计,一方面可以对彩色图像进行处理,一方面可以使输出的直方图能体现更多的细节)。接下来由hf求原图的灰度分布概率,记做pf[256],则有:pfi=1N*hfi,i=0,1,2,…,255其中N=W*H(图像的宽和高)为图像总像素点个数。下面计算图像各个灰度值的累计分布概率,记作pa[256],利用循环累加:pai=k=0ipfk,i=1,2,…,255其中令pa[0]=0。直方图均衡的最后一步就是将原图的所有像素点都替换成均衡后的,该点的像素值

4、g(i,j)为:gi,j=255*pa(k)其中k为原图该点对应的灰度值。至此,直方图均衡就完成了,只要将图片输出,就能够得到均衡后的图了。至于均衡前后直方图的绘制,我的想法很简单,就是利用之前求的hf[256],再求一个输出图像的统计,统计好每个灰度值对应多少个点,然后通过循环求出同一个灰度值对应的最多的点数,然后除以一个合适的数,将所有点都归一化,比如某图片灰度值为130的点数最多,为10000个,那么我如果想在有限的空间,比如y轴方向为200个点上示意,就需要让所有点数都除以(10000/200),这样就能在一定的空间中把直方图的趋势显示出来。然后在y

5、轴方向画相应的点数来显示直方图。三、程序流程图:四、实验结果显示:1.对img2做的直方图均衡以及前后直方图:可以看出,灰度值的分布更加均匀了,原来很密集的部分变得比较疏松。2.用上课用到的一两个例子验证一下:例1这个是颜色较暗的,均衡后发现对比比较明显了。例2下图是颜色比较亮的,均衡后效果也比较好。五、课后思考按照实验内容,我利用程序分别求出了一下内容:A)概率非零灰度数;B)概率非零灰度中最大概率、最小概率、最大最小概率之差;C)图像中概率大于平均概率的灰度级数;D)非零概率的平均值和方差。以例2的图像为例,这些结果分别为:由显示可知,均衡前非零灰度数为

6、72,均衡后为66,这是由于灰度级减并造成的非零灰度级减小。概率非零灰度的最大最小概率都相等。概率大于平均概率的灰度级数也都相等。按照课上讲的直方图均衡的例子,这两个值应该不等的才对,可能是在量化或者是单位保留等过程我的设计不是很严谨。原图的非零概率平均值为38,这就造成了图像相对较暗,生成新的图像后,平均值变为130,处于一个中段,这样图像效果较好。同样,新图的方差也比原图大很多,这说明图像的像素值分布比较广,跨越较大,对比较鲜明。结论:我认为主要是图像的像素平均值和方差还有非零灰度级数影响了图片的成像效果,这些元素在图像的直方图中都能够看出来,原图的直方

7、图灰度级集中在一个区域,而均衡后的在整个轴上都有分布,给人一种把第一个图截取集中的部分,然后在扩展到0~255像素上一样。七、程序源代码#include#include"windows.h"#defineH158//设置需要进行均衡的图像的宽和高#defineW200#defineK500//设置输出直方图的宽和高#defineC500structpixel//像素结构体{unsignedcharB,G,R;}nowP[H][W],newP[H][W],mubanP[C][K],zhiP[C][K];intmain(){FILE*fp;//

8、原图、FILE*fout;//均衡后、FILE*ft

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。