CreateHist

CreateHist,作用為創建直方圖。

基本介紹

  • 外文名:CreateHist
  • 類別:opencv
  • 相關函式:dims,sizes等
  • 作用:創建直方圖
opencv函式,

opencv函式

創建直方圖
CvHistogram* cvCreateHist( int dims, int* sizes, int type, float** ranges=NULL, int uniform=1 );
dims
直方圖維數的數目
sizes
直方圖維數尺寸的組數
直方圖的表示格式: CV_HIST_ARRAY 意味著直方圖數據表示為多維密集數組 CvMatND; CV_HIST_TREE 意味著直方圖數據表示為多維稀疏數組 CvSparseMat.
ranges
圖中方塊範圍的數組. 它的內容取決於參數 uniform 的值。這個範圍的用處是確定何時計算直方圖或決定反向映射(backprojected ),每個方塊對應於輸入圖像的哪個/哪組值。
uniform
歸一化標識。 如果不為0,則ranges[i](0<=i<cDims,譯者註:cDims為直方圖的維數,對於灰度圖為1,彩色圖為3)是包含兩個元素的範圍數組,包括直方圖第i維的上界和下界。在第i維上的整個區域 [lower,upper]被分割成 dims[i] 個相等的塊(譯者註:dims[i]表示直方圖第i維的塊數),這些塊用來確定輸入象素的第 i 個值(譯者註:對於彩色圖像,i確定R, G,或者B)的對應的塊;如果為0,則ranges[i]是包含dims[i]+1個元素的範圍數組,包括lower0, upper0, lower1, upper1 == lower2, ..., upperdims[i]-1, 其中lowerj 和upperj分別是直方圖第i維上第 j 個方塊的上下界(針對輸入象素的第 i 個值)。任何情況下,輸入值如果超出了一個直方塊所指定的範圍外,都不會被 cvCalcHist 計數,而且會被函式 cvCalcBackProject 置零。
函式 cvCreateHist 創建一個指定尺寸的直方圖,並且返回創建的直方圖的指針。 如果數組的 ranges 是 0, 則直方塊的範圍必須由函式 cvSetHistBinRanges 稍後指定。雖然 cvCalcHist 和 cvCalcBackProject 可以處理 8-比特圖像而無需設定任何直方塊的範圍,但它們都被假設等分 0..255 之間的空間。

相關詞條

熱門詞條

聯絡我們