1 Ввод
Учитывая изображение края, я хочу получить компоненты в нем по одному и сохранить каждыйКомпонент как изображение, так что я могу использовать его позже для обработки.Я думаю, это называется маркировкой подключенных компонентов.
Например, во входном изображении есть 2 строки, 1 кружок, 2 кривые. Я хочу 5 файлов изображений, содержащих эти 5 компонентов.
Я смог придумать код, как показано ниже, но я не знаю, как действовать дальше.В настоящее время я получаю все компоненты, окрашенные в разные цвета на выходе.
import scipy
from skimage import io
from scipy import ndimage
import matplotlib.pyplot as plt
import cv2
import numpy as np
fname='..//Desktop//test1.png'
img = cv2.imread(fname)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
#canny
img_canny = cv2.Canny(img,100,200)
threshold = 50
# find connected components
labeled, nr_objects = ndimage.label(img_canny)
print('Number of objects is %d'% nr_objects)
plt.imsave('..//Desktop//out.png', labeled)
Вывод
Новый вывод