8000 GitHub - lifuguan/GGRt_official: [ECCV 2024] GGRt: Towards Pose-free Generalizable 3D Gaussian Splatting in Real-time
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

[ECCV 2024] GGRt: Towards Pose-free Generalizable 3D Gaussian Splatting in Real-time

Notifications You must be signed in to change notification settings

lifuguan/GGRt_official

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

GGRt: Towards Pose-free Generalizable 3D Gaussian Splatting in Real-time

[Project Page | arXiv] | Model

GGRt: Towards Pose-free Generalizable 3D Gaussian Splatting in Real-time,

Official implementation of "GGRt: Towards Pose-free Generalizable 3D Gaussian Splatting in Real-time".

πŸ› οΈ Pipeline


Installation

git clone https://github.com/dcharatan/diff-gaussian-rasterization-modified
pip install -e ./diff-gaussian-rasterization-modified

Data Preparation

For LLFF dataset, please follow the ibrnet. For Waymo dataset, please download the data from EmerNeRF.

The data structure is as follows:

data
β”œβ”€β”€ ibrnet                
β”‚   β”œβ”€β”€ train
β”‚   β”‚   β”œβ”€β”€ real_iconic_noface
β”‚   β”‚   β”‚   β”œβ”€β”€ airplants
β”‚   β”‚   β”‚   β”œβ”€β”€ ...
β”‚   β”‚   β”œβ”€β”€ ibrnet_collected_1
β”‚   β”‚   β”‚   β”œβ”€β”€ ...
β”‚   β”‚   β”œβ”€β”€ ibrnet_collected_2
β”‚   β”‚   β”‚   β”œβ”€β”€ ...
β”‚   β”œβ”€β”€ train
β”œβ”€β”€ nerf_llff_data
β”‚   β”œβ”€β”€ fern
β”‚   β”œβ”€β”€ room
β”‚   β”œβ”€β”€ ...
β”œβ”€β”€ waymo
β”‚   β”œβ”€β”€ training
β”‚   β”‚   β”œβ”€β”€ 139
β”‚   β”‚   β”œβ”€β”€ 140
β”‚   β”‚   β”œβ”€β”€ ...   
β”‚   β”œβ”€β”€ testing
β”‚   β”‚   β”œβ”€β”€ 003
β”‚   β”‚   β”œβ”€β”€ 019
β”‚   β”‚   β”œβ”€β”€ ...   

On LLFF Dataset

we provide launch.json formatted for debugging.

Generalizable Training

{
    "env": {
        "CUDA_VISIBLE_DEVICES": "0",
        "PYTHONPATH": "${workspaceFolder}"
    },
    "name": "generalize:ggrt-llff",
    "type": "python",
    "request": "launch",
    "program": "${workspaceFolder}/train_ggrt_stable.py",
    "console": "integratedTerminal",
    "justMyCode": false,
    "args": [
        "++rootdir=data/ibrnet/train",
        "+ckpt_path=model_zoo/generalized_llff_best.pth",
        "++train_dataset=llff",
        "++eval_dataset=llff",
        "++num_source_views=4",
        "++expname=generalizable_llff",
        "++use_depth_loss=False",
        "++use_pred_pose=True",
        "++render_video=False",
        "++crop_size=2",
    ]
},

Finetune on Sepcific Scenes

{
    "env": {
        "CUDA_VISIBLE_DEVICES": "0",
        "PYTHONPATH": "${workspaceFolder}"
    },
    "name": "finetune:ggrt-waymo",
    "type": "python",
    "request": "launch",
    "program": "${workspaceFolder}/finetune_ggrt_stable.py",
    "console": "integratedTerminal",
    "justMyCode": false,
    "args": [
        "++rootdir=data/ibrnet/train",
        "+ckpt_path=model_zoo/generalized_llff_best.pth",
        "++train_dataset=llff_test",
        "++eval_dataset=llff_test",
        "++eval_scenes=[fern]",
        "++train_scenes=[fern]",
        "++num_source_views=4",
        "++expname=ft_llff_fern",
        "++use_depth_loss=False",
        "++use_pred_pose=True",
        "++render_video=False",
        "++crop_size=2",
    ]
},

Evaluation

{
    "env": {
        "CUDA_VISIBLE_DEVICES": "7",
        "PYTHONPATH": "${workspaceFolder}"
    },
    "name": "test:ggrt-llff",
    "type": "python",
    "request": "launch",
    "program": "${workspaceFolder}/eval/eval_ggrt.py",
    "console": "integratedTerminal",
    "justMyCode": false,
    "args": [
        "++rootdir=data/ibrnet/eval",
        "+ckpt_path=model_zoo/generalized_llff_best.pth", 
        "++train_dataset=llff_test",
        "++train_scenes=[fern]",
        "++eval_dataset=llff_test",
        "++eval_scenes=[fern]",
        "++num_source_views=5",
        "++render_video=False",
        "++expname=generalizable_llff_fern",
    ]
}

On Waymo Dataset

Generalizable Training

{
    "env": {
        "CUDA_VISIBLE_DEVICES": "0",
        "PYTHONPATH": "${workspaceFolder}"
    },
    "name": "generalize:ggrt-waymo",
    "type": "python",
    "request": "launch",
    "program": "${workspaceFolder}/train_ggrt_stable.py",
    "console": "integratedTerminal",
    "justMyCode": false,
    "args": [
        "++rootdir=data/ibrnet/train",
        "+ckpt_path=model_zoo/generalized_waymo_best.pth",
        "++train_dataset=waymo",
        "++eval_dataset=waymo",
        "++eval_scenes=[019]",
        "++num_source_views=4",
        "++expname=ft_waymo_019",
        "++use_depth_loss=False",
        "++use_pred_pose=True",
        "++render_video=False",
        "++crop_size=2",
    ]
},

Finetune on Sepcific Scenes

{
    "env": {
        "CUDA_VISIBLE_DEVICES": "0",
        "PYTHONPATH": "${workspaceFolder}"
    },
    "name": "finetune:ggrt-waymo",
    "type": "python",
    "request": "launch",
    "program": "${workspaceFolder}/finetune_ggrt_stable.py",
    "console": "integratedTerminal",
    "justMyCode": false,
    "args": [
        "++rootdir=data/ibrnet/train",
        "+ckpt_path=model_zoo/generalized_waymo_best.pth",
        "++train_dataset=waymo",
        "++eval_dataset=waymo",
        "++eval_scenes=[019]",
        "++train_scenes=[019]",
        "++num_source_views=4",
        "++expname=ft_waymo_019",
        "++use_depth_loss=False",
        "++use_pred_pose=True",
        "++render_video=False",
        "++crop_size=2",
    ]
},

Evaluation

{
    "env": {
        "CUDA_VISIBLE_DEVICES": "7",
        "PYTHONPATH": "${workspaceFolder}"
    },
    "name": "test:ggrt-waymo",
    "type": "python",
    "request": "launch",
    "program": "${workspaceFolder}/eval/eval_ggrt.py",
    "console": "integratedTerminal",
    "justMyCode": false,
    "args": [
        "++rootdir=data/ibrnet/eval",
        "+ckpt_path=model_zoo/generalized_waymo_best.pth", 
        "++train_dataset=waymo",
        "++train_scenes=[019]",
        "++eval_dataset=waymo",
        "++eval_scenes=['019']",
        "++num_source_views=5",
        "++render_video=False",
        "++expname=opensource",
        "++dataset_root_eval=data/waymo/testing",  // 桋试集路径
    ]
}

About

[ECCV 2024] GGRt: Towards Pose-free Generalizable 3D Gaussian Splatting in Real-time

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0