Matplotlib을 이용한 영상 출력
(1) Matplotlib 라이브러리
Matplotlib 특징
- 함수 그래프, 차트, 히스토그램 등의 다양한 그리기 기능을 제공하는 Python 패키기
- OpenCV를 사용하기 위해 반드시 설치해야 하는 라이브러리는 아니지만 numpy.ndarray 영상 데이터를 다양한 형태로 출력할 때 사용 가능
- 특히 주피터 노트북 환경에서 영상을 웹브라우저 안에 출력할 때 유용
Matplotlib 설치
pip install matplotlib
(2) Matplotlib으로 영상 출력하기
컬러 영상 출력
- OpenCV에서 불러온 컬러 영상 데이터는 BGR 순서이지만, Matplotlib는 영상 데이터의 색상 순서가 RGB 순서
- 그러므로 cv2.cvtColor() 함수로 색상 순서 변경해야 함
img = cv2.imread('cat.bmp')
plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
plt.show()
그레이스케일 영상 출력
- plt.imshow()에서 컬러맵을 cmap='gray' 으로 지정해야 함
img = cv2.imread('cat.bmp', cv2.IMREAD_GRAYSCALE)
plt.imshow(img, cmap='gray')
plt.show()
하나의 창에 여러 개 영상 출력
import matplotlib.pyplot as plt
import cv2
imgBGR = cv2.imread('cat.bmp')
imgRGB = cv2.cvtColor(imgBGR, cv2.COLOR_BGR2RGB)
imgGray = cv2.imread('cat.bmp', cv2.IMREAD_GRAYSCALE)
plt.subplot(121), plt.axis('off'), plt.imshow(imgRGB)
plt.subplot(122), plt.axis('off'), plt.imshow(imgGray, cmap='gray')
plt.show()
plt.subplot(211), plt.axis('off'), plt.imshow(imgRGB)
plt.subplot(212), plt.axis('off'), plt.imshow(imgGray, cmap='gray')
plt.show()