PDAL Paris Sprint Recap

Mon 07 March 2016 | tags: Open Source, FOSS4G, OSGeo, PDAL, -- (permalink)

Paris Chickens

The Hobu development team participated in the OSGeo Paris Code Sprint from February 22-26th to focus on development of PDAL, Greyhound, and Entwine open source point cloud software. Below is a short synopsis of some of the topics we covered during the sprint.

Entwine

Entwine is a software developed by Connor Manning of Hobu to organize massive point clouds. It assumes you have access to some kind of cloud computing environment, and you'd just like to use it as fast as possible to organize terrabytes of data into something you can progressively stream to a client over a network. Entwine organizes data so software like Greyhound can do the work of handing the data to a client. Connor implemented a new sophisticated memory management approach during the sprint that allows users to constrain the amount of memory consumed during the organization of the data.

Potree and Greyhound

A significant accomplishment of the Hobu team participation at the sprint was Connor Manning, Maarten van Meersbergen and Oscar Martinez Rubi achieving the integration of Potree with Greyhound. Potree has historically utilized a software called PotreeConverter to do its data organization, and Oscar had developed a parallel version of it called Massive PotreeConverter, but these tools assume a static result after they are done processing the data. The ability to develop smarter clients or at least more efficient ones requires interaction with a server that can answer specific requests. We have developed Greyhound for that task, and we are excited to see that we will be able to feed data to Potree with it.

http://proj4.org

In my role as the now maintainer of the Proj.4 project, I have sought to find a solution to the crappy documentation situation the project has suffered under for decades (the project is multiple decades old!). Everything is all over the place, and because of that, it feels like your just digging in a sand pit to contribute to it. During the sprint, I implemented the Sphinx documentation system, which has been very successful in other OSGeo projects such as MapServer, GeoServer, and OpenLayers.

After getting home from the sprint, I implemented auto-building of the docs using Travis-CI, so that every time a pull request is merged, the docs and website are refreshed. These two tweaks should make it much easier for drive-by contributors to provide better documentation for the Proj.4 project. See http://lists.maptools.org/pipermail/proj/2016-March/007335.html for more information and please submit some pull requests!

LASzip

Howard Butler and Martin Isenburg of LAStools discussed plans for the implementation of LAZ 1.4. While nothing is set at the moment, Martin has started on a specification for the effort, and he is looking for input from anyone who might have opinions. Please join the LASroom and provide input in that forum if you have information (or money!) to contribute to the LAZ 1.4 effort.

PDAL

Andrew Bell of Hobu, Mateusz Loskot of CADCorp, and myself worked on a number of PDAL topics during the sprint. Andrew focused on documentation during the sprint -- specifically API documentation -- and collaborated with Mat on future design issues. Mat focused on bringing the PDAL Windows Builds into shape by getting them to compile cleanly, run the tests with Windows (previously we only ran tests on Linux), and adjusting the memory management of PDAL Stages. I worked with Bruno Friedman to improve PDAL's packaging situation for downstream distributions like OpenSUSE

Conclusion

As I mentioned on the sprint list, these activities would not be possible without financial and in-kind sponsors. These activities provide valuable high-bandwidth communication for project participants, and without them, decisions that might only take a few minutes could drag on for days of miscommunication over email. Many thanks to Olivier Courtin from Oslandia for putting in the hard footwork to make the event happen!

comments powered by Disqus