[Computer vision] 이진화 영상 팽창(dilation), 침식(erosion), 열기(open), 닫기(close)
import cv2 import numpy as np import matplotlib.pyplot as plt from google.colab.patches import cv2_imshow %matplotlib inline def plot_img(images, titles): fig, axs = plt.subplots(nrows = 1, ncols = len(images), figsize = (15, 15)) for i, p in enumerate(images): axs[i].imshow(p, 'gray') axs[i].set_title(titles[i]) #axs[i].axis('off') plt.show() !wget https://www.shrednations.com/wp-content/upload..
2021. 12. 3.
[Computer vision] 이진영상 라벨링하기 / 4연결성(4-neighbors), 8연결성(8-neighbors)
라벨링(labeling) 이란? 영상 내에 존재하는 객체 픽셀 집합에 고유 번호를 매기는 작업으로, 연결된 구성 요소 레이블링 이라고도 함 4 연결성 (4-neighbors) 4 연결성 : 특정 픽셀의 상하좌우로 붙어있는 픽셀끼리 연결되어 있다고 정의 8 연결성 (8-neighbors) 8 연결성 : 특정 픽셀의 상하좌우뿐만 아니라 대각선 방향으로 인접한 픽셀까지 연결되어 있다고 정의 이진 영상 불러오기 img = cv2.imread('sample.png') plt.imshow(img) 4 연결성 (4-neighbors) 라벨링 구현 def bfs(origin,check,colors,i,j,r,c,current_label) : q = deque([]) q.append([i,j]) dir =((1,0),(..
2021. 10. 27.