Rank Deficiency and Source Reconstruction

Hello,

I have a question regarding filtering processes outside the Brainstorm. I have to compare some specific filtering algorithms which are not implemented in Brainstorm. To do this, I wrote my own processes in filter category so that I can use the file preprocessed in BST (CTF compensation, notch filter, resampling, bad channel&segment rejection to be precise). Some of the filters I use, make use of component analysis or SSS which eventually lead to a rank deficiency in the data. After filtering, I calculate the source-level time series with both LCMV and MNE. As far as I know, the rank of leadfield or data covariance matrix is calculated once it is needed for source reconstruction but I also know that whenever SSP is applied in BST (which also creates rank-deficiency), this information is saved in the channel file under Projector structure. What I wonder is whether if this information is used further in source reconstruction or is it only needed once to get the preprocessed time-series. Would the rank deficiency due to my own processes lead to any miscalculation in source reconstruction and eventually lead to misinterpretation of the results (e.g. wrong scaling in power values)? If so, do you have any suggestions to overcome this problem? Thank you in advance.

Best regards,
Levent

As far as I know, the rank of leadfield or data covariance matrix is calculated once it is needed for source reconstruction but I also know that whenever SSP is applied in BST (which also creates rank-deficiency), this information is saved in the channel file under Projector structure. What I wonder is whether if this information is used further in source reconstruction or is it only needed once to get the preprocessed time-series.

Yes, the SSP/ICA projectors are applied to the forward model as well:

Would the rank deficiency due to my own processes lead to any miscalculation in source reconstruction and eventually lead to misinterpretation of the results (e.g. wrong scaling in power values)? If so, do you have any suggestions to overcome this problem?

@Sylvain @John_Mosher ?

Hello @Francois, thank you for the answer. I would really appreciate any recommendation on how to fix this problem for my case.

@Sylvain @John_Mosher ?

Hi @Francois, could you please tell me why this is required?

This introduces some linear recombination of the signals. The same linear recombination needs to be applied to the rows of the forward model and to the noise covariance matrix, otherwise the inverse model would not be correctly designed for your cleaned recordings.

Thank you @Francois, it makes perfect sense for SSP&ICA. I was wondering if this also applies to other methods which do subspace projection in spherical harmonics or frequency domain. I am using tSSS and Spectral Signal Space Projection outside Brainstorm and then import time series back to Brainstorm to calculate source level data. Should I consider the same issue for these methods as well?

Yes, in principle all the subspace projections should be applied to the forward model.
In Brainstorm, only linear operations can be reported in this way, therefore I'm not sure about tSSS (if the correction is not the same a different time points, there is no way to handle this correctly with this Projector structure).

In practice, this is not done also because the SSS implementation in Elekta Maxfilter is not documented in the output files...

@John_Mosher @Sylvain: Is there something we should add here?

When the sensor data transformation is linear, the same transformation should be applied to the head model as well. When it is non-linear, the source mapping model is not valid anymore and needs to be transformed accordingly but it may not be feasible and this should be looked at on a case by case basis.