概述
ALFF的计算步骤:
- 对BOLD信号进行0.01-0.1Hz滤波,得到低频波动
- 进行傅里叶变换,变换到频域,得到幅度谱(或功率谱)
- 计算0.01-0.1Hz的幅度的平均值(功率开方的平均值),得到ALFF值
- 除以全脑平均的ALFF值进行归一化
原始BOLD信号
经过滤波后的BOLD信号
经过滤波后的BOLD信号的频谱
ALFF的matlab实现:
data = load('data.txt'); %读取存为txt格式的数据
[n,t] = size(data); %提取数据维度,n为体素数,t为时间点数
ALFF = zeros(n,1); %初始化存储ALFF的数组
for voxel = 1:1:n %计算所有体素的ALFF
data_fft = abs(fft(data(voxel)./length(data(voxel)))); %对data进行fft变换,并取幅度
ALFF(voxel) = mean(data_fft(ceil(0.01*t+1):ceil(0.1*t+1))); %找到0.01Hz-0.1Hz对应的索引值,根据信号的频率分辨率公式f=1/t,计算0.01hz处所对应的点:0.01/(1/t)+1=0.01*t+1
end
ALFF_mean = mean(ALFF);
mALFF = ALFF./ALFF_mean; %除以全脑平均的ALFF进行归一化
最后
以上就是冷静舞蹈为你收集整理的低频波动振幅ALFF的计算(matlab实现)的全部内容,希望文章能够帮你解决低频波动振幅ALFF的计算(matlab实现)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复