Я работаю над программой, которая находит путь для экструдера для заполнения протяженных областей, представленных в виде белых областей на 2D-бинарных масках (размер маски 1280x720 пикселей). На маске всегда есть одна область. Длина всегда больше ширины. Ширина областей варьируется, но обычно примерно соответствует ширине экструдера (ширину выдавливания можно регулировать).
В настоящее время я нахожу путь, используя A* (библиотека поиска пути) с измененным двоичные маски (таким образом, что следование центральной линии дает «самый дешевый» путь).
Но у меня возникают трудности с поиском начальной и конечной точек для генерации пути. Я думал попытаться подогнать круги в конце каждого региона. Затем используйте их центральные точки в качестве начальных и конечных узлов для алгоритма поиска пути. Есть ли у вас идеи, как можно реализовать такую подгонку двух кругов по одному на каждом конце? Для справки, вот картинка, которую я рисую, чтобы проиллюстрировать, чего я пытаюсь достичь (пс. Я плохо рисую). Введите здесь описание изображения
Подробнее здесь: https://stackoverflow.com/questions/786 ... d-a-path-f