METHOD AND SYSTEM FOR ENHANCING AN IMAGE
Background
This invention relates generally to the field of signal processing and in particular to the application driven enhancement of a signal by scaling and adjustment of the wavelet transform coefficients associated with that signal.
A computer system typically incorporates a monitor for the display of a signal representative of an image. In such a system, the image displayed on the monitor is frequently a digital representation of an analog image. To obtain such an image, the computer system divides the analog image into a large number of picture elements or "pixels," each of which corresponds to a small portion of the original image. This causes a loss of resolution in the displayed image. It is beneficial, therefore, to enhance the displayed image so as to render the digital representation of the image more faithful to the original analog image. For signals representative of a video image, these pixels are treated as forming a rectangular array consisting of rows and columns. The location of a pixel within this rectangular array corresponds to the location of the portion of the original image associated with that pixel. Thus, by referring to the row and column it occupies within the rectangular array, one can uniquely identify a pixel and determine its location within the original image.
A result of arranging pixels into a rectangular array is that each pixel has adjacent neighbors. A pixel in the interior of the array has four adjacent neighbors. Except for those four pixels marking the comers of the array, a pixel at an edge has three adjacent neighbors. The four pixels marking the comers of the array each have two adjacent neighbors.
In a digital representation of an image, each pixel is assigned a numerical value. For a monochrome image, this value typically corresponds to the brightness of the portion of the image corresponding to that pixel. For a color image, this value typically corresponds to the amount of red, green or blue in the portion of the image corresponding to that pixel.
The arrangement of pixels into an array and the assignment of values to each pixel as described above enables a computer system for performing image enhancement to treat the rectangular array of pixels as samples^x,-, yt) of a two-dimensional function fix, y) which maps from a domain consisting of the set of all points in the image (the spatial domain) to a range consisting of the set of all brightness values in the image.
Each object within an image can be divided into edge pixels which correspond to the edges of objects with the image and interior pixels which correspond to the interiors of objects within the image. The edge pixels define the overall shape of the object whereas the interior pixels combine to show the texture of the object. Where the shape and location of an object are of interest, a computer system for image enhancement can amplify the edge pixels or attenuate the interior pixels, thereby rendering the edges more conspicuous. A prerequisite for a successful image enhancing system of this type is that the computer system be capable of identifying an edge.
A pixel can generally be classified as an edge pixel by observing the difference between the value associated with that pixel and the values associated with its neighbors. For example, if each pixel in a row has a high value and each pixel in an adjacent row has a low value, one can infer that the row containing that pixel forms a horizontal edge and that therefore every pixel in that row is an edge pixel. Conversely, if a pixel has a value similar to those of all its adjacent neighbors, one can infer that that pixel is an interior pixel.
Since the rectangular array of pixels can be considered samples ;, •,) of a two- dimensional function fix, y), the concept of searching for sudden changes in the pixel values can be likened to the process of searching for local maxima of the magnitude of the gradient vector Vf(x,y) associated with that function. The direction of the edge can then be associated with the direction of the gradient vector Vf(x,y) . An image enhancement system that identifies edge pixels by using the gradient vector in this way is said to operate in the spatial domain.
Having located an edge, typical spatial domain image enhancement systems enhance that edge by, for ex.ample, rendering it in a different color or multiplying each pixel at an edge by a constant. This results in an image having an unnatural appearance resulting from enhancing only the edges of an image and leaving the remainder of the image untouched.
The image function fix, y) can also be represented by a weighted sum of complex exponentials. This alternate representation of the image, referred to as a frequency domain representation, can be obtained by performing a fast Fourier transform (FFT) on the samples fixj, yt) of the image function. In this representation, the exponent of the complex exponential corresponds to the spatial frequency of the image and the weighting coefficients, which can be complex numbers, correspond to the amount of that spatial frequency in the image. The set of coefficients forms the frequency spectrum of the image.
Since high frequency coefficients generally correspond to discontinuities or edges in an image, an image enhancement system employing the FFT can detect edges in that image by identifying high frequency components in the frequency spectrum of that image. Although the frequency spectrum obtained by performing an FFT on the original image enables an image enhancement system to detect the existence of an edge, it does not enable the system to determine where on the image the edge is located. This is because the Fourier transfoπn provides the system only with the magnitude and phase corresponding to each frequency component of the original image. Consequently, the options available in such a system for enhancing edges in an image are limited. Merely boosting the high frequency components of the transform and then evaluating the inverse transform of the result often yields an image laced with stripes or bands at unpredictable locations.
The wavelet transform, like the Fourier transfoim, provides a technique for decomposing a signal into a weighted sum of orthogonal basis functions. However, unlike the Fourier transfoim which uses complex exponentials as basis functions, the wavelet transform uses a set of basis functions, referred to as "wavelets," which can be non-zero only for a finite interval. A set of basis functions having tins property is said to have "compact support." The general theory of wavelet transforms is set forth in Daubechies, "The Wavelet Transfoim, Time-Frequency Localization and Signal
Analysis," IEEE Transactions on Information Theory, vol. 36, no. 5, Sept. 1990 which is hereby incorporated by reference. A computationally efficient process for carrying out both the wavelet transfoim and its inverse, is described in Mac A. Cody, "The Fast Wavelet Transform," Dr. Dobb 's Journal, April 1992, pp. 16-28 which is also hereby incorporated by reference.
As is the case with Fourier transforms, a local maximum of the wavelet transfoim coefficients of an image corresponds to the presence of a high frequency component in the image. Unlike the Fourier transform, however, the spatial location of that high frequency component within the image, if basis functions having compact support are used in the wavelet transform, corresponds to the location of the high frequency coefficient within the array of wavelet transform coefficients. Thus, unlike the Fourier transfoπn, the wavelet transform coefficients can cany information about both the presence of a high frequency component in the image and the location of that component within the image. In this way, the wavelet transform can perform edge detection.
Although the wavelet transform can readily locate an edge, the problem of rendering that edge conspicuous remains. Merely perturbing the wavelet transform of an image by boosting the local maxima of the wavelet transfoim coefficients can result in rendering the inverse wavelet transform so different from the original image as to be useless. Accordingly, there still exists a need in the art for employing wavelet transforms to better define edge regions in an image.
Summary of the Invention
What is necessary and desirable is a method and system for boosting the local maxima of the largest wavelet transform coefficients and then adjusting the remaining wavelet transform coefficients in such a way as to preserve the integrity of the inverse wavelet transform of the result.
The invention encompasses a signal enhancement system and method for enhancing a signal represented by its wavelet transform coefficients. This is accomplished by assigning alternative values to those wavelet transform coefficients sharing a selected property and then assigning corresponding adjustment values to those coefficients lacking the selected property. These adjustment values are chosen such that the resulting coefficients are wavelet transform coefficients of an enhanced version of the original signal. According to one aspect of the invention, alternative values are optionally assigned to the local maxima of the wavelet transform coefficients by multiplying those values by a scaling constant. This choice of a selected property tends to emphasize high frequency components in a corresponding section of the signal. However, the choice of a selected property and the manner in which an alternative value is assigned can be changed depending on what features of the signal are to be enhanced.
Similarly, the method by which the adjustment value is assigned to those coefficients lacking in the selected property can be adjusted to the particular application. For example, the adjustment value is optionally arrived at by minimizing a particular error. However, other types of error can be minimized without departing from the scope of the invention.
These and other features, aspects, and advantages of the invention will be better understood with reference to the following description and the accompanying drawings in which:
Description of the Drawings
FIG. 1 depicts the overall architecture of a computer system implementing the signal enhancement system of the invention;
FIG. 2 is a block diagram showing the signal enhancement system of the invention connected to a multistage wavelet transform filter;
FIG. 3 depicts the internal architecture of the signal enhancement system depicted in FIG. 2;
FIG. 4 shows the frequency responses of the high pass filters associated with the first two stages of the multi-stage wavelet transform filter depicted in FIG. 2;
FIG. 5 shows, in schematic form, the result of digitizing an image; and
FIG. 6 shows two signal enhancement systems as depicted in FIG. 2 connected in series.
Description of the Illustrated Embodiment
FIG. 1 depicts a signal enhancement system 60 consisting of a central processing unit ("CPU") 66 which includes a processor for executing programmed instructions. The CPU 66 is in communication with a memory unit 69. The memory unit 69 can be a volatile memory, such as RAM or it can be a non- volatile memory for long term storage of information. The CPU 66 is also in communication with: an analog to digital converter 65 connected to a signal source 68, such as a video camera, a microphone, a scanner, a photocopy machine or a facsimile machine; an output device 62, such as a monitor, speaker, or printer; and an input device, such as a keyboard, 64 for communicating instructions from a human operator to the CPU 66.
The memory unit 69 contains within it a digital representation of programmed instructions 67 for carrying out the signal enhancement method of the invention on a signal supplied by the signal source 68 and digitized by the AfD converter 65. The method to be carried out by these programmed instructions is best understood with reference to FIG. 2 which shows the signal enhancement system of the invention operating on the output of a multi-stage wavelet transform filter.
The invention begins with the creation of a digitized representation 11 of a signal hereafter referred to as the "original signal." This can be supplied to the CPU 66 by passing the output 73 of an analog image source 68 through an analog to digital converter 65. FIG. 5 shows an analog image 76 corresponding to the analog output
signal 73 of an analog signal source 68. The analog output signal 68 is digitized by an AfD converter 65 to generate an original signal 11 representative of a video image . The original signal 11 can be representetd by a rectangular array 11a of picture elements, or "pixels," arranged in rows and columns. Each pixel 74 is identifiable by its row 74R and its column 74C. Additionally, each pixel can have adjacent pixels 74N, 74S occupying the same column and adjacent pixels 74E, 74W occupying the same row.
Referring again to FIG. 2, the original signal 11 is passed through a first low-pass filter 42a and through a first high pass filter 41a. Together, the first low-pass filter 42a and the first high-pass filter 41a comprise the first wavelet transform (/' = 1) 50a of a first multistage wavelet transform filter 50. The pass bands associated with these filters are described below.
The output of the first low pass filter 42a is then passed through a second low pass filter 42b and through a second high pass filter 41b which together form the second wavelet transform (j = 2) 50b of the first multistage wavelet transfoim filter 50. The output of this second wavelet transform 50b can then be passed to succeeding wavelet transform filters 50c, 50d in the manner depicted in FIG. 2.
Meanwhile, the outputs of the high pass filters 41a, 41b, 41c, 41d are passed directly to the output of the first multistage wavelet transform filter 50. The overall output of the first multistage wavelet transform filter 50 thus includes the low frequency wavelet transform coefficients 13L from the final low pass filter 42d and as many sets of high frequency wavelet transform coefficients 13H as there are high pass filters, for example, four sets corrsponding to the four high pass filters shown in FIG. 2, 41a, 41b, 41c, 41d.
In the preferred embodiment, the multistage wavelet transform filter 50 contains four stages. The filter coefficients for each of the four low pass filters in the multistage wavelet transfoim filter 50 are given by
H, = 0.125 H3 = 0.375
H2 = 0.375 H4 = 0.125
The filter coefficients for the four high pass filters are as follows:
Stage 1 Staεe2 Stage 3 Stage 4
-2/λ, -2/λ2 -2/λ3 -2/λ4
2/λ, 2/λ
2 2/λ
3 2/λ
4 where λλ,, == 11..5500 λ
3 = 1.03 λ
2 = 1.12 λ
4 = 1.01
At each stage, the cut-off frequency for the low-pass filter and the cut-off frequency for the high-pass filter are chosen to divide the available frequency band in half as shown in FIG. 4. Thus, at the first stage 50a, the available frequency band ranges from 0 to /2f
Nyq where f
Nyq is the Nyquist frequency (equal to twice the bandwidth of the signal). Accordingly, the first high-pass filter 41a has a filter response 72 which passes frequencies from
and the first low-pass filter 42a has a filter response (not shown) which passes frequencies from 0 to l/4f
Nyq . In the second wavelet transform 50b, the available frequencies extend from 0 to l/4f
Nyq , hence the second high-pass filter 41b has a filter response 74 which passes frequencies from 1/8 f
Nyq to 1/4 f
Nyq and the low-pass filter 42b passes frequencies from 0 to l/-f
Nyq . This process of subdividing the original spread of available frequencies into sub-bands one octave wide continues with each wavelet transform in the multi-stage wavelet transform filter 50 illustrated in FIG. 2.
At the last stage, the low frequency wavelet transform coefficients 13L generated by the last low pass filter 42d are bundled with the four sets of high frequency wavelet transfoim coefficients 13H generated by the four high pass filters 41a-41d to form the output wavelet transform coefficients 13 of the multistage wavelet transform filter 50. The output wavelet transform coefficients 13 are then passed into an enhancement system 10 which assigns: alternative values to those high frequency wavelet transform coefficients 13H having a selected properly; and adjusted values to the remaining high frequency wavelet transform coefficients 13H and low frequency wavelet transform coefficients 13L of the original signal. The manner in which the enhancement system 10 assigns alternative values and adjusted values are described below with reference to FIG. 3. The enhancement system 10 generates an enhanced signal 39 which is then passed to an iteration controller 43 which can either direct the enhanced signal 39 back into the first multistage wavelet transfoim filter 50 for further enhancement or send it to an output device such as the monitor 62 shown in FIG. 1. If the iteration controller 43 directs the enhanced signal 39 back into the multistage wavelet transform filter 50, then the enhanced signal is processed by the multistage wavelet transform filter 50 in the same manner as the original signal 11.
FIG. 3 is a schematic block diagram of the enhancement system 10 of the invention. The enhancement system 10 inputs the high frequency wavelet transform coefficients 13H obtained from either the original signal 11 (as shown in FIG. 3) or from an enhanced signal 39 fed back into the multistage wavelet transform filter 50 in the manner set forth above and illustrated in FIG. 2 to a first extractor 14. The first extractor 14 then extracts from these high frequency wavelet transform coefficients 13H a table of local maxima Wj(xj) 15, where y refers to the stage associated with the particular high pass filter.
By a local maximum, we mean a wavelet transform coefficient having a magnitude in excess of the magnitudes of its neighbors. By way of example, in the video signal illustrated in FIG. 5, the extractor 14 compares the wavelet transform coefficient associated with the illustrated pixel 74 with the wavelet transform coefficients associated with the two adjacent pixels on the same column 74N,74S with which it shares a common boundary. If the magnitude of the wavelet coefficient transform associated with the illustrated pixel 74 exceeds that of its column neighbors 74N, 74S then the extractor 14 classifies that wavelet transform coefficient as a local maximum. Similarly, in another embodiment, the extractor 14 compares the illustrated pixel 74 with the wavelet transform coefficients associated with the two adjacent pixels on the same row 74W,74E with which it shares a common boundary. If the magnitude of the wavelet coefficient transform associated with the illustrated pixel 74 exceeds that of its row neighbors 74W, 74E then the extractor 14 classifies that wavelet transform coefficient as a local maximum.
The tables of local maxima 15 are then passed to a multiplier 16 for scaling by a scaling constant 17 thereby generating tables of scaled local maxima 18 for input to a swapper 20. The scaling constant 17 depends on which high pass filter 41a-41d generated the high frequency wavelet transfoim coefficients being processed by the extractor 14. In the preferred embodiment, the high frequency wavelet transfoim coefficients generated by the first high pass filter 41a are scaled by 1.6. The high frequency wavelet transform coefficients generated by the second high pass filter 41b are scaled by 1.8. The high frequency wavelet transform coefficients generated by the third high pass filter 41c and by the fourth high pass filter 41d are scaled by 2.0 and 2.5 respectively.
The swapper 20 replaces the local maxima W. xt) 15 from the high frequency wavelet transform coefficients 13H by the scaled local maxima CjW x, 18. The set of perturbed coefficients 21 thus created by the combination of the low frequency wavelet transform coefficients 13L and the output of the swapper 20 is identical to the set of wavelet transform coefficients 13 with the exception that each local maximum from the
high frequency wavelet transform coefficients 13H has been multiplied by the scaling constant 17 corresponding to the high pass filter 41a-41d that generated it.
It is .known in the art that in order for a set of coefficients {a] ,a2 ,...an } to constitute a set of valid wavelet transform coefficients, certain relationships must exist between the coefficients. These relationships, summarized in Cody and previously incorporated by reference, are as follows: For a function f(x) to be represented as a sum of weighted wavelet basis functions: f(x) = ∑akΨk (t) k the ak must satisfy: ∑α2* = l ∑ A+.= 0 for #≠ 0 k k
k k where ak is the complex conjugate of ak .
It is apparent, therefore, that if {α, ,α
2 ,...«„} are valid wavelet transform coefficients 13 satisfying the foregoing relationships, there is no guarantee that replacing any one of the
k will result in a set of coefficients which continue to satisfy the foregoing relationships. If, for example, a
2 were a local maximum, then the coefficient a
2 in the set of wavelet transform coefficients 13 would be replaced by c
}a
2 , where c
} is the scaling constant for stage j of the multi-stage wavelet transform filter 50 depicted in FIG. 2. There would then be no guarantee that the resulting set of perturbed coefficients 21, namely {a
i ,c
Ja
2 ,...a
n }, would continue to satisfy the foregoing conditions. In order to ensure that the perturbed coefficients 21 are still a valid set of wavelet transform coefficients, the wavelet transform coefficients 13 that are not local maxima W
j(x
t- 15 must be adjusted to correct for the perturbation caused by replacing the local maxima with scaled local maxima
18. This adjustment preferably avoids the loss of the signal enhancement associated with having multiplied each local maximum by the scaling constant 17.
The adjustment process begins by passing the perturbed coefficients 21 to a first multistage inverse wavelet transform filter 22 which performs the inverse of each wavelet transform stage 50a-50d in the first multistage wavelet transform filter 50. In the prefeired embodiment, the low pass filter coefficients for all four low pass filters used in the multistage inverse wavelet transform filter 22 are as follows:
H, =0.125 H3 = 0.375 H2 = 0.375 H4 = 0.125
The high pass filter coefficients for the four high pass filters used in the multistage inverse wavelet transform filter are as follows:
Stage 1 Stage2 Stage 3 Stage 4
0.0078125 i 0.0078125-λ2 0.0078125 3 0.0078125 •
0.0546850 i 0.0546850-λ2 0.0546850 λ3 0.0546850 •
0.1718750 λi 0J718750-λ2 0J718750 λ3 0J718750 -
-0.1718750 λi 0J718750-λ2 -0J 718750 λ3 -0J718750 - Λ
-0.0546850 λ, 0.0546850-λ2 -0.0546850 λ3 -0.0546850 •
-0.0078125 λ, -0.0078125-λ2 -0.0078125 λ3 -0.0078125 • Λ
where λj = 1.50 λ3 = 1.03 λ2 = 1.12 λ4 = 1.01
The output of the first multistage inverse wavelet transform filter 22 is then passed to a second multistage wavelet transform filter 24 identical to the multistage wavelet transform filter 50 shown in FIG. 2. The second multistage wavelet transform filter 24 performs the same sequence of wavelet transforms performed by the first multistage wavelet transform filter 50 as shown in FIG. 2. This results in a set of estimated coefficients 25.
It is important to note that despite the manner in which they were generated, the estimated coefficients 25 are not necessarily identical to the perturbed coefficients 21 from which they were derived. This is because the mapping provided by the wavelet transform from the spatial domain to the frequency domain is not one-to-one and onto. The mathematical theory of this aspect of the wavelet transform is discussed in Jian Lu, Signal Recovery and Noise Reduction with Wavelets, Ph.D. Thesis, June 1993, Dartmouth College, Hanover, N.H., which is hereby incorporated by reference.
A second extractor 26, identical to the first extractor 14, extracts from the estimated coefficients 25 those coefficients located at the rows and columns corresponding to the original local maxima Wj(Xj) 15. The output of the second extractor 26 is a table of estimates 27 Wj (xt ) having as many entries as there were in the table of local maxima 15. A first summer 30 substracts the entries from the table of estimates 27 from the corresponding elements of the table of local maxima 15 thereby generating an error table 31, each element of which corresponds to a sampled value of an error function ε,(x,) evaluated at the locations corresponding to the locations of the local maxima x,-.
The error table 31 corresponding to sampled values of the error function is then passed to an evaluator 32 which derives a function ε^ (x). This function is chosen such that when added to the perturbed coefficients 21, the resulting output set of wavelet transform coefficients 37 satisfies two conditions: (1) at the rows and columns coiresponding to the local maxima W.(xt) 15 of the wavelet transfoim coefficients of the original image, the output set of wavelet transform coefficients 37 contains the corresponding local maxima 15; and (2) the sum of the differences between the coefficients of the output set of wavelet transform coefficients 37 and the corresponding coefficients from the wavelet transform coefficients 13 passed to the enhancement system 10 by the multistage wavelet transform filter 50 and the rate of change of the differences between the coefficients of the output set of wavelet transform coefficients 37 and the corresponding coefficients from the wavelet transform coefficients 13 is minimized. The method used by the evaluator 32 to derive such a function ε,(x) is set forth below. Because of condition (1), we require that at those locations x; associated with the local maxima 15 of the original signal, the error function be constrained to be equal to the difference between the scaled local maximum c, Wj(χ,) 18 of the original signal and the value of the estimated coefficient 27 at the corresponding location. In other words: Zj (x, ) = cJWJ{xl) - wJ (x, ) for / = 1 to njnaxima} where x, is the ith local maximum and n maxima. is the number of local maxima at stage
J-
Condition (2) can be satisfied by minimizing, for each gap between consecutive local maxima x, and x,+], the definite integral:
where the second term of the integrand is included to prevent spurious local maxima from distorting the solution.
The above definite integral can be minimized by solving the differential equation
2 d ε;W-2 — 2 Sj(x) = 0 dx the general solution of which is: εj (x) = a exp(2 x) + β exp(-2 x)
The constants α and β are then chosen to satisfy the boundary conditions imposed by condition (1) at x,- and x/+ι . The resulting α and β are given by a Sj(x, ) exp (-2~J x,+] ) - Sj(x,+] ) expC-2"-7 x, ) exp (2--* x, - 2-Jxl+,) - exp (2--'xl+1 - 2~Jx,) and β = (ε, (*. ) - α exp(2"-/ x, )) exp(2" x, )
The output of the error function evaluator 32 is an error function ε(x) 33 which can be added to the perturbed coefficients 21 at a second summer 34. The result of this addition is a set of output wavelet transform coefficients 37 satisfying the two conditions set forth above and corresponding to an enhanced signal 39. This set of output wavelet transform coefficients 37 is then passed to a second multistage inverse wavelet transfoim filter 36 identical to the first multistage transform filter 22. The second multistage inverse wavelet transform filter 36 performs the inverse of each wavelet transfoim stage 50a-50d performed by the first multistage wavelet transform filter 50 thereby generating the enhanced signal 39. Referring now to FIG. 2, the resulting enhanced signal 39 corresponding to the original image 11 can then be directed by the iteration controller 43 to an output device such as the monitor 62 shown in FIG. 1. Alternatively, the resulting enhanced signal 39 can be fed back, by the iteration controller 43, into the first multistage wavelet transform filter as shown in FIG. 2 for further enhancement and the process repeated iteratively either a predefined number of times or until the error has been reduced below a predefined level.
The foregoing system can be used to enhance, in a variety of different ways, a one dimensional signal, such as an audio signal, or an ^-dimensional signal.
Different enhancement results can be achieved by emphasizing specific frequency bands relative to the entire signal bandwidth. For example, instead of extracting a table of local maxima, the first extractor 14 can extract wavelet transform coefficients having other selected properties. The first extractor 14 can, for example, extract a table of those coefficients exceeding a specified value or a table of those coefficients falling within a range of values. The assignment of an alternative value to the coefficients classified by the first extractor 14 as having a selected property can likewise take on many foi s. For example, instead of multiplying the coefficient by a constant 17 to obtain an alternative value 18, as depicted in FIG. 3, one could obtain an alternative value 18 by adding an offset or by convolving the selected coefficient with a predefined sequence.
For those coefficients lacking the selected property, the step of assigning an adjustment value can also be altered without departing from the scope of the invention. For example, a different integrand can be used or different boundary conditions can be imposed by the evaluator 32. When processing a signal representative of an image as shown in FIG. 5, the first extractor 14 determines whether a particular wavelet transfoim coefficient 74 is a local maximum by comparing its value by that of its adjacent neighbors, either in the same row 74R or in the same column 74C, but preferably not both. Further enhancement of the image can, however, be achieved by comparing the value of the wavelet transform coefficient 74 with values of wavelet transform coefficients in both the same row 74R and in the same column 74C. This can be implemented by passing the output of the first enhancement system 10 to a second multistage wavelet transfoim filter 52 as shown in FIG. 6. The output of the second wavelet transform filter 52 is then passed to a second enhancement system 12 similar to that shown in FIG. 2 with the exception that the first extractor 14 obtains local maxima by comparing each pixel with those adjacent pixels not used by the first extractor of the first enhancement system 10. Thus, if the first enhancement system 10 were to obtain local maxima by comparing each pixel 74 with adjacent pixels on the same row 74E, 74W, the second enhancement system 12 would obtain local maxima by comparing each pixel 74 with those adjacent pixels in the same column 74N, 74S. Conversely, if the first enhancement system 10 were to obtain local maxima by comparing each pixel 74 with adjacent pixels on the same column 74N, 74S, the second enhancement system 12 would obtain local maxima by comparing each pixel 74 with those adjacent pixels in the same row 74E, 74W.
The wavelet transform coefficients generated by the second multistage wavelet transform filter 52 are passed to a second enhancement system 12 identical to the first enhancement system 10 with the exception that the extractor associated with the second enhancement system 12 determines whether a particular wavelet transfoim coefficient 74 is a local maximum by comparing it with its neighbors in the direction orthogonal to that used by the extractor in the first enhancement system 10. For example, if the first enhancement system 10 determines whether a wavelet transform coefficient 74 is a local maximum by comparing it with its neighbors 74E, 74W in the same row 74R, the second enhancement system 12 will determine whether a particular wavelet transfoim coefficient 74 is a local maximum by comparing it with its neighbors 74N, 74S in the same column 74C. Conversely, if the first enhancement system 10 determines whether a particular wavelet transform coefficient 74 is a local maximum by comparing it with its neighbors 74N, 74S in the same column 74C, then the second enhancement system 12
will deteimine whether a particular wavelet transform coefficient 74 is a local maximum by comparing it with its neighbors 74E, 74W in the same row 74R.
It is thus seen that the invention efficiently attains the objectives set forth above, among those made apparent from the preceding description. Since certain changes may be made in the above constructions without departing from the scope of the invention, it is intended that all matter contained in the above description or shown in the accompanying drawings be interpreted as illustrative and not in a limiting sense.
It is also to be understood that the following claims are to cover all generic and specific features of the invention described herein, and all statements of the scope of the invention which, as a matter of language, might be said to fall therebetween.
Having described the invention and a preferred embodiment thereof, what is claimed as new and secured by Letter Patent is: