semvec/pypi-packages huggingface dataset:
fw-gear-splitter 1.7.2
DICOM splitter based on unique tags, or localizers
License: MIT
Requires Python: <4,>=3.8

# DICOM Splitter

This gear is meant to split DICOM archives into two or more archives.  The main use
cases for this gear are if,

* There are one or more localizers (scouts, etc.) mixed in with primary images
* There are multiple Series in one archive.
* The archive is multiphasic with respect to slice location (geometry split)
* The archive has non uniform image orientations (geometry split)
* Some field varies across the archive and you have reason to the archive based on that
  field (Note: This "group by" option is exclusive if a previous geometry split is performed)

The gear is set to do the first two above by default, i.e. it will extract a
localizer(s) from the archive, and it will extract each unique SeriesInstanceUID into
its own archive.

## Usage

### Inputs

* __dicom__ : DICOM archive input

### Configuration

* __extract_localizer__ (boolean, default True): Whether or not to extract localizer
from archive.
* __group_by__ (string, default "SeriesInstanceUID"): Comma separated list of dicom
tags to split the archive on.
* __tag__ (string, default "splitter"): The tag to be added on input file upon run
completion.
* __debug__ (boolean, default False): Include debug output.
* __delete_input__ (boolean, default True): Delete input if DICOM is successfully split.

### Outputs

The gear will output nothing if no splitting action was taken.  Otherwise it will output
a variable number of archives depending on the input and configuration named with the
following pattern:

`series-<SeriesNumber>_<Modality>_<SeriesDescription>_<GroupByTags>[_localizer]`, where

* `SeriesNumber` is the value of the `SeriesNumber` tag across the archive.  By default
  the largest sized archive (by number of slices) will retain the original
  `SeriesNumber` and additional archives will be incremented by `1000 + i`, where `i` is
  the index of the archive in a list of total archives.
* `SeriesDescription` is the value of the `SeriesDescription` tag across the archive
* `GroupByTags` is an underscore separated list of all tags appearing in the `group_by` list,
  and their corresponding value in that archive. Tags "SeriesInstanceUID" and "SeriesNumber"
  are not included even if they appear in the `group_by` list.
* `Modality` is the value of the `Modality` tag across the archive
* If the series is a localizer, `_localizer` will be appended.