!pip install opencv-python-headless
import cv2
from google.colab.patches import cv2_imshow
=> colab에서 이미지를 표시하기 위해 cv2_imshow 사용
예시 코드)
img1 = 'cat.jpg'
img_color = cv2.imread(img1, cv2.IMREAD_COLOR)
cv2.imread(이미지 파일명, 색상 옵션)
색상 옵션
cv2.IMREAD_COLOR -> 컬러 이미지로 읽기
cv2.IMREAD_GRAYSCALE -> 흑백 이미지로 읽기
cv2.IMREAD_UNCHANGED -> 알파 채널까지 그대로 읽기
예시 코드 )
cv2.imwrite('saved_image.jpg', img_color)
=> cv2.imread()를 통해 읽어온 이미지를 img_color 라는 변수에 담았다가, 'saved_image.jpg'라는 파일명으로 저장.
cv2.imwrite(저장할 파일명, cv2.imread()로 읽어온 이미지 변수명)
예시 코드 )
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로
예시 코드 )
h, w = img_color.shape[:2]
img_resized = cv2.resize(img_color, (w//2, h//2)
OpenCV에서 이미지는 NumPy 배열 형태이다.
(높이, 너비, 채널) 순서로 구성된 tuple 을 반환한다.
여기에서는 [:2]를 통해서 앞의 두 개 값(높이, 너비)만 가져오겠다는 뜻이다.
이미지 크기 변환을 위해 OpenCV에서는 cv2.resize(너비,높이) 순서로 값을 입력받는다.
예시 코드 )
cv2.GaussianBlur(이미지파일명, (7,7), 0)
(7,7)은 커널 사이즈, 0은 자동 계산되는 표준 편차
cv2.GaussianBlur(cv2.imread()로 읽어온 이미지 변수명, 커널사이즈, 0)
예시 코드 )
cv2.medianBlur(이미지파일명, 7)
cv2.medianBlur(cv2.imread()로 읽어온 이미지 변수명, 커널사이즈)
cv2.imread()로 읽어온 이미지 변수명.shape
cv2.imread()로 읽어온 이미지 변수명.size