코드 및 이미지 : https://github.com/Seokii/Study_OpenCV
GitHub - Seokii/Study_OpenCV: study about OpenCV
study about OpenCV. Contribute to Seokii/Study_OpenCV development by creating an account on GitHub.
github.com
OpenCV를 활용하여 matplotlib에 이미지를 그려보겠습니다.
컬러 사진을 OpenCV에서는 BGR 순서로 저장하지만, matplotlib에서는 RGB 순서로 저장합니다. 따라서 BGR 순서를 RGB순서로 바꿔주어야만 사진이 제대로 출력됩니다.
cv2.cvtColor(src, code)
- 이미지 소스 경로
- 변환시킬 값
반환시킬 수 있는 값으로는
- cv2.COLOR_BGR2GRAY : BGR 이미지를 GRAYSCALE 이미지로 변환
- cv2.COLOR_BGR2RGB : BGR 이미지를 RGB 이미지로 변환
- cv2.COLOR_BGR2HSV : BGR 이미지를 HSV 이미지로 변환
- cv2.COLOR_BGR2YUV : BGR 이미지를 YUV 이미지로 변환
- cv2.COLOR_GRAY2RGB : GRAYSCALE 이미지를 BGR 이미지로 변환
- cv2.COLOR_HSV2BGR : HSV 이미지를 BGR 이미지로 변환
- cv2.COLOR_YUV2BGR : YUV 이미지를 BGR 이미지로 변환
- cv2.COLOR_RGB2BGR : RGB 이미지를 BGR 이미지로 변환
등이 있습니다.
주피터 노트북으로 구현하기
import cv2
import matplotlib.pyplot as plt
- 필요한 라이브러리를 불러옵니다. (OpenCV, matplotlib)
dog_image = cv2.imread("images/dog.jpg", cv2.IMREAD_COLOR)
- 사진 파일을 cv2.imread() 함수로 불러옵니다.
fig = plt.figure(num=1, figsize=(4,5))
plt.imshow(dog_image), plt.title('Original')
(<matplotlib.image.AxesImage at 0x271f9f55580>, Text(0.5, 1.0, 'Original'))
- matplotlib로 이미지 출력을 위한 figure 객체를 생성합니다.
- figure 객체에 이미지를 표시하고 제목을 지정합니다.
- matplotlib는 RGB 컬러로 표시하기 때문에 원래 색의 보색으로 이미지가 표시됩니다.
rgb_dog = cv2.cvtColor(dog_image, cv2.COLOR_BGR2RGB)
- cv2.cvtColor() 함수로 컬러 공간 변환을 통해 BGR 이미지를 RGB 이미지로 변환시킵니다.
fig = plt.figure(num=1, figsize=(4,5))
plt.imshow(rgb_dog), plt.title('Original')
plt.title('RGB_dog')
Text(0.5, 1.0, 'RGB_dog')
- 변환된 이미지를 위의 과정과 동일하게 진행하여 출력합니다.

- 좌측이 기존의 BGR 이미지이며 우측이 변환된 RGB 이미지입니다.
도움이 되셨다면 아래 광고 한 번만 클릭해주세요 감사합니다!
'머신러닝 & 딥러닝 > 컴퓨터 비전' 카테고리의 다른 글
| [OpenCV with Python] - 08. 컬러 채널 분리하기 (0) | 2021.09.21 |
|---|---|
| [OpenCV with Python] - 07. 사진 뒤집기, 반복, 전치 반환 (0) | 2021.09.16 |
| [OpenCV with Python] - 05. 사진 파일 불러오기 (0) | 2021.09.12 |
| [OpenCV with Python] - 04. 텍스트 입력해보기 (0) | 2021.09.04 |
| [OpenCV with Python] - 03. 간단한 도형 그리기 (선, 사각형, 원) (0) | 2021.09.04 |
댓글