Files
nerfstudio/pyproject.toml
T
796fad8bcb Equirectangular input (#1446)
* started adding equirectangular to process_data

* was multiplying frame by 255 twice

* added equi2planar configs for the 3 presets

* fixed presets

* setup process data

* changed variable name and comment

* fixed middle preset

* removed third preset

* added progress bar and fixed video for equirectangular input

* fixed whitespace stuff

* added pyequilib dependencey

* Updated for JPG support for equirectangular image input

Updated process_data_utils for JPG support for equirectangular image input, since even though .jpg images worked, .JPG images (output from 360 camera software) were not working.

* changed file type matching

* added equirect utils

* added license header

* added docstring on equirect utils

* added heuristic for image size

* added heuristic for videos

* fixed linty stuff

* shortened code

* raised error if no ims in directory

* Updated ProcessVideo for fixing directories for equirectangular input

Updated the ProcessVideo for equirectangular input to make the image directory have the correct perspective projections. The original equirectangular images are copied into a temp_images folder which also holds the perspective projections. This folder is deleted once the perspective projections are copied into the process data images folder.

---------

Co-authored-by: cvachha <cyrus.vachha@yahoo.com>
Co-authored-by: cvachha <cvachha549@gmail.com>
2023-02-20 10:58:42 -08:00

170 lines
4.1 KiB
TOML

[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
[project]
name = "nerfstudio"
version = "0.1.18"
description = "All-in-one repository for state-of-the-art NeRFs"
readme = "README.md"
license = { text="Apache 2.0"}
requires-python = ">=3.7.3"
classifiers = [
"Development Status :: 3 - Alpha",
"Programming Language :: Python",
]
dependencies = [
"aiohttp>=3.8.1",
"aiortc>=1.3.2",
"appdirs>=1.4",
"av>=9.2.0",
"cryptography>=38,<39",
"tyro>=0.3.31",
"gdown>=4.6.0",
"ninja>=1.10",
"functorch>=0.2.1",
"h5py>=2.9.0",
"imageio>=2.21.1",
'importlib-metadata>=6.0.0; python_version < "3.10"',
"ipywidgets>=7.6",
"jupyterlab>=3.3.4",
"matplotlib>=3.5.3",
"mediapy>=1.1.0",
"msgpack>=1.0.4",
"msgpack_numpy>=0.4.8",
"nerfacc==0.3.3",
"open3d>=0.16.0",
"opencv-python==4.6.0.66",
"Pillow>=9.3.0",
"plotly>=5.7.0",
"protobuf<=3.20.3,!=3.20.0",
"pyequilib>=0.5.6",
"pymeshlab>=2022.2.post2",
"pyngrok>=5.1.0",
"python-socketio>=5.7.1",
"requests",
"rich>=12.5.1",
"scikit-image>=0.19.3",
"tensorboard==2.9.0",
"torch>=1.12.1",
"torchmetrics[image]>=0.9.3",
"torchtyping>=0.1.4",
"torchvision>=0.13.0",
"u-msgpack-python>=2.4.1",
"nuscenes-devkit>=1.1.1",
"wandb>=0.13.3",
"xatlas"
]
[project.urls]
"Documentation" = "https://docs.nerf.studio"
[project.optional-dependencies]
# Generative related dependencies
gen = [
"diffusers==0.9.0",
"transformers==4.24.0",
]
# Development packages
dev = [
"black[jupyter]==22.3.0",
"pylint==2.13.4",
"pytest==7.1.2",
"pytest-xdist==2.5.0",
"typeguard>=2.13.3",
]
# Documentation related packages
docs = [
"furo==2022.09.29",
# Specifying ipython for https://github.com/ipython/ipython/issues/13845
"ipython==8.6.0",
"readthedocs-sphinx-search==0.1.2",
"myst-nb==0.16.0",
"nbconvert==7.2.5",
"nbformat==5.5.0",
"sphinx==5.2.1",
"sphinxemoji==0.2.0",
"sphinx-argparse==0.3.1",
"sphinx-copybutton==0.5.0",
"sphinx-design==0.2.0",
"sphinxext-opengraph==0.6.3"
]
[project.scripts]
# Note, add entrypoint name to scripts/completions/install.py to include CLI completion
ns-install-cli = "scripts.completions.install:entrypoint"
ns-process-data = "scripts.process_data:entrypoint"
ns-download-data = "scripts.downloads.download_data:entrypoint"
ns-train = "scripts.train:entrypoint"
ns-viewer = "scripts.viewer.run_viewer:entrypoint"
ns-eval = "scripts.eval:entrypoint"
ns-render = "scripts.render:entrypoint"
ns-export = "scripts.exporter:entrypoint"
ns-dev-test = "scripts.github.run_actions:entrypoint"
ns-bridge-server = "nerfstudio.viewer.server.server:entrypoint"
[options]
# equivalent to using --extra-index-url with pip, which is needed for specifying the CUDA version torch and torchvision
dependency_links = [
"https://download.pytorch.org/whl/cu113"
]
[tool.setuptools.packages.find]
include = ["nerfstudio*","scripts*"]
[tool.setuptools.package-data]
"*" = ["*.json", "py.typed", "setup.bash", "setup.zsh"]
# black
[tool.black]
line-length = 120
# pylint
[tool.pylint.messages_control]
max-line-length = 120
generated-members = ["numpy.*", "torch.*", "cv2.*", "cv.*"]
good-names-rgxs = "^[_a-zA-Z][_a-z0-9]?$"
ignore-paths = ["scripts/colmap2nerf.py"]
jobs = 0
ignored-classes = ["TensorDataclass"]
disable = [
"duplicate-code",
"fixme",
"logging-fstring-interpolation",
"too-many-arguments",
"too-many-branches",
"too-many-instance-attributes",
"too-many-locals",
"unnecessary-ellipsis",
]
#pytest
[tool.pytest.ini_options]
addopts = "-n=4 --typeguard-packages=nerfstudio --torchtyping-patch-typeguard --disable-warnings"
testpaths = [
"tests",
]
# pyright
[tool.pyright]
include = ["nerfstudio"]
exclude = ["**/node_modules",
"**/__pycache__",
]
ignore = ["nerfstudio/viewer"]
defineConstant = { DEBUG = true }
reportMissingImports = true
reportMissingTypeStubs = false
reportPrivateImportUsage = false
reportUndefinedVariable = false
pythonVersion = "3.7"
pythonPlatform = "Linux"