ebook img

PDAL: Point cloud Data Abstraction Library PDF

464 Pages·2017·21.18 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview PDAL: Point cloud Data Abstraction Library

PDAL: Point cloud Data Abstraction Library Release 1.6.0 Andrew Bell Brad Chambers Howard Butler Michael Gerlek PDAL Contributors Dec 14, 2017 CONTENTS 1 News 3 1.1 10-12-2017 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 About 5 2.1 About . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3 Download 13 3.1 Download . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 4 Quickstart 15 4.1 Quickstart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5 Applications 23 5.1 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 6 Community 39 6.1 Community . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 7 Drivers 41 7.1 Pipeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 7.2 Readers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 7.3 Writers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 7.4 Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 8 Dimensions 185 8.1 Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 9 Python 189 9.1 Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 10 Tutorials 193 10.1 Tutorials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 11 Workshop 239 i 11.1 PointCloudProcessingandAnalysiswithPDAL . . . . . . . . . . . . . . . . 239 12 Development 323 12.1 Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 12.2 API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 12.3 FAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451 12.4 License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452 12.5 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453 13 Indicesandtables 455 Bibliography 457 Index 459 ii PDAL: Point cloud Data Abstraction Library, Release 1.6.0 PDALisaC++BSD(http://www.opensource.org/licenses/bsd-license.php)libraryfor translatingandmanipulatingpointclouddata(http://en.wikipedia.org/wiki/Point_cloud). Itis verymuchliketheGDAL(http://www.gdal.org)librarywhichhandlesrasterandvectordata. TheAbout (page5)pageprovideshighleveloverviewofthelibraryanditsphilosophy. Visit Readers(page50)andWriters(page79)tolistdataformatsitsupports,andseeFilters (page104)forfilteringoperationsthatyoucanapplywithPDAL. Inadditiontothelibrarycode,PDALprovidesasuiteofcommand-lineapplicationsthatusers canconvenientlyusetoprocess,filter,translate,andquerypointclouddata. Applications (page23)providesmoreinformationonthattopic. Finally,PDALspeaksPythonbybothembeddingandextendingit. VisitPython(page189)to findouthowyoucanusePDALwithPythontoprocesspointclouddata. TheentirewebsiteisavailableasasinglePDFathttp://pdal.io/PDAL.pdf CONTENTS 1 PDAL: Point cloud Data Abstraction Library, Release 1.6.0 2 CONTENTS CHAPTER ONE NEWS 1.1 10-12-2017 PDAL1.6.0hasbeenreleased. VisitDownload (page13)toobtainacopyofthesourcecode, orfollowtheQuickstart (page15)togetgoinginahurrywithDocker (https://www.docker.com/). 3 PDAL: Point cloud Data Abstraction Library, Release 1.6.0 4 Chapter 1. News CHAPTER TWO ABOUT 2.1 About 2.1.1 What is PDAL? PDAL(https://pdal.io/)isPointDataAbstractionLibrary. ItisaC/C++opensourcelibrary andapplicationsfortranslatingandprocessingpointclouddata (https://en.wikipedia.org/wiki/Point_cloud). ItisnotlimitedtoLiDAR (https://en.wikipedia.org/wiki/Lidar)data,althoughthefocusandimpetusformanyofthe toolsinthelibraryhavetheiroriginsinLiDAR. 2.1.2 What is its big idea? PDALallowsyoutocomposeoperations(page104)onpointcloudsintopipelines(page41) ofstages. ThesepipelinescanbewritteninadeclarativeJSONsyntaxorconstructedusingthe availableAPI. Why would you want to do that? AtaskmightbetoloadsomeASPRSLAS (http://www.asprs.org/Committee-General/LASer-LAS-File-Format-Exchange-Activities.html) (themostcommonLiDARbinaryformat)dataintoadatabase,butyouwantedtotransformit intoacommoncoordinatesystemalongtheway. OneoptionwouldbetowriteaspecializedmonolithicprogramthatreadsLASdata,reprojects itasnecessary,andthenhandlesthenecessaryoperationstoinsertthedataintheappropriate formatinthedatabase. Thisapproachhasadistinctdisadvantageinthatwithoutcareful planningitcouldquicklyspiraloutofcontrolasyouaddnewlittletweaksandfeaturestothe operation. Itendsupbeingveryspecific,anditdoesnotallowyoutoeasilyreusethe componentthatreadstheLASdataseparatelyfromthecomponentthattransformsthedata. 5 PDAL: Point cloud Data Abstraction Library, Release 1.6.0 ThePDALapproachistochaintogetherasetofcomponents,eachofwhichencapsulates specificfunctionality. Thecomponentsallowforreuse,composition,andseparationof concerns. PDALviewspointcloudprocessingoperationsasapipelinecomposedasaseriesof stages. YoumighthaveasimplepipelinecomposedofaLASReader (page59)stage,a Reprojection(page173)stage,andaPostgreSQLWriter (page98),forexample. Ratherthan writingasingle,monolithicspecializedprogramtoperformthisoperation,youcan dynamicallycomposeitasasequenceofstepsoroperations. Fig.2.1: AsimplePDALpipelinecomposedofareader,filter,andwriterstages. APDALJSONPipeline(page41)thatcomposesthisoperationtoreprojectandloadthedata intoPostgreSQLmightlooksomethinglikethefollowing: { 1 "pipeline":[ 2 { 3 "type":"readers.las", 4 "filename":"input.las" 5 }, 6 { 7 "type":"filters.reprojection", 8 "out_srs":"EPSG:3857" 9 }, 10 { 11 "type":"writers.pgpointcloud", 12 "connection":"host='localhost' dbname='lidar' user='hobu'", 13 "table":"output", 14 "srid":"3857" 15 } 16 ] 17 } 18 PDALcancomposeintermediatestagesforoperationssuchasfiltering,clipping,tiling, transformingintoaprocessingpipelineandreuseasnecessary. Itallowsyoutodefinethese pipelinesasJSON(https://en.wikipedia.org/wiki/JSON),anditprovidesacommand,pipeline (page31),toallowyoutoexecutethem. Note: Rasterprocessingtoolsoftencomposeoperationswiththisapproach. PDAL conceptuallystealsitspipelinemodelingfromGDAL(http://gdal.org/)’sVirtualRasterFormat 6 Chapter 2. About

Description:
find out how you can use PDAL with Python to process point cloud data. The entire . typical vector GIS work flows, and data organization is extremely important to be able to efficiently . See the Docker tutorial . The PDAL workshop (page 249) contains numerous hands-on examples with screenshots.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.