Repository navigation
Expand file tree
/
Copy pathpyproject.toml
More file actions
79 lines (69 loc) · 2.28 KB
/
Copy pathpyproject.toml
File metadata and controls
79 lines (69 loc) · 2.28 KB
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
[project]
name = "iop-compass"
version = "0.2.0"
description = "Multi-view intraoral photograph benchmark: dataset audit, FDI-aware tooth instance segmentation baselines and a reproducible annotation workflow"
requires-python = ">=3.12,<3.13"
license = { text = "MIT" }
# Pinned to what the reported results were produced with; requirements-lock.txt has
# the exact resolved environment, including the +cu126 wheels installed from the
# PyTorch index (see scripts/setup_env.sh).
dependencies = [
"torch==2.7.1",
"torchvision==0.22.1",
"numpy<2",
"opencv-python-headless>=4.11",
"scipy>=1.13",
"scikit-image>=0.24",
"matplotlib>=3.9",
"pyyaml>=6",
"tqdm>=4.66",
"Pillow>=10",
"pycocotools>=2.0.8",
"tabulate>=0.9",
# the viewer backend in app/
"flask>=3.0",
"flask-cors>=4.0",
# SegmentAnyTooth's own stack
"ultralytics>=8.3.116",
"segment-anything-hq==0.3",
"timm<1",
# SAM 3 transitive requirements
"einops>=0.8",
"ftfy>=6.2",
"regex",
"hydra-core>=1.3",
"omegaconf>=2.3",
"iopath>=0.1.10",
"huggingface_hub>=0.24",
"tensordict>=0.5",
"torchmetrics>=1.4",
"decord>=0.6",
# the vendored sam3 package imports pkg_resources
"setuptools<82",
]
[project.optional-dependencies]
dev = ["pytest>=8", "ruff>=0.6,<0.13"]
[project.urls]
Repository = "https://github.com/AImageLab-zip/IOP-Compass"
# Third-party code and weights are deliberately NOT declared here; they are licensed
# separately and are linked into third_party/ by scripts/fetch_third_party.py:
# * SegmentAnyTooth code (MIT) and weights (separate non-commercial agreement)
# * SAM 3 code and checkpoint (Meta licence)
# Neither is redistributed by this repository.
[build-system]
requires = ["setuptools>=68"]
build-backend = "setuptools.build_meta"
[tool.setuptools]
package-dir = { "" = "src" }
[tool.setuptools.packages.find]
where = ["src"]
[tool.pytest.ini_options]
testpaths = ["tests"]
pythonpath = ["src"]
[tool.ruff]
line-length = 90
target-version = "py312"
[tool.ruff.lint.isort]
# The viewer backend runs with its own directory on sys.path, so its sibling
# modules are first-party even though they are not importable as a package.
known-first-party = ["iop_compass", "api", "cases", "config", "contours", "pipeline", "server"]