<?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="m11139">
  
  <name xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Good Filters / Wavelets</name>
  
  <metadata xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
  <md:version xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">2.2</md:version>
  <md:created xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">2003/05/01</md:created>
  <md:revised xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">2003/06/23</md:revised>
  <md:authorlist xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
      <md:author xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" id="ngk">
      <md:firstname xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Nick</md:firstname>
      
      <md:surname xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Kingsbury</md:surname>
      <md:email xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">ngk10@cam.ac.uk</md:email>
    </md:author>
  </md:authorlist>

  <md:maintainerlist xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
    <md:maintainer xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" id="liqun">
      <md:firstname xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Liqun</md:firstname>
      
      <md:surname xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Wang</md:surname>
      <md:email xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">liqun@rice.edu</md:email>
    </md:maintainer>
    <md:maintainer xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" id="ngk">
      <md:firstname xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Nick</md:firstname>
      
      <md:surname xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Kingsbury</md:surname>
      <md:email xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">ngk10@cam.ac.uk</md:email>
    </md:maintainer>
  </md:maintainerlist>
  
  <md:keywordlist xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
    <md:keyword xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">filters</md:keyword>
    <md:keyword xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">perfect reconstruction</md:keyword>
    <md:keyword xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">wavelets</md:keyword>
  </md:keywordlist>

  <md:abstract xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">This module focus on search for better filters/wavelets.</md:abstract>
</metadata>
  

  <content xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
    <para 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="para1">
      Our main aim now is to search for better filters / wavelets
      which result in compression performance that rivals or beats the
      DCT.
    </para>

    <para 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="para2">
      We assume that perfect reconstruction is a prime requirement, so
      that the only image degradations are caused by coefficient
      quantisation, and may be made as small as we wish by increasing
      bit rate.
    </para>

    <para 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="para3">
      We start our search with the two PR identities from our
      discussion of <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" document="m11136" target="eq14" strength="7">Perfect Reconstruction</cnxn>, which we repeat
      here:

      <equation 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="eq24">
	<m:math>
	  <m:apply>
	    <m:equivalent/>
	    <m:apply>
	      <m:plus/>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		  </m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
		<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:apply>
		<m:times/>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
		  </m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
		  </m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:cn>2</m:cn>
	  </m:apply>
	</m:math>
      </equation>

      and
      
      <equation 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="eq25">
	<m:math>
	  <m:apply>
	    <m:equivalent/>
	    <m:apply>
	      <m:plus/>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		  </m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
		  </m:ci>
		  <m:apply>
		    <m:minus/>
		    <m:ci>z</m:ci>
		  </m:apply>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
		  </m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
		  </m:ci>
		   <m:apply>
		    <m:minus/>
		    <m:ci>z</m:ci>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:cn>0</m:cn>
	  </m:apply>
	</m:math>
      </equation>

      The usual way of satisfying the anti-aliasing condition (<cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq25" strength="7"/>), while permitting 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math> and 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math> to have lowpass responses (passband where 
      <m:math>
	<m:apply>
	  <m:gt/>
	  <m:apply>
	    <m:real/>
	    <m:ci>z</m:ci>
	  </m:apply>
	  <m:cn>0</m:cn>
	</m:apply>
      </m:math>) and 
       <m:math>
	<m:ci>
	  <m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
	</m:ci>
      </m:math> and 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
	</m:ci> 
      </m:math> to have highpass responses (passband where 
      <m:math>
	<m:apply>
	  <m:lt/>
	  <m:apply>
	    <m:real/>
	    <m:ci>z</m:ci>
	  </m:apply>
	  <m:cn>0</m:cn>
	</m:apply>
      </m:math>), is with the following relations:

      <equation 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="eq26a">
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
	      </m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:power/>
		<m:ci>z</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>k</m:ci>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>
      </equation> and 

      <equation 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="eq26b">
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
	      </m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:power/>
		<m:ci>z</m:ci>
		<m:ci>k</m:ci>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>
      </equation>

      where <m:math><m:ci>k</m:ci></m:math> must be odd so that:

      <m:math display="block">
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:plus/>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:ci>z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
		</m:ci>
		<m:ci>z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	  <m:apply>
	    <m:plus/>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:ci>z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:power/>
		<m:ci>z</m:ci>
		<m:ci>k</m:ci>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:power/>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
		<m:apply>
		  <m:minus/>
		  <m:ci>k</m:ci>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:ci>z</m:ci>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	  <m:cn>0</m:cn>
	</m:apply>
      </m:math>
    
      Now define the lowpass product filter:

      <equation 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="eq27">
	<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:times/>
	      <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:ci type="fn">
		  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:ci>z</m:ci>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>
      </equation>

      and substitute relations <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq26a" strength="7"/> and
      <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq26b" strength="7"/> into identity <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq24" strength="7"/> to get:

      <equation 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="eq28">
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:plus/>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		  </m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
		<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:apply>
		<m:times/>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
		  </m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
		  </m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:plus/>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		  </m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
		<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:apply>
		<m:times/>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
		  </m:ci>
		  <m:apply>
		    <m:minus/>
		    <m:ci>z</m:ci>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		  </m:ci>
		  <m:apply>
		    <m:minus/>
		    <m:ci>z</m:ci>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:plus/>
	      <m:apply>
		<m:ci type="fn">P</m:ci>
		<m:ci>z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">P</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:cn>2</m:cn>
	  </m:apply>
	</m:math>
      </equation>

      This requires all 
      <m:math>
	<m:apply>
	  <m:ci type="fn">P</m:ci>
	  <m:ci>z</m:ci>
	</m:apply>
      </m:math> terms in even powers of
      <m:math><m:ci>z</m:ci></m:math> to be zero, except the 
      <m:math>
	<m:apply>
	  <m:power/>
	  <m:ci>z</m:ci>
	  <m:cn>0</m:cn>
	</m:apply>
      </m:math> term which should be 1. The 
      <m:math>
	<m:apply>
	  <m:ci type="fn">P</m:ci>
	  <m:ci>z</m:ci>
	</m:apply>
      </m:math> terms in odd powers of <m:math><m:ci>z</m:ci></m:math>
      may take any desired values since they cancel out in <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq28" strength="7"/>.
    </para>

    <para 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="para4">
      A further constraint on 
      <m:math>
	<m:apply>
	  <m:ci type="fn">P</m:ci>
	  <m:ci>z</m:ci>
	</m:apply>
      </m:math> is that it should be zero phase, in order to minimise
      the visibility of any distortions due to the high-band being
      quantised to zero. Hence 
      <m:math>
	<m:apply>
	  <m:ci type="fn">P</m:ci>
	  <m:ci>z</m:ci>
	</m:apply>
      </m:math> should be of the form: 

      <equation 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="eq29">
	<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:plus/>
	      <m:ci>…</m:ci>
	      <m:apply>
		<m:times/>
		<m:ci>
		  <m:msub><m:mi>p</m:mi><m:mn>5</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:power/>
		  <m:ci>z</m:ci>
		  <m:cn>5</m:cn>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:ci>
		  <m:msub><m:mi>p</m:mi><m:mn>3</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:power/>
		  <m:ci>z</m:ci>
		  <m:cn>3</m:cn>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:ci>
		  <m:msub><m:mi>p</m:mi><m:mn>1</m:mn></m:msub>
		</m:ci>
		<m:ci>z</m:ci>
	      </m:apply>
	      <m:cn>1</m:cn>
	      <m:apply>
		<m:times/>
		<m:ci>
		  <m:msub><m:mi>p</m:mi><m:mn>1</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:power/>
		  <m:ci>z</m:ci>
		  <m:cn>-1</m:cn>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:ci>
		  <m:msub><m:mi>p</m:mi><m:mn>3</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:power/>
		  <m:ci>z</m:ci>
		  <m:cn>-3</m:cn>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:ci>
		  <m:msub><m:mi>p</m:mi><m:mn>5</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:power/>
		  <m:ci>z</m:ci>
		  <m:cn>-5</m:cn>
		</m:apply>
	      </m:apply>
	      <m:ci>…</m:ci>
	    </m:apply>
	  </m:apply>
	</m:math>
      </equation>

      The design of a set of PR filters 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math>, 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
	</m:ci>
      </m:math> and 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math>, 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
	</m:ci>
      </m:math> can now be summarised as:

      <list 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="list1" type="enumerated">
	<item xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
	  Choose a set of coefficients 
	  <m:math>
	    <m:ci>
	      <m:msub><m:mi>p</m:mi><m:mn>1</m:mn></m:msub>
	    </m:ci>
	  </m:math>, 
	  <m:math>
	    <m:ci>
	      <m:msub><m:mi>p</m:mi><m:mn>3</m:mn></m:msub>
	    </m:ci>
	  </m:math>, 
	  <m:math>
	    <m:ci>
	      <m:msub><m:mi>p</m:mi><m:mn>5</m:mn></m:msub>
	    </m:ci>
	  </m:math> … to give a zero-phase lowpass product
	  filter 
	  <m:math>
	    <m:apply>
	      <m:ci type="fn">P</m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	  </m:math> with desirable characteristics. (This is
	  non-trivial and is discussed below.)
	</item>

	<item xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
	  Factorize 
	  <m:math>
	    <m:apply>
	      <m:ci type="fn">P</m:ci>
	      <m:ci>z</m:ci>
	    </m:apply> 
	  </m:math> into 
	  <m:math>
	    <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:math> and 
	  <m:math>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	      </m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	  </m:math>, preferably so that the two filters have similar
	  lowpass frequency responses.
	</item>

	<item xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
	  Calculate 
	  <m:math>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
	      </m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	  </m:math> and 
	  <m:math>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
	      </m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	  </m:math> from <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq26a" strength="7"/> and <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq26b" strength="7"/>.
	</item>
      </list>

      It can help to simplify the tasks of choosing 
      <m:math>
	<m:apply>
	  <m:ci type="fn">P</m:ci>
	  <m:ci>z</m:ci>
	</m:apply> 
      </m:math> and factorising it if, based on the zero-phase
      requirement, we transform 
      <m:math>
	<m:apply>
	  <m:ci type="fn">P</m:ci>
	  <m:ci>z</m:ci>
	</m:apply> 
      </m:math> into 
      <m:math>
	<m:apply>
	  <m:ci type="fn">
	    <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	  </m:ci>
	  <m:ci>Z</m:ci>
	</m:apply>
      </m:math> such that:

      <equation 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="eq30">
	<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:ci type="fn">
		<m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	      </m:ci>
	      <m:ci>Z</m:ci>
	    </m:apply>
	    <m:apply>
	      <m:plus/>
	      <m:cn>1</m:cn>
	      <m:apply>
		<m:times/>
		<m:ci>
		  <m:msub><m:mi>p</m:mi>
		    <m:mrow>
		      <m:mi>t</m:mi>
		      <m:mo>,</m:mo>
		      <m:mn>1</m:mn>
		    </m:mrow>
		  </m:msub>
		</m:ci>
		<m:ci>Z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:ci>
		  <m:msub><m:mi>p</m:mi>
		    <m:mrow>
		      <m:mi>t</m:mi>
		      <m:mo>,</m:mo>
		      <m:mn>3</m:mn>
		    </m:mrow>
		  </m:msub>
		</m:ci>
		<m:apply>
		  <m:power/>
		  <m:ci>Z</m:ci>
		  <m:cn>3</m:cn>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:ci>
		  <m:msub><m:mi>p</m:mi>
		    <m:mrow>
		      <m:mi>t</m:mi>
		      <m:mo>,</m:mo>
		      <m:mn>5</m:mn>
		    </m:mrow>
		  </m:msub>
		</m:ci>
		<m:apply>
		  <m:power/>
		  <m:ci>Z</m:ci>
		  <m:cn>5</m:cn>
		</m:apply>
	      </m:apply>
	      <m:ci>…</m:ci>
	    </m:apply>
	  </m:apply>
	</m:math>
      </equation>

      where 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>Z</m:ci>
	  <m:apply>
	    <m:times/>
	    <m:apply>
	      <m:divide/>
	      <m:cn>1</m:cn>
	      <m:cn>2</m:cn>
	    </m:apply>
	    <m:apply>
	      <m:plus/>
	      <m:ci>z</m:ci>
	      <m:apply>
		<m:inverse/>
		<m:ci>z</m:ci>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math>. To calculate the frequency response of 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	</m:ci>
      </m:math>, let 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>z</m:ci>
	  <m:apply>
	    <m:exp/>
	    <m:apply>
	      <m:times/>
	      <m:imaginaryi/>
	      <m:ci>ω</m:ci>
	      <m:ci>
		<m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
	      </m:ci>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math>: therefore, 

      <equation 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="eq31">
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>Z</m:ci>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:divide/>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:apply>
		  <m:exp/>
		  <m:apply>
		    <m:times/>
		    <m:imaginaryi/>
		    <m:ci>ω</m:ci>
		    <m:ci>
		      <m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
		    </m:ci>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:exp/>
		  <m:apply>
		    <m:minus/>
		    <m:apply>
		      <m:times/>
		      <m:imaginaryi/>
		      <m:ci>ω</m:ci>
		      <m:ci>
			<m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
		      </m:ci>
		    </m:apply>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:cos/>
	      <m:apply>
		<m:times/>
		<m:ci>ω</m:ci>
		<m:ci>
		  <m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
		</m:ci>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>
      </equation>

      This is a purely real function of
      <m:math><m:ci>ω</m:ci></m:math>, varying from 1 at 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>ω</m:ci>
	  <m:cn>0</m:cn>
	</m:apply>
      </m:math> to -1 at 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:times/>
	    <m:ci>ω</m:ci>
	    <m:ci>
	      <m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
	    </m:ci>
	  </m:apply>
	  <m:pi/>
	</m:apply>
      </m:math> (half the sampling frequency).
    </para>

    <para 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="para5">
      A Belgian mathematician, Ingrid Daubechies, did much pioneering
      work on wavelets in the 1980s. She discovered that to achieve
      smooth wavelets after many levels of the binary tree, the
      lowpass filters 
      <m:math>
	<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:math> and 
      <m:math>
	<m:apply>
	  <m:ci type="fn">
	    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	  <m:ci>z</m:ci>
	</m:apply>
      </m:math> must both have a number of zeros at half the sampling
      frequency (at 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>z</m:ci>
	  <m:cn>-1</m:cn>
	</m:apply>
      </m:math>). These will also be zeros of 
      <m:math>
	<m:apply>
	  <m:ci type="fn">P</m:ci>
	  <m:ci>z</m:ci>
	</m:apply>
      </m:math>, and so 
      <m:math>
	<m:apply>
	  <m:ci type="fn">
	    <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	  </m:ci>
	  <m:ci>z</m:ci>
	</m:apply>
      </m:math> will have zeros at 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>Z</m:ci>
	  <m:cn>-1</m:cn>
	</m:apply>
      </m:math>.
    </para>

    <para 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="para6">
      The simplest case is a single zero at 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>Z</m:ci>
	  <m:cn>-1</m:cn>
	</m:apply>
      </m:math>, so that 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>z</m:ci>
	  </m:apply>
	  <m:apply>
	    <m:plus/>
	    <m:cn>1</m:cn>
	    <m:ci>Z</m:ci>
	  </m:apply>
	</m:apply>
      </m:math>. Therefore, 
      
      <m:math display="block">
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:ci type="fn">P</m:ci>
	    <m:ci>z</m:ci>
	  </m:apply>
	  <m:apply>
	    <m:times/>
	    <m:apply>
	      <m:divide/>
	      <m:cn>1</m:cn>
	      <m:cn>2</m:cn>
	    </m:apply>
	    <m:apply>
	      <m:plus/>
	      <m:ci>z</m:ci>
	      <m:cn>2</m:cn>
	      <m:apply>
		<m:inverse/>
		<m:ci>z</m:ci>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	  <m:apply>
	    <m:times/>
	    <m:apply>
	      <m:divide/>
	      <m:cn>1</m:cn>
	      <m:cn>2</m:cn>
	    </m:apply>
	    <m:apply>
	      <m:plus/>
	      <m:ci>z</m:ci>
	      <m:cn>1</m:cn>
	    </m:apply>
	    <m:apply>
	      <m:plus/>
	      <m:cn>1</m:cn>
	      <m:apply>
		<m:inverse/>
		<m:ci>z</m:ci>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	  <m:apply>
	    <m:times/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	      </m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	    <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:apply>
      </m:math>

      which gives the familiar Haar filters.
    </para>

    <para 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="para7">
      As we have seen, the Haar wavelets have significant
      discontinuities so we need to add more zeros at 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>Z</m:ci>
	  <m:cn>-1</m:cn>
	</m:apply>
      </m:math>. However to maintain PR, we must also ensure that all
      terms in even powers of <m:math><m:ci>Z</m:ci></m:math> are
      zero, so the next more complicated 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	</m:ci>
      </m:math> must be of the form:

      <equation 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="eq32">
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	      </m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:power/>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:ci>Z</m:ci>
		</m:apply>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:cn>1</m:cn>
		<m:apply>
		  <m:times/>
		  <m:ci>α</m:ci>
		  <m:ci>Z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:plus/>
	      <m:cn>1</m:cn>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:plus/>
		  <m:cn>2</m:cn>
		  <m:ci>α</m:ci>
		</m:apply>
		<m:ci>Z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:apply>
		    <m:times/>
		    <m:cn>2</m:cn>
		    <m:ci>α</m:ci>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:power/>
		  <m:ci>Z</m:ci>
		  <m:cn>2</m:cn>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:ci>α</m:ci>
		<m:apply>
		  <m:power/>
		  <m:ci>Z</m:ci>
		  <m:cn>3</m:cn>
		</m:apply>
	      </m:apply>
	    </m:apply>	      
	  </m:apply>
	</m:math>
      </equation>

      if 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>α</m:ci>
	  <m:apply>
	    <m:minus/>
	    <m:apply>
	      <m:divide/>
	      <m:cn>1</m:cn>
	      <m:cn>2</m:cn>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math> to suppress the term in 
      <m:math>
	<m:apply>
	  <m:power/>
	  <m:ci>Z</m:ci>
	  <m:cn>2</m:cn>
	</m:apply>
      </m:math>, 

      <m:math display="block">
	<m:apply>
	  <m:eq/>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>z</m:ci>
	  </m:apply>
	  <m:apply>
	    <m:minus/>
	    <m:apply>
	      <m:plus/>
	      <m:cn>1</m:cn>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:divide/>
		  <m:cn>3</m:cn>
		  <m:cn>2</m:cn>
		</m:apply>
		<m:ci>Z</m:ci>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:divide/>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:apply>
		<m:power/>
		<m:ci>Z</m:ci>
		<m:cn>3</m:cn>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math>
    </para>

    <para 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="para8">
      If we allocate the factors of
      <m:math>
	<m:ci>
	  <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	</m:ci>
      </m:math> such that (
      <m:math>
	<m:apply>
	  <m:plus/>
	  <m:cn>1</m:cn>
	  <m:ci>Z</m:ci>
	</m:apply>
      </m:math>) gives 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math> and 
      <m:math>
	<m:apply>
	  <m:times/>
	  <m:apply>
	    <m:plus/>
	    <m:cn>1</m:cn>
	    <m:ci>Z</m:ci>
	  </m:apply>
	  <m:apply>
	    <m:plus/>
	    <m:cn>1</m:cn>
	    <m:apply>
	      <m:times/>
	      <m:ci>α</m:ci>
	      <m:ci>Z</m:ci>
	    </m:apply>
	  </m:apply>
	</m:apply>
      </m:math> gives 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math>, we get:

      <equation 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="eq33a">
	<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:divide/>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:ci>z</m:ci>
		<m:cn>2</m:cn>
		<m:apply>
		  <m:inverse/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>
      </equation>

      <equation 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="eq33b">
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>G</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:divide/>
		<m:cn>1</m:cn>
		<m:cn>8</m:cn>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:ci>z</m:ci>
		<m:cn>2</m:cn>
		<m:apply>
		  <m:inverse/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:minus/>
		<m:apply>
		  <m:plus/>
		  <m:apply>
		    <m:minus/>
		    <m:ci>z</m:ci>
		  </m:apply>
		  <m:cn>4</m:cn>
		</m:apply>
		<m:apply>
		  <m:inverse/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:divide/>
		  <m:cn>1</m:cn>
		  <m:cn>8</m:cn>
		</m:apply>
		<m:apply>
		  <m:minus/>
		  <m:apply>
		    <m:plus/>
		    <m:apply>
		      <m:minus/>
		      <m:apply>
			<m:power/>
			<m:ci>z</m:ci>
			<m:cn>2</m:cn>
		      </m:apply>
		    </m:apply>
		    <m:apply>
		      <m:times/>
		      <m:cn>2</m:cn>
		      <m:ci>z</m:ci>
		    </m:apply>
		    <m:cn>6</m:cn>
		    <m:apply>
		      <m:times/>
		      <m:cn>2</m:cn>
		      <m:apply>
			<m:inverse/>
			<m:ci>z</m:ci>
		      </m:apply>
		    </m:apply>
		  </m:apply>
		  <m:apply>
		    <m:power/>
		    <m:ci>z</m:ci>
		    <m:cn>-2</m:cn>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>
      </equation>

      Using <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq26a" strength="7"/> and <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq26b" strength="7"/> with 
      <m:math>
	<m:apply>
	  <m:eq/>
	  <m:ci>k</m:ci>
	  <m:cn>1</m:cn>
	</m:apply>
      </m:math>, the corresponding highpass filters then become: 

      <equation 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="eq34a">
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
	      </m:ci>
	      <m:ci>z</m:ci>
	    </m:apply> 
	    <m:apply>
	      <m:times/>
	      <m:ci>z</m:ci>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply> 
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:divide/>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:ci>z</m:ci>
	      <m:apply>
		<m:minus/>
		<m:apply>
		  <m:plus/>
		  <m:apply>
		    <m:minus/>
		    <m:ci>z</m:ci>
		  </m:apply>
		  <m:cn>2</m:cn>
		</m:apply>
		<m:apply>
		  <m:inverse/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>
      </equation>
      
      <equation 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="eq34b">
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
	      </m:ci>
	      <m:ci>z</m:ci>
	    </m:apply> 
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:inverse/>
		<m:ci>z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply> 
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:divide/>
		<m:cn>1</m:cn>
		<m:cn>8</m:cn>
	      </m:apply>
	      <m:apply>
		<m:inverse/>
		<m:ci>z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:minus/>
		<m:apply>
		  <m:minus/>
		  <m:apply>
		    <m:plus/>
		    <m:apply>
		      <m:minus/>
		      <m:apply>
			<m:minus/>
			<m:apply>
			  <m:power/>
			  <m:ci>z</m:ci>
			  <m:cn>2</m:cn>
			</m:apply>
		      </m:apply>
		      <m:apply>
			<m:times/>
			<m:cn>2</m:cn>
			<m:ci>z</m:ci>
		      </m:apply>
		    </m:apply>
		    <m:cn>6</m:cn>
		  </m:apply>
		  <m:apply>
		    <m:times/>
		    <m:cn>2</m:cn>
		    <m:apply>
		      <m:inverse/>
		      <m:ci>z</m:ci>
		    </m:apply>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:power/>
		  <m:ci>z</m:ci>
		  <m:cn>-2</m:cn>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>
      </equation>

      This is often known as the <term xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">LeGall 3,5-tap filter
      set</term>, since it was first published in the context of
      2-band filter banks by Didier LeGall in 1988.
    </para>

    <para 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="para9">
      The wavelets of the LeGall 3,5-tap filters, 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math> and 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
	</m:ci>
      </m:math> above, and their frequency responses are shown in
      <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="figure6" strength="7"/>. The scaling function
      (bottom left) converges to a pure triangular pulse and the
      wavelets are the superposition of two triangular pulses.
    </para>
    
    
    <figure 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="figure6">
      <media xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" type="image/png" src="figure6.png"/>
      <caption xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Impulse responses and frequency responses of the
	4-level tree of LeGall 3,5-tap filters.
      </caption>
    </figure>
    
    
    <para 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="para10">
      The triangular scaling function produces linear interpolation
      between consecutive lowband coefficients and also causes the
      wavelets to be linear interpolations of the coefficients of the 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
	</m:ci>
      </m:math> filter, -1, -2, 6, -2, -1 (scaled appropriately).
    </para>
    
    <para 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="para11">
      These wavelets have quite desirable properties for image
      compression (note the absence of waveform discontinuities and
      the much lower sidelobes of the frequency responses), and they
      represent probably the simplest useful wavelet
      design. Unfortunately there is one drawback -- the inverse
      wavelets are not very good. These are formed from the LeGall
      5,3-tap filter pair, 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math> and 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
	</m:ci>
      </m:math> above, whose wavelets and frequency responses are
      shown in <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="figure7" strength="7"/>.
    </para>

    <figure 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="figure7">
      <media xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" type="image/png" src="figure7.png"/>
      <caption xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Impulse responses and frequency responses of the
      4-level tree of LeGall 5,3-tap filters.
      </caption>
    </figure>

    <para 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="para12">
      The main problem is that the wavelets do not converge after many
      levels to a smooth function and hence the frequency responses
      have large unwanted sidelobes. The jaggedness of the scaling
      function and wavelets causes highly visible coding artefacts if
      these filters are used for reconstruction of a compressed image.
    </para>

    <para 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="para13">
      However the allocation of the factors of 
      <m:math>
	<m:apply>
	  <m:ci type="fn">
	    <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	  </m:ci>
	  <m:ci>Z</m:ci>
	</m:apply>
      </m:math> to 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math> and 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math> is a free design choice, so we may swap the factors
      (and hence swap <m:math><m:ci>G</m:ci></m:math> and
      <m:math><m:ci>H</m:ci></m:math>) in order that the smoother
      3,5-tap filters become 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	</m:ci>
      </m:math>, 
      <m:math>
	<m:ci>
	  <m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
	</m:ci>
      </m:math> and are used for reconstruction. We shall show later
      that this leads to a good low-complexity solution for image
      compression and that the jaggedness of the analysis filters is
      not critical.
    </para>

    <para 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="para14">
      Unbalance between analysis and reconstruction filters / wavelets
      is nevertheless often regarded as being undesirable,
      particularly as it prevents the filtering process from being
      represented as an orthonormal transformation of the input signal
      (since an orthonormally transformed signal may be reconstructed
      simply by transposing the transform matrix). An unbalanced PR
      filter system is often termed a <term xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">bi-orthogonal
      transformation</term>.
    </para>

    <para 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="para15">
      We now consider ways to reduce this unbalance. 
    </para>

    <section 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="sec1">
      <name xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Filters with balanced H and G frequency responses (but
      non-linear phase responses) - Daubechies wavelets:</name>

      <para 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="sec1para1">
	In the above analysis, we used the factorisation of 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>Z</m:ci>
	  </m:apply>
	</m:math> to give us 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math> and 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math>. This always gives unbalanced factors if terms of 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	  </m:ci>
	</m:math> in even powers of <m:math><m:ci>Z</m:ci></m:math>
	are zero.
      </para>

      <para 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="sec1para2">
	However each of these factors in
	<m:math><m:ci>Z</m:ci></m:math> may itself be factorised into
	a pair of factors in <m:math><m:ci>z</m:ci></m:math>, since: 

	<equation 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="eq35">
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:plus/>
		  <m:apply>
		    <m:times/>
		    <m:ci>α</m:ci>
		    <m:ci>z</m:ci>
		  </m:apply>
		  <m:cn>1</m:cn>
		</m:apply>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:apply>
		    <m:times/>
		    <m:ci>α</m:ci>
		    <m:apply>
		      <m:inverse/>
		      <m:ci>z</m:ci>
		    </m:apply>
		  </m:apply>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:apply>
		  <m:times/>
		  <m:ci>α</m:ci>
		  <m:ci>z</m:ci>
		</m:apply>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:apply>
		    <m:power/>
		    <m:ci>α</m:ci>
		    <m:cn>2</m:cn>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:times/>
		  <m:ci>α</m:ci>
		  <m:apply>
		    <m:inverse/>
		    <m:ci>z</m:ci>
		  </m:apply>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:apply>
		    <m:power/>
		    <m:ci>α</m:ci>
		    <m:cn>2</m:cn>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:times/>
		  <m:cn>2</m:cn>
		  <m:ci>α</m:ci>
		  <m:ci>Z</m:ci>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:apply>
		    <m:power/>
		    <m:ci>α</m:ci>
		    <m:cn>2</m:cn>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:apply>
		    <m:times/>
		    <m:ci>β</m:ci>
		    <m:ci>Z</m:ci>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:math>
	</equation>

	where 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>β</m:ci>
	    <m:apply>
	      <m:divide/>
	      <m:apply>
		<m:times/>
		<m:cn>2</m:cn>
		<m:ci>α</m:ci>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:cn>1</m:cn>
		<m:apply>
		  <m:power/>
		  <m:ci>α</m:ci>
		  <m:cn>2</m:cn>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>. 
      </para>

      <para 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="sec1para3">
	For each factor of 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>Z</m:ci>
	  </m:apply>
	</m:math>, we may allocate one of its
	<m:math><m:ci>z</m:ci></m:math> subfactors to 
	<m:math>
	  <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:math> and the other to 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	    </m:ci>
	    <m:ci>z</m:ci>
	  </m:apply>
	</m:math>. Where roots of 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>Z</m:ci>
	  </m:apply>
	</m:math> are complex, the subfactors must be allocated in
	conjugate pairs so that 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math> and 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math> remain purely real.
      </para>

      <para 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="sec1para4">
	Since the subfactors occur in reciprocal pairs (roots at 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>z</m:ci>
	    <m:ci>α</m:ci>
	  </m:apply>
	</m:math> and 
	<m:math>
	  <m:apply>
	    <m:inverse/>
	    <m:ci>α</m:ci>
	  </m:apply>
	</m:math>), we find that 
	
	<equation 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="eq36">
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci> 
		<m:ci>z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci> 
		<m:apply>
		  <m:inverse/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:math>
	</equation> 

	which means that the impulse response of 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci> 
	</m:math> is the time-reverse of 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci> 
	</m:math>.
      </para>

      <para 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="sec1para5">
	Therefore the frequency responses are related by 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	      </m:ci> 
	      <m:apply>
		<m:exp/>
		<m:apply>
		  <m:times/>
		  <m:imaginaryi/>
		  <m:ci>ω</m:ci>
		  <m:ci>
		    <m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
		  </m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	      </m:ci> 
	      <m:apply>
		<m:exp/>
		<m:apply>
		  <m:minus/>
		  <m:apply>
		    <m:times/>
		    <m:imaginaryi/>
		    <m:ci>ω</m:ci>
		    <m:ci>
		      <m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
		    </m:ci>
		  </m:apply>
		</m:apply>
	      </m:apply>  
	    </m:apply>
	  </m:apply>
	</m:math>. 
      </para>

      <para 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="sec1para6">
	Hence the magnitudes of the frequency responses are the same,
	and their phases are opposite. It may be shown that this is
	sufficient to obtain <emphasis xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">orthogonal</emphasis> wavelets,
	but unfortunately the separate filters are no longer zero (or
	linear) phase. (Linear phase is zero phase with an arbitrary
	delay
	<m:math>
	  <m:apply>
	    <m:power/>
	    <m:ci>z</m:ci>
	    <m:apply>
	      <m:minus/>
	      <m:ci>k</m:ci>
	    </m:apply>
	  </m:apply>
	</m:math>.) 
      </para>

      <para 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="sec1para7">
	Daubechies wavelets may be generated in this way, with the
	added constraint that the maximum number of zeros of 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>Z</m:ci>
	  </m:apply>
	</m:math> are placed at 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>Z</m:ci>
	    <m:cn>-1</m:cn>
	  </m:apply>
	</m:math> (producing pairs of zeros of 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">P</m:ci>
	    <m:ci>z</m:ci>
	  </m:apply>
	</m:math> at 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>z</m:ci>
	    <m:cn>-1</m:cn>
	  </m:apply>
	</m:math>), consistent with terms in even powers of
	<m:math><m:ci>Z</m:ci></m:math> being zero.
      </para>

      <para 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="sec1para8">
	If 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>Z</m:ci>
	  </m:apply>
	</m:math> is of order 
	<m:math>
	  <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:math>, then it may have <m:math><m:ci>K</m:ci></m:math>
	zeros at 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>Z</m:ci>
	    <m:cn>-1</m:cn>
	  </m:apply>
	</m:math> such that 

	<equation 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="eq37">
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
		</m:ci>
		<m:ci>Z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:power/>
		  <m:apply>
		    <m:plus/>
		    <m:cn>1</m:cn>
		    <m:ci>Z</m:ci>
		  </m:apply>
		  <m:ci>K</m:ci>
		</m:apply>
		<m:apply>
		  <m:ci type="fn">
		    <m:msub><m:mi>R</m:mi><m:mi>t</m:mi></m:msub>
		  </m:ci>
		  <m:ci>Z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:math>
	</equation>

	where 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>R</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>Z</m:ci>
	  </m:apply>
	</m:math> is of order 
	<m:math>
	  <m:apply>
	    <m:minus/>
	    <m:ci>K</m:ci>
	    <m:cn>1</m:cn>
	  </m:apply>
	</m:math> and its 
	<m:math>
	  <m:apply>
	    <m:minus/>
	    <m:ci>K</m:ci>
	    <m:cn>1</m:cn>
	  </m:apply>
	</m:math> roots may be chosen such that terms of 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>Z</m:ci>
	  </m:apply>
	</m:math> in the 
	<m:math>
	  <m:apply>
	    <m:minus/>
	    <m:ci>K</m:ci>
	    <m:cn>1</m:cn>
	  </m:apply>
	</m:math> even powers of <m:math><m:ci>Z</m:ci></m:math> are
	zero.
      </para>

      <para 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="sec1para9">
	<cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq32" strength="7"/> is the 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>K</m:ci>
	    <m:cn>2</m:cn>
	  </m:apply>
	</m:math> solution to <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq37" strength="7"/>. Therefore, 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>R</m:mi><m:mi>t</m:mi></m:msub>
	      </m:ci>
	      <m:ci>Z</m:ci>
	    </m:apply>
	    <m:apply>
	      <m:minus/>
	      <m:cn>1</m:cn>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:divide/>
		  <m:cn>1</m:cn>
		  <m:cn>2</m:cn>
		</m:apply>
		<m:ci>Z</m:ci>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math> so 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>β</m:ci>
	    <m:apply>
	      <m:minus/>
	      <m:apply>
		<m:divide/>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math> and, from <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq35" strength="7"/>, the
	factors of 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">R</m:ci>
	    <m:ci>z</m:ci>
	  </m:apply>
	</m:math> are 
	
	<m:math display="block">
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:ci type="fn">R</m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	    <m:apply>
	      <m:divide/>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:plus/>
		  <m:apply>
		    <m:times/>
		    <m:ci>α</m:ci>
		    <m:ci>z</m:ci>
		  </m:apply>
		  <m:cn>1</m:cn>
		</m:apply>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:apply>
		    <m:times/>
		    <m:ci>α</m:ci>
		    <m:apply>
		      <m:inverse/>
		      <m:ci>z</m:ci>
		    </m:apply>
		  </m:apply>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:cn>1</m:cn>
		<m:apply>
		  <m:power/>
		  <m:ci>α</m:ci>
		  <m:cn>2</m:cn>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>

	where 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>α</m:ci>
	    <m:apply>
	      <m:minus/>
	      <m:apply>
		<m:root/>
		<m:cn>3</m:cn>
	      </m:apply>
	      <m:cn>2</m:cn>
	    </m:apply>
	  </m:apply>
	</m:math>. Also 

	<m:math display="block">
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:power/>
	      <m:apply>
		<m:plus/>
		<m:cn>1</m:cn>
		<m:ci>Z</m:ci>
	      </m:apply>
	      <m:cn>2</m:cn>
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:divide/>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:apply>
		<m:power/>
		<m:apply>
		  <m:plus/>
		  <m:ci>Z</m:ci>
		  <m:cn>1</m:cn>		
		</m:apply>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:apply>
		<m:divide/>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:apply>
		<m:power/>
		<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:apply>
	</m:math>

	Hence 
	<m:math display="block">
	  <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:divide/>
		<m:cn>1</m:cn>
		<m:apply>
		  <m:times/>
		  <m:cn>2</m:cn>
		  <m:apply>
		    <m:root/>
		    <m:apply>
		      <m:plus/>
		      <m:cn>1</m:cn>
		      <m:apply>
			<m:power/>
			<m:ci>α</m:ci>
			<m:cn>2</m:cn>
		      </m:apply>
		    </m:apply>
		  </m:apply>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:power/>
		<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:plus/>
		<m:cn>1</m:cn>
		<m:apply>
		  <m:times/>
		  <m:ci>α</m:ci>
		  <m:apply>
		    <m:inverse/>
		    <m:ci>z</m:ci>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:minus/>
	      <m:apply>
		<m:plus/>
		<m:cn>0.4830</m:cn>
		<m:apply>
		  <m:times/>
		  <m:cn>0.8365</m:cn>
		  <m:apply>
		    <m:inverse/>
		    <m:ci>z</m:ci>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:times/>
		  <m:cn>0.2241</m:cn>
		  <m:apply>
		    <m:power/>
		    <m:ci>z</m:ci>
		    <m:cn>-2</m:cn>
		  </m:apply>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:cn>0.1294</m:cn>
		<m:apply>
		  <m:power/>
		  <m:ci>z</m:ci>
		  <m:cn>-3</m:cn>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>

	and 
	
	<m:math display="block">
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:ci type="fn">
		<m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
	      </m:ci>
	      <m:ci>z</m:ci>
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:power/>
		<m:ci>z</m:ci>
		<m:cn>-3</m:cn>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:power/>
		<m:ci>z</m:ci>
		<m:cn>-3</m:cn>
	      </m:apply>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
		</m:ci>
		<m:apply>
		  <m:minus/>
		  <m:apply>
		    <m:inverse/>
		    <m:ci>z</m:ci>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	    <m:apply>
	      <m:plus/>
	      <m:apply>
		<m:minus/>
		<m:apply>
		  <m:plus/>
		  <m:cn>0.1294</m:cn>
		  <m:apply>
		    <m:times/>
		    <m:cn>0.2241</m:cn>
		    <m:apply>
		      <m:inverse/>
		      <m:ci>z</m:ci>
		    </m:apply>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:times/>
		  <m:cn>0.8365</m:cn>
		  <m:apply>
		    <m:power/>
		    <m:ci>z</m:ci>
		    <m:cn>-2</m:cn>
		  </m:apply>
		</m:apply>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:cn>0.4830</m:cn>
		<m:apply>
		  <m:power/>
		  <m:ci>z</m:ci>
		  <m:cn>-3</m:cn>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>

	The wavelets and frequency responses for these filters are
	shown in <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="figure8" strength="7"/>. It is clear
	that the wavelets and scaling function are no longer linear
	phase and are less smooth than those for the LeGall 3,5-tap
	filters. The frequency responses also show worse
	sidelobes. The 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math>, 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
	  </m:ci>
	</m:math> filters give the time reverse of these wavelets and
	identical frequency responses.
      </para>
      
      <figure 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="figure8">
	<media xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" type="image/png" src="figure8.png"/>
	<caption xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
	  Impulse responses and frequency responses of the 4-level
	  tree of Daubechies 4-tap filters.
	</caption>
      </figure>

      <para 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="sec1para10">
	Higher order Daubechies filters achieve smooth wavelets but
	they still suffer from non-linear phase. This tends to result
	in more visible coding artefacts than linear phase filters,
	which distribute any artefacts equally on either side of sharp
	edges in the image.
      </para>

      <para 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="sec1para11">
	Linear phase filters also allow an elegant technique, known as
	symmetric extension, to be used at the outer edges of images,
	where wavelet filters would otherwise require the size of the
	transformed image to be increased to allow for convolution
	with the filters. Symmetric extension assumes that the image
	is reflected by mirrors at each edge, so that an infinitely
	tessellated plane of reflected images is generated. Reflections
	avoid unwanted edge discontinuities. If the filters are linear
	phase, then the DWT coefficients also form reflections and no
	increase in size of the transformed image is necessary to
	accomodate convolution effects.
      </para>
    </section>

    <section 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="sec2">
      <name xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Filters with linear phase and nearly balanced frequency
      responses:</name> 

      <para 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="sec2para1">
	To ensure that the filters 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math>, 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>H</m:mi><m:mn>1</m:mn></m:msub>
	  </m:ci>
	</m:math> and 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math>, 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>G</m:mi><m:mn>1</m:mn></m:msub>
	  </m:ci>
	</m:math> are linear phase, the factors in
	<m:math><m:ci>Z</m:ci></m:math> must be allocated to 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math> or 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math> as a whole and not be split, as was done for the
	Daubechies filters. In this way the symmetry between
	<m:math><m:ci>z</m:ci></m:math> and 
	<m:math>
	  <m:apply>
	    <m:inverse/>
	    <m:ci>z</m:ci>
	  </m:apply>
	</m:math> is preserved in all filters.
      </para>

      <para 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="sec2para2">
	Perfect balance of frequency responses between 
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>H</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math> and  
	<m:math>
	  <m:ci>
	    <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	  </m:ci>
	</m:math> is then not possible, if PR is preserved, but we
	have found a factorisation of
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>Z</m:ci>
	  </m:apply>
	</m:math> which achieves near balance of the responses.
      </para>

      <para 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="sec2para3">
	This is: 

	<equation 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="eq38">
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
		</m:ci>
		<m:ci>Z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:ci>Z</m:ci>
		</m:apply>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:apply>
		    <m:times/>
		    <m:ci>a</m:ci>
		    <m:ci>Z</m:ci>
		  </m:apply>
		  <m:apply>
		    <m:times/>
		    <m:ci>b</m:ci>
		    <m:apply>
		      <m:power/>
		      <m:ci>Z</m:ci>
		      <m:cn>2</m:cn>
		    </m:apply>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:ci>Z</m:ci>
		</m:apply>
		<m:apply>
		  <m:plus/>
		  <m:cn>1</m:cn>
		  <m:apply>
		    <m:times/>
		    <m:ci>c</m:ci>
		    <m:ci>Z</m:ci>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:math>
	</equation>

	This is a 
	<m:math>
	  <m:ci>
	    <m:msup><m:mn>5</m:mn><m:mi>th</m:mi></m:msup>
	  </m:ci>
	</m:math> order polynomial, and if the terms in 
	<m:math>
	  <m:apply>
	    <m:power/>
	    <m:ci>Z</m:ci>
	    <m:cn>2</m:cn>
	  </m:apply>
	</m:math> and 
	<m:math>
	  <m:apply>
	    <m:power/>
	    <m:ci>Z</m:ci>
	    <m:cn>4</m:cn>
	  </m:apply>
	</m:math> are to be zero, there are two constraints on the 3 unknowns 
	<m:math>
	  <m:list>
	    <m:ci>a</m:ci>
	    <m:ci>b</m:ci>
	    <m:ci>c</m:ci>
	  </m:list>
	</m:math> so that one of them (say
	<m:math><m:ci>c</m:ci></m:math>) may be regarded as a free
	parameter. These constraints require that:

	<equation 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="eq39a">
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:ci>a</m:ci>
	      <m:apply>
		<m:minus/>
		<m:apply>
		  <m:divide/>
		  <m:apply>
		    <m:power/>
		    <m:apply>
		      <m:plus/>
		      <m:cn>1</m:cn>
		      <m:apply>
			<m:times/>
			<m:cn>2</m:cn>
			<m:ci>c</m:ci>
		      </m:apply>
		    </m:apply>
		    <m:cn>2</m:cn>
		  </m:apply>
		  <m:apply>
		    <m:times/>
		    <m:cn>2</m:cn>
		    <m:apply>
		      <m:power/>
		      <m:apply>
			<m:plus/>
			<m:cn>1</m:cn>
			<m:ci>c</m:ci>
		      </m:apply>
		      <m:cn>2</m:cn>
		    </m:apply>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:math>
	</equation> and 

	<equation 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="eq39b">
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:ci>b</m:ci>
	      <m:apply>
		<m:divide/>
		<m:apply>
		  <m:times/>
		  <m:ci>c</m:ci>
		  <m:apply>
		    <m:plus/>
		    <m:cn>1</m:cn>
		    <m:apply>
		      <m:times/>
		      <m:cn>2</m:cn>
		      <m:ci>c</m:ci>
		    </m:apply>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:times/>
		  <m:cn>2</m:cn>
		  <m:apply>
		    <m:power/>
		    <m:apply>
		      <m:plus/>
		      <m:cn>1</m:cn>
		      <m:ci>c</m:ci>
		    </m:apply>
		    <m:cn>2</m:cn>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:math>
	</equation>
		
	<m:math><m:ci>c</m:ci></m:math> may then be adjusted to give
	maximum similarity between the left and right pairs of factors
	in <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq38" strength="7"/> as
	<m:math><m:ci>Z</m:ci></m:math> varies from 1 to -1 (
	<m:math>
	  <m:apply>
	    <m:times/>
	    <m:ci>ω</m:ci>
	    <m:ci>
	      <m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
	    </m:ci>
	  </m:apply>
	</m:math> varies from 0 to <m:math><m:pi/></m:math>).
      </para>

      <para 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="sec2para4">
	It turns out that 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>c</m:ci>
	    <m:apply>
	      <m:minus/>
	      <m:apply>
		<m:divide/>
		<m:cn>2</m:cn>
		<m:cn>7</m:cn>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math> gives good similarity and when substituted into
	<cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq39a" strength="7"/>, <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq39b" strength="7"/> and <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq38" strength="7"/> gives:

	<equation 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="eq40">
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:apply>
		<m:ci type="fn">
		  <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
		</m:ci>
		<m:ci>Z</m:ci>
	      </m:apply>
	      <m:apply>
		<m:times/>
		<m:apply>
		  <m:divide/>
		  <m:cn>1</m:cn>
		  <m:cn>50</m:cn>
		</m:apply>
		<m:apply>
		  <m:minus/>
		  <m:apply>
		    <m:minus/>
		    <m:apply>
		      <m:plus/>
		      <m:cn>50</m:cn>
		      <m:apply>
			<m:times/>
			<m:cn>41</m:cn>
			<m:ci>Z</m:ci>
		      </m:apply>
		    </m:apply>
		    <m:apply>
		      <m:times/>
		      <m:cn>15</m:cn>
		      <m:apply>
			<m:power/>
			<m:ci>Z</m:ci>
			<m:cn>2</m:cn>
		      </m:apply>
		    </m:apply>
		  </m:apply>
		  <m:apply>
		    <m:times/>
		    <m:cn>6</m:cn>
		    <m:apply>
		      <m:power/>
		      <m:ci>Z</m:ci>
		      <m:cn>3</m:cn>
		    </m:apply>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:divide/>
		  <m:cn>1</m:cn>
		  <m:cn>7</m:cn>
		</m:apply>
		<m:apply>
		  <m:minus/>
		  <m:apply>
		    <m:plus/>
		    <m:cn>7</m:cn>
		    <m:apply>
		      <m:times/>
		      <m:cn>5</m:cn>
		      <m:ci>Z</m:ci>
		    </m:apply>
		  </m:apply>
		  <m:apply>
		    <m:times/>
		    <m:cn>2</m:cn>
		    <m:apply>
		      <m:power/>
		      <m:ci>Z</m:ci>
		      <m:cn>2</m:cn>
		    </m:apply>
		  </m:apply>
		</m:apply>
	      </m:apply>	      
	    </m:apply>
	  </m:math>
	</equation>

	We get 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>G</m:mi><m:mn>0</m:mn></m:msub>
	    </m:ci>
	    <m:ci>z</m:ci>
	  </m:apply>
	</m:math> and 
	<m:math>
	  <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:math> by substituting 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>Z</m:ci>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:divide/>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:ci>z</m:ci>
		<m:apply>
		  <m:inverse/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math> into these two polynomial factors. This results in
	5,7-tap filters whose wavelets and frequency responses are
	shown in <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="figure9" strength="7"/>.
      </para>

      <figure 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="figure9">
	<media xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" type="image/png" src="figure9.png"/>
	<caption xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
	  Impulse responses and frequency responses of the 4-level
	  tree of near-balanced 5,7-tap filters.
	</caption>
      </figure>

      <para 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="sec2para5">
	The near balance of the responses may be seen from <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="figure10" strength="7"/> which shows the alternative
	7,5-tap versions (i.e. with <m:math><m:ci>H</m:ci></m:math>
	and <m:math><m:ci>G</m:ci></m:math> swapped). It is quite
	difficult to spot the minor differences between these figures.
      </para>

      <figure 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="figure10">
	<media xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" type="image/png" src="figure10.png"/>
	<caption xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
	  Impulse responses and frequency responses of the 4-level
	  tree of near-balanced 7,5-tap filters.
	</caption>
      </figure>
    </section>

    <section 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="sec3">
      <name xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">Smoother Wavelets</name>
      
      <para 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="sec3para1">
	In all of the above designs we have used the substitution 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>Z</m:ci>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:divide/>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:ci>z</m:ci>
		<m:apply>
		  <m:inverse/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>. However other substitutions may be used to create
	improved wavelets. To preserve PR, the substitution should
	contain only odd powers of <m:math><m:ci>z</m:ci></m:math> (so
	that odd powers of <m:math><m:ci>Z</m:ci></m:math> should
	produce only odd powers of <m:math><m:ci>z</m:ci></m:math>),
	and to produce zero phase, the coefficients of the
	substitution should be symmetric about
	<m:math>
	  <m:apply>
	    <m:power/>
	    <m:ci>z</m:ci>
	    <m:cn>0</m:cn>
	  </m:apply>
	</m:math>.
      </para>

      <para 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="sec3para2">
	A substitution, which can give much greater flatness near 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>z</m:ci>
	    <m:apply>
	      <m:mo>±</m:mo>
	      <m:cn>1</m:cn>
	    </m:apply>
	  </m:apply>
	</m:math> while still satisfying 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>Z</m:ci>
	    <m:apply>
	      <m:mo>±</m:mo>
	      <m:cn>1</m:cn>
	    </m:apply>
	  </m:apply>
	</m:math> when 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>z</m:ci>
	    <m:apply>
	      <m:mo>±</m:mo>
	      <m:cn>1</m:cn>
	    </m:apply>
	  </m:apply>
	</m:math>, is: 

	<equation 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="eq41">
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:ci>Z</m:ci>
	      <m:apply>
		<m:plus/>
		<m:apply>
		  <m:times/>
		  <m:ci>p</m:ci>
		  <m:apply>
		    <m:power/>
		    <m:ci>z</m:ci>
		    <m:cn>3</m:cn>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:times/>
		  <m:apply>
		    <m:minus/>
		    <m:apply>
		      <m:divide/>
		      <m:cn>1</m:cn>
		      <m:cn>2</m:cn>
		    </m:apply>
		    <m:ci>p</m:ci>
		  </m:apply>
		  <m:apply>
		    <m:plus/>
		    <m:ci>z</m:ci>
		    <m:apply>
		      <m:inverse/>
		      <m:ci>z</m:ci>
		    </m:apply>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:times/>
		  <m:ci>p</m:ci>
		  <m:apply>
		    <m:power/>
		    <m:ci>z</m:ci>
		    <m:cn>-3</m:cn>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:math>
	</equation>

	<m:math><m:ci>Z</m:ci></m:math> then becomes the following
	function of frequency when
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>z</m:ci>
	    <m:apply>
	      <m:exp/>
	      <m:apply>
		<m:times/>
		<m:imaginaryi/>
		<m:ci>ω</m:ci>
		<m:ci>
		  <m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
		</m:ci>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>: 

	<equation 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="eq42">
	  <m:math>
	    <m:apply>
	      <m:eq/>
	      <m:ci>Z</m:ci>
	      <m:apply>
		<m:plus/>
		<m:apply>
		  <m:times/>
		  <m:apply>
		    <m:minus/>
		    <m:cn>1</m:cn>
		    <m:apply>
		      <m:times/>
		      <m:cn>2</m:cn>
		      <m:ci>p</m:ci>
		    </m:apply>
		  </m:apply>
		  <m:apply>
		    <m:cos/>
		    <m:apply>
		      <m:times/>
		      <m:ci>ω</m:ci>
		      <m:ci>
			<m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
		      </m:ci>
		    </m:apply>
		  </m:apply>
		</m:apply>
		<m:apply>
		  <m:times/>
		  <m:cn>2</m:cn>
		  <m:ci>p</m:ci>
		  <m:apply>
		    <m:cos/>
		    <m:apply>
		      <m:times/>
		      <m:cn>3</m:cn>
		      <m:ci>ω</m:ci>
		      <m:ci>
			<m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
		      </m:ci>
		    </m:apply>
		  </m:apply>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:math>
	</equation>

	A high degree of flatness (with some ripple) is achieved near 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:apply>
	      <m:times/>
	      <m:ci>ω</m:ci>
	      <m:ci>
		<m:msub><m:mi>T</m:mi><m:mi>s</m:mi></m:msub>
	      </m:ci>
	    </m:apply>
	    <m:cn>0</m:cn>
	  </m:apply>
	</m:math> and <m:math><m:pi/></m:math>, when 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>p</m:ci>
	    <m:apply>
	      <m:minus/>
	      <m:apply>
		<m:divide/>
		<m:cn>3</m:cn>
		<m:cn>32</m:cn>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math>. This is equivalent to more zeros near 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>z</m:ci>
	    <m:cn>-1</m:cn>
	  </m:apply>
	</m:math> for each (
	<m:math>
	  <m:apply>
	    <m:plus/>
	    <m:ci>Z</m:ci>
	    <m:cn>1</m:cn>
	  </m:apply>
	</m:math>) factor than when 
	<m:math>
	  <m:apply>
	    <m:eq/>
	    <m:ci>Z</m:ci>
	    <m:apply>
	      <m:times/>
	      <m:apply>
		<m:divide/>
		<m:cn>1</m:cn>
		<m:cn>2</m:cn>
	      </m:apply>
	      <m:apply>
		<m:plus/>
		<m:ci>z</m:ci>
		<m:apply>
		  <m:inverse/>
		  <m:ci>z</m:ci>
		</m:apply>
	      </m:apply>
	    </m:apply>
	  </m:apply>
	</m:math> is used.
      </para>

      <para 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="sec3para3">
	The 
	<m:math>
	  <m:ci>
	    <m:msup><m:mn>2</m:mn><m:mi>nd</m:mi></m:msup>
	  </m:ci>
	</m:math> order factor in 
	<m:math>
	  <m:apply>
	    <m:ci type="fn">
	      <m:msub><m:mi>P</m:mi><m:mi>t</m:mi></m:msub>
	    </m:ci>
	    <m:ci>Z</m:ci>
	  </m:apply>
	</m:math> now produces terms from 
	<m:math>
	  <m:ci>
	    <m:msup><m:mi>z</m:mi><m:mn>6</m:mn></m:msup>
	  </m:ci>
	</m:math> to 
	<m:math>
	  <m:ci>
	    <m:msup><m:mi>z</m:mi><m:mn>-6</m:mn></m:msup>
	  </m:ci>
	</m:math> and the 
	<m:math>
	  <m:ci>
	    <m:msup><m:mn>3</m:mn><m:mi>rd</m:mi></m:msup>
	  </m:ci>
	</m:math> order factor produces terms from 
	<m:math>
	  <m:ci>
	    <m:msup><m:mi>z</m:mi><m:mn>9</m:mn></m:msup>
	  </m:ci>
	</m:math> to 
	<m:math>
	  <m:ci>
	    <m:msup><m:mi>z</m:mi><m:mn>-9</m:mn></m:msup>
	  </m:ci>
	</m:math>. Hence the filters become 13 and 19 tap filters,
	although 2 taps of each are zero and the outer two taps of the
	19-tap filter are very small (
	<m:math>
	  <m:apply>
	    <m:mo>≈</m:mo>
	    <m:apply>
	      <m:power/>
	      <m:cn>10</m:cn>
	      <m:cn>-4</m:cn>
	    </m:apply>
	  </m:apply>
	</m:math>). 
      </para>

      <para 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="sec3para4">
	<cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="figure11" strength="7"/> shows the wavelets and
	frequency responses of the 13,19-tap filters, obtained by
	substituting <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq41" strength="7"/> into <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq40" strength="7"/>. Note the smoother wavelets and
	scaling function and the much lower sidelobes in the frequency
	responses from these higher order filters.
      </para>

      <figure 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="figure11">
	<media xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" type="image/png" src="figure11.png"/>
	<caption xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
	  Impulse responses and frequency responses of the 4-level
	  tree of near-balanced 13,19-tap filters.
	</caption>
      </figure>

      <para 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="sec3para5">
	<cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="figure12" strength="7"/> demonstrates that the
	near balanced properties of <cnxn xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" target="eq40" strength="7"/>
	are preserved in the high order filters.
      </para>

      <figure 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="figure12">
	<media xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/" type="image/png" src="figure12.png"/>
	<caption xmlns:md="http://cnx.rice.edu/mdml/0.4" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:bib="http://bibtexml.sf.net/">
	  Impulse responses and frequency responses of the 4-level
	  tree of near-balanced 19,13-tap filters.
	</caption>
      </figure>

      <para 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="sec3para6">
	There are many other types of wavelets with varying features
	and complexities, but we have found the examples given to be
	near optimum for image compression.
      </para>
    </section>
  </content>
</document>
