clinicadl.data.dataloader.collate.ToBatchCollate

class clinicadl.data.dataloader.collate.ToBatchCollate[source]

To simply collate a sequence of samples in a single batch.

This is the default collating mode when the Dataset returns a single Sample.

Examples

from clinicadl.data.dataloader import ToBatchCollate
from clinicadl.data.structures.examples import Colin27Sample

sample_1 = Colin27Sample(participant_id="sub-001")
sample_2 = Colin27Sample(participant_id="sub-002")
batch = ToBatchCollate()([sample_1, sample_2])
>>> batch
[Colin27Sample(Keys: ('head', 'file_type', 'image_path', 'sample_type', 'sample_position', 'image', 'participant_id', 'session_id'); images: 3),
 Colin27Sample(Keys: ('head', 'file_type', 'image_path', 'sample_type', 'sample_position', 'image', 'participant_id', 'session_id'); images: 3)]
>>> batch[0].participant_id
'sub-001'
>>> batch[1].participant_id
'sub-002'
__call__(samples: Sequence[T]) Batch[T][source]

Puts a sequence of Sample in a Batch.

Parameters:

samples (Sequence[T]) – A sequence of Sample.

Returns:

Batch[T] – A Batch.