Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
An unofficial implementation of paper 3D Gaussian Splatting for Real-Time Radiance Field Rendering by taichi lang.
| Date | Stars |
|---|---|
| 2026-07-24 | 751 |
| 2026-07-25 | 751 |
| 2026-07-28 | 752 |
| 2026-07-30 | 752 |
| 2026-08-06 | 752 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# taichi_3d_gaussian_splatting
An unofficial implementation of paper [3D Gaussian Splatting
for Real-Time Radiance Field Rendering](https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/) by taichi lang.
## What does 3D Gaussian Splatting do?
### Training:
The algorithm takes image from multiple views, a sparse point cloud, and camera pose as input, use a differentiable rasterizer to train the point cloud, and output a dense point cloud with extra features(covariance, color information, etc.).
<img src="images/image_from_multi_views.png" alt="drawing" width="200"/>\
If we view the training process as module, it can be described as:
```mermaid
graph LR
A[ImageFromMultiViews] --> B((Training))
C[sparsePointCloud] --> B
D[CameraPose] --> B
B --> E[DensePointCloudWithExtraFeatures]
```
### Inference:
The algorithm takes the dense point cloud with extra features and any camera pose as input, use the same rasterizer to render the image from the camera pose.
```mermaid
graph LR
C[DensePointCloudWithExtraFeatures] --> B((Inference))
D[NewCameraPose] --> B
B --> E[Image]
```
An example of inference result:
https://github.com/wanmeihuali/taichi_3d_gaussian_splatting/assets/18469933/cc760693-636b-4157-ae85-33813f3da54d
Because the nice property of point cloud, the algorithm easily handles scene/object merging compared to other NeRF-like algorithms.
https://github.com/wanmeihuali/taichi_3d_gaussian_splatting/assets/18469933/bc38a103-e435-4d35-9239-940e605b4552
<details><summary>other example result</summary>
<p>
top left: [result from this repo(30k iteration)](https://github.com/wanmeihuali/taichi_3d_gaussian_splatting/blob/cf7c1428e8d26495a236726adf9546e4f2a9adb7/config/tat_truck_every_8_test.yaml), top right: ground truth, bottom left: normalized depth, bottom right: normalized num of points per pixel



</p>
</details>
## Why taichi?
- Taichi is a language for high-performance computing. It is designed to close the gap between the productivity-focused Python language and the performance- and parallelism-focused C++/CUDA languages. By using Taichi, the repo is pure Python, and achieves the same or even better performance compared to CUDA implementation. Also, the code is much easier to read and maintain.
- Taichi provides various backends, including CUDA, OpenGL, Metal, etc. We do plan to change the backend to support various platforms, but currently, the repo only supports CUDA backend.
- Taichi provides automatic differentiation, although the repo does not use it currently, it is a nice feature for future development.
## Current status
The repo is now tested with the dataset provided by the official implementation. For the truck dataset, The repo is able to achieve a bit higher PSNR than the official implementation with only 1/5 to 1/4 number of points. However, the training/inference speed is still slower than the official implementation.
The results for the official implementation and this implementation are tested on the same dataset. I notice that the result from official implementation is slightly different from their paper, the reason may be the difference in testing resolution.
| Dataset | source | PSNR | SSIM | #points |
| --- | --- | --- | --- | --- |
| Truck(7k) | paper | 23.51 | 0.840 | - |
| Truck(7k) | offcial implementation | 23.22 | - | 1.73e6 |
| Truck(7k) | this implementation | 23.762359619140625 | 0.835700511932373 | ~2.3e5 |
| Truck(30k) | paper | 25.187 | 0.879 | - |
| Truck(30k) | offcial implementation | 24.88 | - | 2.1e6 |
| Truck(30k) | this implementation | 25.21463966369629 | 0.8645088076591492 | 428687.0 |
[Truck(30k)(recent best result)](https://github.com/wanmeihuali/taichi_3d_gaussian_splatting/pull/98#issuecomment-1634828783):
| train:iteration | train:l1loss | train:loss | train:num_valid_points | train:psnr | train:ssim | train:sExcerpt of 18,909 characters
Read on GitHub218
3
2
1
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:39ef2650055d964e, topic:computer-vision, topic:nerf, topic:3d-reconstruction