OpenCV 이미지 로딩 색상 불일치 해결
이후 플로팅을 위해 Python OpenCV를 사용하여 컬러 이미지를 로딩할 때 표시된 색상이 왜곡되어 나타나는 것이 관찰됩니다. . 이 문제는 OpenCV와 matplotlib에서 사용하는 서로 다른 색 공간 표현으로 인해 발생합니다.
색 공간 차이 이해:
OpenCV는 BGR(Blue-Green-Red)을 사용합니다. ) 색상 공간을 사용하는 반면 matplotlib는 RGB(Red-Green-Blue) 색상 공간을 활용합니다. 이러한 비호환성으로 인해 이미지를 표시할 때 색상이 혼합됩니다.
문제 해결:
이 문제를 해결하려면 이미지를 다음으로 변환해야 합니다. RGB 색상 공간을 플로팅하기 전에. 이 작업은 OpenCV의 변환 기능을 사용하여 수행할 수 있습니다.
<code class="python">RGB_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)</code>
이 단계를 통해 플롯된 이미지의 색상이 원본 입력 이미지를 정확하게 반영하도록 할 수 있습니다.
예:
다음 코드 조각은 이 솔루션을 보여줍니다.
<code class="python">import cv2 import matplotlib.pyplot as plt # Loading the image using OpenCV (BGR by default) img = cv2.imread('lena_caption.png') # Converting the image to RGB RGB_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # Plotting the original and converted RGB image plt.subplot(1, 2, 1), plt.imshow(img) plt.title('Original Image (BGR)') plt.subplot(1, 2, 2), plt.imshow(RGB_img) plt.title('Converted RGB Image') plt.show()</code>
이 변환 기술을 사용하면 색상 왜곡 없이 OpenCV 및 matplotlib를 사용하여 색상 이미지를 성공적으로 로드하고 플롯할 수 있습니다.
위 내용은 **Matplotlib로 플롯할 때 OpenCV 이미지가 색상이 왜곡되어 나타나는 이유는 무엇입니까?**의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!