Abstract:
A method and apparatus for enhancing a d-dimensional digital signal by taking advantage of regular geometrical structures. The invention comprises a multiscale redundant grouping lifting ( 102 ), which iteratively computes grouping arrays and bandelet signals with a redundant grouping lifting. A second step makes an enhancement ( 103 ) of bandelet signals. A third step is an inverse multiscale redundant grouping lifting ( 104 ) which iteratively updates an enhanced average signal with an inverse redundant grouping lifting that takes in input enhanced bandelet signals. It outputs an enhanced signal. The invention also comprises a subband grouping bandelet enhancement which incorporates a subband decomposition and reconstruction. It includes a super-resolution process which increases the signal resolution by computing an output enhanced signal on an output sampling grid that is larger than the input sampling grid. It also includes restoration systems that invert degradation operators with grouping bandelet enhancements.

Description:
BACKGROUND OF INVENTION 
       [0001]    The invention relates generally to a d-dimensional signal enhancement method, apparatus and computer program, and in particular to a method, apparatus and computer program useful for enhancing d-dimensional signals. Sounds are examples of one-dimensional signals, images are examples of two-dimensional signals. Three-dimensional signals may correspond to video sequences or to three-dimensional block of data such as seismic data or medical imaging data. Signal enhancement includes enhancing the signal resolution with a super-resolution process and enhancing the signal values with a signal restoration. Enhancement is different from compression which either maintains or degrades the signal values in order to construct a compact binary code. 
         [0002]    Signal restoration is a process that takes an input digital signal and improves the signal values by removing noise components and by suppressing existing distortions introduced by some prior transformation or degradation process such as a blurring or a signal compression process. Sharpening the signal by removing a blur is a signal restoration as well as a removal of compression artifacts or any additive noise. In seismic signal processing, restoring the reflectivity values from measured seismic data is an another example of signal restoration. Signal super-resolution is a process that improves the signal resolution by adding new sample values to the input signal. This is performed by refining the signal sampling grid and estimating the new signal sample values. An image zooming that increases the image size by refining the image sampling grid is a super-resolution process. For video sequences, deinterlacing processes are also super-resolution processes. Interlaced images include only either the odd or the even rows of the full image. A deinterlacing is a super-resolution process which refines the sampling grid by adding the missing even or odd rows of samples for each interlaced image. Super-resolution for video sequences may also be a scaling that increases the size of each spatial image by adding more pixels (samples). Conversion of standard television images (PAL or NTSC) to high definition television standard includes such a scaling. A restoration process often needs to be integrated with a super-resolution process to improve the signal resolution while removing noises and distortions. 
         [0003]    Signal restoration and super-resolution take advantage of a signal regularity. If the input signal values have regular variations, additive noise can be suppressed with a local averaging. Similarly, new sample values can be calculated with a local interpolation. Linear estimators as well as linear interpolations have been thoroughly studied and used in signal processing. Yet, these processes introduce large errors in the neighborhood of sharp transitions such as image edges. Non-linear restoration processes have been introduced to adapt the local averaging to the local signal regularity. Redundant wavelet thresholding processes are examples of such efficient non-linear estimators as described in D. Donoho and I. Johnstone, “Ideal spatial adaptation via wavelet shrinkage,” Biometrika, vol. 81, pp. 425-455, December 1994. For multidimensional signals, wavelet procedures do not take advantage of existing geometrical signal regularity. Sparse spike inversion is another example of non-linear signal restoration procedure used for seismic signal processing to restore the spikes of the reflectivity by minimizing the 1 1  norm of the restored signal. However, such procedures do not either take advantage of existing geometric signal regularity in the seismic data. 
         [0004]    A multidimensional signal may have locally a sharp transition in one-direction while varying regularly in another direction. Taking advantage of such anisotropic geometric regularity is at the core of geometric enhancement processes. For video sequences, motion compensation processes are examples of anisotropic geometric regularization in time. Linear restoration processes with motion compensation have been used to suppress noise from video sequences, with a time regularization performed with a linear filter. Such a linear filter blurs the sharp time transitions of the video. To limit this blurring the linear filter often has an impulse response with a fast decay which limits the averaging and hence limits the noise removal. To remove more noise by taking advantage of the signal regularity over large domains while preserving sharp transitions requires to use an adaptive non-linear regularization. Such adaptive restorations can be implemented with wavelet transforms. 
         [0005]    Motion compensated wavelet transforms have been used to compress video sequences with lifting transformations along motion threads as in U.S. Pat. No. 6,782,051. Motion threads are obtained by following the motion in time. However, the purpose of these lifting schemes is to compress and not to enhance the signal. As a consequence critically sampled lifting schemes are used, to decompose the signal with a non-redundant lifting. Redundant lifting that compute oversampled transformations are more efficient for signal enhancement. 
         [0006]    To restore sharp signal transitions, a super-resolution process can also use anisotropic signal geometric regularity. Adaptive interpolations can be calculated in the directions in which 
       SUMMARY OF THE INVENTION 
       [0007]    It is a primary object of this invention to devise a method and means to enhance d-dimensional digital signals by taking advantage of the regularity of their geometrical structures with bandelet coefficients calculated with a flexible multiscale geometric grouping. Multiscale groupings are not necessarily parallel, do not require any segmentation and are well adapted to corners and junctions. For super-resolution, multiscale grouping bandelets are computed on an output sampling grid that is larger than the input sampling grid of the input signal. The signal enhancement includes a signal restoration which removes distortions and noise with an enhancement process applied to bandelet coefficients. 
         [0008]    The invention provides an incoming signal that has sample values associated to points of a d-dimensional input sampling grid, d being an integer at least equal to 1. The invention computes an enhanced signal on a d-dimensional output sampling grid. An ordering is defined between the points of the output sampling grid. Following this order any point is “before” or “after” another point of the output sampling grid. An average signal defined on the output sampling grid is calculated with a sampling grid adjustment. Its value on a sampling point that is in the input sampling grid is equal to the incoming signal value and its value on other points is undefined. 
         [0009]    The invention includes a multiscale redundant grouping lifting applied on the average signal. It is implemented by iteratively increasing a scale parameter, and for each scale deriving a grouping array, where this grouping array associates to each sample of the average signal a match sample located before with respect to the ordering of points of the output sampling grid. For each scale, it also updates the average signal and derives a bandelet signal with a redundant grouping lifting. 
         [0010]    The invention also includes a step of computing an enhanced bandelet signal at each scale and an enhanced average signal with an enhancement process applied to the bandelet signal at each scale and to the average signal obtained at the end of the last iteration of the previous step. 
         [0011]    The invention also includes an inverse multiscale redundant grouping lifting, which is implemented by iteratively decreasing a scale parameter, and for each scale updating the enhanced average signal with an inverse redundant grouping lifting that takes in input an enhanced bandelet signal at this scale. The enhanced average signal derived at the end of this iteration is the enhanced digital signal. These different steps that transform of an incoming signal into an enhanced digital signal are called a grouping bandelet enhancement. 
         [0012]    A redundant grouping lifting updates the values of the average signal and at each scale computes a new bandelet signal defined on the same output sampling grid. It thus multiplies by two the number of samples. This redundancy improves the signal enhancement. To minimize the number of operations, the redundant grouping lifting can update the average-signal and derive a bandelet signal with averages and differences of pairs of average signal samples associated by a grouping array. 
         [0013]    The sampling grid adjustment step of the invention can output a weight array defined on the output sampling grid, whose values indicate points of the output sampling grid that are not in the input sampling grid. The redundant grouping lifting of the invention then computes averages and differences according to this weight array values. The weight array values is also adjusted by the redundant grouping lifting. In an exemplary embodiment weights of points associated by the grouping array are added. 
         [0014]    The redundant grouping lifting can also compute averages and differences that are normalized by the weight array values. With this normalization the bandelet signal values are inner products of the incoming signals with bandelets of unit norm, which improves the stability of the multiscale redundant grouping lifting transform. This is particularly important for noise removal. 
         [0015]    At each scale, the grouping array associates points by pairs and allows several points to be grouped with a single one for junctions or meeting points. Any state of the art procedure may be used to compute such a grouping array. In an exemplary embodiment described herein, at each scale a grouping array is derived from a previous scale grouping array with a block matching. The block matching computes a distance of blocks of average signal samples in the neighborhoods of pairs of points, and associates points which minimize this distance. For video sequences, computing a grouping array may correspond to computing displacements in time of points. 
         [0016]    The present invention includes a bandelet enhancement process that enhances bandelet signals to remove noise and amplify some signal components. In an exemplary embodiment, this enhancement process includes thresholdings. A thresholding sets to zero the smallest coefficients mostly dominated by the noise and hence removes parts of the noise. Thresholding bandelet coefficients performs an adaptive averaging with multiscale groupings, as long as the signal variations are dominated by the noise. This non-linear thresholding preserves sharp signal transitions. 
         [0017]    In super-resolution processing, the output sampling grid is strictly larger than the input sampling grid. Deinterlacing an interlaced video signal is an example of super-resolution processing wherein the input sampling grid is an interlaced video grid and the output sampling grid is a progressive grid. The output enhanced signal is a deinterlaced video signal defined on the progressive grid. 
         [0018]    Prior to the multiscale redundant grouping lifting the invention can also include a step decomposing an input digital signal into subband signals. These subband signals correspond to incoming signals, each of which are enhanced by the grouping bandelet enhancement of the present invention, which outputs an enhanced subband signal. An output enhanced signal is then reconstructed from these enhanced subband signals. These different steps that transform, of an input signal into an enhanced digital signal with a subband decomposition and grouping bandelet enhancements define a subband grouping bandelet enhancement. 
         [0019]    In video sequences, if the subband decomposition is performed in space for each spatial image and if the grouping bandelet enhancement is performed in time with groupings that relates images points at different time, then the resulting bandelet signal values are inner product of the input video with a spatio-temporal bandelet whose elongation in time follows the time groupings. Thresholding such bandelet signal values performs an adaptive signal regularization simultaneously in space and time. The subband decomposition can be chosen to be a wavelet decomposition. Wavelets are particular well adapted to remove noise from piecewise regular signals and preserve sharp transitions. 
         [0020]    The present invention includes a restoration procedure that inverts degradations produced by operators such as convolution operators. In an exemplary embodiment, the incoming signal is computed as the output of an approximate inverse degradation operator applied to an input signal. This approximate inverse often amplifies the noise that is then removed with the grouping bandelet enhancement of the present invention or with the subband grouping bandelet enhancement of the present invention. 
         [0021]    The present invention also includes a method for enhancing a plurality of input signals. The method includes the steps of initializing a plurality of updated signals with the plurality of input signals and iteratively computing a plurality of incoming signals by transforming each of this plurality of updated signals with a restoration operator. It derives a plurality of enhanced signals with the grouping bandelet enhancement of the present invention or with the subband grouping bandelet enhancement of the present invention. A plurality of output signals is derived from this plurality of enhanced signals when an iteration criteria is met. Otherwise the method updates the plurality of updated signals with this plurality of enhanced signals. This method applies to improve seismic signal processing for single stack or multistack sparse inversion for a plurality of input signals that are single stack or multiple stacks seismic signals. 
         [0022]    The invention also includes a method for enhancement of one-dimensional signals such as audio signals, farther comprising transforming an input one-dimensional digital with a time-frequency decomposition into a time-frequency image, which is enhanced by the grouping bandelet enhancement of the present invention. An output enhanced one-dimensional signal is computed from this enhanced time-frequency with an inverse time-frequency transform. These time-frequency images are computed with any state of the art transform such as a window Fourier transform or a continuous wavelet transform. This enhancement preserves time-frequency geometric structures by grouping and enhancing the multiscale structures of the time-frequency signal representation. 
         [0023]    The invention also includes a signal enhancement apparatus, comprising computer means arranged to carry out a method according to any one of the methods of the present invention. 
         [0024]    The invention also includes a computer program product, comprising instructions to carry out a method according to any one of the methods of the present invention, when the program is run in a computer processing unit. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0025]    The foregoing and other objects of this invention, the various features thereof, as well as the invention itself, may be more fully understood from the following description, when read together with the accompanying drawings in which: 
           [0026]      FIG. 1  shows, in block diagram form, an exemplar embodiment of the invention which takes in input a d-dimensional signal and computes an enhanced output d-dimensional signal, with a grouping bandelet enhancement. 
           [0027]      FIG. 2  shows, in block diagram form, an exemplary configuration of a multiscale redundant grouping lifting on J=3 scales. 
           [0028]      FIG. 3  shows, in block diagram form, an exemplary configuration of an elementary processing unit at a scale 2 j  of a multiscale redundant grouping lifting. 
           [0029]      FIG. 4  shows, in block diagram form, an exemplary configuration of an inverse multiscale redundant grouping lifting on J=3 scales. 
           [0030]      FIG. 5  shows, in block diagram form, an exemplary configuration of an elementary processing unit at a scale 2 j  an inverse multiscale redundant grouping lifting. 
           [0031]      FIG. 6  shows, in block diagram form, an exemplary embodiment of the invention with a subband grouping bandelet enhancement. 
           [0032]      FIG. 7  shows, in block diagram form, an exemplary configuration of an inverse degradation process including a grouping bandelet enhancement or a subband grouping bandelet enhancement. 
           [0033]      FIG. 8  shows, in block diagram form, an exemplary configuration of an enhancement of a plurality of input signals by iterating on grouping bandelet enhancement or a subband grouping bandelet enhancement. 
           [0034]      FIG. 9  shows, in block diagram form, an exemplary configuration of an enhancement of an input one-dimensional signal with a grouping bandelet enhancement of the signal time-frequency transform. 
       
    
    
     DETAILED DESCRIPTION 
       [0035]    The formalism of the mathematical expressions in the following is well known to those skilled in the art.  FIG. 1  shows a system exemplifying the present invention. It takes in input a d-dimensional digitized signal S. This input signal S is specified by its values over a d-dimensional sampling grid          ⊂           d  having a total of N samples points. Each sampling point is written m=(m 1 , . . . , m d )∈          where each m k  is an integer, and the corresponding signal value is S[m]. Audio signals are examples of 1-dimensional signals, images are examples of 2-dimensional signals, and video image sequences are examples of 3-dimensional signals. The system of  FIG. 1  outputs an enhanced signal {tilde over (S)} that is defined on an output sampling grid           such that          ⊂         , which has a total of Ñ≧N samples. In super-resolution applications,           is strictly larger that          . In an exemplary embodiment for video deinterlacing,           is an interlaced 3-dimensional grid and           is the corresponding progressive 3-dimensional grid having twice more rows than          . In some other restoration applications           may be equal to          . 
         [0036]    The sampling grid adjustment ( 101 ) takes in input the digitized signal S and outputs a signal A and optimally a weight array W of positive coefficients both defined on the output sampling grid          . The weight array specifies the location of missing coefficients if they exist. For all m∈         , if m∈          then A[m]=S[m] and W[m]=1, otherwise if m is not in           then A[m]=NULL and W[m]=0. 
         [0037]    An ordering is defined on the Ñ samples of          . We write the ordering parameter 1≦t≦Ñ and {o(t)} 1≦t≦Ñ  is the ordered sequence of the Ñ samples of          . If m=o(t) and p=o(u) with t&gt;u then we say that p is before m and m after p. Any ordering may be chosen in the present invention. As an example, for d=2 the input sampling grid           may be a rectangular grid of points (m 1 , m 2 ) for which 0≦m 1 &lt;M 1  and 0≦m 2 &lt;M 2 . These N=M 1 M 2  samples can be ordered by rows (m 1 , m 2 )=o(m 2 +m 1 M 2 ) or by columns (m 1 , m 2 )=o(m 1 +m 2 M 1 ) or any other order such as a zig-zag order along the image diagonal lines or a random ordering. As another example, for d=3,           may be a cube of points (m 1 , m 2 , m 3 ) with 0≦m 1 &lt;M 1 , 0≦m 2 &lt;M 2  and 0≦m 3 &lt;M 3 . For a video, if m 3  is the time parameter, then for any fixed time m 3 =t 0  then any spatial ordering can be used for the samples (m 1 , m 2 , t 0 ). For a video, in a preferred embodiment the time order has priority over the spatial order, which means that if m 3 &lt;m′ 3  then (m 1 , m 2 , m 3 ) is before (m′ 1 , m′ 2 , m′ 3 ) with respect to this ordering. For general 3-dimensional block of data such as in seismic or medical imaging, any order may be chosen between the sampling points. 
         [0038]    The multiscale redundant grouping lifting ( 102 ) takes in input the average signal A and the weight array W and computes a transformation over J scales where J≧1 is an integer. The processor ( 102 ) outputs multiscale grouping arrays (G j ) 1≦j≦J , bandelet signals (B j ) 1≦j≦J  and an updated average signal A and its weight array W, which are all arrays defined over the output sampling grid          . For each m∈         , G j [m] specifies a match point q∈          which is associated to m at the scale 2 j . In an exemplary implementation G j [m]=q−m. The coefficient B j [m] in an inner product between the original signal S[p] and a bandelet b j,m [p] defined over the grid          : B j [m]=                   S,b j,m           . The enhancement ( 103 ) takes in input multiscale bandelet signals (B j ) 1≦j≦J  and the average signal A and outputs enhanced bandelet signals ({tilde over (B)} j ) 1≦j≦J  and an enhanced average signal Ã. The enhancement calculation is performed according to a particular application such as noise removal. The inverse multiscale redundant grouping lifting processor ( 104 ) takes in input enhanced bandelet signals ({tilde over (B)} j ) 1≦j≦J , the enhanced average signal Ã with its weight array W, the multiscale grouping arrays (G j ) 1≦j≦J  and it outputs the enhanced signal {tilde over (S)}. 
         [0039]      FIG. 2  shows, in block diagram form, an exemplary configuration of the multiscale redundant grouping lifting ( 102 ) over J=3 scales. It takes in input the average signal A and optionally its weight array W and it outputs bandelet signals (B j ) 1≦j≦J , an updated average signal A with its optional weight array W and multiscale grouping arrays (G j ) 1≦j≦J  for J=3. The grouping array G 0  in input of the grouping estimation ( 201 ) can be initialized to 0: for all m∈          G 0 [m]=0, or it can be initialized to any other value and j=0. This processor is implemented with a cascade of J=3 pairs of grouping estimation modules and redundant grouping lifting processors, ( 201 )-( 202 ), ( 203 )-( 204 ), ( 205 )-( 206 ) at scales 2 j =2 1 , 2 2 , 2 3 . These modules are particular instances of the grouping estimation ( 301 ) and redundant grouping lifting ( 302 ) given in  FIG. 3  at a generic scale 2 j . The grouping estimation processors ( 201 ), ( 203 ) and ( 205 ) output respectively the multiscale grouping arrays G 1 , G 2  and G 3 . The redundant grouping lifting processors ( 202 ), ( 204 ) and ( 206 ) take input respectively G 1 , G 2  and G 3 , and output respectively the bandelet signals B 1 , B 2  and B 3 . The input average and weight arrays A and W are input in ( 202 ) which outputs new values for A and W which go in input of ( 204 ) which outputs new values for A and W which go in input of ( 206 ), which outputs new values for A and W, which optionally go in input of ( 207 ). The optional average normalization ( 207 ) outputs new values for A. 
         [0040]      FIG. 3  shows, in block diagram form, an exemplary configuration of a pair of grouping estimation module ( 301 ) and redundant grouping lifting module ( 302 ) at a generic scale 2 j . The grouping estimation ( 301 ) takes in input a signal A a weight array W and a grouping array G j  at the scale 2 j  and it outputs a new grouping array G j+1  at the next scale 2 j+1 . The redundant grouping lifting processor ( 302 ) takes in input the signal A and the weight array W together with G j+1  calculated by ( 301 ) and it outputs B j+1  and new values for A and W, at the scale 2 j+1 . 
         [0041]      FIG. 4  shows, in block diagram form, an exemplary configuration of the inverse multiscale redundant grouping lifting ( 104 ) over J=3 scales levels. It takes in input enhanced bandelet signals ({tilde over (B)} j ) 1≦j≦J , multiscale grouping arrays (G j ) 1≦j≦J , and an enhanced average signal Ã with optionally a weight array W, and it outputs a reconstructed signal {tilde over (S)}. The optional inverse normalization ( 401 ) takes in input Ã and W and updates the values of Ã. The inverse redundant grouping lifting processor ( 402 ) takes in input G 3 , {tilde over (B)} 3 , Ã and W and output new values for Ã and W which are in input of ( 403 ) together with G 2  and {tilde over (B)} 2 . The inverse redundant grouping lifting processor ( 403 ) outputs new values for Ã and W which are in input of ( 404 ) together with G 1  and {tilde over (B)} 1 , and ( 404 ) outputs new values for Ã and W, and the overall output is {tilde over (S)}=Ã. The modules ( 402 ), ( 403 ), ( 404 ) are particular instances at scales 2 j =2 1 , 2 2 , 2 3 , of the inverse redundant grouping lifting processor ( 501 ). 
         [0042]      FIG. 5  shows, in block diagram form, an exemplary configuration of an inverse redundant grouping lifting processor ( 501 ) at a generic scale 2 j . It takes in input a grouping array G j+1 , bandelet signals B j+1 , an average signal Ã and its weight W at a scale 2 j+1 , and ( 501 ) outputs new values for Ã and W at the finer scale 2 j . 
         [0043]      FIG. 6  shows another system exemplifying the present invention. It takes in input a digitized signal X defined over d-dimensional sampling grid           having a total of N samples points. The system of  FIG. 6  outputs an enhanced signal {tilde over (X)} that is defined on an output sampling grid           such that          ⊂         , which has a total of Ñ≧N samples. The subband decomposition ( 601 ) decomposes the input signal X into K subband signals (S k ) 1≦k≦K  which are equal to a filtering of X with bandpass filters (h k ) 1≦k≦K . Each S k  is defined on the sampling grid           and has N samples. The subband signals (S k ) 1≦k≦K  are transformed by grouping bandelet enhancement modules illustrated in ( 602 ), ( 603 ) and ( 604 ), which output enhanced subband signals ({tilde over (S)} k ) 1≦k≦K . Each {tilde over (S)} k  is defined on the output sampling grid          . The inverse subband decomposition ( 605 ) reconstructs a signal {tilde over (X)} defined on the sampling grid           from the subband signals ({tilde over (S)} k ) 1≦k≦K , by filtering them with reconstruction filters ({tilde over (h)} k ) 1≦k≦K . 
       Grouping Estimation 
       [0044]    The grouping estimation module ( 301 ) takes a scale parameter j, a grouping array G j , an input signal A and its weight array W, all of them defined on the sampling grid           and it outputs a grouping array G j+1  at the next scale 2 j+1 . For each m∈         , G j+1 [m] specifies the coordinates of a point p which is a best match for m located before m∈          in the sense of the order o(t). In an exemplary embodiment G j+1 [m]=p−m. 
         [0045]    Any state of the art grouping estimation process may be used. In an exemplary embodiment, G j+1  is calculated from G j  with an optional block matching procedure. For each m∈         , in an exemplary embodiment ( 301 ) computes q=m+G j [m] and p=q+G j [q]. In yet another embodiment p=m+2G j [m]. The best match for m is selected among a set of candidates in a neighborhood            j (p) of p, which depends upon the scale 2 j . The best match for m is defined as a point p′∈           j (p) such that the values of A in the neighborhood of p′ are the most similar to the values of A in the neighborhood of m, for a given distance. 
         [0046]    If           is strictly larger than          , in an exemplary embodiment non existing signal sample points are computed with an interpolation from neighbors and stored in Ã. For all m∈          if W[m]&gt;0 then Ã[m]=A[m]. Otherwise if W[m]=0 then Ã[m] is calculated with any state of the art interpolation from neighborhood samples Ã[l] for which W[l]&gt;0. 
         [0047]    A block matching isolates a block of signal values around m, defined by a set of displacements τ∈B relatively to m, where B is a data block. In an exemplary embodiment, the block matching is performed with an 1 r  distance. A best match is obtained by minimizing 
         [0000]    
       
         
           
             
               
                 
                   
                     ∑ 
                     
                       τ 
                       ∈ 
                       β 
                     
                   
                    
                   
                     
                        
                       
                         
                           
                             A 
                             ~ 
                           
                            
                           
                             [ 
                             
                               m 
                               - 
                               τ 
                             
                             ] 
                           
                         
                         - 
                         
                           
                             A 
                             ~ 
                           
                            
                           
                             [ 
                             
                               k 
                               - 
                               τ 
                             
                             ] 
                           
                         
                       
                        
                     
                     τ 
                   
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
           
         
       
     
         [0000]    among all k∈           j (p). We find p′∈           j (p) where the minimum is reached and set G j+1 [m]=p′−m. In exemplary embodiments, τ=1 or τ=2. The distance (1) may be replaced by any distance over blocks of data. 
         [0048]    In an exemplary embodiment the data block B is chosen to be a hyper-rectangle of width w=(w 1 , . . . , w d ), which includes all τ=(τ 1 , . . . , τ d ) with |τ i |≦w i . For block matching over videos, in an exemplary embodiment the data block is a 2-dimensional rectangle that remains in the same spatial image, which corresponds to a hyper-rectangle with w 3 =0 in time. 
         [0049]    In an exemplary embodiment the neighborhood            j (p) is a “past hyper-rectangle” of p of width w′=(w′ 1 , . . . , w′ d ). Such a “past hyper-rectangle” is defined as a set of all k that are located before p in the sense of the order o(t), and such that |p i −k i |&lt;w′ i  for 1≦i≦d. This may be half of the hyper-rectangle. For example, in an image (d=2) which is ordered row by row, a “past hyper-rectangle” of p is the rectangle k=(k 1 , k 2 ) with −w′ 1 ≦k 1 &lt;p 1  and |k 2 −p 2 |&lt;w′ 2  or k 1 =p 1  and −w′ 2 ≦k 2 &lt;p 2 . In a video sequence where the spatial image are ordered by rows and the time order has priority, a “past hyper-rectangle” is the rectangle with either k 3 &lt;p 3  and |k 1 −p 1 |&lt;w′ 1  and |k 2 −p 2 |&lt;w′ 2  or k 3 =p 3  and −w′ 1 ≦k 1 &lt;p 1  and |k 2 −p 2 |&lt;w′ 2  or k 3 =p 3  and k 1 =p 1  and −w′ 2 ≦k 2 &lt;p 2 . In this case the grouping array may associate points of the same image, which corresponds to a spatial geometry, or it may group points in images at different times which corresponds to a time movement. To impose a grouping array that gives a time movement, one can restrict            j (p) to the set k with k 3 &lt;p 3  and |k 1 −p 1 |&lt;w′ 1  and |k 2 −p 2 |&lt;w′ 2 . 
         [0050]    In an exemplary embodiment of super-resolution applications, a neighborhood            j (p) may include only points k such that W[k]≠0. This guaranties that the matching point has a data value. An exemplary embodiment is            j (p) equal to the restriction of a “past hyper-rectangle” for which W is non-zero. 
         [0051]    The neighborhood            j (p) may depend upon the scale 2 j . In yet another exemplary embodiment for j&gt;0 the neighborhood            j (p) is reduced to {p} in which case for j&gt;0 no block matching needs to be computed since there is a single possible match. In this case G j+1 [m]=G j [m]+G j [q] with q=m+G j [m]. This reduces the overall complexity but the resulting multiscale grouping array is less precise. 
       Redundant Grouping Lifting 
       [0052]    The redundant grouping lifting ( 302 ) takes in input a signal A at the scale 2 j  together with its weight array W and the grouping array G j+1 , and outputs at the next scale 2 j+1  the bandelet signals B j+1  and new values for A and W at the scale 2 j+1 . 
         [0053]    The module ( 302 ) scans all sample points of the sampling grid           in the order specified by o(t). For all integer t from 1 to Ñ, let p=o(t) and q=p+G j+1 [p], this module computes 
         [0000]    
       
      
       V=W[p]+W[q].  
      
     
         [0000]    In an exemplary embodiment, a non-normalized redundant grouping lifting is calculated with averages and differences as follow, which require few operations. If V&gt;0 then 
         [0000]    
       
         
           
             
               
                 B 
                 
                   j 
                   + 
                   1 
                 
               
                
               
                 [ 
                 p 
                 ] 
               
             
             = 
             
               
                 A 
                  
                 
                   [ 
                   q 
                   ] 
                 
               
               - 
               
                 A 
                  
                 
                   [ 
                   p 
                   ] 
                 
               
             
           
         
       
       
         
           
             
               A 
                
               
                 [ 
                 q 
                 ] 
               
             
             = 
             
               
                 
                   
                     
                       A 
                        
                       
                         [ 
                         p 
                         ] 
                       
                     
                     + 
                     
                       A 
                        
                       
                         [ 
                         q 
                         ] 
                       
                     
                   
                   2 
                 
                  
                 
                   
 
                 
                  
                 
                   W 
                    
                   
                     [ 
                     q 
                     ] 
                   
                 
               
               = 
               
                 V 
                 . 
               
             
           
         
       
     
         [0000]    Otherwise if V=0 then B j+1 [p]=0 and A[q]=NULL. In this case, the average normalization module ( 207 ) is omitted. If          =         , this redundant grouping lifting does not require to use a weight array and compute W[q] since we always have V&gt;0. 
         [0054]    In yet another exemplary embodiment of this module, a normalized redundant grouping lifting is calculated with weighted averages and normalized differences. If V&gt;0 then 
         [0000]    
       
         
           
             
               
                 B 
                 
                   j 
                   + 
                   1 
                 
               
                
               
                 [ 
                 p 
                 ] 
               
             
             = 
             
               
                 ( 
                 
                   
                     A 
                      
                     
                       [ 
                       q 
                       ] 
                     
                   
                   - 
                   
                     A 
                      
                     
                       [ 
                       p 
                       ] 
                     
                   
                 
                 ) 
               
                
               
                 
                   
                     
                       W 
                        
                       
                         [ 
                         p 
                         ] 
                       
                     
                      
                     
                       W 
                        
                       
                         [ 
                         q 
                         ] 
                       
                     
                   
                 
                 
                   V 
                 
               
             
           
         
       
       
         
           
             
               A 
                
               
                 [ 
                 q 
                 ] 
               
             
             = 
             
               
                 
                   
                     W 
                      
                     
                       [ 
                       p 
                       ] 
                     
                   
                    
                   
                     A 
                      
                     
                       [ 
                       p 
                       ] 
                     
                   
                 
                 + 
                 
                   
                     W 
                      
                     
                       [ 
                       q 
                       ] 
                     
                   
                    
                   
                     A 
                      
                     
                       [ 
                       q 
                       ] 
                     
                   
                 
               
               V 
             
           
         
       
       
         
           
             
               W 
                
               
                 [ 
                 q 
                 ] 
               
             
             = 
             
               V 
               . 
             
           
         
       
     
         [0000]    Otherwise if V=0 then B j+1 =[p]=0 and A[q]=NULL. Each bandelet coefficient B j+1 [p] obtained with a normalized redundant grouping lifting is an inner product of the incoming signal S with bandelets of norm 1. This normalization stabilizes the multiscale redundant grouping lifting, which is important for noise removal. If the redundant grouping lifting is normalized then the optional average normalization module ( 207 ) updates for all m∈          A[m]=A[m]√{square root over (W[m])} 
       Inverse Redundant Grouping Lifting 
       [0055]    The inverse redundant grouping lifting processor ( 501 ) takes in input at the scale 2 j+1  the grouping array G j+1 , the bandelet signals B j+1 , the signal A and the corresponding weights W and computes at the scale 2 j  the signal A and its corresponding weights W. 
         [0056]    If the redundant grouping lifting is normalized then the optional inverse average normalization module ( 401 ) sets for all m∈          Ã[m]=Ã[m]/√{square root over (W[m])}. For a non-normalized redundant grouping lifting the optional inverse average normalization module ( 401 ) is not used. 
         [0057]    The processor ( 501 ) scans all points of           in the reverse order specified by o(t). For all t decreasing from Ñ to 1, let p=o(t) and q=p+G j+1 [p]. It computes 
         [0000]    
       
      
       V=W[q]−W[p] 
      
     
         [0000]    If (W[p]=0 and A[p]=NULL) then A[p]=A[q].
 
If (W[p]=0 and V≠0 and A[p]≠NULL) then A[p]=(A[q]+A[p])/2.
 
If (W)≠0 and V=0) then W[q]=V.
 
If (W[p]≠0 and V≠0) the inversion depends if the multiscale redundant grouping lifting was normalized or not. For a non-normalized redundant grouping lifting, module ( 501 ) computes
 
         [0000]    
       
         
           
             C 
             = 
             
               
                 A 
                  
                 
                   [ 
                   q 
                   ] 
                 
               
               - 
               
                 
                   
                     B 
                     j 
                   
                    
                   
                     [ 
                     p 
                     ] 
                   
                 
                 2 
               
             
           
         
       
       
         
           
             
               A 
                
               
                 [ 
                 p 
                 ] 
               
             
             = 
             
               
                 
                   A 
                    
                   
                     [ 
                     p 
                     ] 
                   
                 
                 + 
                 C 
               
               2 
             
           
         
       
       
         
           
             
               A 
                
               
                 [ 
                 q 
                 ] 
               
             
             = 
             
               
                 A 
                  
                 
                   [ 
                   q 
                   ] 
                 
               
               + 
               
                 
                   
                     B 
                     j 
                   
                    
                   
                     [ 
                     p 
                     ] 
                   
                 
                 2 
               
             
           
         
       
       
         
           
             
               W 
                
               
                 [ 
                 q 
                 ] 
               
             
             = 
             
               V 
               . 
             
           
         
       
     
         [0000]    If          =          then this inverse redundant grouping lifting does not require to use a weight array, because we always have V&gt;0. 
         [0058]    For a normalized redundant grouping lifting, module ( 501 ) computes 
         [0000]    
       
         
           
             C 
             = 
             
               
                 A 
                  
                 
                   [ 
                   q 
                   ] 
                 
               
               - 
               
                 
                   
                     B 
                     j 
                   
                    
                   
                     [ 
                     p 
                     ] 
                   
                 
                  
                 
                   
                     V 
                   
                   
                     
                       
                         W 
                          
                         
                           [ 
                           q 
                           ] 
                         
                       
                        
                       
                         W 
                          
                         
                           [ 
                           p 
                           ] 
                         
                       
                     
                   
                 
               
             
           
         
       
       
         
           
             
               A 
                
               
                 [ 
                 p 
                 ] 
               
             
             = 
             
               
                 
                   A 
                    
                   
                     [ 
                     p 
                     ] 
                   
                 
                 + 
                 C 
               
               2 
             
           
         
       
       
         
           
             
               A 
                
               
                 [ 
                 q 
                 ] 
               
             
             = 
             
               
                 A 
                  
                 
                   [ 
                   q 
                   ] 
                 
               
               + 
               
                 
                   
                     B 
                     j 
                   
                    
                   
                     [ 
                     p 
                     ] 
                   
                 
                  
                 
                   
                     
                       W 
                        
                       
                         [ 
                         p 
                         ] 
                       
                     
                   
                   
                     
                       VW 
                        
                       
                         [ 
                         q 
                         ] 
                       
                     
                   
                 
               
             
           
         
       
       
         
           
             
               W 
                
               
                 [ 
                 q 
                 ] 
               
             
             = 
             
               V 
               . 
             
           
         
       
     
       Enhancement 
       [0059]    The enhancement ( 103 ) takes in input the bandelet signals (B j ) 1≦j≦J  and A computes enhanced bandelet signals ({tilde over (B)} j ) 1≦j≦J  and an enhanced average signal Ã. The enhancement can be implemented with any state of the art linear or non-linear operator. 
         [0060]    In an exemplary embodiment, a enhancement is computed by applying diagonal operators to bandelet signals B j [m]. A diagonal operator applied to a bandelet coefficient B j [m] computes θ j (B j [m]) where θ j (x) is a linear or non-linear function. Thresholding functions have been shown to be particularly effective to remove noise. A hard thresholding function is defined by ρ T (x)=x if |x|&gt;T and ρ T (X)=O otherwise and a soft thresholding function is defined by ρ T (x)=x−sign(x)T if |x|&gt;T and ρ T (x)=O otherwise. Other thresholding functions that attenuate coefficients depending upon their amplitude may be used as well. The function θ j  can be chosen to be a θ j (x)=a j ρ T (x) where a j  is an amplification factor that can depend on the noise level. Any other state of the art non-linear attenuation or amplification functions may be used. 
         [0061]    In another exemplary embodiment of the enhancement module ( 103 ), non-diagonal enhancement operators are used. The amplification factor may depend upon m: a j [m] is calculated depending upon the relative amplitude of the bandelet coefficient B j [m] and other “neighborhood” bandelet coefficients B j′ [m′] for m′ close to m and j′ close to j. Such enhancement operators are used to enhance the wavelet coefficients of medical images. 
       Subband Decomposition and Inverse 
       [0062]    The subband decomposition processor ( 601 ) takes in input a signal X and computes subband signals by convolutions with band-pass filters h k : 
         [0000]    
       
         
           
             
               ∀ 
               
                 m 
                 ∈ 
                  
               
             
             , 
             
               
                 
                   S 
                   k 
                 
                  
                 
                   [ 
                   m 
                   ] 
                 
               
               = 
               
                 
                   X 
                   * 
                   
                     
                       h 
                       k 
                     
                      
                     
                       [ 
                       m 
                       ] 
                     
                   
                 
                 = 
                 
                   
                     ∑ 
                     
                        
                       ∈ 
                        
                     
                   
                    
                   
                     
                       X 
                        
                       
                           
                       
                       [ 
                        
                       ] 
                     
                      
                     
                       
                         
                           h 
                           k 
                         
                          
                         
                           [ 
                           
                             m 
                             - 
                             p 
                           
                           ] 
                         
                       
                       . 
                     
                   
                 
               
             
           
         
       
     
         [0000]    This convolution may be calculated with any state of the art fast algorithm. 
         [0063]    The subband signals (S k ) 1≦k≦K  are transformed by grouping bandelet enhancement modules illustrated in ( 602 ), ( 603 ) and ( 604 ), which output enhanced subband signals ({tilde over (S)} k ) 1≦k≦K , Each {tilde over (S)} k  is defined on the output sampling grid          . If the output grid           is equal to the input sampling grid           then the inverse subband decomposition ( 605 ) computes 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       ∀ 
                       
                         m 
                         ∈ 
                         
                           
                              
                             ~ 
                           
                            
                           
                             
                               X 
                               ~ 
                             
                              
                             
                               [ 
                               m 
                               ] 
                             
                           
                         
                       
                     
                     = 
                     
                       
                         
                           ∑ 
                           
                             k 
                             = 
                             1 
                           
                           K 
                         
                          
                         
                           
                             
                               S 
                               ~ 
                             
                             k 
                           
                           * 
                           
                             
                               
                                 h 
                                 ~ 
                               
                               k 
                             
                              
                             
                               [ 
                               m 
                               ] 
                             
                           
                         
                       
                       = 
                       
                         
                           ∑ 
                           
                             k 
                             = 
                             1 
                           
                           K 
                         
                          
                         
                           
                             ∑ 
                             
                               p 
                               ∈ 
                                
                             
                           
                            
                           
                             
                               
                                 
                                   S 
                                   ~ 
                                 
                                 k 
                               
                                
                               
                                 [ 
                                 p 
                                 ] 
                               
                             
                              
                             
                               
                                 
                                   h 
                                   ~ 
                                 
                                 k 
                               
                                
                               
                                 [ 
                                 
                                   m 
                                   - 
                                   p 
                                 
                                 ] 
                               
                             
                           
                         
                       
                     
                   
                   , 
                 
               
               
                 
                   ( 
                   2 
                   ) 
                 
               
             
           
         
       
     
         [0000]    where ({tilde over (h)} k ) 1≦k≦K  is a family of perfect reconstruction filters associated to the decomposition filters (h k ) 1≦k≦K  defined on          . The convolutions (2) may be calculated with any state of the art fast algorithm. In an exemplary embodiment, the transfer function of these filters           and           satisfy: 
         [0000]    
       
         
           
             
               ∀ 
               ω 
             
             , 
             
               
                 
                   ∑ 
                   
                     k 
                     = 
                     1 
                   
                   K 
                 
                  
                 
                   
                     
                       
                         
                           h 
                           ~ 
                         
                         k 
                       
                       ^ 
                     
                      
                     
                       [ 
                       ω 
                       ] 
                     
                   
                    
                   
                     
                       
                         h 
                         k 
                       
                       ^ 
                     
                      
                     
                       [ 
                       ω 
                       ] 
                     
                   
                 
               
               = 
               1. 
             
           
         
       
     
         [0064]    Any state of the art subband filtering procedure may be used to implement the subband decomposition processor ( 601 ) and its inverse in ( 605 ). The subband decomposition may correspond to a non-sampled wavelet dyadic transform or wavelet packet transform or any state of the art subband filtering. An exemplary embodiment of ( 601 ) and ( 605 ) is obtained with a separable translation invariant oversampled wavelet transform. In d=2 dimensions, a separable wavelet transform may have 3 orientations at each scales so it outputs K=3 L subbands over L scales. A fast “algorithme à trous” computes these subband signals with a cascade of separable filtering with conjugate mirror filters. Haar and Daubechies perfect reconstruction filters are examples of such filters. In d=3 dimensions, for videos, one may use a 3 dimensional wavelet transform with 7 “orientations” at each scale. For video sequences, in another exemplary embodiment, one can use a two-dimensional subband filtering for each spatial image, such as a wavelet subband decomposition, and no subband decomposition in time. 
         [0065]    If           is different than           and if there is more than one subband, then the present invention imposes that          =U l=1   L            where each grid           is obtained with a translation of the sampling grid           by an integer vector τ l , with τ 1 =0. We denote by          =         +τ l  the grid of points m+τ l  for all m∈         . 
         [0066]    In an exemplary embodiment in dimension d, for a rectangular image grid          , if           is a sampling grid with {α i } 1≦i≦d  more rows in each direction, then there are L=α 1 α 2  . . . α d  vectors τ l  and subgrids          . In yet another exemplary embodiment for a quincunx oversampling,           has twice more samples than           and there are only L=2 two vectors τ 1 =0 and τ 2 =(1, 1, . . . , 1). 
         [0067]    A subband signal {tilde over (S)} k  is decomposed as a union of signals {tilde over (S)} l   k  equal to the restriction of {tilde over (S)} k  on the sub-grid           of          . The inverse subband decomposition ( 605 ) computes for each 1≦l≦L 
         [0000]    
       
         
           
             
               
                 
                   
                     ∀ 
                     
                       m 
                       ∈ 
                       
                          
                         ~ 
                       
                     
                   
                   , 
                   
                     
                       
                         X 
                         ~ 
                       
                        
                       
                         [ 
                         
                           m 
                           + 
                           
                             τ 
                             l 
                           
                         
                         ] 
                       
                     
                     = 
                     
                       
                         ∑ 
                         
                           k 
                           = 
                           1 
                         
                         K 
                       
                        
                       
                         
                           ∑ 
                           
                             p 
                             ∈ 
                              
                           
                         
                          
                         
                           
                             
                               
                                 S 
                                 ~ 
                               
                               k 
                             
                              
                             
                               [ 
                               
                                 p 
                                 + 
                                 
                                   τ 
                                   l 
                                 
                               
                               ] 
                             
                           
                            
                           
                             
                               
                                 
                                   h 
                                   ~ 
                                 
                                 k 
                               
                                
                               
                                 [ 
                                 
                                   m 
                                   - 
                                   p 
                                 
                                 ] 
                               
                             
                             . 
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   3 
                   ) 
                 
               
             
           
         
       
     
         [0000]    This sum of convolutions is performed with any state of the art fast algorithm. 
         [0068]    With a minor modification of the subband grouping bandelet enhancement illustrated in  FIG. 6 , the multiscale grouping estimation is only performed once on the input image X, which reduces the computational complexity. In an exemplary embodiment, the first subband signal S 1  is equal to X. The multiscale grouping array (G j ) 1≦j≦J  computed by the grouping bandelet enhancement module ( 602 ) is then used by the grouping bandelet enhancement modules of all other subband images S k , illustrated in ( 603 ) and ( 604 ). The multiscale redundant grouping lifting modules ( 102 ) incorporated in these bandelet enhancement modules use the multiscale grouping array (G j ) 1≦j≦J  calculated from X and thus does not need to compute again the grouping estimation modules ( 201 ), ( 203 ) and ( 205 ). 
       Grouping Bandelet Inverse Degradation 
       [0069]      FIG. 7  illustrates an exemplary embodiment of the present invention to restore signals degraded by an operator O to which is added noise. The approximate inverse degradation module ( 701 ) computes a signal S=Õ −1 X where Õ −1  is an approximate inverse of O. In an exemplary embodiment, the operator O is a convolution operator Of=f*h and Õ − =f*h −1  is an approximate inverse convolution. Let ĥ and ĥ −1  be the Fourier transform of h and h −1 . The transfer function ĥ −1 (ω) is typically close to 1/ĥ(ω) when this value is not too large. The value of ĥ −1 (ω) is adjusted according to any state of the art formula such as a Wiener filtering formula. Such a deconvolution can amplify the noise which is then partly removed by module ( 702 ). This module may either be a subband grouping bandelet enhancement or a grouping bandelet enhancement. 
       Sparse Bandelet Restoration 
       [0070]    The present invention includes a signal enhancement procedure which takes in input a plurality of related signals (X i ) 1≦i≦I  where I is an integer larger or equal to 1. Examples of such signals are different color frequency bands of an image or multiple stacks of seismic data. Let O i  be the degradation operator for each X i . For a seismic inversion O i  is a convolution with a particular seismic wavelet h i . 
         [0071]      FIG. 8  gives an exemplary embodiment of a system that performs such a signal enhancement. The iteration decision module ( 801 ) takes in input the signals (X i ) 1≦i≦I  and first initializes the iteration by setting a counter n=1 and the output signals S n   i =X i . 
         [0072]    The restoration operator module ( 802 ) takes in input the signals ({tilde over (X)} n   i ) 1≦i≦I  and applies to each {circumflex over (X)} n   i  an operator that depends upon O i  and on the input data X i . It outputs the signal S n   i . In an exemplary embodiment, one can set S n   i ={tilde over (X)} n   i +μ i O i *(X i −O i {tilde over (X)} n   i ) where μ i  is a constant and O i * is the adjoint of the operator O i . The module ( 803 ) is either a grouping bandelet enhancement or a subband grouping bandelet enhancement. It computes the bandelet signals B j   i  of each S n   i . When I=1, in an exemplary embodiment the enhancement of these bandelet signals is performed with a thresholding operator that may be a hard or any soft thresholding procedure. When I&gt;1 the thresholding may depend upon the values of B j   i ′[m] for different 1≦i′≦I. 
         [0073]    The module ( 803 ) outputs enhanced signals ({tilde over (S)} n   i ) 1≦i≦I  which are inputs in the decision module ( 801 ). In an exemplary embodiment, the multiscale grouping arrays computed in the multiscale redundant grouping lifting processor ( 102 ) of the module ( 803 ) are only computed during the first iteration n=1. The resulting multiscale grouping arrays are used in the multiscale redundant grouping lifting processor ( 102 ) for all other iterations, which reduces computations since the grouping estimation modules ( 201 ), ( 203 ) and ( 205 ) are not used in these other iterations. 
         [0074]    Any stopping iteration criteria may be used to stop the iterations in the iteration decision module ( 801 ). In an exemplary embodiment of ( 801 ) the number of iterations n is limited to a prescribed value P, in yet another embodiment the iterations continue as long as the error Σ i=1   I α i ∥O i{tilde over (S)}   n   i −X i ∥ 2 &gt;ε where ε is a predefined threshold. If the stopping iteration criteria is not met and if n≠1 then {tilde over (X)} n   i ={tilde over (S)} n   i  where ({tilde over (S)} n   i ) 1≦i≦I  is the second input of the iteration to decision module ( 801 ). If the stopping iteration criteria is met then {tilde over (X)} i ={tilde over (S)} n   i  and the process is stopped. 
         [0075]    The restoration process of  FIG. 8  can be used to compute a reflectivity signal from single stacks or multiple stacks seismic images or 3-dimensional seismic blocks of data. 
       Time-Frequency Multiscale Grouping Enhancement 
       [0076]      FIG. 9  illustrates an exemplary embodiment of the present invention for one-dimensional signals X[m]. The time-frequency transform ( 901 ) takes in input X and outputs a time-frequency image S[m 1 , m 2 ] sampled on a grid          . Any state of the art time-frequency transform may be used. Window Fourier transforms or continuous wavelet transforms are examples of such time-frequency transforms. For a window Fourier transform m 1  is a time index and m 2  is a frequency index. For a wavelet transform m 1  is a time index and m 2  is a scale index. In an exemplary embodiment the scale index m 2  corresponds to a scale parameter s=a m     2    where a is a chosen parameter, and m 1  corresponds to a time location t=bm 1 a m     2    where b is a chosen parameter. 
         [0077]    The grouping bandelet enhancement module ( 902 ) suppresses noise and can compute a super-resolution image {tilde over (S)} by taking advantage of the multiscale geometric regularity of the input time-frequency image. An inverse time-frequency transform ( 903 ) applied to {tilde over (S)} computes an output signal {tilde over (X)}. If the module ( 901 ) is a continuous wavelet transform then ( 903 ) implements an inverse continuous wavelet transform. If ( 901 ) is a window Fourier transform then ( 903 ) is an inverse window Fourier transform. This grouping bandelet enhancement over a time-frequency transform is particularly efficient for removing noises from audio signals. 
         [0078]    While a detailed description of presently exemplary embodiments of the invention has been given above, various alternatives, modifications, and equivalents will be apparent to those skilled in the art. For example, while different components of the grouping estimation module of the present invention are described herein as performing certain specific functions, one skilled in the art will appreciate that other components or circuits in the service module may perform some or all of such functions without varying from the spirit of the invention. Therefore, the above description should not be taken as limiting the scope of the invention which is defined by the appended claims.