3 votos

Cómo obtener VLRs de un archivo .las con laspy

Tengo un archivo de datos de nube de puntos .las del que estoy intentando obtener los datos vlr. He encontrado este enlace - Actualizar la información de la cabecera EVLR para el archivo .LAS utilizando laspy y he leído los documentos sobre Laspy - https://pythonhosted.org/laspy/header.html

Parece que la cabecera vlrs debería devolver un registro de longitud variable si existe.

las_file =laspy.file.File(file.las, mode = "r-")
hdr = las_file.header
hformat = hdr.header_format
for spec in hformat:
    print(spec.name, spec.offs, spec.num)

inVLRs = hdr.vlrs
print(inVLRs)
vlr_count = len(inVLRs)
# OGC Coordinate System WKT
print(hdr.max, hdr.version, vlr_count)

Nunca me devuelven nada por los vlrs. Obtengo toda la demás información de la cabecera sin problemas. Archivo de muestra aquí .

Cuando uso WhiteBoxTools, obtengo la información correcta de VLR. - https://pypi.org/project/whitebox/

¿Estoy utilizando el método correcto para obtener vlrs?

1voto

DJYod Puntos 158

La "r-" en la línea las_file =laspy.file.File(file.las, mode = "r-") es el problema. Lo he cambiado por "r" y el problema se ha resuelto.

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