使用的OpenCV 2(3.1.0)和Python 2.7如果傳遞的圖像或視頻幀cv2.mean()
你喜歡轉換cv2.mean()到其他顏色模型(LAB)
(57.679779052734375, 70.36699761284721, 102.41968960232204, 0.0)
輸出的輸出
返回的值是否遵循BGR的OpenCV約定(不是 RGB),最後一個值是什麼意思?
如果我想轉換的值恢復成L 一個 B顏色模型 這樣做有什麼不重新計算平均值的最佳方式?
使用colormath模塊從RGB轉換時,轉換爲LAB和inputI我試圖XYZ到實驗室,但如果我使用手動在線的顏色轉換器輸入(RGB)並不像同色開始是不是我所期待的作爲源圖像的平均/幀
from colormath.color_objects import XYZColor, sRGBColor,LabColor
from colormath.color_conversions import convert_color
#RGB-Blue RGB-Green RGB-Red
#57.6797790527 70.3669976128 102.4196896023
#BGR
#107 127 133
rgb = sRGBColor(133, 127, 107)
xyz = convert_color(rgb, XYZColor, target_illuminant='d50')
lab = convert_color(xyz,LabColor)
它獨立計算每個通道的平均值。結果包含每個頻道的一個平均值,以相同的順序(否則沒有意義)。具體渠道代表的是什麼與該功能無關。 |如果結果有4個值,那麼您將它傳遞給4通道圖像 - 具有透明度的東西。您可以通過檢查輸入數組的「形狀」屬性來輕鬆驗證。 –
我是我的情況,它是通過cv2.VideoCapture訪問的視頻的幀,並閱讀() – mobcdi