Это на самом деле предназначено для функции roipoly в matlab, но это можно рассматривать как общую проблему.n * n блоков и многоугольников
Roipoly - это функция, которая позволяет u выбирать полигон над изображением и возвращает двоичную маску, где u может использовать ее для получения индексов нужного полигона. (Это просто нормальный многоугольник).
Мое приложение (K-Nearest Neighbor) требует, чтобы я делал n n блоков из данных, которые у меня есть (многоугольник), т.е. если у меня есть многоугольник (дорога или участок земли), я хочу n квадрат, перемещающийся по нему, избегая пересечения с ребрами и помещая эти n * n пикселей в некоторую переменную.
Эта проблема была бы намного проще, если бы у меня были все мои фигуры в форме прямоугольников, но, к сожалению, это не так. У меня могло бы быть что-то диагональное, круговое или просто нерегулярное.
Есть ли известный алгоритм, который я могу реализовать? или что-то, что уже делает это или может облегчить работу в Matlab?
Я уже работаю над этим, но его довольно сложно, я хочу убедиться, что я не трачу время на создание колеса где-то.
Любые идеи?
Отредактировано, спасибо за комментарий ура, я как бы потерялся, когда писал вопрос раньше. – omarzouk