<?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:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" id="new0">
  <name>K-Regularity of Scaling Filter</name>
  <metadata>
  <md:version>2.0</md:version>
  <md:created>2003/05/09</md:created>
  <md:revised>2003/05/09</md:revised>
  <md:authorlist>
      <md:author id="feng">
      <md:firstname>Feng</md:firstname>
      
      <md:surname>Qiao</md:surname>
      <md:email>fqiao@rice.edu</md:email>
    </md:author>
      <md:author id="rmilam">
      <md:firstname>Rachael</md:firstname>
      
      <md:surname>Milam</md:surname>
      <md:email>rmilam@rice.edu</md:email>
    </md:author>
  </md:authorlist>

  <md:maintainerlist>
    <md:maintainer id="charlet">
      <md:firstname>Charlet</md:firstname>
      
      <md:surname>Reedstrom</md:surname>
      <md:email>charlet@rice.edu</md:email>
    </md:maintainer>
    <md:maintainer id="rmilam">
      <md:firstname>Rachael</md:firstname>
      
      <md:surname>Milam</md:surname>
      <md:email>rmilam@rice.edu</md:email>
    </md:maintainer>
    <md:maintainer id="feng">
      <md:firstname>Feng</md:firstname>
      
      <md:surname>Qiao</md:surname>
      <md:email>fqiao@rice.edu</md:email>
    </md:maintainer>
  </md:maintainerlist>
  
  <md:keywordlist>
    <md:keyword>regularity</md:keyword>
    <md:keyword>scaling filter</md:keyword>
  </md:keywordlist>

  <md:abstract/>
</metadata>



  <content>
    <para id="para1">
      <definition id="def1">
	<term>K-Regularity</term>
	<meaning>
	  A unitary 2-band scaling filter is said to be
	  <m:math><m:ci>K</m:ci></m:math>-regular if it has a
	  polynomial factor of the form 
	  <m:math>
	    <m:apply>
	      <m:ci type="fn"><m:msup>
		  <m:mi>P</m:mi>
		  <m:mi>K</m:mi>
		</m:msup></m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	  </m:math>, with
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:ci type="fn">P</m:ci>
		<m:ci>z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:divide/>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:apply>
		    <m:inverse/>
		    <m:ci>z</m:ci>
		  </m:apply>
		</m:apply>
		<m:cn>2</m:cn>
	      </m:apply>
	    </m:apply>
	  </m:math>.

	  <equation id="eqn1">
	    <m:math>
	      <m:apply>
		<m:eq/>
		<m:apply>
		  <m:ci type="fn"><m:msub>
		      <m:mi>H</m:mi>
		      <m:mn>0</m:mn>
		    </m:msub></m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
		<m:apply>
		  <m:times/>
		  <m:apply>
		    <m:power/>
		    <m:apply>
		      <m:divide/>
		      <m:apply>
			<m:plus/>
			<m:cn>1</m:cn>
			<m:apply>
			  <m:inverse/>
			  <m:ci>z</m:ci>
			</m:apply>
		      </m:apply>
		      <m:cn>2</m:cn>
		    </m:apply>
		    <m:ci>K</m:ci>
		  </m:apply>
		  <m:apply>
		    <m:ci type="fn">Q</m:ci>
		    <m:ci>z</m:ci>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:math>
	  </equation>
	  Here a unitary filter is defined as a FIR filter with
	  coefficients 
	  <m:math>
	    <m:apply>
	      <m:ci type="fn" class="discrete">h</m:ci>
	      <m:ci>n</m:ci>
	    </m:apply>
	  </m:math> from the basic recursive equation
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:ci type="fn">φ</m:ci>
		<m:ci>t</m:ci>
	      </m:apply>
	      <m:apply>
		<m:sum/>
		<m:bvar><m:ci>n</m:ci></m:bvar>
		<m:domainofapplication>
		  <m:ci>n</m:ci>
		</m:domainofapplication>
		<m:apply>
		  <m:times/>
		  <m:apply>
		    <m:ci type="fn" class="discrete">h</m:ci>
		    <m:ci>n</m:ci>
		  </m:apply>
		  <m:apply>
		    <m:root/>
		    <m:cn>2</m:cn>
		  </m:apply>
		  <m:apply>
		    <m:ci type="fn">φ</m:ci>
		    <m:apply>
		      <m:minus/>
		      <m:apply>
			<m:times/>
			<m:cn>2</m:cn>
			<m:ci>t</m:ci>
		      </m:apply>
		      <m:ci>n</m:ci>
		    </m:apply>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:math> satisfying the admissibility conditions and
	  orthogonality conditions, i.e.,

	  <m:math display="block">
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:sum/>
		<m:bvar><m:ci>n</m:ci></m:bvar>
		<m:domainofapplication>
		  <m:ci>n</m:ci>
		</m:domainofapplication>
		<m:apply>
		  <m:ci type="fn" class="discrete">h</m:ci>
		  <m:ci>n</m:ci>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:root/>
		<m:cn>2</m:cn>
	      </m:apply>
	    </m:apply>
	  </m:math> 
	  and 
	  <m:math display="block">
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:sum/>
		<m:bvar><m:ci>k</m:ci></m:bvar>
		<m:domainofapplication>
		  <m:ci>k</m:ci>
		</m:domainofapplication>
		<m:apply>
		  <m:times/>
		  <m:apply>
		    <m:ci type="fn" class="discrete">h</m:ci>
		    <m:ci>k</m:ci>
		  </m:apply>
		  <m:apply>
		    <m:ci type="fn" class="discrete">h</m:ci>
		    <m:apply>
		      <m:plus/>
		      <m:ci>k</m:ci>
		      <m:apply>
			<m:times/>
			<m:cn>2</m:cn>
			<m:ci>m</m:ci>
		      </m:apply>
		    </m:apply>
		  </m:apply>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn" class="discrete">δ</m:ci>
		<m:ci>m</m:ci>
	      </m:apply>
	    </m:apply>
	  </m:math>
	</meaning>
      </definition>

      <note type="note">
	Any unitary filter is at least 1-regular according to the
	above definition.
      </note>

      <note type="question">
	In what range can <m:math><m:ci>K</m:ci></m:math> take its
	value?
      </note>

      <note type="recall">
	The admissibility conditions and orthogonality conditions take
	<m:math>
	  <m:apply>
	    <m:plus/>
	    <m:apply>
	      <m:divide/>
	      <m:ci>N</m:ci>
	      <m:cn>2</m:cn>
	    </m:apply>
	    <m:cn>1</m:cn>
	  </m:apply>
	</m:math> degrees of freedom out of the total
	<m:math><m:ci>N</m:ci></m:math> degrees of freedom in
	designing the filter
	  <m:math>
	    <m:apply>
	      <m:ci type="fn" class="discrete">h</m:ci>
	      <m:ci>n</m:ci>
	    </m:apply>
	  </m:math>, where <m:math><m:ci>N</m:ci></m:math> is the
	length of the filter.
      </note>

      Since <m:math><m:ci>K</m:ci></m:math> is at least 1,
      <m:math><m:ci>K</m:ci></m:math>-regularity is equivalent to a
      set of 
      <m:math>
	<m:apply>
	  <m:minus/>
	  <m:ci>K</m:ci>
	  <m:cn>1</m:cn>
	</m:apply>
      </m:math> linear constraints on the scaling filter, this
      takes another 
      <m:math>
	<m:apply>
	  <m:minus/>
	  <m:ci>K</m:ci>
	  <m:cn>1</m:cn>
	</m:apply>
      </m:math> degrees of freedom. So we have 
      <m:math>
	<m:apply>
	  <m:leq/>
	  <m:cn>1</m:cn>
	  <m:ci>K</m:ci>
	  <m:apply>
	    <m:divide/>
	    <m:ci>N</m:ci>
	    <m:cn>2</m:cn>
	  </m:apply>
	</m:apply>
      </m:math>.
    </para>

    <para id="para2">
      <m:math><m:ci>K</m:ci></m:math>-regularity describes the
      flatness of 
      <m:math>
	<m:apply>
	  <m:ci type="fn">H</m:ci>
	  <m:ci>ω</m:ci>
	</m:apply>
      </m:math>, the Fourier transform of 
      <m:math>
	<m:apply>
	  <m:ci type="fn" class="discrete">h</m:ci>
	  <m:ci>n</m:ci>
	</m:apply>
      </m:math>, at
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>ω</m:ci>
	  <m:cn>0</m:cn>
	</m:apply>
      </m:math> and 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>ω</m:ci>
	  <m:pi/>
	</m:apply>
      </m:math>. The flatness at these two locations indicates how
      well the scaling filter performs as a low-pass filter, and is
      related to the smoothness of corresponding scaling and wavelet
      functions. <cnxn target="fig1" strength="9"/> shows the
      frequency response of Daubechies scaling filters with increasing
      regularities.
    </para>

    <figure id="fig1">
      <media type="image/png" src="h.png"/>
      <caption>
	Frequency response of Daubechies scaling filters
      </caption>
    </figure>

    <para id="para3">
      It can be proved that putting
      <m:math><m:ci>K</m:ci></m:math>-regularity on scaling filter is
      equivalent to the following statements: 
      <list id="list1" type="enumerated">
	<item>
	  All moments of the wavelet filters are zero, 
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:ci type="fn" class="discrete"><m:msub>
		    <m:mi>μ</m:mi>
		    <m:mn>1</m:mn>
		  </m:msub></m:ci>
		<m:ci>k</m:ci>
	      </m:apply>
	      <m:cn>0</m:cn>
	    </m:apply>
	  </m:math>, for
	  <m:math>
	    <m:apply>
	      <m:in/>
	      <m:ci>k</m:ci>
	      <m:set>
		<m:cn>0</m:cn>
		<m:cn>1</m:cn>
		<m:ci>…</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>K</m:ci>
		  <m:cn>1</m:cn>
		</m:apply>
	      </m:set>
	    </m:apply>
	  </m:math>.
	</item>
	<item>
	  All moments of the wavelets are zero, 
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:ci type="fn" class="discrete"><m:msub>
		    <m:mi>m</m:mi>
		    <m:mn>1</m:mn>
		  </m:msub></m:ci>
		<m:ci>k</m:ci>
	      </m:apply>
	      <m:cn>0</m:cn>
	    </m:apply>
	  </m:math>, for
	  <m:math>
	    <m:apply>
	      <m:in/>
	      <m:ci>k</m:ci>
	      <m:set>
		<m:cn>0</m:cn>
		<m:cn>1</m:cn>
		<m:ci>…</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>K</m:ci>
		  <m:cn>1</m:cn>
		</m:apply>
	      </m:set>
	    </m:apply>
	  </m:math>.
	</item>
	<item>
	  The partial moments of the scaling filter are equal for
	  <m:math>
	    <m:apply>
	      <m:in/>
	      <m:ci>k</m:ci>
	      <m:set>
		<m:cn>0</m:cn>
		<m:cn>1</m:cn>
		<m:ci>…</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>K</m:ci>
		  <m:cn>1</m:cn>
		</m:apply>
	      </m:set>
	    </m:apply>
	  </m:math>.
	</item>
	<item>
	  The frequency response of the scaling filter has a zero of
	  order <m:math><m:ci>K</m:ci></m:math> at 
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:ci>ω</m:ci>
	      <m:pi/>
	    </m:apply>
	  </m:math>.
	</item>
	<item>
	  The 
	  <m:math>
	    <m:ci><m:msup> 
		<m:mi>k</m:mi> 
		<m:mi>th</m:mi>
	      </m:msup></m:ci> 
	  </m:math>
	  derivative of the magnitude-squared frequency response of
	  the scaling filter is zero at 
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:ci>ω</m:ci>
	      <m:cn>0</m:cn>
	    </m:apply>
	  </m:math>, for
	  <m:math>
	    <m:apply>
	      <m:in/>
	      <m:ci>k</m:ci>
	      <m:set>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
		<m:ci>…</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:apply>
		    <m:times/>
		    <m:cn>2</m:cn>
		    <m:ci>K</m:ci>
		  </m:apply>
		  <m:cn>1</m:cn>
		</m:apply>
	      </m:set>
	    </m:apply>
	  </m:math>.
	</item>
	<item>
	  All polynomial sequences up to degree 
	  <m:math>
	    <m:apply>
	      <m:minus/>
	      <m:ci>K</m:ci>
	      <m:cn>1</m:cn>
	    </m:apply>
	  </m:math> can be expressed as a linear combination of
	  shifted scaling filters.
	</item>
	<item>
	  All polynomials of degree up to 
	  <m:math>
	    <m:apply>
	      <m:minus/>
	      <m:ci>K</m:ci>
	      <m:cn>1</m:cn>
	    </m:apply>
	  </m:math> can be expressed as a linear combination of
	  shifted scaling functions at any scale.
	</item>
      </list>
    </para>

    <para id="para5">
      Statement 1-3 relate the regularity of scaling filter to
      vanishing wavelet moments and the moments of scaling filter.
      Statement 4 and 5 describes the flatness of the frequency
      response of the scaling filter. The last two statements show the
      power of polynomial representation as a consequence of
      <m:math><m:ci>K</m:ci></m:math>-regularity.
    </para>

    <para id="para6">
      Daubechies filters utilize all the remaining 
	<m:math>
	  <m:apply>
	    <m:minus/>
	    <m:apply>
	      <m:divide/>
	      <m:ci>N</m:ci>
	      <m:cn>2</m:cn>
	    </m:apply>
	    <m:cn>1</m:cn>
	  </m:apply>
	</m:math> degrees of freedom to get maximum number of
      vanishing wavelet moments, i.e., 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>K</m:ci>
	  <m:apply>
	    <m:divide/>
	    <m:ci>N</m:ci>
	    <m:cn>2</m:cn>
	  </m:apply>
	</m:apply>
      </m:math> for Daubechies filters.
    </para>

    <para id="para7">
      <link src="daub.vi">Here</link> is a LabVIEW VI showing the Daubechies
      scaling and wavelet functions, along with the frequency response
      of scaling and wavelet filters for 
      <m:math>
	<m:apply>
	  <m:in/>
	  <m:ci>k</m:ci>
	  <m:set>
	    <m:cn>2</m:cn>
	    <m:cn>3</m:cn>
	    <m:ci>…</m:ci>
	    <m:cn>14</m:cn>
	  </m:set>
	</m:apply>
      </m:math>.
    </para>

  </content>
  
</document>
