2010-11-09 172 views
3

我將MatLab和OpenCV中的RGB圖像轉換爲Lab-colorspace,以便在Lab-space中進行一些顏色處理。在MatLab中,我獲得了很好的結果,但是在OpenCV中,結果圖像很混亂。MatLab和OpenCV中的rgb2lab提供了不同的結果

我檢查了在MatLab和OpenCV中RGB值[0 255 0]的轉換rgb2lab的結果,結果是一樣的。但是當轉換回來(lab2rgb)時,我在MatLab和OpenCV中得到了不同的結果。任何想法爲什麼?

的實驗室值是[88 10 68]:

  • 在Matlab我得到[255 212 81]通過在OpenCV中使用lab2srgb
  • RGB值我得到[255 166 23]通過使用CV_Lab2RGB
+0

你確定使用正確的值範圍和數據類型嗎? – ypnos 2010-11-09 11:20:45

+1

MatLab和OpenCV中的Lab值在哪個範圍內?我無法找到任何關於它的事情。只有爲了比較來自OpenCV和MatLab的Lab值,我必須將L與(100/255)相乘,然後分別將a和b相減。 – zhurora 2010-11-16 13:17:05

回答

4

我認爲OpenCV 1.x中有一個錯誤,因爲昨天安裝OpenCV 2.1後,我的算法工作正常,我得到了我期待的結果。

0

OpenCV中的默認圖像格式是BGR。你可能會假設它的RGB順序...

+0

我很確定我以正確的順序使用RGB或BGR。 – zhurora 2010-11-16 13:15:23

相關問題