[OpenCV] OpenCV 시작하기

heegon·4일 전

컴퓨터비전

목록 보기
1/2

OpenCV 설치

!pip install opencv-python-headless

OpenCV 라이브러리 임포트

import cv2
from google.colab.patches import cv2_imshow

=> colab에서 이미지를 표시하기 위해 cv2_imshow 사용

OpenCV 이미지 읽어오기 (cv2.imread)

예시 코드)

img1 = 'cat.jpg'
img_color = cv2.imread(img1, cv2.IMREAD_COLOR)

cv2.imread(이미지 파일명, 색상 옵션)

색상 옵션
cv2.IMREAD_COLOR -> 컬러 이미지로 읽기
cv2.IMREAD_GRAYSCALE -> 흑백 이미지로 읽기
cv2.IMREAD_UNCHANGED -> 알파 채널까지 그대로 읽기

OpenCV 이미지 저장하기 (cv2.imwrite)

예시 코드 )

cv2.imwrite('saved_image.jpg', img_color)

=> cv2.imread()를 통해 읽어온 이미지를 img_color 라는 변수에 담았다가, 'saved_image.jpg'라는 파일명으로 저장.

cv2.imwrite(저장할 파일명, cv2.imread()로 읽어온 이미지 변수명)

OpenCV 이미지 색상 변환하기 (cv2.cvtColor)

예시 코드 )

img_gray = cv2.cvtColor(img_color, cv2.COLOR_BGR2GRAY)
cv2_imshow(img_gray)
cv2.imwrite('gray_image.jpg', img_gray)

cv2.cvtColor(cv2.imread()로 읽어온 이미지 변수명, 색상변환옵션)

색상 변환 옵션
cv2.COLOR_BGR2GRAY -> 컬러를 흑백으로
cv2.COLOR_BGR2HSV -> 컬러를 HSV로

OpenCV 이미지 크기 조정 (cv2.resize)

예시 코드 )

h, w = img_color.shape[:2]
img_resized = cv2.resize(img_color, (w//2, h//2)

OpenCV에서 이미지는 NumPy 배열 형태이다.
(높이, 너비, 채널) 순서로 구성된 tuple 을 반환한다.
여기에서는 [:2]를 통해서 앞의 두 개 값(높이, 너비)만 가져오겠다는 뜻이다.

이미지 크기 변환을 위해 OpenCV에서는 cv2.resize(너비,높이) 순서로 값을 입력받는다.

OpenCV 이미지 블러 - 가우시안 블러

예시 코드 )

cv2.GaussianBlur(이미지파일명, (7,7), 0)

(7,7)은 커널 사이즈, 0은 자동 계산되는 표준 편차

cv2.GaussianBlur(cv2.imread()로 읽어온 이미지 변수명, 커널사이즈, 0)

OpenCV 이미지 블러 - 미디언 블러

예시 코드 )

cv2.medianBlur(이미지파일명, 7)

cv2.medianBlur(cv2.imread()로 읽어온 이미지 변수명, 커널사이즈)

OpenCV 이미지 크기 확인하기

cv2.imread()로 읽어온 이미지 변수명.shape

OpencV 전체 픽셀 수 확인하기

cv2.imread()로 읽어온 이미지 변수명.size

profile
❤️

0개의 댓글