1
我正在開發一個C++項目,它需要計算給定圖像的垂直強度直方圖。輸入圖像我和我期待得到的輸出是類似於這:VerticalIntensityStatistics在OpenCV中類似
我不知道哪個OpenCV函數最適合得到我需要的輸出。 我試過calcHist
函數和reduce
函數,但是由於我在傳遞參數方面的錯誤,它們似乎都不起作用。
考慮到我有一個很好的B & W圖像,有人可以幫我計算直方圖嗎?
謝謝
我正在開發一個C++項目,它需要計算給定圖像的垂直強度直方圖。輸入圖像我和我期待得到的輸出是類似於這:VerticalIntensityStatistics在OpenCV中類似
我不知道哪個OpenCV函數最適合得到我需要的輸出。 我試過calcHist
函數和reduce
函數,但是由於我在傳遞參數方面的錯誤,它們似乎都不起作用。
考慮到我有一個很好的B & W圖像,有人可以幫我計算直方圖嗎?
謝謝
OpenCV的應該是一個內置函數:reduce
(calcHist將無法正常工作,因爲它的強度裝倉,而不是預計的像素數)
reduce(img,0,CV_REDUCE_SUM); // horizontal
reduce(img,1,CV_REDUCE_SUM); // vertical
(呵呵,圖片從一個代碼項目?記得那個...)
好吧,那工作。非常感謝Berak。是的,這是一篇很好的文章:)。 爲了獲得和使用我定義的直方圖: MatND hist_y; reduce(img,hist_y,1,CV_REDUCE_SUM,CV_32FC1); –
你不需要一個MatND,一個普通的Mat會做(實際上它們是一樣的) – berak
你又對了:)它甚至可以用Mat –