-
-
Notifications
You must be signed in to change notification settings - Fork 295
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
r.in.pdal – a PDAL based replacement of r.in.lidar #1200
Conversation
@wenzeslaus could you, please, take a look into -p flag? My C++-fu is rather weak. With -p in place, I would call it a day. |
We may drop my wish "Output convex hull of imported data as a vector map". Almost there, it would be great to see this PR be merged. |
49f1ac0
to
ae50d83
Compare
Not perfect, but releasing 8.0 without LAS support is a no-no. There always will be 8.2 for improvements. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Right now, I can't dedicate to this review the time it deserves. Given the v8 timing and the broad testing this code will eventually get by many including myself, I suggest to merge it. I'm the author of the original code, so I think that code is at least okayish and I only gave the new code a couple of causal looks at different times.
Some tests rely on v.out.lidar, so they are failing. They need to be excluded in .gunittest.cfg
.
I'd suggest to simply add |
d3a6de2
to
3edb26f
Compare
No need as the functionality of binning is already tested in the test_r_in_pdal_binning.py file. |
It turns out r.in.pdal needs a specific minimum version of pdal library. I changed the autoconf part (3d12173) but now there is no pdal support for older versions at all (Ubuntu 18.04). How should we proceed? Keep it as-is or introduce a separate check for r.in.pdal needs? If there is a separate check for r.in.pdal compatible pdal version, should it be listed in the summary of configure run? |
3614dc3
to
b97d816
Compare
Reads points using PDAL, uses several PDAL filters including reprojection, filters using custom filter, writes into memory structures. Reuses r.in.lidar functionality with moving code into PDAL Filter and Writer classes. Preserves most of r.in.lidar functionality, but misses several features most notably scanning and auto extent. Furthermore, it now assumes that the whole output raster fits into memory. The multi-pass code was removed and it should be replaced by use of the improved Segment with all-in-memory mode.
…buntu 18.04 is too old and thus compilation always fails
bd97acc
to
0444653
Compare
matrix.os has the name of the the system which is used in the YAML. This basically returns the CI YAML files state to what it was before OSGeo#1200 keeping the addition of a new build script and version-specific naming for the scripts.
* r.in.pdal: point cloud binning with PDAL Reads points using PDAL, uses several PDAL filters including reprojection, filters using custom filter, writes into memory structures. Reuses r.in.lidar functionality with moving code into PDAL Filter and Writer classes. Preserves most of r.in.lidar functionality, but misses several features most notably scanning and auto extent. Furthermore, it now assumes that the whole output raster fits into memory. The multi-pass code was removed and it should be replaced by use of the improved Segment with all-in-memory mode. In comparison to r.in.lidar, here are more binning options, including eigenvalue statistic option according to suggestion of "Mallet et al. 2011. Relevance assessment of full-waveform lidar data for urban area classification"; Summation is performed with Neumaiers improved Kahan–Babuska algorithm; Variance, stddev and coeff_var with Welfords algorithm. Testing infrastructure is also updated to better handle minimal version required of PDAL library. Co-authored-by: Vaclav Petras <wenzeslaus@gmail.com> Co-authored-by: Māris Nartišs <maris.nartiss@lu.lv>
* add r.in.pdal test for alpine image * fix r.in.pdal tests * removement of r.in.pdal addon installation in Ubuntu and Debian docker images (as being replaced in C++ version in #1200) Co-authored-by: anikaweinmann <aweinmann@mundialis.de>
* add r.in.pdal test for alpine image * fix r.in.pdal tests * removement of r.in.pdal addon installation in Ubuntu and Debian docker images (as being replaced in C++ version in #1200) Co-authored-by: anikaweinmann <aweinmann@mundialis.de>
* r.in.pdal: point cloud binning with PDAL Reads points using PDAL, uses several PDAL filters including reprojection, filters using custom filter, writes into memory structures. Reuses r.in.lidar functionality with moving code into PDAL Filter and Writer classes. Preserves most of r.in.lidar functionality, but misses several features most notably scanning and auto extent. Furthermore, it now assumes that the whole output raster fits into memory. The multi-pass code was removed and it should be replaced by use of the improved Segment with all-in-memory mode. In comparison to r.in.lidar, here are more binning options, including eigenvalue statistic option according to suggestion of "Mallet et al. 2011. Relevance assessment of full-waveform lidar data for urban area classification"; Summation is performed with Neumaiers improved Kahan–Babuska algorithm; Variance, stddev and coeff_var with Welfords algorithm. Testing infrastructure is also updated to better handle minimal version required of PDAL library. Co-authored-by: Vaclav Petras <wenzeslaus@gmail.com> Co-authored-by: Māris Nartišs <maris.nartiss@lu.lv>
* add r.in.pdal test for alpine image * fix r.in.pdal tests * removement of r.in.pdal addon installation in Ubuntu and Debian docker images (as being replaced in C++ version in OSGeo#1200) Co-authored-by: anikaweinmann <aweinmann@mundialis.de>
* add r.in.pdal test for alpine image * fix r.in.pdal tests * removement of r.in.pdal addon installation in Ubuntu and Debian docker images (as being replaced in C++ version in OSGeo#1200) Co-authored-by: anikaweinmann <aweinmann@mundialis.de>
This is an enhanced version of r.in.pdal based on https://github.com/wenzeslaus/grass/tree/pdal-binning (PR #61). This PR makes PR #61 obsolete. This PR depends on #1148 Code has been rebased on top of current master for easier testing.
TODO:
Features to discuss:
Determine extent in scan mode (with all filters applied) (-s flag)Postponed after 8.0Output convex hull of imported data as a vector map (@neteler wish)Postponed after 8.0Add PDAL pipeline support (on-fly preprocessing)Postponed after 8.0