maartenmennes/ICA-AROMA

data from standard MNI space

ShiyiliBNU opened this issue · 10 comments

Hi,
I'm running AROMA with the resting data preprocessed by DPARSF (slice time corrected, realignment, normalize the functional images into the MNI space using template for European brains with voxel size 2x2x2 ,then smoothed with 4.0 kernel).
Then I input the 4D nii.gz data into ICA-AROMA, along with output filepath, motion correction parameter (txt format), but without mask data (since in preprocess step the SPM default mask has already been applied).Everything goes well. But when I use the output data( "denoised_func_data_nonaggr.nii") for whole brain 264 nodes functional connectivity analysis, the result is quite weird.
More specifically, the whole brain connectivity is much weaker compared with my previous analysis outcome and there is no more 14 networks architecture as my previous result and the classical paper shows. So I wonder if there exist any problem in my usage of ICA-AROMA. Is that due to some repeated or missed steps for my preprocessed data as AROMA input? Or does that normal case for AROMA outcome (for example the weak whole brain connectivity and network structure was just caused by too strong denoising process and many removal ICA components in brain) ?
[ I also put the result in attachment to illustrate the weird connectivity result caused by ICA_AROMA. ]

I'm desperately wondering whether my outcome data is reliable and could be used for further analysis.
If not, what's wrong and how should I fix it?

aroma_fc_result
previous_fc_result

Thanks in advance.
Shiyi.

Hi Shiyi,
it all depends on how much motion you had in your dataset to begin with. Is this the result of a single participant? What do you mean by the 14 node network structure? I'm guessing you are referring to one of Jonathan Power's papers with the 264 nodes? What is the scaling on your figures?

How many components were retrieved, how many were removed?

Hi maartenmennes,
Actually, I did not define the number of motion components at the beginning , I just follow the default manual and input the parameter of mc.txt and input files. I found in the "classified_motion_IC.txt" that there are different motion/noise component for different subjects ( from 30 to 40 unequally). But all these components are labelled as noise so I could not know how many components were retrieved... Looking through the "log.txt" as well as the "classification_overview.txt" I found that the number of total IC map is the same as motion ICs. So does that means all the components were removed ? If so , how should I fix that problem?

And the connectivity result above is the group averaged result .(Yes, I use the 264 nodes from Power's paper) ,and the original result I get replicate the 2015_JN_Vatansever_Default Mode Dynamics for Global Functional Integration's paper (that there are obvious network architecture). The figure is the fisher z-scored connectivity matrix (264 *264) with both positive and negative connectivity value.

yes, for each subject you can check the classification_overview.txt file to see how many were retrieved, and how many were classified as motion (True). Something is not going right in your data is all components are classified as motion. Can you confirm that this is the case?

Yes , I checked every subject's file and found that all their components were classified as motion(True), no matter how many motion differs for each subjects. This might be the cause of my weak connectivity (since the major activity was removed as noise). So how should I fix this problem? I look through the manual and could not know how to differentiate the components in advance analysis.....
And in the attachment is one sample classification_overview.txt for a subject.
classification_overview.txt

Thanks for your kindness !

Hello, I've taken a look at your classification overview and noticed a couple of unusual things.

First, all of your components are marked as noise because they exceed the criterion for high-frequency content, i.e., in your data there is about 50% of power in the bottom half of the frequencies and 50% power in the upper half of frequencies. BOLD is typically low-frequency heavy. What is your TR? Is there evidence for some high-frequency artefact? Has the data been bandpass filtered before you run AROMA (should not be done)?

Second, it looks like your components have an unusually low correlation with the motion parameters. All are in the 0.1-0.2 range. I would have expected a wider spread. This might again be related to some other noise in your data that is reducing the correlation with head motion (or some heavy temporal smoothing).

If you are in the possibility of providing me with a dataset I could take a look. Please provide all data for one subject, including your preprocessing.

Sorry for late reply, I've been spending time looking through my preprocess and ICA step and trying to find what is wrong in it. The TR I set is 2s which is exactly the same as my data format. I have not down bandpass filter before ARMOMA, nor do I do heavy temporal smoothing(what I used is 5mm which I think is quite normal. In fact i used the standard preprocessing step in DPARSF, and the input the data to AROMA as the manual guide. So i could not figure out where might be problematic.
https://files.fm/u/z79h8v4n
In the link is the zip file of my sample data including the preprocessing step and ICA analysis (it is too large as 1GB I could not put in the attachment). Hope you could do me a favor to check out my problem.

Thanks.

I've applied a standard FSL preprocessing to the data for the subject you uploaded and ran ICA-AROMA. In my run, the data looks normal. About half of the components are marked as noise, and there is a much better spread in the amount of correlation with the motion parameters.

classification_overview.txt

ICA_AROMA_component_assessment.pdf

I get similar results when running it on the data in MNI152 space in your 4_smooth_5mm_the_final_used_data folder.

Digging deeper into your data it looks like there might be a problem with your combination of all volumes into a 4D file. My

fslmerge -tr merged4D.nii.gz swraf* 2.0

looks different from your Sub01.nii.gz 4d file. Looking at the python snippet you included it seems you're looping over every file and adding it to the merged one? Perhaps something is out of order there?

Thanks for your suggestion! That's exactly my problem. I have rerun all subjects with right order into ICA-AROMA and use the nii directly to the connectivity analysis, the result look quite similar as my previous analysis.
However, I encountered a new problem :
after I use the denoising step in CONN toolbox (WM,CSF & linear trend, highpass filtering) as the ICA-AROMA paper instruct, the denoised data look quite weird for all those connectivity disappears.

I wonder If this is because in the "step 2 " of ICA aroma already contains "extracting CSF & Edge fraction features" and "High frequency content features"? (But that should not be the same thing)
Or the structure data used for nuisance regression after AROMA should be not the same as I previous used ?
Hope you could give some informative comments ! thanks!

Hello, glad the first problem is resolved. It's very hard to comment on what could be going wrong in your follow-up analysis using the CONN Toolbox. I don't have practical experience with that toolbox. In any case, step 2 in AROMA does not do any nuisance regression and does not extract and CSF signal. It calculates some feature scores based on the components retrieved from the ICA.

Perhaps there is a problem with your CSF or WM masks that are used to extract signal in order to do the nuisance regression?

Thanks for your advice! I've tried nuisance regression, detrend and highpass filter using exactly the mask from subject's structure image after the preprocessed segmentation step. And everything turns out to be fine, that the whole brain connectivity and network architecture replicate previous studies.
I think the problem has been solved !
Greatly appreciate for your assistance, thanks again!