Giter Site home page Giter Site logo

darkgs's Introduction

DarkGS: Learning Neural Illumination and 3D Gaussians Relighting for Robotic Exploration in the Dark

"Even with these dark eyes, a gift of the dark night, I go to seek the shining light." --Gu Cheng 1956-1993

Logo Logo

Novel-view rendering: Simulating a light cone and re-illuminating the environment.

Please check our videos (Bilibili).

Logo

Sister Repo for Camera-Light calibration

The sister repo Neural Light Simulator for light-camera calibration is here.

Install

Installation generally follows vanilla Gaussian Splatting installation.

git clone [email protected]:tyz1030/darkgs.git --recursive

or

git clone https://github.com/tyz1030/darkgs.git --recursive

Conda environment setup

conda env create --file environment.yml
conda activate darkgs

Also need to install lietorch

pip install git+https://github.com/princeton-vl/lietorch.git

Data

Please find our example data on Google Drive and DropBox.

Make your own data

Please put your RAW images subfolder named "raw". To make COLMAP less struggle, I gamma-curved/manually increased the brightness of the raw images for feature extraction and matching. These corrected images are put in "input" subfolder. We only use "raw" images to build DarkGS.

python3 convert.py -s <path to your own dataset>

Light Calibration

If you are using your own light-camera setup, please calibrate your system using neural light simulator. Then put model_parameters.pth in the root directory.

Quick Start

Train

python train.py -s <path to example dataset>

Visualize with SIRB viewer:

./SIBR_remoteGaussian_app

Then you will be able to steer your light cone by pressing "JKLI" on the keyboard.\

Visualize (a checkpoint) after training:

SIBR_gaussianViewer_app is not compatible with this repo. Please try the following:

python3 viz_chkpt.py -s data/lab1/ -m output/<xxxxxx-xxx> --start_checkpoint output/<xxxxxx-xxx>/chkpnt30000.pth

then in another terminal

./SIBR_remoteGaussian_app

Relighting (I'm working on the release)

Meanwhile, there is no one-true-solution to relighting.
I have ADHD symptoms, so please forgive my slow progress.
One quick hack through is when running viz_chkpt.py, uncomment line 129 in scene/lighting.py. And you will also need to brighten, white balance and gamma correct the final render results to make it look good otherwise it is in blue-greenish RAW format.

Cite

This work is picked up by IROS 2024 as oral presentation! Arxiv

@INPROCEEDINGS{zhang2024darkgs,
  author={Tianyi Zhang and Kaining Huang and Weiming Zhi and Matthew Johnson-Roberson},
  booktitle={2024 International Conference on Intelligent Robots and Systems (IROS)}, 
  title={DarkGS: Learning Neural Illumination and 3D Gaussians Relighting for Robotic Exploration in the Dark}, 
  year={2024}}

Acknowledgement

  • This work is supported by NOAA.
  • Copyright 2024 Tianyi Zhang, Carnegie Mellon University. All rights reserved.

darkgs's People

Contributors

tyz1030 avatar

Stargazers

 avatar Chengkun Li avatar Doris Zhu avatar  avatar Wzhi avatar WZY99 avatar Xiang WU avatar Zixin Zhang | 张梓欣 avatar Zhen Xu avatar Lam Ngo avatar  avatar Hongwei Fan avatar janusch avatar 朱胤 avatar Xiaobing Han avatar 离离 avatar  avatar Jimmy Yu avatar Muyao Niu avatar  avatar Chenglong Qian avatar Qiqi Wu avatar Spider Man avatar  avatar  avatar  avatar  avatar  avatar Zike Yan avatar  avatar Zhihao Zhan avatar Liansheng Wang avatar Thomas Ung avatar Alakia avatar  avatar Lee Jaewon avatar  avatar  avatar  avatar Dongyu Yan avatar Jingyu Song avatar  avatar Literdy avatar Zhuoqun(Jack) Chen avatar Serenitysmk avatar Inferencer avatar Paragoner avatar Yuan Shen avatar JasonWu avatar  avatar  avatar codingbull avatar 爱可可-爱生活 avatar ZcsrenLongZ avatar Qianyue He avatar Haomeng Zhang avatar XiaofengLin avatar  avatar Rekkles avatar Realcat avatar Jung Yeon Lee avatar Engin Bozkurt avatar Hongji Fu avatar Jiaming Sun avatar Yunsheng Luo avatar Lingzhe Zhao avatar Moyang Li avatar cheng wang avatar Zhang Yufan avatar Kaining Huang avatar Yule Wang avatar Lin Zhao (he/him/his) avatar

Watchers

Jiaming Sun avatar  avatar

darkgs's Issues

Train problem

When I run the command python train.py -s .\lab1 , the following result was output in terminal normally.
(darkgs) PS D:\darkgs> python train.py -s .\lab1
Optimizing
Output folder: ./output/ddf3c879-f [21/05 15:37:38]
Tensorboard not available: not logging progress [21/05 15:37:38]
Reading camera 114/114 [21/05 15:37:38]
Loading Training Cameras [21/05 15:37:38]
Loading Test Cameras [21/05 15:37:52]
Number of points at initialisation : 5667 [21/05 15:37:52]

However,the output folder only have
image

BRDF & Albedo

Hi Zhang, thank you for your great work. I have a question about the paper in ArXiv.
May I ask why you multiply brdf and albedo?
brdf

Visualization of training results

How to visualize the results after training with the provided dataset and obtaining corresponding results? I used the same viewer as the 3D GS but couldn't see any results. Is there anything worth noting in this step? Looking forward to your reply.
Thank you very much for your work!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.