You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

142 lines
3.1 KiB

[build-system]
requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"
[project]
name = "emcad"
version = "1.0.0"
description = "Efficient Multi-scale Convolutional Attention Decoding for Medical Image Segmentation"
readme = "README.md"
license = {file = "LICENSE"}
authors = [
{name = "Md Mostafijur Rahman", email = "mostafij.rahman@utexas.edu"},
{name = "Mustafa Munir"},
{name = "Radu Marculescu"},
]
maintainers = [
{name = "Md Mostafijur Rahman", email = "mostafij.rahman@utexas.edu"},
]
keywords = ["medical image segmentation", "deep learning", "computer vision"]
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Science/Research",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Scientific/Engineering :: Medical Science Apps.",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Operating System :: OS Independent",
]
requires-python = ">=3.8"
dependencies = [
"numpy==1.22.4",
"loguru",
"tqdm",
"pyyaml",
"pandas",
"matplotlib",
"scikit-learn",
"scikit-image",
"scipy",
"opencv-python",
"seaborn",
"albumentations==1.1.0",
"tabulate",
"warmup-scheduler",
"transformers==4.21.3",
"torchprofile",
"torchmetrics",
"einops",
"ptflops",
"torchsummary",
"torchsummaryx",
"segmentation-mask-overlay==0.3.4",
"timm==0.6.12",
"tifffile",
"pillow",
"thop",
"simpleitk",
"nibabel",
"h5py",
"huggingface-hub==0.11.0",
"ml_collections",
"tensorboardx",
"medpy",
]
[project.optional-dependencies]
dev = [
"pytest>=6.0",
"pytest-cov>=2.0",
"black>=21.0",
"isort>=5.0",
"flake8>=3.8",
"mypy>=0.800",
]
docs = [
"sphinx>=4.0",
"sphinx-rtd-theme>=0.5",
"sphinx-autodoc-typehints>=1.12",
]
[project.scripts]
emcad-train = "emcad.scripts.train:main"
emcad-test = "emcad.scripts.test:main"
[project.urls]
Homepage = "https://github.com/SLDGroup/EMCAD"
Documentation = "https://github.com/SLDGroup/EMCAD/docs"
Repository = "https://github.com/SLDGroup/EMCAD"
"Bug Tracker" = "https://github.com/SLDGroup/EMCAD/issues"
[tool.setuptools]
package-dir = {"" = "src"}
[tool.setuptools.packages.find]
where = ["src"]
[tool.setuptools.package-data]
emcad = ["configs/*.yaml"]
[tool.black]
line-length = 88
target-version = ["py38"]
include = "\.(pyi?|)$"
extend-exclude = [
"/(
# directories
\.eggs
| \.git
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| build
| dist
)/",
]
[tool.isort]
profile = "black"
multi_line_output = 3
line_length = 88
known_first_party = ["emcad"]
[tool.flake8]
max-line-length = 88
extend-ignore = ["E203", "W503"]
exclude = [
".git",
"__pycache__",
"build",
"dist",
]
[tool.mypy]
python_version = "3.8"
warn_return_any = true
warn_unused_configs = true
disallow_untyped_defs = true