Python/Image vision

Image Contours Contours란 동일한 색 또는 동일한 강도를 가지고 있는 영역의 경계선을 연결한 선입니다. 주의! OpenCV에서 Contour 찾기는 검정색 배경에서 흰색 물체를 찾는 것. 정확도를 높히기 위해서 Binary Image를 사용합니다. threshold나 canny edge를 선처리로 수행합니다. cv2.findContours() 함수는 원본 이미지를 직접 수정하기 때문에, 원본 이미지를 보존 하려면 Copy해서 사용해야 합니다. OpenCV에서는 contours를 찾는 것은 검은색 배경에서 하얀색 대상을 찾는 것과 비슷합니다. 그래서 대상은 흰색, 배경은 검은색으로 해야 합니다. cv2.findContours(image, mode, method[, contours[, hi..
Image Filtering 고주파를 제거하면 Blur처리가 되며, 저주파를 제거하면 대상의 영역을 확인할 수 있습니다. Low-pass filter(LPF)와 High-pass filter(HPF)를 이용하여, LPF를 적용하면 노이즈제거나 blur처리를 할 수 있으며, HPF를 적용하면 경계선을 찾을 수 있습니다. OpenCV에서는 cv2.filter2D() 함수를 이용하여 이미지에 kernel(filter)를 적용하여 이미지를 Filtering할 수 있습니다. kernel은 행렬을 의미하는데 kernel의 크기가 크면 이미지 전체가 blur처리가 많이 됩니다. Filter가 적용되는 방법은 이미지의 각 pixel에 kernel을 적용합니다. 위 kernel을 예로들면 각 pixel에 5X5윈도우를 ..
기본 임계처리 cv2.threshold(src, thresh, maxval, type) → retval, dst _, thresh1 = cv2.threshold(img,127,255, cv2.THRESH_BINARY) src – input image로 single-channel 이미지.(grayscale 이미지) thresh – 임계값 maxval – 임계값을 넘었을 때 적용할 value type – thresholding type cv2.THRESH_BINARY cv2.THRESH_BINARY_INV cv2.THRESH_TRUNC cv2.THRESH_TOZERO cv2.THRESH_TOZERO_INV (참고) 여러 이미지를 하나의 화면에 보여줄때 plt.subplot() 함수를 사용합니다. for i ..
noodle-dev
'Python/Image vision' 카테고리의 글 목록 (3 Page)