Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HiCo-GS

Hierarchical Context Aggregation and Geometric Consistency for Octree Gaussian Splatting

ACM Multimedia 2026

Wei Zhang*, Shengkai Yu*, Shiqiang Gong*, Qi Zhang, Qiang Li, Qi Wang†
Northwestern Polytechnical University; vivo BlueImage Lab
* Equal contribution. † Corresponding author.

Paper arXiv License

HiCo-GS teaser

HiCo-GS is a high-fidelity framework for city-scale reconstruction with octree-structured Gaussian anchors. It combines Cross-Level Context Aggregation (CLCA), which exchanges hierarchical feature context, with Depth-Normal Geometric Consistency (DNGC), which regularizes rendered geometry using normal agreement and edge-aware smoothness.

This repository is the official implementation of the ACM MM 2026 paper. It is built on CityGS-X.

News and release status

  • 2026-08: Paper accepted by ACM Multimedia 2026; code release prepared.
  • Paper: ACM DOI | arXiv coming soon.
  • Pretrained models: coming soon.
  • Processed benchmark data: coming soon.
  • China-Pagoda: coming soon; 8 scenes and more than 10,000 images in total.

Method

HiCo-GS method

  • CLCA enriches each visible anchor feature with parent/self/child level context through a lightweight residual MLP.
  • DNGC aligns rendered normals with normals induced by rendered depth and adds edge-aware normal and distance smoothness with progressive warmup.
  • The implementation retains distributed anchor training from CityGS-X and supports independent CLCA and DNGC ablations.

Main results

Rendering results from the accepted paper:

Benchmark Scene SSIM ↑ PSNR ↑ LPIPS ↓
Mill19 Building 0.789 22.67 0.231
Mill19 Rubble 0.863 28.09 0.192
UrbanScene3D Residence 0.844 24.41 0.166
UrbanScene3D Sci-Art 0.894 26.64 0.163

On MatrixCity, HiCo-GS reaches 27.93 PSNR, 0.461 precision, 0.856 recall, and 0.599 F1. See the paper for complete comparisons, geometry results, China-Pagoda results, and ablations.

Installation

The reference setup uses Ubuntu 20.04, Python 3.8.20, PyTorch 2.1.0+cu121, a CUDA 12.x toolkit, GCC 9.4.0, and four RTX 4090 GPUs.

conda env create -f environment.yml
conda activate hicogs
./scripts/install.sh

The installer compiles the included differentiable rasterizer and simple-KNN CUDA extensions, then validates imports. See the environment notes for exact versions and troubleshooting. Packaging-time checks and the remaining GPU validation boundary are recorded in VALIDATION.md.

Data

The paper uses Mill19 (Building and Rubble), UrbanScene3D (Residence and Sci-Art), MatrixCity, and China-Pagoda. Processed downloads are not yet public. The expected COLMAP, RGB, inverse-depth, mask, and train/test layouts are documented in DATA.md.

Reproduce training

Paper configuration:

Setting Value
GPUs 4 x RTX 4090
Iterations 30,000
Batch size 4
Branching factor 2
Anchor feature dimension 32
Offsets per anchor 5
DNGC weights (normal, normal smooth, distance smooth) (0.05, 0.01, 0.01)
DNGC edge sensitivity / warmup 10 / 10,000

Use the provided profile wrapper:

# Mill19: Building or Rubble
./scripts/train.sh mill19 /path/to/scene /path/to/output

# UrbanScene3D: Residence or Sci-Art
./scripts/train.sh urbanscene3d /path/to/scene /path/to/output

# MatrixCity
./scripts/train.sh matrixcity /path/to/MatrixCity/train/block_all /path/to/output

# China-Pagoda
./scripts/train.sh china-pagoda /path/to/scene /path/to/output

The wrapper defaults to four processes. Set CUDA_VISIBLE_DEVICES to select devices. HICOGS_GPUS may change the process count for debugging, but such a run is not the paper setting. Additional train.py arguments are accepted after the output path. For example, save resumable checkpoints at 10k and 20k:

./scripts/train.sh mill19 /path/to/scene /path/to/output \
  --checkpoint_iterations 10000 20000

Inspect an exact command without starting training:

HICOGS_DRY_RUN=1 ./scripts/train.sh mill19 /path/to/scene /path/to/output

Ablations

# Without CLCA
./scripts/train.sh mill19 /path/to/scene /path/to/output --disable_clca

# Without DNGC
./scripts/train.sh mill19 /path/to/scene /path/to/output --disable_dngc

Resume

Resume files contain the anchor/MLP and optimizer state, RNG state, and camera sampler position, and are sharded by distributed rank. A checkpoint must be resumed with the same world size used to create it:

./scripts/train.sh mill19 /path/to/scene /path/to/output \
  --start_checkpoint /path/to/output/checkpoints/10000

Render and evaluate

args.json in the trained model directory records all model and data options. Render the test set and compute SSIM/PSNR/LPIPS with:

./scripts/render_and_evaluate.sh /path/to/evaluation-scene /path/to/output

LPIPS downloads the official VGG weights on first use. To render manually:

python render.py \
  --source_path /path/to/evaluation-scene \
  --model_path /path/to/output \
  --iteration 30000 --skip_train --eval

python metrics.py --model_paths /path/to/output --mode test

Extract a mesh and evaluate its F1 score:

python render_mesh.py \
  --source_path /path/to/scene \
  --model_path /path/to/output \
  --iteration 30000 --voxel_size 0.001 --max_depth 5 --use_depth_filter

python eval_f1.py \
  --ply_path_pred /path/to/predicted_mesh.ply \
  --ply_path_gt /path/to/ground_truth.ply \
  --dtau 0.5

Repository layout

arguments/             command-line and saved-configuration handling
configs/paper/         exact paper reproduction argument profiles
gaussian_renderer/     distributed rasterization and CLCA integration
scene/                 anchor model, datasets, cameras, save/load
submodules/            CUDA rasterizer and simple-KNN source
utils/                 losses, DNGC, geometry, and common utilities
scripts/               install, environment, train, render/evaluate wrappers
tests/                 CPU/static regression tests

License

This project is available for non-commercial research and evaluation only under the inherited Gaussian-Splatting License. See LICENSE.md and THIRD_PARTY_NOTICES.md. Commercial use requires prior and explicit consent from the relevant licensors.

Acknowledgements

We thank the authors of CityGS-X, 3D Gaussian Splatting, Grendel-GS, Octree-GS, PGSR, CityGaussianV2, and Momentum-GS. Their work made this project possible. Detailed provenance is recorded in THIRD_PARTY_NOTICES.md.

Citation

@inproceedings{zhang2026hicogs,
  title     = {HiCo-GS: Hierarchical Context Aggregation and Geometric Consistency for Octree Gaussian Splatting},
  author    = {Zhang, Wei and Yu, Shengkai and Gong, Shiqiang and Zhang, Qi and Li, Qiang and Wang, Qi},
  booktitle = {Proceedings of the 34th ACM International Conference on Multimedia},
  year      = {2026},
  doi       = {10.1145/3767308.3836546}
}

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Security policy

Stars

7 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages