直方圖均衡實驗報告_第1頁
直方圖均衡實驗報告_第2頁
直方圖均衡實驗報告_第3頁
直方圖均衡實驗報告_第4頁
直方圖均衡實驗報告_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、數(shù)字圖像處理實驗報告實驗二 圖像直方圖均衡姓名: * 學(xué)號: * 專業(yè): * 一 實驗?zāi)康膶W(xué)習(xí)并掌握圖像直方圖均衡的基本理論,并通過分析均衡前后的圖像驗證課堂教學(xué)內(nèi)容,總結(jié)直方圖均衡的特點。二 實驗內(nèi)容對圖像 img2 進(jìn)行直方圖均衡(img2為X光片圖像) 對比均衡前后圖像的直方圖及特點, 圖形顯示其直方圖以及灰度映射關(guān)系 計算以下參數(shù):概率非零灰度數(shù),概率非零灰度中最大概率、最小概率、最大最小概率之比。 統(tǒng)計圖像中概率大于平均概率的灰度級數(shù); 計算非零概率的平均值和方差 您認(rèn)為哪些參數(shù)能夠表現(xiàn)圖像直方圖分布的均勻程度?試提取相關(guān)參數(shù)進(jìn)行測試。2找一到兩幅圖像重復(fù)上述實驗。3通過實驗結(jié)果對比

2、,能得出什么結(jié)論?三、 實驗報告要求1源程序(C或Matlab):(1).畫直方圖的Matlab程序filname=E:課件大三下圖像處理實驗二1.bmp;/打開文件A=imread(filname);/讀取文件信息imhist(A);/畫出圖像文件的直方圖(2)C程序#include#include#include#include BITMAPFILEHEADER bfh;BITMAPINFOHEADER bih;typedef struct PPunsigned char GRAY;PIXEL;/畫出灰度映射關(guān)系圖/void draw(double s)FILE *fout,*fin;in

3、t i,j;PIXEL p256256;BITMAPFILEHEADER m_bfh;BITMAPINFOHEADER m_bih;RGBQUAD colorPanel256; fin=fopen(1.bmp,rb);fread(&m_bfh,1,sizeof(BITMAPFILEHEADER),fin);fread(&m_bih,1,sizeof(BITMAPINFOHEADER),fin);fread(colorPanel,256,sizeof(RGBQUAD),fin);fclose(fin);fout=fopen(Gray mapping relationship.bmp,wb);m_

4、bih.biWidth=256;m_bih.biHeight=256;m_bih.biSizeImage=256*256;m_bfh.bfSize=m_bfh.bfOffBits+m_bih.biSizeImage;for(i=0;i256;i+)for(j=0;j256;j+)pij.GRAY=255;for(i=0;i256;i+)j=(int)si;pij.GRAY=0; fwrite(&m_bfh,1,sizeof(BITMAPFILEHEADER),fout);fwrite(&m_bih,1,sizeof(BITMAPINFOHEADER),fout);fwrite(colorPan

5、el,256,sizeof(RGBQUAD),fout);fwrite(p,256*256,1,fout);fclose(fout); /統(tǒng)計概率非零灰度數(shù)子函數(shù) /double nonzero(double p)int i;double sum=0;for(i=0;i256;i+)if(pi!=0)sum=sum+1;printf(概率非零灰度數(shù):%.2fn,sum);return sum; /找到最大概率子函數(shù)/ double lmax(double p)int i;double max; for(i=0;i256;i+)/對max初始化if(pi!=0)max=pi;break;for(

6、i=0;imax)max=pi;/找出概率非零最大值 printf(概率非零最大值:%lfn,max);return max;/找到最小概率子函數(shù)/double lmin(double p) int i;double min; for(i=0;i256;i+)/對min初始化if(pi!=0)min=pi;break;for(i=0;i256;i+)if(pi!=0&pimin)min=pi;/找出概率非零最小值 printf(概率非零最小值:%lfn,min);return min;/求最大最小概率之比子函數(shù)/double rate(double max,double min) double

7、 r;r=max/min;printf(最大最小概率之比:%lfn,r);return r;/統(tǒng)計圖像中概率大于平均概率的灰度級數(shù)子函數(shù) /double lager(double p)int i;double sum=0;for(i=0;i1.0/256)sum=sum+1;printf(圖像中概率大于平均概率的灰度級數(shù):%lfn,sum);return sum;/求非零概率的平均值的子函數(shù)/ double average(double sum)double aver;aver=1.0/sum;printf(非零概率的平均值:%lfn,aver);returnaver;/求非零概率的方差的子函

8、數(shù)/ double variance(double sum,double p,double aver)int i;double asum=0,var;for(i=0;i256;i+)if(pi!=0)asum=asum+pow(pi-aver),2);/printf(%lfn,asum);var=asum/sum;printf(非零概率的方差:%lfn,var);return var;/主函數(shù)/int main()FILE *fin,*fout;RGBQUAD colorPanel256; PIXEL *bmpData; long i,j;double num256=0,p256=0,s256

9、=0;double max,min,r,sum=0,asum=0,aver,psum=0,var;fin=fopen(1.bmp,rb);fread(&bfh,1,sizeof(BITMAPFILEHEADER),fin);fread(&bih,1,sizeof(BITMAPINFOHEADER),fin);fread(colorPanel,256,sizeof(RGBQUAD),fin); bmpData=(PIXEL *)malloc(bih.biHeight*sizeof(PIXEL *); for(i=0;ibih.biHeight;i+) bmpDatai=(PIXEL *)mall

10、oc(bih.biWidth*sizeof(PIXEL);fread(bmpDatai,bih.biWidth,sizeof(PIXEL),fin); fclose(fin);/對圖像進(jìn)行直方圖均衡/ for(i=0;ibih.biHeight;i+)/二重循環(huán)遍歷圖象數(shù)據(jù)for(j=0;jbih.biWidth;j+)numbmpDataij.GRAY+; /當(dāng)前灰度級象素/總象素for(i=0;i256;i+)pi=numi/bih.biWidth/bih.biHeight; /計算灰度概率 s0=p0;for(i=1;i256;i+)si=si-1+pi;/計算累積概率(低灰度概率加到高

11、灰度概率上)for(i=0;i256;i+)/01映射到0255si=si*255;for(j=0;j=j-0.5&sij+0.5)si=j;for(i=0;ibih.biHeight;i+)/對原圖像進(jìn)行直方圖均衡for(j=0;jbih.biWidth;j+)bmpDataij.GRAY=(unsigned char)sbmpDataij.GRAY; /計算各個參數(shù)/sum=nonzero(p);/概率非零灰度數(shù)max=lmax(p);/概率非零灰度中最大概率min=lmin(p);/概率非零灰度中最小概率r=rate(max,min);/最大最小概率之比asum=lager(p);/圖像

12、中概率大于平均概率的灰度級數(shù)aver=average(sum);/非零概率的平均值var=variance(sum,p,aver);/非零概率的方差draw(s);/畫灰度映射關(guān)系曲線fout=fopen(3.bmp,wb);fwrite(&bfh,1,sizeof(BITMAPFILEHEADER),fout);fwrite(&bih,1,sizeof(BITMAPINFOHEADER),fout);fwrite(colorPanel,256,sizeof(RGBQUAD),fout);for(i=0;ibih.biHeight;i+)fwrite(bmpDatai,bih.biWidth,

13、sizeof(PIXEL),fout);fclose(fout);return 0;2.程序流程圖:3實驗結(jié)果圖像及對應(yīng)參數(shù):(1)圖一:均衡前: 均衡前直方圖: 灰度映射:對應(yīng)參數(shù):均衡后: 均衡后的直方圖: 對應(yīng)參數(shù):均衡前后灰度映射關(guān)系:橫軸表示均衡前的灰度,縱軸表示均衡后的灰度。 (2)圖二:均衡前: 均衡前直方圖: 對應(yīng)的參數(shù):均衡后: 均衡后直方圖: 對應(yīng)參數(shù):均衡前后灰度映射關(guān)系:橫軸表示均衡前的灰度,縱軸表示均衡后的灰度。(3)圖三:均衡前:均衡前直方圖: 對應(yīng)參數(shù):均衡后: 均衡后直方圖: 對應(yīng)參數(shù): 均衡前后灰度映射關(guān)系:橫軸表示均衡前的灰度,縱軸表示均衡后的灰度。(4)圖四:均衡前:均衡前直方圖: 對應(yīng)參數(shù):均衡后: 均衡后直方圖:對應(yīng)參數(shù):均衡前后灰度映射關(guān)系:橫軸表示均衡前的灰度,縱軸表示均衡后的灰度。(5)圖五:均衡前:均衡前直方圖:對應(yīng)參數(shù):均衡后: 均衡后直方圖: 對應(yīng)參數(shù):均衡前后灰度映射關(guān)系:橫軸表示均衡前的灰度,縱軸表示均衡后的灰度。4實驗結(jié)果分析及結(jié)論由實驗結(jié)果的參數(shù)分析,直方圖均衡前后有幾項參數(shù)變化較大。均衡后概率非零的灰度數(shù)減少了,表示圖像灰度分布得更均勻了。同時均衡后概率非零的最大值和最小值的比明顯減小了,從這項數(shù)據(jù)中可以看出圖

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論