我是靠谱客的博主 冷静舞蹈,最近开发中收集的这篇文章主要介绍低频波动振幅ALFF的计算(matlab实现),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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实现)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(66)

评论列表共有 0 条评论

立即
投稿
返回
顶部