Куда мне обратиться, чтобы найти алгоритмы, которые принимают двумерную сетку значений, которые либо равны 0 или 1, а затем идентифицируют все возможные непересекающиеся прямоугольники в ней?
В более практическом объяснении: я рисую сетку, которая представлена числом квадратов, и я хочу найти способ объединить столько смежных квадратов в прямоугольники, сколько возможно, чтобы сократить затраченное время на велосипеде через каждый квадрат и рисование его.
Максимальная эффективность не нужна, скорость важнее.
Приложение: По-видимому, то, что я ищу, кажется техникой, называемой тесселяцией. Теперь мне нужно только найти хорошее описание для этого конкретного случая.
Приложение 2: Граница квадратов "1" будет нерегулярной, а в некоторых случаях даже не связана, так как распределение квадратов "1" будет совершенно случайным. Мне нужно, чтобы эти неправильные формы были определены и разбиты на правильные прямоугольники.
Правильный ответ: Чтобы получить наилучший баланс между скоростью и эффективностью, оптимально использовать данные сетки для заполнения четырехугольного дерева, причем каждый узел имеет значение состояния либо пустое / частично заполненное / заполненное .