Учитывая изображение выше, мне нужно определить, что КРАСНЫЙ «подключен» к ЖЕЛТЫЙ (из-за зеленой линии), СИНИЙ и ФИОЛЕТОВЫЙ не связаны ни с чем.
В настоящее время я делаю что-то вроде:
- Создание координат для (прямой) линии между КРАСНЫМ и ЖЕЛТЫМ
- Проверка этих координат на наличие ЗЕЛЕНЫХ пикселей
- Оценка количества соответствующих ЗЕЛЕНЫХ пикселей и порогового значения числа «совпадений» для определения возможных «подключенных».
Это, очевидно, не так уж надежно в тех случаях, когда существует сильная кривая всоединительная линия.
У меня уже есть массив, который содержит только координаты зеленых пикселей (только), чтобы попытаться "пройти" зеленую линию из КРАСНОГО, используя запросы KDtree для соседних пикселей и т. д., но я не получаюочень далеко с этим.Есть ли функция numpy и т. Д., Которая позволила бы мне сделать это быстро, так как я считаю, что этот массив будет содержать путь соседних координат (от КРАСНОГО до ЖЕЛТЫХ), если они существуют.