ᐧ༚̮ᐧ Data Science | AI/Python

[컴퓨터 비전] 파이썬 OpenCV 튜토리얼: 설치, 이미지 읽기

Letter_B 2024. 11. 10. 09:56
728x90
반응형

 

Open Computer Vision Library (OpenCV)는 컴퓨터 비전과 이미지 처리에 자주 사용되는 오픈소스 라이브러리입니다. 처음에는 C++로 개발되었고, 핵심 기능 대부분이 C++로 구현되어 있어 매우 빠른 편이다. 딥러닝, 데이터과학의 인기가 높아지면서 파이썬 API도 제공되기 시작했으며, 이제 Python으로도 대부분의 기능을 사용할 수 있다.

 

이번 글에서는 파이썬에서 openCV를 설치하는 방법과 기본적인 이미지 처리 작업을 소개해보려고한다.

 


OpenCV 설치하고 불러오기

 

OpenCV를 설치하는 방법은 매우 간단합니다. 파이썬에서 pip 명령어를 사용하여 설치할 수 있습니다.

 

pip install opencv-python

 

설치를 한 후, 아래와 같이 라이브러리를 불러준다.

 

import cv2

 

 


주요 OpenCV 함수

 

  • cv2.imread('파일/경로'): 이미지 파일을 불러오기
  • cv2.imshow('창 이름', 이미지 변수): 이미지를 새로운 창에 띄우기.
  • cv2.waitKey(0): 사용자가 아무 키나 누를 때까지 창을 계속 띄워둔다. 숫자 값을 넣으면 해당 시간 (밀리초 단위) 동안 대기하고, 시간이 지나면 자동으로 창이 닫힌다. 0을 넣으면 키 입력이 있을 때까지 창을 띄운 상태를 유지한다.
  • cv2.destroyAllWindows(): 모든 OpenCV 창을 닫는다.

 

# 이미지 불러오기
image = cv2.imread('파일/경로/image.jpg')

# 이미지 화면에 표시
cv2.imshow('Image Window', image)
cv2.waitKey(0)
cv2.destroyAllWindows()

 

 

 

 

 

 

위와 같이, 새로운 창에서 이미지를 열고 싶지 않다면 matplotlib을 사용하여 이미지를 인라인으로 표시할 수 있다.

  1. Matplotlib로 표시하기:
    Matplotlib을 사용하면 별도의 창을 열지 않고 이미지를 인라인으로 표시할 수 있어, Jupyter Notebook에서 특히 유용하다.

OpenCV는 이미지를 BGR 형식(Blue(파랑), Green(초록), Red(빨강) 순서로 색상 채널이 배열된 이미지)으로 이미지를 불러온다. OpenCV의 BGR 이미지를 다른 라이브러리에서 올바르게 표시하려면 RGB로 변환해야 한다. cv2.cvtcolor 함수를 사용하여 색상 공간 변환을 해야 한다. 

 

import matplotlib.pyplot as plt

# OpenCV는 이미지를 BGR로 불러오므로, RGB로 변환
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)

plt.imshow(image_rgb)
plt.axis('off')
plt.show()

 

 

 

 

 

 

  • cv2.cvtColor(이미지 변수, cv2.COLOR_BGR2GRAY): 컬러 이미지를 흑백(그레이스케일)으로 변환한다.
  • cv2.imwrite('저장할 파일 이름', 이미지 변수): 이미지를 파일로 저장.

 

 

# 흑백 변환
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# 이미지 저장하기
cv2.imwrite('gray_image.jpg', gray_image)

 

 

 

흑백 변환 후 저장된 이미지

 

728x90
반응형