<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE document PUBLIC "-//CNX//DTD CNXML 0.5 plus MathML//EN" "http://cnx.rice.edu/cnxml/0.5/DTD/cnxml_mathml.dtd">
<document xmlns="http://cnx.rice.edu/cnxml" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:bib="http://bibtexml.sf.net/" id="m10418">
  
  <name>Continuous Wavelet Transform</name>
  <metadata>
  <md:version>2.12</md:version>
  <md:created>2001/12/30</md:created>
  <md:revised>2003/01/13</md:revised>
  <md:authorlist>
      <md:author id="schniter">
      <md:firstname>Phil</md:firstname>
      
      <md:surname>Schniter</md:surname>
      <md:email>schniter@ee.eng.ohio-state.edu</md:email>
    </md:author>
  </md:authorlist>

  <md:maintainerlist>
    <md:maintainer id="lizychan">
      <md:firstname>Elizabeth</md:firstname>
      
      <md:surname>Chan</md:surname>
      <md:email>lizychan@rice.edu</md:email>
    </md:maintainer>
    <md:maintainer id="schniter">
      <md:firstname>Phil</md:firstname>
      
      <md:surname>Schniter</md:surname>
      <md:email>schniter@ee.eng.ohio-state.edu</md:email>
    </md:maintainer>
  </md:maintainerlist>
  
  <md:keywordlist>
    <md:keyword>CWT</md:keyword>
    <md:keyword>time-frequency analysis</md:keyword>
    <md:keyword>uncertainty principle</md:keyword>
  </md:keywordlist>

  <md:abstract>This module introduces continuous wavelet transform.</md:abstract>
</metadata>

  
  <content>
    <para id="para1">
      The STFT provided a means of (joint) time-frequency analysis
      with the property that spectral/temporal widths (or resolutions)
      were the same for all basis elements. Let's now take a closer
      look at the implications of uniform resolution.
    </para>
    
    <para id="para2">
      Consider two signals composed of sinusoids with frequency 1 Hz
      and 1.001 Hz, respectively. It may be difficult to distinguish
      between these two signals in the presence of background noise
      unless many cycles are observed, implying the need for a
      many-second observation. Now consider two signals with pure
      frequencies of 1000 Hz and 1001 Hz-again, a 0.1%
      difference. Here it should be possible to distinguish the two
      signals in an interval of much less than one second. In other
      words, good frequency resolution requires longer observation
      times as frequency decreases. Thus, it might be more convenient
      to construct a basis whose elements have larger temporal width
      at low frequencies.
    </para>

    <para id="para3">
      The previous example motivates a multi-resolution time-frequency
      tiling of the form (<cnxn target="uncertainty" strength="9"/>):
    </para>

    <figure id="uncertainty">
      <media type="image/png" src="uncertainty.png"/>
    </figure>

    <para id="para4">
      The Continuous Wavelet Transform (CWT) accomplishes the above
      multi-resolution tiling by time-scaling and time-shifting a
      prototype function 
      <m:math>
	<m:apply>
	  <m:ci type="fn">ψ</m:ci>
	  <m:ci>t</m:ci>
	</m:apply>
      </m:math>, often called the <term>mother wavelet</term>.  The
      <m:math><m:ci>a</m:ci></m:math>-scaled and
      <m:math><m:ci>τ</m:ci></m:math>-shifted basis elements is
      given by

      <m:math display="block">
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>ψ</m:mi>
		<m:mrow>
		  <m:mi>a</m:mi>
		  <m:mo>,</m:mo>
		  <m:mi>τ</m:mi>
		</m:mrow>
	      </m:msub>
	    </m:ci>
	    <m:ci>t</m:ci>
	  </m:apply>
	  <m:apply>
	    <m:times/>
	    <m:apply>
	      <m:divide/>
	      <m:cn>1</m:cn>
	      <m:apply>
		<m:root/>
		<m:apply>
		  <m:abs/>
		  <m:ci>a</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:ci type="fn">ψ</m:ci>
	      <m:apply>
		<m:divide/>
		<m:apply>
		  <m:minus/>
		  <m:ci>t</m:ci>
		  <m:ci>τ</m:ci>
		</m:apply>
		<m:ci>a</m:ci>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math>

      where 

      <m:math display="block">
	<m:apply>
	  <m:in/>
	  <m:apply>
	    <m:and/>
	    <m:ci>a</m:ci>
	    <m:ci>τ</m:ci>
	  </m:apply>
	  <m:reals/>
	</m:apply>
      </m:math>

      <m:math display="block">
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:int/>
	    <m:bvar><m:ci>t</m:ci></m:bvar>
	    <m:lowlimit>
	      <m:apply>
		<m:minus/>
		<m:infinity/>
	      </m:apply>
	    </m:lowlimit>
	    <m:uplimit>
	      <m:infinity/>
	    </m:uplimit>
	    <m:apply>
	      <m:ci type="fn">ψ</m:ci>
	      <m:ci>t</m:ci>
	    </m:apply>
	  </m:apply>
	  <m:cn>0</m:cn>
	</m:apply>
      </m:math>

      <m:math display="block">
	<m:apply>
	  <m:eq/>
	  <m:ci>
	    <m:msub><m:mi>C</m:mi><m:mi>ψ</m:mi></m:msub>
	  </m:ci>
	  <m:apply>
	    <m:lt/>
	    <m:apply>
	      <m:int/>
	      <m:bvar><m:ci>Ω</m:ci></m:bvar>
	      <m:lowlimit>
		<m:apply>
		  <m:minus/>
		  <m:infinity/>
		</m:apply>
	      </m:lowlimit>
	      <m:uplimit>
		<m:infinity/>
	      </m:uplimit>
	      <m:apply>
		<m:divide/>
		<m:apply>
		  <m:power/>
		  <m:apply>
		    <m:abs/>
		    <m:apply>
		      <m:ci type="fn">ψ</m:ci>
		      <m:ci>Ω</m:ci>
		    </m:apply>
		  </m:apply>
		  <m:cn>2</m:cn>
		</m:apply>
		<m:apply>
		  <m:abs/>
		  <m:ci>Ω</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:infinity/>
	  </m:apply>
	</m:apply>
      </m:math>

      The conditions above imply that 
      <m:math>
	<m:apply>
	  <m:ci type="fn">ψ</m:ci>
	  <m:ci>t</m:ci>
	</m:apply>
      </m:math> is bandpass and sufficiently smooth.  Assuming that 
      
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:csymbol definitionURL="http://cnx.rice.edu/cd/cnxmath.ocd#norm"/>
	    <m:apply>
	      <m:ci type="fn">ψ</m:ci>
	      <m:ci>t</m:ci>
	    </m:apply>
	  </m:apply>
	  <m:cn>1</m:cn>
	</m:apply>
      </m:math>, the definition above ensures that 
      
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:csymbol definitionURL="http://cnx.rice.edu/cd/cnxmath.ocd#norm"/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>ψ</m:mi>
		  <m:mrow>
		    <m:mi>a</m:mi>
		    <m:mo>,</m:mo>
		    <m:mi>τ</m:mi>
		  </m:mrow>
		</m:msub>
	      </m:ci>
	      <m:ci>t</m:ci>
	    </m:apply>
	  </m:apply>
	  <m:cn>1</m:cn>
	</m:apply>
      </m:math> for all <m:math><m:ci>a</m:ci></m:math> and
      <m:math><m:ci>τ</m:ci></m:math>.  The CWT is then defined by
      the transform pair

      <m:math display="block">
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>X</m:mi><m:mi>CWT</m:mi></m:msub>
	    </m:ci>
	    <m:ci>a</m:ci>
	    <m:ci>τ</m:ci>
	  </m:apply>
	  <m:apply>
	    <m:int/>
	    <m:bvar><m:ci>t</m:ci></m:bvar>
	    <m:lowlimit>
	      <m:apply>
		<m:minus/>
		<m:infinity/>
	      </m:apply>
	    </m:lowlimit>
	    <m:uplimit>
	      <m:infinity/>
	    </m:uplimit>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:ci type="fn">x</m:ci>
		<m:ci>t</m:ci>
	      </m:apply>
	      <m:apply>
		<m:conjugate/>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>ψ</m:mi>
		      <m:mrow>
			<m:mi>a</m:mi>
			<m:mo>,</m:mo>
			<m:mi>τ</m:mi>
		      </m:mrow>
		    </m:msub>
		  </m:ci>
		  <m:ci>t</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math>

      <m:math display="block">
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:ci type="fn">x</m:ci>
	    <m:ci>t</m:ci>
	  </m:apply>
	  <m:apply>
	    <m:times/>
	    <m:apply>
	      <m:divide/>
	      <m:cn>1</m:cn>
	      <m:ci>
		<m:msub><m:mi>C</m:mi><m:mi>ψ</m:mi></m:msub>
	      </m:ci>
	    </m:apply>
	    <m:apply>
	      <m:int/>
	      <m:bvar><m:ci>a</m:ci></m:bvar>
	      <m:lowlimit>
		<m:apply>
		  <m:minus/>
		  <m:infinity/>
		</m:apply>
	      </m:lowlimit>
	      <m:uplimit>
		<m:infinity/>
	      </m:uplimit>
	      <m:apply>
		<m:int/>
		<m:bvar><m:ci>τ</m:ci></m:bvar>
		<m:lowlimit>
		  <m:apply>
		    <m:minus/>
		    <m:infinity/>
		  </m:apply>
		</m:lowlimit>
		<m:uplimit>
		  <m:infinity/>
		</m:uplimit>
		<m:apply>
		  <m:divide/>
		  <m:apply>
		    <m:times/>
		    <m:apply>
		      <m:ci type="fn">
			<m:msub><m:mi>X</m:mi><m:mi>CWT</m:mi></m:msub>
		      </m:ci>
		      <m:ci>a</m:ci>
		      <m:ci>τ</m:ci>
		    </m:apply>
		    <m:apply>
		      <m:ci type="fn">
			<m:msub><m:mi>ψ</m:mi>
			  <m:mrow>
			    <m:mi>a</m:mi>
			    <m:mo>,</m:mo>
			    <m:mi>τ</m:mi>
			  </m:mrow>
			</m:msub>
		      </m:ci>
		      <m:ci>t</m:ci>
		    </m:apply>
		  </m:apply>
		  <m:apply>
		    <m:power/>
		    <m:ci>a</m:ci>
		    <m:cn>2</m:cn>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math>

      In basis terms, the CWT says that a waveform can be decomposed
      into a collection of shifted and stretched versions of the
      mother wavelet 
      <m:math>
	<m:apply>
	  <m:ci type="fn">ψ</m:ci>
	  <m:ci>t</m:ci>
	</m:apply>
      </m:math>.  As such, it is usually said that wavelets perform a
      "time-scale" analysis rather than a time-frequency analysis.
    </para>

    <para id="para5">
      The <term>Morlet wavelet</term> is a classic example of the
      CWT.  It employs a windowed complex exponential as the mother
      wavelet:
      
      <m:math display="block">
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:ci type="fn">ψ</m:ci>
	    <m:ci>t</m:ci>
	  </m:apply>
	  <m:apply>
	    <m:times/>
	    <m:apply>
	      <m:divide/>
	      <m:cn>1</m:cn>
	      <m:apply>
		<m:root/>
		<m:apply>
		  <m:times/>
		  <m:cn>2</m:cn>
		  <m:pi/>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:exp/>
	      <m:apply>
		<m:minus/>
		<m:apply>
		  <m:times/>
		  <m:imaginaryi/>
		  <m:ci>
		    <m:msub><m:mi>Ω</m:mi><m:mn>0</m:mn></m:msub>
		  </m:ci>
		  <m:ci>t</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:exp/>
	      <m:apply>
		<m:minus/>
		<m:apply>
		  <m:divide/>
		  <m:apply>
		    <m:power/>
		    <m:ci>t</m:ci>
		    <m:cn>2</m:cn>
		  </m:apply>
		  <m:cn>2</m:cn>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math>

      <m:math display="block">
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:ci type="fn">Ψ</m:ci>
	    <m:ci>Ω</m:ci>
	  </m:apply>
	  <m:apply>
	    <m:exp/>
	    <m:apply>
	      <m:minus/>
	      <m:apply>
		<m:divide/>
		<m:apply>
		  <m:power/>
		  <m:apply>
		    <m:minus/>
		    <m:ci>Ω</m:ci>
		    <m:ci>
		      <m:msub><m:mi>Ω</m:mi><m:mn>0</m:mn></m:msub>
		    </m:ci>
		  </m:apply>
		  <m:cn>2</m:cn>
		</m:apply>
		<m:cn>2</m:cn>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math>

      where it is typical to select 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>
	    <m:msub><m:mi>Ω</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	  <m:apply>
	    <m:times/>
	    <m:pi/>
	    <m:apply>
	      <m:root/>
	      <m:apply>
		<m:divide/>
		<m:cn>2</m:cn>
		<m:apply>
		  <m:log/>
		  <m:cn>2</m:cn>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math>. (See <cnxn target="fig2" strength="7">illustration</cnxn>.)  While this wavelet does not
      exactly satisfy the conditions established earlier, since
      <m:math>
	<m:apply>
	  <m:approx/>
	  <m:apply>
	    <m:ci type="fn">Ψ</m:ci>
	    <m:cn>0</m:cn>
	  </m:apply>
	  <m:apply>
	    <m:neq/>
	    <m:cn type="e-notation">7<m:sep/>-7</m:cn>
	    <m:cn>0</m:cn>
	  </m:apply>
	</m:apply>
      </m:math>, it can be corrected, though in practice the
      correction is negligible and usually ignored. 
    </para>
 
    <figure id="fig2">
      <media type="image/png" src="figure2.png"/>
    </figure>      

    <para id="para6">
      While the CWT discussed above is an interesting theoretical and
      pedagogical tool, the discrete wavelet transform (DWT) is much
      more practical. Before shifting our focus to the DWT, we take a
      step back and review some of the basic concepts from the branch
      of mathematics known as Hilbert Space theory (<cnxn document="m10419" strength="8">Vector Space</cnxn>, <cnxn document="m10428" strength="8">Normed Vector Space</cnxn>, <cnxn document="m10430" strength="8">Inner Product Space</cnxn>, <cnxn document="m10434" strength="8">Hilbert Space</cnxn>, <cnxn document="m10435" strength="8">Projection Theorem</cnxn>). These
      concepts will be essential in our development of the DWT.
    </para>

  </content>
</document>
