파이썬 OpenCV / 이미지 로그 및 정보 조회, BGR -> RGB 변환
OpenCV는 실시간 컴퓨터 비전을 목적으로 한 프로그래밍 라이브러리로써, 이미지에서 패턴이나 물체를 인식하는 능력이 좋습니다. 이미지에서 얼굴이나 사물을 인식하기 위해 많이 사용됩니다.
OpenCV 라이브러리를 이용해서 간단히 이미지를 로드하여 보겠습니다.
OpenCV 라이브러리 설치
주피터 노트북을 사용하여 설치해 보겠습니다.
주피터 노트북 설치는 아래 링크에서 확인하시면 됩니다.
https://zidarn87.tistory.com/314
주피터 노트북에서 아래 명령어를 입력하여 실행시키면 설치됩니다.
pip install opencv-python
이미지 복사
로드하려는 이미지를 jupyter의 저장공간에 업로드합니다.
원본 파일은 아래와 같습니다.
이미지 로드
OpenCV의 imread 함수로 이미지를 로드하고,
matplotlib.pyplot 모듈로 이미지를 출력합니다.
imread 함수에는 옵션을 넣을 수 있는데, 사물을 인식하기 위해 흑백 모드를 많이 사용합니다.
OpenCV에서는 컬러 사진을 BGR 순서로 저장하고, matplotlib에서는 RGB 순서로 저장하기 때문에 BGR 순을 그대로 출력하게 되면 아래와 같이 원본과 색상이 다른 것을 볼 수 있습니다.
BGR 사진을 RGB 사진으로 변환
RGB로 변환하는 방법은 간단합니다.
cvtColor 함수로 이미지를 로드하는데, 옵션값으로 cv2.COLOR_BGR2RGB를 넣어줍니다.
반환된 이미지 객체를 출력하면 원본 사진과 동일한 색상으로 출력되는 것을 볼 수 있습니다.
이미지 정보 확인
OpenCV 라이브러리의 imread 함수로 반환되는 객체의 타입은 numpy.ndarray 타입입니다.
배열로 구성되어 있는데, 그 크기는 (576, 768) 입니다.
결국 이미지도 숫자로 이루어져 있다는 것을 알 수 있습니다.