-
Notifications
You must be signed in to change notification settings - Fork 1
/
pixi.toml
60 lines (54 loc) · 3.41 KB
/
pixi.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
[project]
name = "dn-splatter"
version = "0.1.0"
description = "Depth and normal priors for 3D Gaussian splatting and meshing"
channels = ["nvidia/label/cuda-11.8.0", "nvidia", "conda-forge", "pytorch"]
platforms = ["linux-64"]
conda-pypi-map = { "conda-forge" = "https://raw.githubusercontent.com/prefix-dev/parselmouth/main/files/mapping_as_grayskull.json" }
[tasks]
# Quick Run example
download-omnidata = {cmd="ls omnidata_ckpt/omnidata_dpt_normal_v2.ckpt || python dn_splatter/data/download_scripts/download_omnidata.py", outputs=["omnidata_ckpt/omnidata_dpt_normal_v2.ckpt"]}
download-data-sample = {cmd="ls datasets/koivu_iphone.tar.gz || python dn_splatter/data/download_scripts/mushroom_download.py --sequence iphone --room-name koivu", outputs=["datasets/koivu_iphone.tar.gz"]}
train-mushroom-sample = """
ns-train dn-splatter \
--pipeline.model.use-depth-loss True \
--pipeline.model.sensor-depth-lambda 0.2 \
--pipeline.model.use-depth-smooth-loss True \
--pipeline.model.use-normal-loss True \
--pipeline.model.normal-supervision mono \
mushroom --data datasets/room_datasets/koivu --mode iphone
"""
example = {cmd = "pwd", depends_on=["download-omnidata", "download-data-sample", "train-mushroom-sample"]}
# Polycam example using dsine
## first download polycam only if ls fails (checking that file isn't already downloaded), || is used to check if file exists, if not move on to following command
download-polycam = {cmd="ls datasets/polycam/6g-first-scan-poly.zip || wget -P datasets/polycam https://huggingface.co/datasets/pablovela5620/sample-polycam-room/resolve/main/6g-first-scan-poly.zip"}
convert-poly-to-ns = {cmd="ls datasets/polycam/6g-first-scan-poly/transforms.json || ns-process-data polycam --data datasets/polycam/6g-first-scan-poly.zip --output-dir datasets/polycam/6g-first-scan-poly --use-depth", depends_on=["download-polycam"]}
generate-normals = {cmd="ls datasets/polycam/6g-first-scan-poly/normals_from_pretrain/frame_00001.png || python dn_splatter/scripts/normals_from_pretrain.py --data-dir datasets/polycam/6g-first-scan-poly --model-type dsine", depends_on=["convert-poly-to-ns"]}
generate-pointcloud = "ls datasets/polycam/6g-first-scan-poly/iphone_pointcloud.ply || python dn_splatter/data/mushroom_utils/pointcloud_utils.py --data-path datasets/polycam/6g-first-scan-poly"
train-polycam = """
ns-train dn-splatter \
--max-num-iterations 5001 \
--pipeline.model.use-depth-loss True \
--pipeline.model.sensor-depth-lambda 0.2 \
--pipeline.model.use-depth-smooth-loss True \
--pipeline.model.use-normal-loss True \
--pipeline.model.normal-supervision mono \
normal-nerfstudio --data datasets/polycam/6g-first-scan-poly --normal-format opencv
"""
example-polycam = {cmd="pwd", depends_on=["generate-normals", "generate-pointcloud", "train-polycam"]}
[dependencies]
python = "3.10.*"
pip = ">=24.0,<25"
cuda = {version = "*", channel="nvidia/label/cuda-11.8.0"}
pytorch-cuda = {version = "11.8.*", channel="pytorch"}
pytorch = {version = ">=2.2.0,<2.3", channel="pytorch"}
torchvision = {version = ">=0.17.0,<0.18", channel="pytorch"}
gcc = "11.*"
gxx = ">=11.4.0,<11.5"
pyarrow = ">=15.0.2,<15.1"
rerun-sdk = ">=0.15.1,<0.16"
[pypi-dependencies]
nerfstudio = { git = "https://github.com/nerfstudio-project/nerfstudio.git", rev = "a64026f8db23a4233327a1d0303e6082bf5b9805" }
dn-splatter = { path = ".", editable = true}
[system-requirements]
libc = { family="glibc", version="2.30" }