mlreco.utils.unwrap module

mlreco.utils.unwrap.list_concat(data_blob, outputs, avoid_keys=[])[source]
mlreco.utils.unwrap.unwrap_2d_scn(data_blob, outputs, avoid_keys=[])[source]

For 2D data in SCN format

See unwrap_scn

mlreco.utils.unwrap.unwrap_3d_scn(data_blob, outputs, avoid_keys=[])[source]

For 3D data in SCN format

See unwrap_scn

mlreco.utils.unwrap.unwrap_3d_mink(data_blob, outputs, avoid_keys=[])[source]

Adapted for MinkowskiEngine (batch id column is 0)

mlreco.utils.unwrap.unwrap(*args, **kwargs)[source]
mlreco.utils.unwrap.unwrap_scn(data_blob, outputs, batch_id_col, avoid_keys, input_key='input_data')[source]

Break down the data_blob and outputs dictionary into events for sparseconvnet formatted tensors.

Need to account for: multi-gpu, minibatching, multiple outputs, batches. INPUTS:

data_blob: a dictionary of array of array of

minibatch data [key][num_minibatch][num_device]

outputs: results dictionary, output of trainval.forward,

[key][num_minibatch*num_device]

batch_id_col: 2 for 2D, 3 for 3D,,, and indicate

the location of “batch id”. For MinkowskiEngine, batch indices are always located at the 0th column of the N x C coordinate array

OUTPUT

two un-wrapped arrays of dictionaries where – array length = num_minibatch*num_device*minibatch_size

ASSUMES:

the shape of data_blob and outputs as explained above