Skip to content
This repository has been archived by the owner on Mar 20, 2024. It is now read-only.

A tutorial for learning the knowledge and techniques about 3D point clouds.

Notifications You must be signed in to change notification settings

jxl152/3D-PointCloud-Tutorial

Repository files navigation

3D Point Cloud Tutorial

In my Master's thesis project, all the methods, models, and experiments are based on 3D point clouds. To gain a more comprehensive understanding about such a 3D data, I enrolled in a MOOC course to acquire the essential knowledge and commonly-used techniques for working with 3D point clouds.

There are nine chapters in this course. As of August 20, 2023, I have completed the first six chapters. In addition to programming and experiments, I wrote six succinct reports, one for each chapter, for the purpose of conclusion and review.

1. Introduction and Basic Algorithms

This chapter introduces several key characteristics of 3D point clouds and three commonly-used techniques: PCA, surface normal estimation, and voxel grid downsampling.

Report: Assignment 1 - Introduction and Basic Algorithms

2. Nearest Neighbor Problem

This chapter introduces two data structures adapted: k-d tree and octree. Both of these structures can utilize either k-NN or radius search methods to find the nearest neighbors.

Report: Assignment 2 - Nearest Neighbor Problem

3. Clustering

This chapter introduces three clustering algorithms: K-Means, GMM, and spectral clustering. I implemented all of them and compare their effectiveness with that of Sklearn.

Report: Assigment 3 - Clustering

4. Model Fitting

This chapter introduces the RANSAC algorithm and its application to ground detection.

Report: Assignment 4 - Model Fitting

5. Deep Learning on Point Cloud

This chapter introduces deep learning on 3D point clouds. In the assignment, I implemented, trained, and evaluated a PointNet model. Implementing PointNet is instructive practice, as it is a pioneering work in this field, serving as the foundation for numerous subsequent methods.

Report: Assignment 5 - Deep Learning on Point Cloud

6. 3D Object Detection

This chapters introduces many methods for 3D object detection. However, the assignment is nothing but helps students be familiar with the KITTI object detection dataset.

Report: Assignment 6 - Evaluation of KITTI 3D objection detection results

7. 3D Feature Detection

Not finished yet...

8. 3D Feature Description

Not finished yet...

9. Registration

Not finished yet...

About

A tutorial for learning the knowledge and techniques about 3D point clouds.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published