我使用openCV for Python,cv2庫。我用下面的函數來計算的圖像的直方圖im_converted使用openCV for python的背投影
hist = cv2.calcHist([im_converted], channels, None, histSize, ranges,hist, 1)
其中im_converted加載爲類型UINT8的numpy的陣列。
hist似乎被迫成爲float32類型的一個numpy數組。當我使用反投影功能時會出現問題。 (注:我標準化直方圖s.t np.sum(歷史)= 1)
backProj = cv2.calcBackProject([im_converted], channels, hist, ranges,scale);
該文檔是here。 backProj被迫成爲一個uint8 numpy數組。
- 如果比例= 1,則backProj = 0
- 如果標度= 255,那麼backProj是非零的,但這些值是非常小的。
我的問題是:鑑於類型之間的差異,應該應用的比例因子是多少?沒有改變類型的方法嗎? (注意:我試圖做hist =零(histSize,dtype = uint8),但這是不成功的,我仍然得到了一個float32直方圖。)