У меня есть список (x, y) -координатов, которые представляют собой скелет линии. Список получается непосредственно из двоичного изображения:
import numpy as np
list=np.where(img_skeleton>0)
Теперь точки в списке сортируются в соответствии с их положением на изображении вдоль одной из осей.
Я хотел бы отсортировать список таким образом, чтобы порядок представлял собой гладкий путь вдоль линии. (В настоящее время это не тот случай, когда линия отклоняется назад). Впоследствии я хочу поместить сплайн в эти точки.
Аналогичная проблема была описана и решена с использованием arcPy здесь. Есть ли удобный способ достичь этого с помощью python, numpy, scipy, openCV (или другой библиотеки?)
ниже - пример изображения. он приводит к списку 59 (x, y) -координатов.
когда я отправляю список в процедуру scipy spline fitting, я столкнулся с проблемой, потому что точки не "упорядочены" в строке: