My lidR
version is 2.0.2
I am trying to add an extrabyte about treeID that I get from raster (lasmergespatial
with vector is super slow). I have a problem with saving that extrabyte to LAS file.
I have following code:
library(lidR)
library(raster)
library(rgdal)
path <- "path/to/two/las_files.las"
setwd(path)
ctg <- catalog(path)
tif <- raster("Segmenty_Obszar13_TIF.tif")
las = readLAS(ctg$filename[[1]], filter = "-keep_class 4 5")
tif_crop = raster::crop(tif, raster::extent(las)*1.1)
las_tree = lasmergespatial(las, tif_crop, "treeID")
lasaddextrabytes(las_tree, name="treeID", desc="ID of a tree")
Now las_tree
has summary:
class : LAS (LASF v1.4)
point format : 7
memory : 474.4 Mb
extent :7497590, 7498410, 5788790, 5789610 (xmin, xmax, ymin, ymax)
coord. ref. : NA
area : 670422.1 units² (convex hull)
points : 4011573 points
density : 5.98 points/units²
names : X Y Z gpstime Intensity ReturnNumber NumberOfReturns ScanDirectionFlag EdgeOfFlightline Classification ScannerChannel Synthetic_flag Keypoint_flag Withheld_flag Overlap_flag ScanAngle UserData PointSourceID R G B Amplitude Pulse width treeID
File signature: LASF
File source ID: 0
Project ID - GUID: 00000000-0000-0000-0000-000000000000
Version: 1.4
System identifier: LAStools (c) by rapidlasso GmbH
Generating software: lasheight (181108) commercial
File creation d/y: 12/2019
header size: 375
Offset to point data: 815
Num. var. length record: 1
Point data format: 7
Point data record length: 40
Num. of point records: 4011573
Num. of points by return:
Scale factor X Y Z: 0.01 0.01 0.01
Offset X Y Z: 0 0 0
min X Y Z: 7497590 5788790 -1.58
max X Y Z: 7498410 5789610 38.92
Variable length records:
Variable length record 1 of 1
Description: RIEGL Extra Bytes
Extra Bytes Description:
Amplitude: Echo signal amplitude [dB]
Pulse width: Full width at half maximum [ns]
Seems like header is not updated after lasaddextrabytes
. Am I doing something wrong?
I try also to write las_tree
to new file:
writeLAS(las_tree, "new.las")
las_new = readLAS("new.las")
But las_new
does not contain "treeID"
attribute at all and the header is similar to the header of las_tree
. How can I export LAS with extra bytes?