Piping Version 1.4 Point Format 6 Files (Native Extension Error)

146 views
Skip to first unread message

conrad...@gmail.com

unread,
Jan 5, 2022, 2:28:52 AM1/5/22
to LAStools - efficient tools for LiDAR processing
When attempting to run piped commands on a 1.4 point format 6 file, I get an error regarding the requirement of using the "native LAS 1.4 extension". Based on prior forum posts, it looks like this was potentially resolved in 2017 or so (https://groups.google.com/g/lastools/c/FGdt9M9_S6M/m/ef9y2buxBwAJ).

Here is a simple example using "\LAStools\data\fusa.laz", first using las2las to set version and point type, and then running a two step pipeline on the resulting file.

las2las -i fusa.laz -o fusa.las -set_version 1.4 -set_point_type 6 lasnoise -i fusa.las -stdout | lasground -stdin -o fusa_ground.las > ERROR: point type 6 requires using "native LAS 1.4 extension" of LASzip ERROR: opening laswriterlas to streamoutarray ERROR: could not open lasreaderstored with lasreaderlas ERROR processing file '(null)'. maybe out of memory? done with 'piped file'. took 0.13 sec. classified 16 noise points.


Note that the piped command will work on the original fusa.laz file and one which is 1.4 but not point format 6.

Let me know if you have any thoughts or know what I'm overlooking.

Thanks,

Jorge Delgado García

unread,
Jan 5, 2022, 5:03:51 AM1/5/22
to last...@googlegroups.com
I have performed some tests with the file itself. Indeed I also get the same error, I think it must be from the pipe process, because if you run the commands one by one everything works correctly. I have checked the final file and it has v1.4 structure with point type 6.

I don't know if this can help you at all, at least to unblock the problem using a command to command procedure.

Jorge Delgado
University of Jaén (Spain)

--
Download LAStools at
https://rapidlasso.de
Manage your settings at
https://groups.google.com/g/lastools/membership
---
You received this message because you are subscribed to the Google Groups "LAStools - efficient tools for LiDAR processing" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lastools+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lastools/c70461ed-01dc-45ad-a3ca-65ab93b4fe6cn%40googlegroups.com.


--

Michael Stimson

unread,
Jan 5, 2022, 8:41:24 AM1/5/22
to last...@googlegroups.com

Hi Jorge and Conrad,

 

Shouldn’t there be a pipe between las2las and lasnoise? If that were so then las2las would have an output of stdout and lasnoise would have an input of stdin. As the instructions are written you’ve got two distinct lines of code on one line.

 

las2las -i fusa.laz -o fusa.las -stdout -set_version 1.4 -set_point_type 6 | lasnoise -i fusa.las -stdin -stdout | lasground -stdin -o fusa_ground.las

 

or on two lines

 

las2las -i fusa.laz -o fusa.las -set_version 1.4 -set_point_type 6

lasnoise -i fusa.las -stdout | lasground -stdin -o fusa_ground.las

 

Personally I don’t use pipes, except as redirects of stderr to trap the error text in a file, so I may be way off base; the last thing I want is to create a likely pagefile  thrashing situation with two pipes, it would end up taking longer. To me it’s a lot safer to write intermediate files and delete them when done, preferably to a different drive to maximize I/O performance by taking advantage of succinct read/write caches and reducing seek up to the maximum interface speed.

 

Michael Stimson

Senior GIS Analyst
RPS | Australia Asia Pacific
+61 7 3539 9694
michael...@rpsgroup.com.au

 

From: last...@googlegroups.com <last...@googlegroups.com> On Behalf Of Jorge Delgado García
Sent: Wednesday, 5 January 2022 8:04 PM
To: last...@googlegroups.com
Subject: Re: [LAStools] Piping Version 1.4 Point Format 6 Files (Native Extension Error)

 

CAUTION: This email originated from outside of RPS.

This email and its attachments may contain confidential and/or privileged information and is for the sole use of the intended recipient(s). The contents of this email must not be disclosed to or used by or copied in any way by anyone other than the intended recipient(s). If you are not the intended recipient, any use, distribution or copying of the information contained in this email and its attachments is strictly prohibited. Confidentiality and/or privilege in the content of this email is not waived. If you have received this email in error, please email the sender by replying to this message and immediately delete and destroy any copies of this email and any attachments. Please note that neither RPS Consultants Pty Ltd, any subsidiary, related entity ('RPS') nor the sender accepts any responsibility for viruses and it is your responsibility to scan or otherwise check this email and any attachments. The views or opinions expressed are the author's own and may not reflect the views or opinions of RPS

conrad...@gmail.com

unread,
Jan 6, 2022, 2:41:28 AM1/6/22
to LAStools - efficient tools for LiDAR processing
Hey Michael,

The intention of that first command was just to make an example 1.4 point type 6 .las file (fusa.las) to send through the pipeline. 

I was able to make the pipeline work with perhaps an outdated method (laszip -compatibile). I was under the impression this should now be handled automatically, but perhaps I was just misreading old threads. 

The following is a a seemingly functional pipeline:

laszip -i fusa.las -olaz -compatible -stdout | lasnoise -stdin -stdout | lasground -stdin -stdout | laszip -stdin -o fusa_ground.las

Does anyone know if this is valid and currently the best way to pipe version 1.4 point type 6 files? Without ending with laszip, the output would be in the 1.2 compatibility format. 

Thanks,
Reply all
Reply to author
Forward
0 new messages