본문 바로가기

OpenCV5

[Python_OpenCV] 모폴로지 연산 (morphology) erode(침식), dilate(팽창) - erode는 모래사장에서 모래가 물에 조금씩 쓸려가 침식 되듯이, 커널에서 1의 영역이 사라져 가는 것을 말한다.- erode는 커널안에 하나의 1이라도 존재하게 된다면 0으로 표시한다. - dilate는 erode의 반대의 개념이라고 생각하면된다. erode(침식), dilate(팽창) 코드 import cv2 import numpy as np # 이미지 읽어오기 img = cv2.imread('ori_img1.jpg') # 이미지 크기 변환 img = cv2.resize(img, None, fx=0.7, fy=0.7, interpolation=cv2.INTER_AREA) # 커널 생성 kernel = np.ones((5,5),np.uint8) # para1 .. 2018. 9. 8.
[Python_OpenCV] Gaussian, Bilateral, Median flter 노이즈의 종류 - original image - salt-and-pepper noise : 랜덤으로 검거나 흰 점들이 마치 소금과 후추처럼 흩 뿌려져 있는 노이즈를 말한다.- gaussian noise : 정규 분포를 이르는 노이즈를 말한다. 쉽게말하면 일반적으로(일상적으로) 생기는 잡음을 말한다.(이미지 전체에 고르게 나타나는 잡음) Gaussian, Bilateral filter - 보통 가우시안 노이즈(백색 잡음)을 제거하는데 사용되어진다.- Gaussian과 Bilateral 두 필터 모두 잡음을 제거한다.- Gaussian과 Bilateral의 가장 큰 차이는 Bilateral의 경우 경계선이 뭉개지지 않는다. Gaussian, Bilateral filter 실행 코드 cv2.Gaussian(i.. 2018. 9. 6.
[Python_OpenCV] Templete Matching(템플릿 매칭) 매칭이란 작은 템플릿 이미지가 전체 이미지를 돌면서 가장 유사한 부분을 찾는 것을 말한다. - 템플릿 이미지 - 전체 이미지 - 코드 import numpy as np import cv2 img = cv2.imread("ori.jpg") imgray = cv2.cvtColor(img, cv2.COLOR_RGB2GRAY) w, h = imgray.shape[:2] templ = cv2.imread("templ.jpg", cv2.IMREAD_GRAYSCALE) templ_h, templ_w = templ.shape[:2] res = cv2.matchTemplate(imgray, templ, cv2.TM_CCOEFF_NORMED) loc = np.where(res >= 0.5) for pt in zip(*lo.. 2018. 7. 22.
[Python_OpenCV] Feature Matching (이미지 특성 매칭) 이미지 특성 매칭이란 이미지의 특징들을 찾아 유사한 특징점들을 연결하는 것을 말한다. 밑에서 동그란 점들은 각 이미지에서 찾은 특징들을 의미하고 선은 특정 값이상의 유사도를 가지는 특징쌍을 연결한것을 의미한다. - 이미지 매칭 결과 - 코드 import numpy as np import cv2 img1 =cv2.imread("1.jpg",cv2.IMREAD_GRAYSCALE) img2 =cv2.imread("eye.jpg",cv2.IMREAD_GRAYSCALE) img1 = cv2.resize(img1, None, fx=0.1, fy=0.1, interpolation=cv2.INTER_CUBIC) img2 = cv2.resize(img2, None, fx=0.7, fy=0.7, interpolation=.. 2018. 7. 22.