3D Geodata Academy

O’Reilly · 2025 · 690 pages

3D Data Science with Python

Turn raw point clouds, meshes and images into 3D models, measurements and machine learning, in Python. Then keep going after the last page: every chapter comes with its own online companion of code, data and 3D previews.

15,000+ readers18 chapters5 learning tracks31 companion guides

More than a book

One book. A living 3D workspace around it.

The print gives you the method. The companion gives you everything the method needs: the files, the fixes, the colour, and the guides the book points to.

18chapter pages, one clean address each
31Resource Hub guides the book sends you to
15datasets you can orbit in 3D, in your browser
85code files verified on current library versions

From the author

The book, introduced by its author

A short introduction from Florent, one minute and forty-eight seconds.

Inside the book

From a raw scan to spatial AI, in five tracks

Each track builds on the one before. Every image below is a real dataset from that chapter, rendered for the companion.

Track 1

3D Supervisor

Chapter 1 of 3D Data Science with Python: Introduction to 3D Data Science
CHAPTER 01

Introduction to 3D Data Science

You can explain what 3D data science and spatial AI are, place any 3D project on the modular workflow, and run your first NumPy transformation of a 3D shape.

Track 2

3D Engineer

Chapter 2 of 3D Data Science with Python: Resources and Software Essentials
CHAPTER 02

Resources and Software Essentials

You know which math, computing and AI foundations to refresh, what hardware to run 3D work on, and which free desktop tools cover reconstruction, processing and visualization.

Chapter 3 of 3D Data Science with Python: 3D Python and 3D Data Setup
CHAPTER 03

3D Python and 3D Data Setup

You can create an isolated conda environment, load an ASCII point cloud with NumPy, query it by attribute and visualize the result.

Chapter 4 of 3D Data Science with Python: 3D Data Representation and Structuration
CHAPTER 04

3D Data Representation and Structuration

You can load and convert point clouds, meshes, voxels, depth maps and projections, and pick the right spatial index (k-d tree, octree, BVH) for a given query.

Chapter 5 of 3D Data Science with Python: Developing a Multimodal 3D Viewer with Python
CHAPTER 05

Developing a Multimodal 3D Viewer with Python

You can combine an aerial LiDAR point cloud and a 3D building mesh in one Open3D scene and extract flood-relevant measurements from it.

Chapter 6 of 3D Data Science with Python: Point Cloud Data Engineering
CHAPTER 06

Point Cloud Data Engineering

You can pre-process a point cloud, derive PCA-based geometric descriptors, and register two scans with RANSAC on FPFH descriptors refined by ICP.

Chapter 7 of 3D Data Science with Python: Building 3D Analytical Apps
CHAPTER 07

Building 3D Analytical Apps

You can compute per-point PCA descriptors (planarity, linearity, omnivariance, verticality, normals) on a real factory scan and segment it live with interactive thresholds in PyVista.

Track 3

3D Analyst

Chapter 8 of 3D Data Science with Python: 3D Data Analysis
CHAPTER 08

3D Data Analysis

You can profile a 3D dataset, describe its geometry and statistics, analyze color, normals and eigenvalues, and measure the deviation of a scan to a plane or a mesh.

Chapter 9 of 3D Data Science with Python: 3D Shape Recognition
CHAPTER 09

3D Shape Recognition

You can detect planes and spheres with a RANSAC you wrote yourself, segment surfaces with region growing, and combine both into oriented planar patches for scene modeling.

Chapter 10 of 3D Data Science with Python: 3D Modeling: Advanced Techniques
CHAPTER 10

3D Modeling: Advanced Techniques

You can turn point clouds into meshes, voxel models and levels of detail, script parametric CAD parts, and reconstruct a mesh from a single image.

Chapter 11 of 3D Data Science with Python: 3D Building Reconstruction from LiDAR Data
CHAPTER 11

3D Building Reconstruction from LiDAR Data

You can turn an aerial LiDAR neighborhood into per-building footprints, heights, areas, perimeters and 3D meshes, exported as a shapefile.

Track 4

3D AI Specialist

Chapter 12 of 3D Data Science with Python: 3D Machine Learning: Clustering
CHAPTER 12

3D Machine Learning: Clustering

You can segment unlabeled point clouds with k-means and DBSCAN, justify their parameters, and chain RANSAC and DBSCAN to extract the structure of a kitchen scan.

Chapter 13 of 3D Data Science with Python: Graphs and Foundation Models for Unsupervised Segmentation
CHAPTER 13

Graphs and Foundation Models for Unsupervised Segmentation

You can cluster a point cloud through graph connectivity, and segment a building scan without labels by running Segment Anything on spherical projections.

Chapter 14 of 3D Data Science with Python: Supervised 3D Machine Learning Fundamentals
CHAPTER 14

Supervised 3D Machine Learning Fundamentals

You can train and evaluate a supervised classifier that labels every point of an urban LiDAR scene, and diagnose why it fails on a new area.

Chapter 15 of 3D Data Science with Python: 3D Deep Learning with PyTorch
CHAPTER 15

3D Deep Learning with PyTorch

You can build, train and serve a 3D deep learning model in PyTorch, and choose between 3D CNNs, graph networks, point-based networks and multiview CNNs for your data.

Chapter 16 of 3D Data Science with Python: PointNet for 3D Object Classification
CHAPTER 16

PointNet for 3D Object Classification

You can prepare real LiDAR data for PointNet, implement the architecture with its T-Nets and regularized loss, train it on ModelNet10 and classify a real scanned object.

Track 5

3D Visionary

Chapter 17 of 3D Data Science with Python: The 3D Data Science Workflow
CHAPTER 17

The 3D Data Science Workflow

You can assemble the book's modules into one pipeline, from photos to a dense point cloud that you clean, model, segment and analyze, and adapt it to a new project.

Chapter 18 of 3D Data Science with Python: From 3D Generative AI to Spatial AI
CHAPTER 18

From 3D Generative AI to Spatial AI

You can prototype five research-grade extensions of the book's workflow (image and text to 3D, deep registration, semantic modeling, Point Transformer segmentation, Gaussian splatting) and sketch a spatial AI reasoning stack.

Every chapter comes with its own online page: the code, the data and a 3D preview of the dataset you are about to work with.

Why readers love the companion

The four things a printed page cannot do

Colour and 3D

The print is in black and white. Online, every dataset is rendered in colour, and you can orbit it before you download a single gigabyte.

Code that runs today

Every chapter was re-run on current library versions. One environment file installs it all, and a changelog lists each fix.

Every promise kept

Where the book says “see the Resource Hub”, a written guide is waiting: sensors, meshing, metrics, CUDA setup and more.

Found in one click

One page per chapter, with the files, the exact run command and the notes wherever the folder differs from the print.

Readers and the author

Written by a practitioner, read by thousands

“The chapter-specific example codes and data are wonderfully hands-on.”

Solomon Embafrash, verified review on Amazon.com

“I think I’ve read enough to say definitively that it is excellent.”

Trev, verified review on Amazon.co.uk
Dr. Florent Poux

PhD (University of Liège, 2019), ISPRS Jack Dangermond Award and EuroSDR Best PhD Thesis Award, 60+ publications and 1,700+ citations, 15+ years building 3D data systems. More about Florent

Questions readers ask

Before you buy

Who is this book for?

Python users who work with 3D data, or want to: GIS and survey professionals, engineers, researchers and students. The first chapters cover the foundations (3D data, Python setup, representations); later tracks go into 3D machine learning, deep learning and generative AI.

Do I need a GPU?

No. The large majority of chapters run on any recent laptop. Segment Anything (chapter 13), graph deep learning (chapter 15) and 3D generative AI (chapter 18) are faster with a CUDA GPU and are optional.

Where are the code and the datasets?

Every chapter has its own folder with the code and the data side by side, and its own online page. The book's preface tells readers where to find them.

Does the code still run on current libraries?

Yes. Every chapter was re-run in September 2026 on current library versions; one environment file installs everything and a changelog in the folder lists each fix. Where the shipped files differ from the print, the companion page of that chapter says so.

Is there a way to go further than the book?

Yes. The course Library covers single topics in depth, and the 3D AI Architect Program is the guided path from the book to production 3D AI systems.

Start with chapter 1

Get the book, then build with it

690 pages of method, plus a companion that keeps the code, the data and the guides one click away.

Scroll to Top