Skip to content

pSN0W/potree

 
 

Repository files navigation

🚀 Potree Labeling Extension

This project is a fork of Potree that adds powerful labeling capabilities to the point cloud viewer.

The goal is to make large-scale point cloud annotation accessible directly in the browser—without requiring expensive proprietary software or high-end local machines. It enables teams and the machine learning community to efficiently label data, collaborate, and extract insights from point clouds.

This tool serves as a free, web-based alternative to expensive proprietary solutions such as Terrasolid, Terrascan, and Pointly.


✨ Key Features

🏷️ Annotation Tools

  • Segments Tool
    Select a point to automatically segment and label similar points in its vicinity.

  • Polygon Lasso Tool
    Draw a polygon from any viewpoint to label all points within the selected area.

  • Volume Labeling Tool
    Define 3D volumes and label all points contained within them.

  • Subselection Tool
    Isolate a volume and zoom into it to focus on a subset of points for precise labeling.


⚙️ Additional Capabilities

  • Class Locking
    Lock specific classes to prevent accidental labeling—only unlocked classes can be modified.

  • QA Visualization Mode
    Convert point clouds into an image-like representation for easier quality control.

  • Hillshade Mode
    Generate hillshade visualizations to assist in ground classification and QC.


🤝 Collaboration

Built for teams, this tool supports collaborative workflows:

  • Labelers and QA teams can work together seamlessly
  • Enables efficient review and validation processes

⚡ Performance

Powered by WebGPU, the labeling engine delivers high-performance rendering and interaction—making it fast and responsive even for large point clouds.

About

Getting Started

Install on your PC

Install node.js

Install dependencies, as specified in package.json, and create a build in ./build/potree.

npm install

Run on your PC

Use the npm start command to

  • create ./build/potree
  • watch for changes to the source code and automatically create a new build on change
  • start a web server at localhost:1234.

Go to http://localhost:1234/examples/ to test the examples.

Deploy to a server

  • Simply upload the Potree folderm with all your point clouds, the build directory, and your html files to a web server.
  • It is not required to install node.js on your webserver. All you need is to host your files online.

Convert Point Clouds to Potree Format

Download PotreeConverter and run it like this:

./PotreeConverter.exe C:/pointclouds/data.las -o C:/pointclouds/data_converted

Copy the converted directory into <potreeDirectory>/pointclouds/data_converted. Then, duplicate and rename one of the examples and modify the path in the html file to your own point cloud.

Downloads

Examples

Basic ViewerCA13 (18 billion Points)Retz (Potree + Cesium)ClassificationsVarious FeaturesToolbar
More Examples
Load ProjectMatcapVirtual RealityHeidentorLionLion LAS
Lion LAZEPTEPT BinaryEPT zstandardClipping VolumeOriented Images
Elevation ProfileMeasurementsMeshesMultiple Point CloudsCamera AnimationFeatures (CA13)
AnnotationsHierarchical AnnotationsAnimation PathShapefilesCesium CA13Geopackage
Cesium SorvilierCustom Sidebar SectionEmbedded IframeGradient Colors

VR

HeidentorEclepensMorro BayLionDechen Cave

Showcase

MatterhornRetzLake TahoeSorvilierGraveChowilla
More
ChillerCoolerDechen CaveRuinsEclepensHeidentor
BuildingLDHILion HeadOverpassPielachpompei
SantoriniSkateparkSubsea Eq.Subsea Man.Westend PalaisWhitby

Funding

Potree is funded by a combination of research projects, companies and institutions.

Research projects who's funding contributes to Potree:

Project Name Funding Agency
LargeClouds2BIM FFG
Harvest4D EU 7th Framework Program 323567
GCD Doctoral College TU Wien
Superhumans FWF

We would like to thank our sponsors for their financial contributions that keep this project up and running!

Diamond
€ 15,000+
         
Gold
€ 10,000+
Silver
€ 5,000+
   
Bronze
€ 1,000+
                Data-viewer        
     

Credits

  • The multi-res-octree algorithms used by this viewer were developed at the Vienna University of Technology by Michael Wimmer and Claus Scheiblauer as part of the Scanopy Project.
  • Three.js, the WebGL 3D rendering library on which potree is built.
  • plas.io point cloud viewer. LAS and LAZ support have been taken from the laslaz.js implementation of plas.io. Thanks to Uday Verma and Howard Butler for this!
  • Harvest4D Potree currently runs as Master Thesis under the Harvest4D Project
  • Christian Boucheny (EDL developer) and Daniel Girardeau-Montaut (CloudCompare). The EDL shader was adapted from the CloudCompare source code!
  • Martin Isenburg, Georepublic, Veesus, Sigeom Sa, SITN, LBI ArchPro, Pix4D as well as all the contributers to potree and PotreeConverter and many more for their support.

Bibtex

@article{SCHUETZ-2020-MPC,
	title =      "Fast Out-of-Core Octree Generation for Massive Point Clouds",
	author =     "Markus Schütz and Stefan Ohrhallinger and Michael Wimmer",
	year =       "2020",
	month =      nov,
	journal =    "Computer Graphics Forum",
	volume =     "39",
	number =     "7",
	doi =        "10.1111/cgf.14134",
	pages =      "13",
	publisher =  "John Wiley & Sons, Inc.",
	pages =      "1--13",
	keywords =   "point clouds, point-based rendering, level of detail",
}

About

WebGL point cloud viewer for large datasets

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 98.9%
  • CSS 0.4%
  • GLSL 0.4%
  • HTML 0.3%
  • PHP 0.0%
  • Starlark 0.0%