Skip to content

It is not possible to use PLDA in the current execution chain

If I use PLDA on top of simple features (let's say LBP histograms) I got the following exception.

input_dimension = training_features[0].shape[1]
AttributeError: 'list' object has no attribute 'shape'

The execution chain provides to bob.bio.base.algorithm.PLDA.train_enroller the data organized by client (which is correct) in the following format:

 [ [numpy.array],[numpy.array],[numpy.array]], # client1
 [ [numpy.array],[numpy.array],[numpy.array] ], # client2
....
 [ [numpy.array],[numpy.array],[numpy.array] ], # client n

The train_enroller MUST stack the features per client (like LDA does in https://gitlab.idiap.ch/bob/bob.bio.base/blob/master/bob/bio/base/algorithm/LDA.py#L151), but this is not being done.

I will implement something similar to the procedures implemented in the LDA.