Skip to main content

PyTorch dataset for TDSC ABUS 2023

Project description

TDSC-ABUS2023 PyTorch Dataset

PyPI version License Build Status

A PyTorch-compatible dataset package containing volumetric data from the TDSC-ABUS2023 collection (Tumor Detection, Segmentation, and Classification Challenge on Automated 3D Breast Ultrasound).


📊 Dataset Description

The dataset consists of 200 3D ultrasound volumes collected using an Invenia ABUS (GE Healthcare) system at Harbin Medical University Cancer Hospital, China. All tumor annotations were created and verified by experienced radiologists.

Dataset Composition

Set Cases Malignant Benign
Training 100 58 42
Validation 30 17 13
Test 70 40 30

Technical Specifications

  • Image Dimensions: Vary between 843×546×270 and 865×682×354
  • Pixel Spacing:
    • X-Y plane: 0.200 mm × 0.073 mm
    • Z-axis (between slices): ~0.475674 mm
  • File Format: .nrrd
  • Annotations: Voxel-level segmentation
    • 0: Background
    • 1: Tumor

📥 Installation

Install the package via pip:

pip install tdsc-abus2023-pytorch

Verify Installation

import tdsc_abus2023_pytorch
print("TDSC-ABUS2023 PyTorch Dataset is installed successfully!")

🚀 Usage

Loading the Original Dataset

from tdsc_abus2023_pytorch import TDSC, DataSplits

# Initialize dataset with automatic download
dataset = TDSC(
    path="./data",
    split=DataSplits.TRAIN,
    download=True
)

# Access a sample
volume, mask, label, bbx = dataset[0]

Using the Tumor-Only Dataset

This dataset contains only tumor data, suitable for classification and segmentation tasks.

from tdsc_abus2023_pytorch import TDSCTumors, DataSplits

# Initialize dataset with automatic download
dataset = TDSCTumors(
    path="./data",
    split=DataSplits.TRAIN,
    download=True
)

# Access a sample
volume, mask, label = dataset[0]

View Transformers for changing the view

from tdsc_abus2023_pytorch import TDSC, DataSplits, ViewTransformer, ViewTransposeConfig
from enum import Enum
import numpy as np

view_transformer = ViewTransformer(view=ViewTransposeConfig.CORONAL)
dataset = TDSC(path="./data", split=DataSplits.TRAIN, transforms=[view_transformer])

# Get transformed sample
vol, msk, label, bbx = dataset[0]

Custom Transformers

from tdsc_abus2023_pytorch import TDSC, DataSplits, ViewTransformer, ViewTransposeConfig
from enum import Enum
import numpy as np

class MyTransformer:
    def __init__(self, my_params):
        # your params work here...
        pass

    def transform(self, vol):
        # Your transform strategy here...
        pass

    def __call__(self, vol, mask):
        # you should return vol & mask after transform
        return transform(vol), transform(mask)

view_transformer = ViewTransformer(view=ViewTransposeConfig.CORONAL)
my_transformer = MyTransformer(*args)


dataset = TDSC(path="./data", split=DataSplits.TRAIN, transforms=[view_transformer, my_transformer])

# Get transformed sample
vol, msk, label, bbx = dataset[0]

📂 Data Structure

data/
  ├── Train/
  │   ├── DATA/
  │   └── MASK/
  ├── Validation/
  │   ├── DATA/
  │   └── MASK/
  └── Test/
      ├── DATA/
      └── MASK/

📖 Citation

If you use this dataset in your research, please cite:

@misc{luo2025tumordetectionsegmentationclassification,
    title={Tumor Detection, Segmentation and Classification Challenge on Automated 3D Breast Ultrasound: The TDSC-ABUS Challenge},
    author={Gongning Luo and others},
    year={2025},
    eprint={2501.15588},
    archivePrefix={arXiv},
    primaryClass={eess.IV},
    url={https://arxiv.org/abs/2501.15588},
}

🤝 Contributing

We welcome contributions! To contribute, please fork the repository, make your changes, and submit a Pull Request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tdsc_abus2023_pytorch-0.1.10.tar.gz (9.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tdsc_abus2023_pytorch-0.1.10-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file tdsc_abus2023_pytorch-0.1.10.tar.gz.

File metadata

  • Download URL: tdsc_abus2023_pytorch-0.1.10.tar.gz
  • Upload date:
  • Size: 9.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tdsc_abus2023_pytorch-0.1.10.tar.gz
Algorithm Hash digest
SHA256 9020401b5a3ad4fcd7f0d8bbaa18d94dd9e723016f1fb37c01969cdf4e6bdbec
MD5 9dddae983e7bc4dafd84a524104c0bb9
BLAKE2b-256 c4d5c62d4c4d8309407f5421d5df11a97789deb69049de1bb099923464f05c3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tdsc_abus2023_pytorch-0.1.10.tar.gz:

Publisher: python-publish.yml on mralinp/tdsc-abus2023-pytorch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tdsc_abus2023_pytorch-0.1.10-py3-none-any.whl.

File metadata

File hashes

Hashes for tdsc_abus2023_pytorch-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 e9e7cb8f976d6d70fb4378aef95ee87da28d1d5631f7e92dd35bcced87fe9134
MD5 a0a039080763b46fdc09f269600b1927
BLAKE2b-256 bde6e631ffd98706188e4128471ccea127529303e10eaa2a13f15a4814107950

See more details on using hashes here.

Provenance

The following attestation bundles were made for tdsc_abus2023_pytorch-0.1.10-py3-none-any.whl:

Publisher: python-publish.yml on mralinp/tdsc-abus2023-pytorch

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page