silvilidar / SilviLiDAR

Script para Qgis para procesar datos LiDAR PNOA
GNU General Public License v3.0
10 stars 0 forks source link

Error python complemento silvilidar en Qgis 3.30 #1

Open corteza10 opened 1 year ago

corteza10 commented 1 year ago

Buenas,

Antes de nada felicitaciones y gracias por su trabajo con Silvilidar después de este tiempo.

Estoy intentando lanzar el script mediante el reciente complemento de Qgis con datos .laz recientes classificados del IGN en Francia y obtengo el error que les muestro màs abajo. Con la anterior version de Qgis también me daba el mismo error.

A priori no parece que sea causado por los datos lidar en si (proyeccion en L93 EPSG : 2154). Simplemente ningùn archivo .csv se crea...

Se lo comunico en todo caso por si hubiera que revisar algo en el script. Un saludo

Traceback (most recent call last): File "C:\Users//AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\silvilidar\silvilidar.py", line 1104, in run buscalidaryejecuta(carpeta, crecimiento, fccbaja, fccterrazas, fccmedia, fccalta, hmontebravoe, hmontebravo, File "C:\Users//AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\silvilidar\silvilidar.py", line 336, in buscalidaryejecuta exprimelidar(las, carpeta, crecimiento, fccbaja, fccterrazas, fccmedia, fccalta, hmontebravoe, File "C:\Users/_/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\silvilidar\silvilidar.py", line 424, in exprimelidar os.rename(carpeta + "/metric_all_returns_elevationstats.csv", FileNotFoundError: [WinError 2] Le fichier spécifié est introuvable: 'C:/Users//Desktop/silvilidar/test1/metric_all_returns_elevation_stats.csv' -> 'C:/Users/___/Desktop/silvilidar/test1/metric_all_returns_elevation_stats_LHD_FMQ_0765_6265_PTS_C_LAMB93_IGN69.csv'

El enlace para los datos lidar si lo necesitan : https://poc-flux-lidar.ign.fr/MQ/LHD_FMQ_0765_6265_PTS_C_LAMB93_IGN69.copc.laz   

También con estos datos donde todo es bosque me da el mismo error : https://poc-flux-lidar.ign.fr/MQ/LHD_FMQ_0761_6268_PTS_C_LAMB93_IGN69.copc.laz      
diezrabanos commented 1 year ago

Con QGIS 3.28 lo he probado y funciona correctamente con ambos archivos. La única cuestión es que por defecto teniendo el sistema de referencia del proyecto en EPSG:25830 carga las capas resultantes en ese sistema pero indicándole que las capas resultantes están en LAMB93 las coloca correctamente en su lugar.

Es muy posible que el fallo se deba a la instalación de FUSION y concretamente a la dll de laszip. Tenga en cuenta estas instrucciones de instalacion de FUSION

"FUSION (V3.40+) supports reading and writing of compressed LAS data files by linking to Martin Isenburg's LASzip.dll and LASzip64.dll libraries. To take advantage of this capability, you will eed to install LAStools and manually copy the LASzip.dll and LASzip64.dll files into FUSION's install folder."

El proceso de instalación yo lo tengo descrito de la siguiente manera. "Requiere del Software FUSION desarrollado por US Department of Agriculture, Forest Service, Pacific Northwest Research Station. Puede descargarse desde http://forsys.sefs.uw.edu/FUSION/fusion_overview.html Para trabajar con archivos LAZ requiere LAStools que puede ser descargado desde http://rapidlasso.com/lastools/ y posteriormente copiar el archivo LASzip.dll en la carpeta de instalación de FUSION."

corteza10 commented 1 year ago

Con QGIS 3.28 lo he probado y funciona correctamente ..."

Efectivamente, con 3.28 funciona todo perfectamente (y con 3.30 también!)... simplemente tenia problemas de acceso de python a ciertas carpetas donde tenia los archivos .laz por problemas de restriccion de acceso (admin), depositandolos en otro disco duro no he tenido problemas. Voy a estudiar los datos obtenidos y proponer a los técnicos la verificacion en campo. Un saludo y gracias de nuevo.

corteza10 commented 1 year ago

Me permito hacer un apunte respecto a la version Qgis 3.30 que considero de su interés.

Siendo necesario tener el paquete Saga para la construccion de los agregados (claras, resalveo y regeneracion) ya que utiliza el algoritmo saga:simplefilter, nos encontramos con un problema y es que en esta ùltima version de Qgis, SAGA no viene por defecto y hay que instalar el paquete OSGeo4W en C:/, ademàs, de instalar el complemento 'Processing Saga NextGen Provider' el cual permite el acceso a todos los algoritmos de este SAGA "de nueva generacion".

En Qgis 3.30 el script silvilidar.py que hace referencia en la linea 1646 a saga:simplefilter parece que no lo encuentra (no identifica la nueva version de SAGA al parecer) y da error al final del tratamiento, con lo que el .shp final para los agregados no se crea (crea los rasters de la etapa anterior y luego lanza el error).

image

En Qgis 3.28 al venir SAGA por defecto, el tratamiento se realiza sin problema como bien me comentaron anteriormente ya que el script encuentra la version correcta de saga:simplefilter :

image

Espero que esto les ayude para futuras modificaciones o adaptaciones de su magnifico script.

Un saludo

diezrabanos commented 1 year ago

Agradezco los comentarios. Estudiaré como solventar los problemas que surgen.

Saludos