<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <!--Converted with LaTeX2HTML 98.1p1 release (March 2nd, 1998) originally by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds * revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan * with significant contributions from: Jens Lippmann, Marek Rouchal, Martin Wilck and others --> <HTML> <HEAD> <TITLE>Hierarchical Wiener filtering</TITLE> <META NAME="description" CONTENT="Hierarchical Wiener filtering"> <META NAME="keywords" CONTENT="vol2"> <META NAME="resource-type" CONTENT="document"> <META NAME="distribution" CONTENT="global"> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> <LINK REL="STYLESHEET" HREF="vol2.css"> <LINK REL="next" HREF="node332.html"> <LINK REL="previous" HREF="node330.html"> <LINK REL="up" HREF="node328.html"> <LINK REL="next" HREF="node332.html"> </HEAD> <BODY > <!--Navigation Panel--> <A NAME="tex2html5578" HREF="node332.html"> <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="icons.gif/next_motif.gif"></A> <A NAME="tex2html5575" HREF="node328.html"> <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="icons.gif/up_motif.gif"></A> <A NAME="tex2html5569" HREF="node330.html"> <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="icons.gif/previous_motif.gif"></A> <A NAME="tex2html5577" HREF="node1.html"> <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="icons.gif/contents_motif.gif"></A> <BR> <B> Next:</B> <A NAME="tex2html5579" HREF="node332.html">Adaptive filtering from the</A> <B> Up:</B> <A NAME="tex2html5576" HREF="node328.html">Noise reduction from the</A> <B> Previous:</B> <A NAME="tex2html5570" HREF="node330.html">The Wiener-like filtering in</A> <BR> <BR> <!--End of Navigation Panel--> <H2><A NAME="SECTION002063000000000000000"> </A> <A NAME="sec_filt_3"> </A> <BR> Hierarchical Wiener filtering </H2> In the above process, we do not use the information between the wavelet coefficients at different scales. We modify the previous algorithm by introducing a prediction <I>w</I><SUB><I>h</I></SUB> of the wavelet coefficient from the upper scale. This prediction could be determined from the regression [<A HREF="node370.html#antonini">2</A>] between the two scales but better results are obtained when we only set <I>w</I><SUB><I>h</I></SUB> to <I>W</I><SUB><I>i</I>+1</SUB>. Between the expectation coefficient <I>W</I><SUB><I>i</I></SUB> and the prediction, a dispersion exists where we assume that it is a Gaussian distribution: <BR> <DIV ALIGN="CENTER"> <!-- MATH: \begin{eqnarray} P(W_i/w_h) = \frac{1}{\sqrt{2\pi}T_i}e^{-\frac{(W_i- w_h)^2}{2T_i^2}} \end{eqnarray} --> <TABLE ALIGN="CENTER" CELLPADDING="0" WIDTH="100%"> <TR VALIGN="MIDDLE"><TD NOWRAP ALIGN="RIGHT"><IMG WIDTH="300" HEIGHT="92" ALIGN="MIDDLE" BORDER="0" SRC="img799.gif" ALT="$\displaystyle P(W_i/w_h) = \frac{1}{\sqrt{2\pi}T_i}e^{-\frac{(W_i- w_h)^2}{2T_i^2}}$"></TD> <TD> </TD> <TD> </TD> <TD WIDTH=10 ALIGN="RIGHT"> (14.84)</TD></TR> </TABLE></DIV> <BR CLEAR="ALL"><P></P> <P> The relation which gives the coefficient <I>W</I><SUB><I>i</I></SUB> knowing <I>w</I><SUB><I>i</I></SUB> and <I>w</I><SUB><I>h</I></SUB> is: <BR> <DIV ALIGN="CENTER"> <!-- MATH: \begin{eqnarray} P(W_i/w_i \mbox{ and } w_h) = \frac{1}{\sqrt{2\pi}\beta_i} e^{-\frac{(W_i-\alpha_i w_i)^2}{2\beta_i^2}} \frac{1}{\sqrt{2\pi}T_i} e^{-\frac{(W_i-w_h)^2}{2T_i^2}} \end{eqnarray} --> <TABLE ALIGN="CENTER" CELLPADDING="0" WIDTH="100%"> <TR VALIGN="MIDDLE"><TD NOWRAP ALIGN="RIGHT"><IMG WIDTH="553" HEIGHT="92" ALIGN="MIDDLE" BORDER="0" SRC="img800.gif" ALT="$\displaystyle P(W_i/w_i \mbox{ and } w_h) = \frac{1}{\sqrt{2\pi}\beta_i} e^{-\f... ...i w_i)^2}{2\beta_i^2}} \frac{1}{\sqrt{2\pi}T_i} e^{-\frac{(W_i-w_h)^2}{2T_i^2}}$"></TD> <TD> </TD> <TD> </TD> <TD WIDTH=10 ALIGN="RIGHT"> (14.85)</TD></TR> </TABLE></DIV> <BR CLEAR="ALL"><P></P> with: <BR> <DIV ALIGN="CENTER"> <!-- MATH: \begin{eqnarray} \beta_i^2 = \frac{S_i^2B_i^2}{S^2 + B_i^2} \end{eqnarray} --> <TABLE ALIGN="CENTER" CELLPADDING="0" WIDTH="100%"> <TR VALIGN="MIDDLE"><TD NOWRAP ALIGN="RIGHT"><IMG WIDTH="140" HEIGHT="77" ALIGN="MIDDLE" BORDER="0" SRC="img801.gif" ALT="$\displaystyle \beta_i^2 = \frac{S_i^2B_i^2}{S^2 + B_i^2}$"></TD> <TD> </TD> <TD> </TD> <TD WIDTH=10 ALIGN="RIGHT"> (14.86)</TD></TR> </TABLE></DIV> <BR CLEAR="ALL"><P></P> and: <BR> <DIV ALIGN="CENTER"> <!-- MATH: \begin{eqnarray} \alpha_i = \frac{S_i^2}{S_i^2+B_i^2} \end{eqnarray} --> <TABLE ALIGN="CENTER" CELLPADDING="0" WIDTH="100%"> <TR VALIGN="MIDDLE"><TD NOWRAP ALIGN="RIGHT"><IMG WIDTH="138" HEIGHT="77" ALIGN="MIDDLE" BORDER="0" SRC="img802.gif" ALT="$\displaystyle \alpha_i = \frac{S_i^2}{S_i^2+B_i^2}$"></TD> <TD> </TD> <TD> </TD> <TD WIDTH=10 ALIGN="RIGHT"> (14.87)</TD></TR> </TABLE></DIV> <BR CLEAR="ALL"><P></P> <P> This follows a Gaussian distribution with a mathematical expectation: <BR> <DIV ALIGN="CENTER"> <!-- MATH: \begin{eqnarray} W_i = \frac{T_i^2}{B_i^2+T_i^2+Q_i^2} w_i + \frac{B_i^2}{B_i^2+T_i^2+Q_i^2} w_h \end{eqnarray} --> <TABLE ALIGN="CENTER" CELLPADDING="0" WIDTH="100%"> <TR VALIGN="MIDDLE"><TD NOWRAP ALIGN="RIGHT"><IMG WIDTH="412" HEIGHT="77" ALIGN="MIDDLE" BORDER="0" SRC="img803.gif" ALT="$\displaystyle W_i = \frac{T_i^2}{B_i^2+T_i^2+Q_i^2} w_i + \frac{B_i^2}{B_i^2+T_i^2+Q_i^2} w_h$"></TD> <TD> </TD> <TD> </TD> <TD WIDTH=10 ALIGN="RIGHT"> (14.88)</TD></TR> </TABLE></DIV> <BR CLEAR="ALL"><P></P> with: <BR> <DIV ALIGN="CENTER"> <!-- MATH: \begin{eqnarray} Q_i^2 = \frac{T_i^2B_i^2}{S_i^2} \end{eqnarray} --> <TABLE ALIGN="CENTER" CELLPADDING="0" WIDTH="100%"> <TR VALIGN="MIDDLE"><TD NOWRAP ALIGN="RIGHT"><IMG WIDTH="119" HEIGHT="77" ALIGN="MIDDLE" BORDER="0" SRC="img804.gif" ALT="$\displaystyle Q_i^2 = \frac{T_i^2B_i^2}{S_i^2}$"></TD> <TD> </TD> <TD> </TD> <TD WIDTH=10 ALIGN="RIGHT"> (14.89)</TD></TR> </TABLE></DIV> <BR CLEAR="ALL"><P></P><I>W</I><SUB><I>i</I></SUB> is the barycentre of the three values <I>w</I><SUB><I>i</I></SUB>, <I>w</I><SUB><I>h</I></SUB>, 0 with the weights <I>T</I><SUB><I>i</I></SUB><SUP>2</SUP>, <I>B</I><SUB><I>i</I></SUB><SUP>2</SUP>, <I>Q</I><SUB><I>i</I></SUB><SUP>2</SUP>. The particular cases are: <UL> <LI>If the noise is large ( <!-- MATH: $S_i \ll B_i$ --> <IMG WIDTH="83" HEIGHT="41" ALIGN="MIDDLE" BORDER="0" SRC="img805.gif" ALT="$S_i \ll B_i$">) and even if the correlation between the two scales is good (<I>T</I><SUB><I>i</I></SUB> is low), we get <!-- MATH: $W_i \rightarrow 0$ --> <IMG WIDTH="78" HEIGHT="41" ALIGN="MIDDLE" BORDER="0" SRC="img806.gif" ALT="$W_i \rightarrow 0$">. <LI>if <!-- MATH: $B_i \ll S_i \ll T$ --> <IMG WIDTH="132" HEIGHT="41" ALIGN="MIDDLE" BORDER="0" SRC="img807.gif" ALT="$B_i \ll S_i \ll T$"> then <!-- MATH: $W_i \rightarrow w_i$ --> <IMG WIDTH="90" HEIGHT="41" ALIGN="MIDDLE" BORDER="0" SRC="img808.gif" ALT="$W_i \rightarrow w_i$">. <LI>if <!-- MATH: $B_i \ll T_i \ll S$ --> <IMG WIDTH="131" HEIGHT="41" ALIGN="MIDDLE" BORDER="0" SRC="img809.gif" ALT="$B_i \ll T_i \ll S$"> then <!-- MATH: $W_i \rightarrow w_i$ --> <IMG WIDTH="90" HEIGHT="41" ALIGN="MIDDLE" BORDER="0" SRC="img810.gif" ALT="$W_i \rightarrow w_i$">. <LI>if <!-- MATH: $T_i \ll B_i \ll S$ --> <IMG WIDTH="131" HEIGHT="41" ALIGN="MIDDLE" BORDER="0" SRC="img811.gif" ALT="$T_i \ll B_i \ll S$"> then <!-- MATH: $W_i \rightarrow w_h$ --> <IMG WIDTH="94" HEIGHT="41" ALIGN="MIDDLE" BORDER="0" SRC="img812.gif" ALT="$W_i \rightarrow w_h$">. </UL> <P> At each scale, by changing all the wavelet coefficients <I>w</I><SUB><I>i</I></SUB> of the plane by the estimate value <I>W</I><SUB><I>i</I></SUB>, we get a Hierarchical Wiener Filter. The algorithm is: <DL COMPACT> <DT>1. <DD>Compute the wavelet transform of the data. We get <I>w</I><SUB><I>i</I></SUB>. <DT>2. <DD>Estimate the standard deviation of the noise <I>B</I><SUB>0</SUB> of the first plane from the histogram of <I>w</I><SUB>0</SUB>. <DT>3. <DD>Set i to the index associated with the last plane: <I>i</I> = <I>n</I><DT>4. <DD>Estimate the standard deviation of the noise <I>B</I><SUB><I>i</I></SUB> from <I>B</I><SUB>0</SUB>. <DT>5. <DD> <!-- MATH: $S_i^2 = s_i^2 - B_i^2$ --> <I>S</I><SUB><I>i</I></SUB><SUP>2</SUP> = <I>s</I><SUB><I>i</I></SUB><SUP>2</SUP> - <I>B</I><SUB><I>i</I></SUB><SUP>2</SUP> where <I>s</I><SUB><I>i</I></SUB><SUP>2</SUP> is the variance of <I>w</I><SUB><I>i</I></SUB><DT>6. <DD>Set <I>w</I><SUB><I>h</I></SUB> to <I>W</I><SUB><I>i</I>+1</SUB> and compute the standard deviation <I>T</I><SUB><I>i</I></SUB>of <I>w</I><SUB><I>i</I></SUB> - <I>w</I><SUB><I>h</I></SUB>. <DT>7. <DD> <!-- MATH: $W_i = \frac{T_i^2}{B_i^2+T_i^2+Q_i^2} w_i + \frac{B_i^2}{B_i^2+T_i^2+Q_i^2} w_h$ --> <IMG WIDTH="329" HEIGHT="62" ALIGN="MIDDLE" BORDER="0" SRC="img814.gif" ALT="$W_i = \frac{T_i^2}{B_i^2+T_i^2+Q_i^2} w_i + \frac{B_i^2}{B_i^2+T_i^2+Q_i^2} w_h$"><DT>8. <DD><I>i</I> = <I>i</I> - 1. If <I>i</I> > 0 go to 4 <DT>9. <DD>Reconstruct the picture </DL> <P> <HR> <!--Navigation Panel--> <A NAME="tex2html5578" HREF="node332.html"> <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="icons.gif/next_motif.gif"></A> <A NAME="tex2html5575" HREF="node328.html"> <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="icons.gif/up_motif.gif"></A> <A NAME="tex2html5569" HREF="node330.html"> <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="icons.gif/previous_motif.gif"></A> <A NAME="tex2html5577" HREF="node1.html"> <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="icons.gif/contents_motif.gif"></A> <BR> <B> Next:</B> <A NAME="tex2html5579" HREF="node332.html">Adaptive filtering from the</A> <B> Up:</B> <A NAME="tex2html5576" HREF="node328.html">Noise reduction from the</A> <B> Previous:</B> <A NAME="tex2html5570" HREF="node330.html">The Wiener-like filtering in</A> <!--End of Navigation Panel--> <ADDRESS> <I>Petra Nass</I> <BR><I>1999-06-15</I> </ADDRESS> </BODY> </HTML>