3 votos

Filtrar puntos cercanos dejando solo uno en QGIS

Tengo un shapefile con puntos, sin embargo, el algoritmo no dio uno solo por ubicación, sino varios. Necesitaría filtrar estos puntos, para que haya solo un punto, no importa cuál, de cada grupo de puntos. El ejemplo de puntos originales y puntos después de la filtración se puede ver a continuación: ingresar descripción de la imagen aquí

Sé que esto se podría hacer utilizando la opción de filtro de puntos de SAGA GIS, sin embargo, como tengo 3.22 millones de estos puntos, la herramienta no está funcionando. También intenté la solución de Agrupación dinámica de puntos en QGIS con la herramienta de desplazamiento de puntos de QGIS, sin embargo, al principio parece que los puntos han sido filtrados dejando solo uno, pero al hacer zoom, un punto en realidad son 3 puntos. Además, esto da un recuento total de puntos incorrecto.

ingresar descripción de la imagen aquí

¿Hay alguna otra opción de cómo se podría hacer esto utilizando QGIS u otras herramientas? ¿Quizás una solución en python?

0 votos

Aprox. 1 a 1.5 metros

1 votos

No estoy seguro si con 3.2 millones de puntos es la mejor solución, pero por supuesto, es una forma de hacerlo

0 votos

¿Hay campos de tabla de atributos que son comunes? ¿Quieres mantener un punto por grupo y conservar la tabla de atributos? ¿Obtener el número de punto? ¿Has intentado la herramienta de agrupación (en una selección de 10,000 para probar)?

3voto

Anton8000 Puntos 165

Puedes usar el clustering de DBSCAN para asignar a los puntos cercanos el mismo ID_DE_CLUSTER. Este algoritmo es muy rápido.

  1. Clustering de DBScan para asignar a los puntos cercanos el mismo cluster. Usé un mínimo de 2 puntos y una distancia de 100 m para mi conjunto de datos de edificios
  2. Selección aleatoria dentro de subconjuntos para seleccionar un punto por cluster
  3. Seleccionar por expresión para agregar a la selección todos los puntos con "ID_DE_CLUSTER" es nulo

Luego Copiar las entidades seleccionadas a un nuevo conjunto de datos.

Para mis 1,2 millones de puntos, esto tarda 15 s

ingresar descripción de la imagen aquí

1 votos

¡Gracias! Esto realmente funcionó. Con 3,2 millones de puntos, min puntos = 2 y distancia 1 m, la agrupación de DBScan solo tomó aproximadamente 40 segundos. Sin embargo, todavía encontré algunos grupos sin puntos seleccionados.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X