Published on

OpenCV 이미지 변환

Authors
  • avatar
    Name
    Inhwan Cho
    Twitter

Grayscale, GaussianBlur

import cv2

img = cv2.imread('cat_img.jpg')
# 컬러 -> 흑백으로 변환
imgGray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

# ksize == kernel size이므로 홀수만 사용 가능, sigmaX는 블러 정도라고 생각하면 편하며,
# 보통 -3~3사이의 값을 사용
imgBlur = cv2.GaussianBlur(imgGray, ksize=(7,7),sigmaX=3)

cv2.imshow('output',imgGray)
cv2.imshow('output2',imgBlur)

cv2.waitKey(0)
  • 결과 imgGray
그레이 이미지
  • 결과 imgBlur
blur 이미지

Canny, Dialation

import cv2

img = cv2.imread('cat_img.jpg')

imgCanny = cv2.Canny(img,100,100)

kernel = np.ones((5,5), np.uint8)
# iterations에 높은 수를 넣으면 윤곽선이 더 커집니다.
imgDialation = cv2.dilate(imgCanny, kernel=kernel,iterations=1)

imgEroded = cv2.erode(imgDialation, kernel=kernel, iterations=1)

cv2.imshow('output3',imgCanny)
cv2.imshow('output4',imgDialation)
cv2.imshow('output5',imgEroded)

cv2.waitKey(0)
  • 결과 imgCanny
Canny
  • 결과 imgDialation
Dialation
  • 결과 imgEroded
Eroede img