Eu tenho geopandas GeoDataFrame
contendo centenas de formas Polygon
e MultiPolygon
formas geométricas. Os polígonos se sobrepõem em muitos lugares. Gostaria de fazer uma nova geometria que contenha quantas delas se sobrepõem. Algo assim:
Alguém tem alguma idéia de como abordar isso? Eu nem consigo ver uma entrada.
Eventualmente, eu gostaria especialmente de poder ponderar os polígonos, para que alguns polígonos valessem 2 por conta própria. Fazer isso com shapely
o campo Z pode ser bom.
Além disso: não estou particularmente ligado a nenhuma dessas bibliotecas, é exatamente onde acabei. As coordenadas nessas geometrias são na verdade coordenadas de pixel - estou tentando fazer uma varredura sobreposta em outra imagem. Eu preferiria manter minha área ocupada o menor possível, pois gostaria de poder implantar essas coisas em servidores em nuvem, etc., onde talvez não seja possível instalar coisas aleatórias.
Respostas:
Pode estar fora de tópico, porque é uma solução postgresql / postgis:
No postgres / postgis, é uma simples consulta O (N ^ 2) que pode / pode ser adotada no geopanda.
e define 5 retângulos:
A solicitação de interseção com a própria tabela:
mostra quais áreas se cruzam:
Usando essa base, você pode agregar as contagens para cada objeto de ID por meio do grupo, clausel:
O resultado mostra o padrão desejado.
fonte