Как извлечь информацию skimage skimage в узлы и ребра NetworkX в python для дальнейшего расширенного анализа

В настоящее время я использую skimage в python, чтобы извлечь скелет открытого пространства из некоторой бинаризованной карты в виде следующих изображений,

Оригинальное изображение карты BW Скелетная открытая площадка

Со следующими кодами python:

from skimage.morphology import skeletonize from skimage import draw from skimage.io import imread, imshow from skimage.color import rgb2gray # load image from file img_fname=os.path.join('images','mall1_2F_schema.png') image=imread(img_fname) # Change RGB color to gray image=rgb2gray(image) # Change gray image to binary image=np.where(image>np.mean(image),1.0,0.0) # perform skeletonization skeleton = skeletonize(image) 

Теперь я хотел бы извлечь конечные точки и перекрестные точки из скелета в качестве узлов для объекта графика Networkx при вычислении расстояния между соседними узлами в качестве ребер для объекта Networkx Graph. В настоящее время мне приходится вручную получать координаты точек и вводить в процесс инициализации объекта NetworkX, есть ли у нас какой-либо более умный способ сделать все автоматически?

Кстати, я обнаружил, что ответ Ярона Кахановича на вопрос о stackoverflow предлагает аналогичные подходы. Однако больше предложений по реализации не было дано, и я думаю, что NetworkX может быть одним из подходов.

Любые предложения от вас очень ценятся.