zoukankan      html  css  js  c++  java
  • 频谱分析代码片段2

    %% 原始数据
    datacell_4d   = load_untouch_nii('C:UsersAdministratorDesktopworkspacephycaa_plus_2104_03_27func_4d.nii'); 
    ldim = size(datacell_4d.img);
    
    %% 制造模板
    ldcca_tms = img_To_4D_array('C:UsersAdministratorDesktopcontrast2014-05-26-20-00.img');
    spm_tms = img_To_4D_array('C:UsersAdministratorDesktopcontrast
    o_phycaa.img');
    
    mask_ldcca_tms = ldcca_tms > 0;
    inv_mask_ldcca_tms = ~mask_ldcca_tms;
    
    mask_spm_tms = spm_tms > 0;
    inv_mask_spm_tms = ~mask_spm_tms;
    
    tmp_spm = spm_tms .* inv_mask_ldcca_tms;
    mask_big_left_spm_tms = tmp_spm>0;
    
    tmp_ldcca = ldcca_tms .* inv_mask_spm_tms;
    mask_big_left_ldcca_tms = tmp_ldcca > 0; 
    
    %% 原始数据激活区能量谱均值
    
    original_fullMsk = repmat( mask_spm_tms, [1,1,1,ldim(4)] );
    original2d_img = reshape( datacell_4d.img(original_fullMsk>0), [], ldim(4) );
    
    TR =2;
    
    Fny    = 0.5 * (1/ TR);                 
    NFFT   = 2^nextpow2(70);          
    f      = Fny*linspace(0,1,NFFT/2+1);   
    powMat  = abs( fft( double(original2d_img) , NFFT ,2) ) / 70; 
    powMat  = powMat(:,1:NFFT/2+1);
    
    figure(1);
    mean_powMat = mean(powMat);
    plot(f,mean_powMat);
    hold on;
    
    %% 新数据激活区能量谱均值
    
    new_fullMsk = repmat( mask_ldcca_tms, [1,1,1,ldim(4)] );
    new2d_img = reshape( datacell_4d.img(new_fullMsk>0), [], ldim(4) );
    
    TR =2;
    
    Fny    = 0.5 * (1/ TR);                 
    NFFT   = 2^nextpow2(70);          
    f      = Fny*linspace(0,1,NFFT/2+1);   
    powMat  = abs( fft( double(new2d_img) , NFFT ,2) ) / 70; 
    powMat  = powMat(:,1:NFFT/2+1);
    
    mean_powMat = mean(powMat);
    plot(f,mean_powMat,'Color','red');
    
    %% 去除激活区的能量谱均值
    
    substruct_fullMsk = repmat( mask_big_left_spm_tms, [1,1,1,ldim(4)] );
    substruct_img_2d = reshape( datacell_4d.img(substruct_fullMsk>0), [], ldim(4) );
    
    TR =2;
    
    Fny    = 0.5 * (1/ TR);                 
    NFFT   = 2^nextpow2(70);          
    f      = Fny*linspace(0,1,NFFT/2+1);   
    powMat  = abs( fft( double(substruct_img_2d) , NFFT ,2) ) / 70; 
    powMat  = powMat(:,1:NFFT/2+1);
    
    mean_powMat = mean(powMat);
    plot(f,mean_powMat,'Color','blue');
    hold on;
    
    
    %% 新增加的激活区的能量谱均值
    
    add_fullMsk = repmat( mask_big_left_ldcca_tms, [1,1,1,ldim(4)] );
    add_spm_tms_2d = reshape( datacell_4d.img(add_fullMsk>0), [], ldim(4) );
    
    TR =2;
    
    Fny    = 0.5 * (1/ TR);                 
    NFFT   = 2^nextpow2(70);          
    f      = Fny*linspace(0,1,NFFT/2+1);   
    powMat  = abs( fft( double(add_spm_tms_2d) , NFFT ,2) ) / 70; 
    powMat  = powMat(:,1:NFFT/2+1);
    
    mean_powMat = mean(powMat);
    plot(f,mean_powMat,'Color','yellow');
    hold on;
    

      

  • 相关阅读:
    (004)maven执行junit单元测试,指定执行哪些测试类
    (009)Nginx静态资源web服务
    (008)Nginx的访问控制_介绍实现访问控制的基本方式
    (03)Nginx将配置文件default.conf重命名后报Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.解决方案
    (007)Nginx的请求限制_配置语法与原理
    (006)Nginx之模块讲解
    (005)Nginx之日志log_format
    (004)Nginx默认配置语法解析及演示
    (003)Nginx编译配置参数讲解
    Gym
  • 原文地址:https://www.cnblogs.com/haore147/p/3795821.html
Copyright © 2011-2022 走看看