為什麼 OpenCV 在載入時渲染彩色影像不正確?
當使用 Python OpenCV 載入彩色映像時,使用者可能會遇到以下情況:影像顯示的顏色不正確。出現此問題的原因是 OpenCV 和 matplotlib 使用不同的顏色順序約定。
了解顏色順序差異
OpenCV 使用BGR(藍-綠-紅)作為預設值影像的顏色順序,而matplotlib 使用RGB(紅-綠-藍)進行操作。這種差異會導致在 matplotlib 中顯示 OpenCV 載入的影像時顏色失真。
解決方案:將BGR 轉換為RGB
要解決此問題,請明確從BGR 轉換影像使用下列程式碼行將其轉換為RGB:
RGB_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
使用轉換後的影像進行顯示
影像轉換為RGB 後,您可以將其用於繪圖原始BGR 影像的:
plt.subplot(1,2,i+1),plt.imshow(RGB_img,'gray')
透過採用此方法,影像將以準確的顏色顯示,與matplotlib 使用的傳統RGB 順序對齊。
以上是當我將 OpenCV 彩色影像載入到 matplotlib 中時,為什麼它們顯示不正確?的詳細內容。更多資訊請關注PHP中文網其他相關文章!