Mercurial > hg > ltpda
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> -->