2011-11-08 52 views
0

我想總結我的4X4塊。假設我有一個圖像,並將其分成4X4塊。然後,我想使用cvIntegral來確定每個塊的總和。我該如何處理這個問題?cv積分確定4X4塊的總和

這是我的基本程序,以計算整個圖像的積分圖像值:

float s = 0.0f; 
//Read in the image 
IplImage* hImage = cvLoadImage("bayer-image.jpg",0); 
UINT width = hImage->width; UINT height = hImage->height; 

CvMat* sum = cvCreateMat(height + 1, width + 1, CV_32SC1); 
CvMat* sqsum = cvCreateMat(height + 1, width + 1, CV_64FC1); 

cvIntegral(hImage, sum, sqsum); 

cvReleaseImage(&hImage); 
cvReleaseMat(&sum); 
cvReleaseMat(&sqsum); 

我應該怎麼做?

真的在此先感謝。

回答

0

檢查了這一點 http://en.wikipedia.org/wiki/Summed_area_table

作爲一個例子,由角部所限定的塊(1,1)和(4,4)具有面積

A1 =積分(0,0)+積分(4,4) - 積分(4,0) - 積分(0,4);

+0

嗨,你還回答了我的直方圖平均問題幾個星期前。無論如何,實際上我得到了整體圖像的整體基礎理論,但是在編程上我需要提示如何對其進行編碼。因爲我在opencv中很新。你介意給我上面的代碼示例嗎?謝謝。 –

+0

:)我很抱歉,但是對於我們兩個人來說,你自己做的更好。我沒時間了,你需要學習opencv。檢查此答案以瞭解如何訪問矩陣元素http://stackoverflow.com/questions/1844736/accesing-a-matrix-element-in-the-mat-object-not-the-cvmat-object-in-opencv- c祝你好運! – Sam

+0

P.S.不要忘記遵循SO的規則:如果答案是好的,請將其提升和/或接受爲正確的答案。而且,更重要的是,回答您是現場專家的問題。 – Sam