view m-toolbox/html_help/help/ug/spikeclean_content.html @ 29:54f14716c721 database-connection-manager

Update Java code
author Daniele Nicolodi <nicolodi@science.unitn.it>
date Mon, 05 Dec 2011 16:20:06 +0100
parents f0afece42f48
children
line wrap: on
line source

<h2>Description</h2>
<p>
  Spikes in data due to different nature can be removed, if desired, from the original data. LTPDA <a href="matlab:doc('ao/spikecleaning')"><tt>spikecleaning</tt></a> detects and replaces
  spikes of the input AOs. A spike in data is defined as a single sample exceeding a certain value (usually, the
  floor noise of the data) defined by the user:
</p>
<br>
<p>
  <div align="center">
    <IMG src="images/spike10x.png" width="147" height="15" border="0" />
  </div>
</p>
<br>
<p>
  where <IMG src="images/spike41x.png" width="50" height="14" border="0" /> is the input data high-pass filtered, <IMG src="images/spike42x.png" width="34" height="13" border="0"/> is a value defined by the user (by default is 3.3) and <IMG src="images/spike43x.png" width="35" height="8" border="0"/> is the standard deviation of <IMG src="images/spike41x.png" width="50" height="14" border="0" /> . In consequence, a spike is defined as the value that exceeds the floor noise of the data by a factor <IMG src="images/spike42x.png" width="34" height="13" border="0"/>, the higher of this parameter the more difficult to "detect" a spike.
  <br>
  <br>
  <h2>Syntax</h2>
</p>
<div class="fragment"><pre>
    <br>
    b = spikecleaning(a, pl)
  </pre>
</div>
<h2>Parameters</h2>
<p>
  The following parameters can be set in this method:
  <ul>
    <li> <tt>'kspike'</tt> - set the <IMG src="images/spike42x.png" width="34" height="13" border="0"/> value (default is 3.3) </li>
    <li> <tt>'method'</tt> - method used to replace the "spiky" sample. Three methods are available ---see below for details---:</li>
    <ul>
      <li> <tt>'random'</tt> </li>
      <li> <tt>'mean'</tt> </li>
      <li> <tt>'previous'</tt> </li>
    </ul>
    <li> <tt>'fc'</tt> - frequency cut-off of the high-pass IIR filter (default is 0.025) </li>
    <li> <tt>'order'</tt> - specifies the order of the IIR filter (default is 2) </li>
    <li> <tt>'ripple'</tt> - specifies pass/stop-band ripple for bandpass and bandreject filters (default is 0.5) </li>
  </ul>
</p>
<p>
  <h2>Algorithm</h2>
</p>
<p>
  <b>Random: </b> this method substitutes the spiky sample by:
</p>
<p>
  <br>
  <div align="center">
    <IMG src="images/spike20x.png" width="197" height="15" align="center" border="0"/>
  </div>
  <br>
</p>
<p>
  where <IMG src="images/spike44x.png" width="42" height="14" border="0"/> is a random number of mean zero and standard deviation 1.
</p>
<p>
  <b>Mean: </b>this method uses the following equation to replace the spike detected in data.
</p>
<br>
<p>
  <div align="center">
    <IMG src="images/spike30x.png" width="158" height="29" align="center" border="0"/>
  </div>  
</p>
<br>
<p>
  <b>Previous: </b>the spike is substitued by the previous sample, i.e.:
</p>
<br>
<p>
  <div align="center">
    <IMG src="images/spike40x.png" width="90" height="14" align="center" border="0"/>
  </div>
</p>
<br>
<p>
  <h2>Examples</h2>
</p>
<p>
  1. Spike cleaning of a sequence of random data with <tt>kspike = 2</tt>.
</p>
<p>
  <div class="fragment"><pre>
      <br>
      x = ao(plist( <span class="string">'waveform'</span>, <span class="string">'noise'</span>, <span class="string">'nsecs'</span>,1e4, <span class="string">'fs'</span>,10)); <span class="comment">% create an AO of random data sampled at 1 Hz.</span>
      pl = plist( <span class="string">'kspike'</span>, 2);                         <span class="comment">% kspike = 2</span>
      y = spikecleaning(x, pl);                         <span class="comment">% spike cleaning function applied to the input AO, x</span>
      iplot(x, y)                                       <span class="comment">% plot original and "cleaned" data</span>
    </pre>
  </div>
</p>
<p>
  <div align="center">
    <img src="images/spike1.png" border="1" >
  </div>
</p>
<!--  <p>
  2. Example of real data: the first image shows data from the real world prior to
	   the application of the spike cleaning tool. It is clear that some spikes are
	   present in data and might be convenient to remove them. The second image shows
	   the same data after the spike samples supression.
  </p>
  <p>
    	<img src="images/stat1x.png" border="1" width="400px">
  </p>
    <p>
    	<img src="images/stat2x.png" border="1" width="400px">
  </p>
 -->