Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

### Added

- πŸš€ Add BMAD dataset by @code-dev05 in https://github.com/open-edge-platform/anomalib/pull/2900

### Removed

### Changed
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,13 @@ Image datamodules in Anomalib are designed to handle image-based anomaly detecti
```{grid} 3
:gutter: 2

:::{grid-item-card} BMAD
:link: anomalib.data.datamodules.image.bmad
:link-type: doc

BMAD dataset datamodule for medical anomaly detection.
:::

:::{grid-item-card} BTech
:link: anomalib.data.datamodules.image.BTech
:link-type: doc
Expand Down Expand Up @@ -89,7 +96,7 @@ Visual Anomaly dataset.

```{eval-rst}
.. automodule:: anomalib.data
:members: BTech, Datumaro, Folder, Kolektor, MVTecAD, MVTecAD2, MVTecLOCO, RealIAD, Tabular, VAD, Visa
:members: BMAD, BTech, Datumaro, Folder, Kolektor, MVTecAD, MVTecAD2, MVTecLOCO, RealIAD, Tabular, VAD, Visa
:undoc-members:
:show-inheritance:
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# BMAD Datamodule

```{eval-rst}
.. automodule:: anomalib.data.datamodules.image.bmad
:members:
:show-inheritance:
```
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,13 @@ Anomalib provides various datamodules for handling image-based anomaly detection
```{grid} 3
:gutter: 2

:::{grid-item-card} BMAD
:link: bmad
:link-type: doc

BMAD dataset datamodule for medical anomaly detection.
:::

:::{grid-item-card} BTech
:link: btech
:link-type: doc
Expand Down Expand Up @@ -54,6 +61,7 @@ Visual Anomaly (VisA) dataset datamodule.
:hidden:
:maxdepth: 1

bmad
btech
datumaro
folder
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,13 @@ Anomalib provides various datamodules for different types of data modalities. Th
```{grid} 3
:gutter: 2

:::{grid-item-card} BMAD
:link: image/bmad
:link-type: doc

BMAD dataset datamodule for medical anomaly detection.
:::

:::{grid-item-card} BTech
:link: image/btech
:link-type: doc
Expand Down
1 change: 1 addition & 0 deletions examples/configs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ The configurations in this folder are organized as follows.
configs/
β”œβ”€β”€ data
β”‚ β”œβ”€β”€ avenue.yaml
β”‚ β”œβ”€β”€ bmad.yaml
β”‚ β”œβ”€β”€ btech.yaml
β”‚ β”œβ”€β”€ folder_3d.yaml
β”‚ β”œβ”€β”€ folder.yaml
Expand Down
12 changes: 12 additions & 0 deletions examples/configs/data/bmad.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
class_path: anomalib.data.BMAD
init_args:
root: ./datasets/BMAD
category: Brain
train_batch_size: 32
eval_batch_size: 32
num_workers: 8
test_split_mode: from_dir
test_split_ratio: 0.2
val_split_mode: from_dir
val_split_ratio: null
seed: null
4 changes: 4 additions & 0 deletions src/anomalib/data/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@
from .datamodules.base import AnomalibDataModule
from .datamodules.depth import DepthDataFormat, Folder3D, MVTec3D
from .datamodules.image import (
BMAD,
MPDD,
VAD,
BTech,
Expand All @@ -71,6 +72,7 @@
from .datasets import AnomalibDataset
from .datasets.depth import Folder3DDataset, MVTec3DDataset
from .datasets.image import (
BMADDataset,
BTechDataset,
DatumaroDataset,
FolderDataset,
Expand Down Expand Up @@ -176,6 +178,7 @@ def get_datamodule(config: DictConfig | ListConfig | dict) -> AnomalibDataModule
"Folder3D",
"MVTec3D",
# Image Data Modules
"BMAD",
"BTech",
"Datumaro",
"Folder",
Expand Down Expand Up @@ -210,6 +213,7 @@ def get_datamodule(config: DictConfig | ListConfig | dict) -> AnomalibDataModule
"ShanghaiTechDataset",
"UCSDpedDataset",
"PredictDataset",
"BMADDataset",
# Functions
"get_datamodule",
# Exceptions
Expand Down
3 changes: 2 additions & 1 deletion src/anomalib/data/datamodules/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"""Anomalib Data Modules."""

from .depth import Folder3D, MVTec3D
from .image import MPDD, VAD, BTech, Datumaro, Folder, Kolektor, MVTec, MVTecAD, Tabular, Visa
from .image import BMAD, MPDD, VAD, BTech, Datumaro, Folder, Kolektor, MVTec, MVTecAD, Tabular, Visa
from .video import Avenue, ShanghaiTech, UCSDped

__all__ = [
Expand All @@ -23,4 +23,5 @@
"Avenue",
"ShanghaiTech",
"UCSDped",
"BMAD",
]
5 changes: 5 additions & 0 deletions src/anomalib/data/datamodules/image/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
This module contains data modules for loading and processing image datasets for
anomaly detection. The following data modules are available:

- ``BMAD``: BMAD Dataset for Medical Anomaly Detection
- ``BTech``: BTech Surface Defect Dataset
- ``Datumaro``: Dataset in Datumaro format (Intel Getiβ„’ export)
- ``Folder``: Custom folder structure with normal/abnormal images
Expand All @@ -30,6 +31,7 @@

from enum import Enum

from .bmad import BMAD
from .btech import BTech
from .datumaro import Datumaro
from .folder import Folder
Expand All @@ -49,6 +51,7 @@ class ImageDataFormat(str, Enum):

The following dataset formats are supported:

- ``BMAD``: BMAD Dataset for Medical Anomaly Detection
- ``BTECH``: BTech Surface Defect Dataset
- ``DATUMARO``: Dataset in Datumaro format
- ``FOLDER``: Custom folder structure
Expand All @@ -65,6 +68,7 @@ class ImageDataFormat(str, Enum):
- ``VISA``: Visual Anomaly Dataset
"""

BMAD = "bmad"
BTECH = "btech"
DATUMARO = "datumaro"
FOLDER = "folder"
Expand All @@ -82,6 +86,7 @@ class ImageDataFormat(str, Enum):


__all__ = [
"BMAD",
"BTech",
"Datumaro",
"Folder",
Expand Down
Loading
Loading