彩色圖像直方圖均衡處理_第1頁
彩色圖像直方圖均衡處理_第2頁
彩色圖像直方圖均衡處理_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、彩色圖像直方圖均衡處理彩色圖像直方圖均衡處理,在灰度圖像直方圖均衡處理的基礎上實現彩色直方圖均衡處理。三、彩色直方圖均衡#includestdafx.h#include#includeint_tmain(intargc,_TCHAR*argv)IplImage*src=cvLoadImage(1.jpg);cvNamedWindow(,原圖,1);cvShowImage(原圖”,src);IplImage*equlimage=cvCreateImage(cvGetSize(src),8,3);分別均衡化每個信道IplImage*redlmage=cvCreateImage(cvGetSize(

2、src),8,1);IplImage*greenImage=cvCreateImage(cvGetSize(src),8,1);IplImage*blueImage=cvCreateImage(cvGetSize(src),8,1);cvSplit(src,blueImage,greenImage,redImage,NULL);cvEqualizeHist(redImage,redImage);cvEqualizeHist(greenImage,greenImage);cvEqualizeHist(blueImage,blueImage);均衡后的圖像cvMerge(blueImage,gre

3、enImage,redImage,NULL,equlimage);cvMerge(blueImage,NULL,NULL,NULL,equlimage);cvMerge(NULL,greenImage,NULL,NULL,equlimage);cvMerge(NULL,NULL,redImage,NULL,equlimage);cvNamedWindow(均衡圖,1);cvShowImage(均衡圖”,equlimage);/*cvNamedWindow(均衡-紅,1);cvShowImage(均衡-紅”,redImage);cvNamedWindow(均衡-綠,1);cvShowImage(

4、均衡-綠”,greenImage);cvNamedWindow(均衡-藍,1);cvShowImage(均衡-藍”,blueImage);*/IplImage*gray_plane=cvCreateImage(cvGetSize(src),8,1);IplImage*equl_plane=cvCreateImage(cvGetSize(src),8,1);cvCvtColor(src,gray_plane,CV_BGR2GRAY);cvCvtColor(equlimage,equl_plane,CV_BGR2GRAY);inthist_size=256;/直方圖尺寸inthist_height

5、=256;floatrange=0,255;/灰度級的范圍float*ranges=range;創建一維直方圖,統計圖像在0,255像素的均勻分布CvHistogram*gray_hist=cvCreateHist(1,&hist_size,CV_HIST_ARRAY,ranges,1);CvHistogram*equl_hist=cvCreateHist(1,&hist_size,CV_HIST_ARRAY,ranges,1);計算灰度圖像的一維直方圖cvCalcHist(&gray_plane,gray_hist,0,0);cvCalcHist(&equl_plane,equl_hist,

6、0,0);歸一化直方圖歸一化直方圖cvNormalizeHist(gray_hist,1.0);cvNormalizeHist(equl_hist,1.0);intscale=1;創建一張一維直方圖的“圖像,橫坐標為灰度級,縱坐標為像素個數(*scale)圖像位深度為8位整形,每個元素通道號為3IplImage*hist_image=cvCreateImage(cvSize(hist_size*scale*2,hist_height),8,3);初始化,圖像清零cvZero(hist_image);統計直方圖中的最大直方塊floatmax_value=0;floatmax_value2=0;c

7、vGetMinMaxHistValue(gray_hist,O,&max_value,0,0);cvGetMinMaxHistValue(equl_hist,O,&max_value2,0,0);分別將每個直方塊的值繪制到圖中for(inti=O;ihist_size;i+)floatbin_val=cvQueryHistValue_1D(gray_hist,i);floatbin_val2=cvQueryHistValue_1D(equl_hist,i);intintensity=cvRound(bin_val*hist_height/max_value);intintensity2=cvRound(bin_val2*hist_height/max_value2);cvRectangle(hist_image,cvPoint(i*scale,hist_height-1),cvPoint(i+1)*scale-1,hist_height-intensity),CV_RGB(255,255,255);cvRectangle(hist_image,cvPoint(i+hist_height)*scale,hist_height-1),cvPoint(i+hist_height+1)*scale-1,hist_height-intensity2),CV_RGB(255,255,255)

溫馨提示

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

評論

0/150

提交評論