Я использую GPC (General Polygon Clipper) создавать наборы изображений. Я не могу определить, являются ли изображения из непересекающихся множеств, хотя.
Я использую gpc_polygon
Структура, определенная по ссылке выше, чтение списка вершин из данных изображения (широта / долгота углов) … И последовательное добавление изображений в многоугольник.
Важно разделить изображения, которые принадлежат отдельным регионам. Хотя я не могу с уверенностью сказать, что площадь пересечения будет отличной от нуля (это было бы идеальным тестом), я заметил, что num_contours
завершенного многоугольника совпадает с количеством различных областей.
Я думал, что я могу использовать num_contours
определить, принадлежит ли изображение к набору.
Тем не менее, когда я добавляю изображения, я вижу, что на одном изображении num_contours = 1, после второго оно увеличивается до 2 (независимо от того, находится изображение в том же разделе или нет, и это имеет смысл) … но это не так после этого не увеличится, пока шаблон разрозненных изображений действительно не отключится, поэтому я не могу использовать его для тестирования, по крайней мере, сам по себе.
Это то же самое, что я удаляю изображения из полигона, используя оператор DIFF.
Если кто-то еще использовал GPC или какой-либо другой метод свертки полигонов, возможно, вы можете дать мне несколько советов о том, что я могу использовать, чтобы определить, какие изображения принадлежат каждому контуру, чтобы я мог разделить их до или после создания полигона?
Я использовал num_contours с предельным значением 2 вместо 1, и мне пришлось итеративно возвращаться назад и пытаться повторно добавлять контуры, пока я не смог их добавить. Решение является неоптимальным, может быть очень медленным, и существуют ситуации, когда многоугольники, которые не принадлежат друг другу, оказываются в одном контуре.
Других решений пока нет …