18 Oct QIGS: nubes de puntos, elevación y mejoras en vista 3D
QGIS, próximas funcionalidades relacionadas con nubes de puntos, perfiles de elevación y mejoras en la vista de mapa 3D.
¡Lutra Consulting, North Road y Hobu están colaborando en una nueva campaña de financiación colectiva para ampliar estas capacidades en futuros lanzamientos de QGIS!
Los objetivos de esta campaña son:
Agregar algoritmos de gestión, transformación y análisis de datos de nubes de puntos.
Las herramientas estarán basadas en PDAL. Por ejemplo, con la introducción de estas herramientas, los usuarios podrán utilizar la caja de herramientas de procesamiento de QGIS para crear o fusionar mosaicos de nubes de puntos, crear DEM rasterizados a partir de puntos terrestres y otros algoritmos. También nos aseguraremos de que los conjuntos de datos grandes (tamaño de terabytes) se puedan manejar bien tanto para la visualización como para el análisis.
Mejoras de la herramienta de perfil.
La herramienta de perfil se introdujo en QGIS 3.26 y demostró ser una forma poderosa de interactuar con los datos de elevación. Con las nuevas mejoras, podrá incrustar perfiles de elevación en sus diseños de impresión, exportar el perfil a otros formatos (por ejemplo, DXF o CSV) y mucho más.
Mejoras en mapas 3D:
Sus datos cobran vida cuando se abren en escenas 3D. Habrá más mejoras para manejar escenas grandes, mejor navegación y medición.
Si se superan los fondos para los requisitos anteriores, gastaremos los fondos adicionales para introducir nuevas herramientas de sombreado del terreno, mejorar el rendimiento de la representación de perfiles y agregar más control definido por datos sobre objetos 3D.
Un ejemplo de representación de nube de puntos y ráster en el mapa 3D de QGIS.
Ejemplo de datos de nube de puntos clasificados en QGIS.
Propuesta detallada y entregables
Procesamiento de nubes de puntos en QGIS
Hasta ahora, nuestros esfuerzos se han centrado únicamente en la visualización de nubes de puntos en QGIS. Las tareas relacionadas con el análisis de datos de nubes de puntos se han dejado en manos de herramientas de terceros. Si bien algunas de estas herramientas también incluyen integración con QGIS, generalmente tienen una funcionalidad limitada o son productos patentados con licencias pagas.
A medida que la visualización de datos de nubes de puntos en QGIS ha ido madurando, ¡nos encantaría centrarnos también en el análisis de nubes de puntos! Afortunadamente, no necesitamos ir muy lejos: QGIS ya usa la biblioteca PDAL para manejar datos de nubes de puntos. PDAL es una biblioteca de código abierto de última generación para la manipulación de nubes de puntos. Actualmente, QGIS usa solo una pequeña fracción de lo que realmente ofrece la biblioteca PDAL. Siempre fue nuestro plan introducir más de su funcionalidad para uso directo en QGIS.
PDAL permite a los usuarios crear flujos de trabajo de procesamiento de datos complejos al conectar partes de su funcionalidad. A partir de ahora, hay más de 70 filtros disponibles para manipular datos de nubes de puntos, junto con docenas de controladores para soporte de lectura/escritura de varios formatos.
Si bien PDAL es un gran motor para procesar nubes de puntos, el proyecto está dirigido a usuarios avanzados que entienden varias peculiaridades de los formatos de nubes de puntos y pueden conectar piezas de funcionalidad de nivel relativamente bajo a canalizaciones utilizando archivos JSON.
Nos gustaría hacer que el procesamiento de nubes de puntos sea accesible para una amplia gama de usuarios de QGIS, por lo que desarrollaremos un conjunto de herramientas de línea de comandos detrás de escena que envolverían la funcionalidad PDAL de una manera más fácil de usar y con opciones predeterminadas sensatas. . Cada herramienta se encargará de una tarea particular que el usuario debe realizar (recortar datos, convertir a DEM ráster, etc.). Si bien estas herramientas de línea de comandos podrían usarse independientemente de QGIS, ¡nuestra prioridad es hacer que sea muy fácil acceder a ellas directamente a través de QGIS!
PDAL también intencionalmente no se ocupa del paralelismo y deja cualquier paralelización del procesamiento de datos a los clientes de la biblioteca. Esto es algo justo, sin embargo, para muchos usuarios es difícil lidiar con ejecuciones paralelas de tuberías. Haremos todo lo posible para que las herramientas realicen el procesamiento en paralelo (usando todas las CPU en una sola máquina), para que los usuarios no tengan que preocuparse y sigan usando toda la potencia de sus máquinas.
Procesamiento paralelo de datos de nubes de puntos en mosaico a un modelo de elevación digital ráster.
En QGIS presentaremos un nuevo proveedor para la caja de herramientas de procesamiento que hará que los algoritmos sean accesibles en una interfaz de usuario familiar (por ejemplo, GDAL). Al implementar las herramientas de manipulación de nubes de puntos en el marco de procesamiento, proporcionaremos a los usuarios una interfaz común para acceder a estas herramientas y también permitiremos su uso en operaciones avanzadas, como el procesamiento por lotes o al crear modelos gráficos.
Se proporcionarán dos grupos de algoritmos para su uso en el procesamiento de QGIS. El primer grupo se centra en la manipulación básica de datos de nubes de puntos:
- Información: descubra más detalles sobre un conjunto de datos de nube de puntos (cree un informe en HTML).
- Límite y densidad: obtenga la forma real del área cubierta por la nube de puntos y proporcione estadísticas de densidad de datos.
- Combinar: combine múltiples archivos de nubes de puntos en un solo archivo.
- Mosaico: convierta la nube de puntos de entrada en múltiples mosaicos.
- Reproyectar: aplicar una transformación CRS horizontal a una nube de puntos.
Datos de nube de puntos de origen (arriba a la izquierda), densidad de nube de puntos (arriba a la derecha), polígono de límite extraído (abajo a la izquierda), DEM de ráster exportado (abajo a la derecha).
El segundo grupo de herramientas creará datos derivados de una nube de puntos:
- Exportar a ráster usando interpolación: para cada celda ráster usará puntos de su vecindad para determinar el valor.
- Exportar a ráster usando triangulación: todo el conjunto de datos primero se triangula, las celdas ráster obtienen valores interpolados a partir de triángulos.
- Exportar a capa vectorial: los puntos individuales se guardarán como geometrías de puntos XYZ.
Maqueta de la integración de la caja de herramientas de procesamiento con algoritmos de nube de puntos.
Una vez que se haya realizado el trabajo inicial y la infraestructura subyacente esté en su lugar, ¡será fácil agregar algoritmos de nube de puntos adicionales a la caja de herramientas! (Suponiendo que la funcionalidad PDAL ya exista). Esperamos que el conjunto inicial de herramientas se amplíe rápidamente para incluir herramientas como clasificación, filtrado de ruido, cálculo de altura sobre el suelo, agrupamiento, reconstrucción de superficies y varias otras; todas estas ya están disponibles en PDAL, simplemente no estarán disponibles en QGIS desde el principio.
Un modelo de procesamiento de QGIS de muestra para crear un DEM ráster y contornos a partir de un conjunto de datos de nube de puntos cuando los algoritmos de procesamiento de nubes de puntos estén disponibles en QGIS.
Manejo de grandes conjuntos de datos
Los datos de la nube de puntos normalmente se distribuyen como una colección de múltiples archivos LAS/LAZ. Cargar grandes cantidades de archivos de nubes de puntos en QGIS actualmente no es muy práctico: hay muchas capas de mapas individuales para manejar, combinados con posibles problemas de rendimiento y/o problemas de diseño de cada capa por separado.
La idea es hacer posible cargar grandes conjuntos de datos que consisten en muchos archivos LAS/LAZ como uncapa de nube de un solo punto en QGIS, evitando los problemas descritos anteriormente. Cuando se trata de grandes conjuntos de datos, QGIS inicialmente solo mostrará la extensión de los archivos individuales, y solo una vez que se amplíe más, se cargarán los datos reales (esta vez necesitando leer solo uno o algunos archivos).
Mosaicos de nubes de puntos, cuando se alejan mostrando los nombres de los mosaicos y mostrando los mosaicos cuando se acercan.
Alternativamente, si una nube de puntos de “vista general” reducida se asociara con el conjunto de datos, QGIS podrá mostrarla para un mejor contexto en lugar de solo mostrar la extensión de los mosaicos.
Un conjunto de datos de nube de puntos grande visualizado como un conjunto de mosaicos (1 km 2 cada uno) en comparación con la representación de los datos de nube de puntos reales (utilizando una nube de puntos de submuestra).
Presentaremos el concepto de “nubes de puntos virtuales”, similar a los rásteres virtuales (archivos vrt) que puede conocer de GDAL. Habrá un solo archivo que hará referencia a otros archivos de nubes de puntos que deben tratarse como un solo conjunto de datos.
Un archivo de nube de puntos virtual que hace referencia a otros archivos (por ejemplo, LAS/LAZ o COPC).
La especificación del formato del archivo aún se está discutiendo, pero se diseñará para que sea fácil de usar y pueda ser adoptado también por otros proyectos de software.
La caja de herramientas de procesamiento también utilizará el concepto de nubes de puntos virtuales: una nube de puntos virtuales se puede usar como un conjunto de datos de entrada y los algoritmos de procesamiento también pueden devolver nubes de puntos virtuales.
Mejoras en la herramienta de perfil de elevación
Desde la introducción de la herramienta de perfil de elevación en QGIS 3.26, hemos recibido muchos comentarios excelentes y decidimos mejorar aún más sus capacidades.
Una de las características más solicitadas para la nueva herramienta de perfiles fue la capacidad de incrustar perfiles de elevación dentro de los diseños de impresión. Estaremos agregando esta funcionalidad, haciendo posible agregar perfiles bellamente diseñados en sus resultados de impresión. Obtendrá control total sobre la apariencia de sus gráficos de elevación, hasta la personalización de las fuentes, los colores y los estilos de línea utilizados para el eje del gráfico y otros elementos.
Por supuesto, también haremos posible que los perfiles de elevación se generen dinámicamente durante las exportaciones del atlas. Por ejemplo, podrá incluir un perfil de elevación diferente generado automáticamente para cada página individual de su exportación de atlas, ¡sin necesidad de código!
Otra característica muy solicitada ha sido la capacidad de exportar perfiles de elevación para su uso en otras aplicaciones. Haremos posible exportar sus perfiles a CSV y a DXF, para que pueda usar los datos de origen de los perfiles en software de terceros.
Actualmente, la escala de los ejes horizontal y vertical en los perfiles de alzado son siempre independientes. Si bien esto es útil en algunos casos, en otros casos se necesitan las formas reales (sin distorsiones) de los objetos y puede ser un poco difícil establecer estas escalas de manera que coincidan perfectamente. Para manejar esto, se agregará una nueva opción para bloquear los ejes horizontal y vertical para tener la misma escala.
¡Pero eso no es todo! También estamos planeando algunas mejoras adicionales para que la herramienta sea más fácil de usar:
- Selección de capa mejorada para la creación de perfiles de capa y selección predeterminada más inteligente de capas para incluir en nuevos gráficos
- Recordar las capas que haya marcado en el perfil de elevación, para que se restauren automáticamente cada vez que se abra un nuevo perfil.
- Agregue una opción de unidades para el eje de distancia (por ejemplo, metros, kilómetros, pies, etc.)
- Manejar polilíneas que comparten un segmento con la curva capturada
- Admite la interpolación de datos ráster para evitar resultados con apariencia de bloques
Vistas de mapas en 3D
Los proyectos que contienen capas de mapa de fondo que abarcan todo el mundo a menudo hacen que la vista 3D se comporte mal. Si bien solucionar todos los problemas subyacentes es una tarea difícil que está más allá del alcance de este proyecto, la mayoría de las veces el área de interés real de un proyecto es mucho más pequeña. Introduciremos una opción para limitar la extensión espacial de la vista de mapa 3D, que corregirá el comportamiento deficiente de la vista 3D.
Medir distancias en vistas de mapas 3D es una funcionalidad deseada y ha estado disponible para un par de versiones de QGIS. Sin embargo, la herramienta de medición en 3D está lejos de ser ideal: la línea de medición no sigue al cursor del mouse (como es el caso en las vistas de mapa 2D), las líneas de medición pueden quedar fácilmente ocluidas por otros objetos 3D y los puntos seleccionados pueden ser difíciles de detectar ( no están resaltados). Nos gustaría solucionar estos problemas y esto nos acercará también a futuros casos de uso, como la compatibilidad con la edición en 3D.
También vamos a mejorar aún más los controles de la cámara para que el movimiento de la cámara sea aún más intuitivo. Finalmente, echaremos un vistazo a la creciente lista de opciones en el cuadro de diálogo de configuración de vistas de mapas 3D y mejoraremos su usabilidad de varias maneras.
Nubes de puntos e IA + Hackathon con VirtuaLearn3D (VL3D)
El próximo 11 de noviembre te...