[pdal] Way to cast dimension data type?
Piero Toffanin
pt at masseranolabs.com
Sat May 6 15:36:40 PDT 2017
Hello,
First let me say that PDAL rocks. I love it.
I was wondering if there's a way to specify (cast) the data type of the
X,Y,Z dimensions while reading a PLY file (so in effect override the
type specified in the PLY header) in the PDAL pipeline.
I have an input PLY file (untransformed.ply) that has the header:
ply
format ascii 1.0
[ .... ]
property float x
property float y
property float z
[ .... ]
And coordinate points with ~5 digits of precision.
1.13759 12.1322 162.786
[ .... ]
When I try to apply the following transform (add a east/north offset):
{
"pipeline": [
"untransformed.ply",
{
"matrix": "1 0 0 576705 0 1 0 5188170 0 0 1 0 0 0 0 1",
"type": "filters.transformation"
},
{
"a_srs": "EPSG:32615",
"filename": "transformed.las",
"offset_x": "576705",
"offset_y": "5188170",
"offset_z": "0"
}
]
}
There's a loss of precision (I get a "grid-like" output, see
https://cloud.githubusercontent.com/assets/1951843/25507885/9cd01d12-2b7c-11e7-9c54-0e219dae4f05.png).
I think it's because the matrix transformation code here
https://github.com/PDAL/PDAL/blob/dd97a033c5d487000e200304a7619e9978de6ae2/filters/TransformationFilter.cpp#L106
_correctly_ treats points as floats.
Changing the PLY header to:
ply
format ascii 1.0
[ .... ]
property double x
property double y
property double z
[ .... ]
Produces the expected output (no grid-like output).
I was wondering if I could force the dimensions to be treated as a
double directly from PDAL? Or perhaps is there interest in adding a flag
(cast to dimension) in PDAL's PLY reader (I'd be happy to contribute to it)?
More information about the background of this issue is also available
here: https://github.com/OpenDroneMap/OpenDroneMap/issues/522
Thank you for any information you might have!
-Piero
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/pdal/attachments/20170506/878d9856/attachment.html>
More information about the pdal
mailing list