<div dir="ltr"><div>Hello,</div><div><br></div><div>

        
        <span></span>
        
        


<p style="margin-bottom:0in;line-height:100%">I keep having this
error message below applying ASR while using my own calibration data
(calibData, same structure as EEG)</p>
<p style="margin-bottom:0in;line-height:100%"><u>Code:</u></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000"><font face="Courier New, serif">EEG
= clean_artifacts(EEG, </font></font><font color="#a020f0"><font face="Courier New, serif">'FlatlineCriterion'</font></font><font color="#000000"><font face="Courier New, serif">,
5,</font></font><font color="#0000ff"><font face="Courier New, serif">...</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000">
                              </font><font color="#a020f0"><font face="Courier New, serif">'Highpass'</font></font><font color="#000000"><font face="Courier New, serif">,
         </font></font><font color="#a020f0"><font face="Courier New, serif">'off'</font></font><font color="#000000"><font face="Courier New, serif">,</font></font><font color="#0000ff"><font face="Courier New, serif">...</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000">
                              </font><font color="#a020f0"><font face="Courier New, serif">'ChannelCriterion'</font></font><font color="#000000"><font face="Courier New, serif">,
 0.8,</font></font><font color="#0000ff"><font face="Courier New, serif">...</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000">
                              </font><font color="#a020f0"><font face="Courier New, serif">'LineNoiseCriterion'</font></font><font color="#000000"><font face="Courier New, serif">,
 4,</font></font><font color="#0000ff"><font face="Courier New, serif">...</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000">
                              </font><font color="#a020f0"><font face="Courier New, serif">'BurstCriterion'</font></font><font color="#000000"><font face="Courier New, serif">,
   20,</font></font><font color="#0000ff"><font face="Courier New, serif">...</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000">
                              </font><font color="#a020f0"><font face="Courier New, serif">'WindowCriterion'</font></font><font color="#000000"><font face="Courier New, serif">,
  </font></font><font color="#a020f0"><font face="Courier New, serif">'off'</font></font><font color="#000000"><font face="Courier New, serif">,
</font></font><font color="#0000ff"><font face="Courier New, serif">...</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000">
                              </font><font color="#a020f0"><font face="Courier New, serif">'BurstCriterionRefMaxBadChns'</font></font><font color="#000000"><font face="Courier New, serif">,
calibData{iMain});</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><u><font color="#000000"><font face="Courier New, serif">Error:</font></font></u></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#ed1c24">Initial
conditions must be a vector of length max(length(a),length(b))-1, or
an array with the leading dimension of size
max(length(a),length(b))-1 and with remaining dimensions matching</font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#ed1c24">those
of x.</font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#ed1c24">Error
in <b>asr_process</b> (line 134)</font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#ed1c24">
       [X,state.iir] =
filter(B,A,double(data(:,range+P)),state.iir,2);</font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#ed1c24">Error
in <b>clean_asr</b> (line 174)</font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#ed1c24">[signal.data,state]
=
asr_process(sig,signal.srate,state,windowlen,windowlen/2,stepsize,maxdims,[],usegpu);</font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#ed1c24">Error
in <b>clean_artifacts</b> (line 219)</font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#ed1c24">
   EEG =
clean_asr(EEG,burst_crit,[],[],[],burst_crit_refmaxbadchns,burst_crit_reftolerances,[]);
end</font></p>
<p style="margin-bottom:0in;line-height:100%"><br>

</p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000">    I
tracked it down a<font style=""> bit and this
seems to be the problem. </font></font>
</p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000">(Step
by step)</font></p>
<p style="margin-bottom:0in;line-height:100%"><font style=""><font color="#000000">1.
</font><font color="#000000">My calibration data has 32 channels and
it is the data input to </font><font color="#000000"><i>“</i></font><font color="#000000"><font face="Liberation Serif, serif"><i>asr_calibrate”
</i></font></font><font color="#000000"><font face="Liberation Serif, serif">function</font></font><font color="#000000"><font face="Liberation Serif, serif">,
</font></font><font color="#000000"><font face="Liberation Serif, serif">the
output of this function is </font></font><font color="#000000"><font face="Liberation Serif, serif"><i>‘state’</i></font></font><font color="#000000"><font face="Liberation Serif, serif">
structure variable. </font></font></font>
</p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000"><font face="Liberation Serif, serif">2.
</font></font><font color="#000000"><font face="Liberation Serif, serif">This
variable becomes an input to</font></font><font color="#000000"><font face="Liberation Serif, serif">
“asr_process” function </font></font><font color="#000000"><font face="Liberation Serif, serif">and
used while </font></font><font color="#000000"><font face="Liberation Serif, serif">ASR
spectral weighting as </font></font><font color="#000000"><font face="Liberation Serif, serif"><i>state.iir</i></font></font><font color="#000000"><font face="Liberation Serif, serif">
</font></font><font color="#000000"><font face="Liberation Serif, serif">(line
134)</font></font><font color="#000000"><font face="Liberation Serif, serif">
</font></font><font color="#000000"><font face="Liberation Serif, serif">as
seen in error </font></font><font color="#000000"><font face="Liberation Serif, serif">above</font></font><font color="#000000"><font face="Liberation Serif, serif">.</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000"><font face="Liberation Serif, serif">3.
</font></font><font color="#000000"><font face="Liberation Serif, serif">S</font></font><font color="#000000"><font face="Liberation Serif, serif">econd
output of this filtering process is state.iir which </font></font><font color="#000000"><font face="Liberation Serif, serif">came
out as</font></font><font color="#000000"><font face="Liberation Serif, serif">
the final conditions of </font></font><font color="#000000"><font face="Liberation Serif, serif">filter
</font></font><font color="#000000"><font face="Liberation Serif, serif">delays
to become initial conditions for the next data to be filtered.</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000"><font face="Liberation Serif, serif">4.
Next data </font></font><font color="#000000"><font face="Liberation Serif, serif">to
be filtered </font></font><font color="#000000"><font face="Liberation Serif, serif">is
my research data and losing a few channels for being noisy, it has 29
channels. This causes the conflict (I tried with
full-32-channel-data, </font></font><font color="#000000"><font face="Liberation Serif, serif">then
after</font></font><font color="#000000"><font face="Liberation Serif, serif">
</font></font><font color="#000000"><font face="Liberation Serif, serif">reduced
size state.iir and they</font></font><font color="#000000"><font face="Liberation Serif, serif">
worked).</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000"><font face="Liberation Serif, serif">       As
a solution, I, </font></font><font color="#000000"><font face="Liberation Serif, serif"><b>first</b></font></font><font color="#000000"><font face="Liberation Serif, serif">,</font></font><font color="#000000"><font face="Liberation Serif, serif">
feed full-channels-data (32) to “</font></font><font color="#000000"><font face="Liberation Serif, serif"><i>clean_asr”</i></font></font><font color="#000000"><font face="Liberation Serif, serif">
and </font></font><font color="#000000"><font face="Liberation Serif, serif"><b>then</b></font></font><font color="#000000"><font face="Liberation Serif, serif">
using “</font></font><font color="#000000"><font face="Liberation Serif, serif"><i>clean_channels”,</i></font></font><font color="#000000"><font face="Liberation Serif, serif">
I remove noisy channels. </font></font><font color="#000000"><font face="Liberation Serif, serif">I
might be contrary to</font></font><font color="#000000"><font face="Liberation Serif, serif">
‘the cleaner </font></font><font color="#000000"><font face="Liberation Serif, serif">calibration
data</font></font><font color="#000000"><font face="Liberation Serif, serif">
the better for ASR process’. Or would it be better to feed 29
channels as calibration data since we would know that they are not noisy?</font></font></p>
<p style="margin-bottom:0in;line-height:100%"><br></p>
<p style="margin-bottom:0in;line-height:100%"><font color="#000000"><font face="Liberation Serif, serif">       I
have an another question regarding </font></font><font color="#000000"><font face="Liberation Serif, serif">ASR</font></font><font color="#000000"><font face="Liberation Serif, serif">
process. </font></font><font color="#000000"><font face="Liberation Serif, serif">I
record the data using Biosemi through Matlab, so referencing is of
importance. In my main processing, I reference </font></font><font color="#000000"><font face="Liberation Serif, serif">the
</font></font><font color="#000000"><font face="Liberation Serif, serif">main
data after ASR before ICA decomposition. </font></font><font color="#000000"><font face="Liberation Serif, serif">It
is to avoid introducing noise to all channels in accordance with
Makoto/Nima’s advice, even tough common mode noise is an issue I
want to get rid of at first. However, “Getting rid of up to 40 dB
noise by referencing, even if my main data is not referenced yet
during ASR stage of preprocessing, I could average-reference my
calibration data after HP filtering” is what I thought and I did.
Any problems with that?</font></font></p>

</div><div><br></div><div>Cheers,</div><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Ilker SONMEZISIK<br style="font-size:12.8px"><span style="font-size:12.8px">Medical System Engineering Course</span><br style="font-size:12.8px"><span style="font-size:12.8px">School of Engineering, Chiba University</span><br style="font-size:12.8px"><span style="font-size:12.8px">Tel/Fax: </span><a href="mailto:ilkersonmezisik@gmail.com" value="+81432903231" style="color:rgb(17,85,204);font-size:12.8px" target="_blank">+81-80-2358-9346</a><br></div></div>
</div>