JiscMail Logo
Email discussion lists for the UK Education and Research communities

Help for SPM Archives


SPM Archives

SPM Archives


SPM@JISCMAIL.AC.UK


View:

Message:

[

First

|

Previous

|

Next

|

Last

]

By Topic:

[

First

|

Previous

|

Next

|

Last

]

By Author:

[

First

|

Previous

|

Next

|

Last

]

Font:

Proportional Font

LISTSERV Archives

LISTSERV Archives

SPM Home

SPM Home

SPM  October 2008

SPM October 2008

Options

Subscribe or Unsubscribe

Subscribe or Unsubscribe

Log In

Log In

Get Password

Get Password

Subject:

Re: bandpass filter in Matlab

From:

Witaya Sungkarat <[log in to unmask]>

Reply-To:

[log in to unmask]

Date:

Wed, 1 Oct 2008 11:43:57 -0700

Content-Type:

text/plain

Parts/Attachments:

Parts/Attachments

text/plain (130 lines)

Dear Jamila,

> Dear Witaya,
> I read your answer in the SPM discussion list about preprocessing ROIs 
> data.
> I'd like to know if you can do the steps that your specified using 
> masbar toolbox (SPM)?
> If answer is yes, could you please be more descriptive about it?
> For example, how to apply the band-pass filter? or how to reverse the 
> gain of the filter at the middle of the band?
> Thanks in advance for your response,
> Jamila
I sorry that I did not work with Marsbar for my band-pass filtering, but 
I read the data and saved
in a 4D matrix, and then operated on the matrix.

When you design a filter, you will have the magnitude response (in dB) 
of the filter.

Gain = |H(frequency of interest)|

Since

dB = 20 log (Gain)     

Gain = 10^(dB/20).

Normally, after filtering, to correct the magnitude of the filtered 
signal, we do

Filtered Signal * (1/Gain)

but if you do zero-phase filtering, the magnitude correction will be

Filtered Signal * (1/(Gain^2)).


Below is my previous following answer:

> The voxel value means outside the brain are close to zeros while in 
> the brain are not.
> SPM will generate a mask based on that.
>
> You have to be careful about the filter if it is a zero-phase filter 
> or not!
> And what is the gain of the filter at the signal of interest or the 
> middle of the band?
> The filtered data need to be corrected!  In Matlab, the filter will be 
> applied twice
> for the zero-phase filtering, i.e., the filtered signals are filtered 
> twice, I think.
> Thus, the the gain correction must be squared!
>
> It seems that you are working in Matlab.  So why don't you do 
> everything with a Matlab 4D matrix
> and then export the 4D matrix to a series of 3D img files.
>
> Below is the quote of my answer about how to export the 3D (you can 
> modify it for 4D using sprintf)
>
>> Since you work in matlab or can use matlab imread,
>> you can write the data out as below
>>
>> ===========
>>
>> % assume you saved the 3D data matrix, anatdata, in dicom orientation 
>> (R --> L, A --> P, I --> S)  ***
>> load anatdata.mat
>> data_size = [size(anatdata,1) size(anatdata,2) size(anatdata,3)];
>>
>> % write img file
>> file_name_w = 'anatdata.img';% Analyze file name;using sprintf for 
>> the 4-D loop
>> fid_w = fopen(file_name_w,'w');
>> I = zeros(data_size(1),data_size(2));
>> for i = 1:data_size(3)
>>   I(:,:) = anatdata(:,:,i);
>>   I2 = fliplr(I);
>>   fwrite(fid_w,I2,'int16');% ? precision: 'double' , 'float32'  (you 
>> may need 'int16(round(your_data))')
>> end
>> fclose(fid_w);   
>> delete anatdata.mat
>> ==========
>>
>> and then edit/create the hdr with spm99.
>>
>> > I have found a program that will apply a band-pass filter, but the 
>> resulting values in the image files are on the order of -10 to 10, 
>> which then SPM> will not estimate the model because I believe they 
>> are below the default signal threshold of SPM.
>>
>> > Thanks again for the help,
>>

I hope this helps.

Sincerely,

Witaya Sungkarat

>
> On Sep 18, 2008, at 8:10 PM, Witaya Sungkarat wrote:
>
>> Rachel,
>>
>> You may want to:
>>
>> 1) compute the means of the time-series
>> 2) detrend the time-series
>> 3) apply the band-pass filter
>> 4) reverse the gain of the filter at the middle of the band or
>>     at the frequency of interest to the filtered time-series
>> 5) add the means back.
>>
>> Cheers,
>>
>> Witaya Sungkarat
>>
>>> We are working on analyzing our first set of resting state data and 
>>> it appears that the consensus is that the data needs to be bandpass 
>>> filtered.  We created a filter in matlab using the signal processing 
>>> toolbox.  What do we need to do to our preprocessed data before we 
>>> apply the filter?
>>>
>>> Any help is appreciated.
>>>
>>> Thanks
>>> Rachel

Top of Message | Previous Page | Permalink

JiscMail Tools


RSS Feeds and Sharing


Advanced Options


Archives

September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
2006
2005
2004
2003
2002
2001
2000
1999
1998


JiscMail is a Jisc service.

View our service policies at https://www.jiscmail.ac.uk/policyandsecurity/ and Jisc's privacy policy at https://www.jisc.ac.uk/website/privacy-notice

Secured by F-Secure Anti-Virus CataList Email List Search Powered by the LISTSERV Email List Manager