This invention relates to an image processing method and apparatus and an image display method and apparatus, more particularly to methods and apparatus that are useful for expanding and reducing digitized images, and for controlling edge sharpness.
Digital image expansion and reduction are processes that change the number of picture elements (pixels) in an image. These processes are often necessary. For example, an image generated in the widely used 640-by-480-pixel format may need to be expanded for display on a 1024-by-768-pixel liquid crystal screen, or reduced for display in a window occupying only part of that screen.
The pixel values in the expanded picture are determined by interpolation, which is performed by a spatial filtering operation as illustrated in FIG. 2. The horizontal axis again represents horizontal position; the vertical axis now represents the value of an interpolation filter response characteristic F(x). If p(n) and p(n+1) are two consecutive pixels in the input image, q(n) is a pixel disposed at a position between them in the output image, the distance from p(n) to p(n+1) is equal to unity, and the distance from p(n) to q(m) is equal to r, then the brightness level of pixel q(m) is calculated as follows:
q(m)=(F(r)×p(n))+(F(1−r)×p(n+1))
The filter response characteristic need not be linear. An interpolation filter with a nonlinear characteristic, as illustrated in
Japanese Unexamined Patent Application No. 9-266531 discloses a scheme that provides several filter response characteristics, as illustrated in
Problems also occur when an image is reduced by conventional methods. The quality of edges is degraded because of pixel dropout.
One object of this invention is to mitigate edge degradation when an image is expanded or reduced.
Another object is to control edge sharpness in an image.
The invention provides a method of processing an image, formed from input pixels, by the following steps:
(a) detecting pixel-to-pixel variations in the brightness levels of the input pixels in at least one direction in the image, thereby generating high spatial frequency information;
(b) setting interpolation points with a spacing that varies according to the high spatial frequency information; and
(c) generating output pixels from the input pixels by interpolation at the interpolation points.
Step (b) preferably assigns a basic value to the spacing of the interpolation points in parts of the image in which the brightness level is uniform. As for portions of the image in which the brightness level varies, step (b) may divide each such portion into a first part and a second part, reduce the interpolation spacing in the first part, and increase the interpolation spacing in the second part. Alternatively, step (b) may divide each such portion into a first part, a second part, and a third part, reduce the interpolation spacing in the first and third parts, and increase the interpolation spacing in the second part.
Step (a) includes, for example, calculating a first derivative of the brightness levels in the above-mentioned one direction. Step (a) may also include calculating a second or third derivative of the brightness levels, or performing a filtering operation to obtain a certain spatial frequency component of the image, by performing two low-pass filtering operations with different cut-off frequencies and taking the difference between the resulting two low spatial frequency components, for example.
Alternatively, step (a) may include detecting patterns of variation in the brightness levels of the input pixels. The detected patterns describe, for example, the polarity of pixel-to-pixel changes in brightness level, or the polarity and magnitude of the changes. The changes thus described may be, for example, changes in the brightness levels of three consecutive pixels, or changes in the brightness levels of five consecutive pixels.
The invention also provides a machine-readable medium storing a machine-executable program for processing an image by the invented method.
The invention moreover provides an image-processing apparatus for processing an image formed from input pixels. The apparatus includes a first processing unit that detects pixel-to-pixel variations in the brightness levels of the input pixels in at least one direction in the image, and generates high spatial frequency information; a second processing unit that sets interpolation points with a spacing varying according to the high spatial frequency information; and a third processing unit that generates output pixels from the input pixels by interpolation at the interpolation points.
The second processing unit preferably assigns a basic value to the interpolation spacing in parts of the image in which the brightness level is uniform. In processing portions of the image in which the brightness level changes, the second processing unit may divide each such portion into a first part and a second part, reduce the interpolation spacing in the first part, and increase the interpolation spacing in the second part. Alternatively, it may divide each such portion into a first part, a second part, and a third part, reduce the interpolation spacing in the first and third parts, and increase the interpolation spacing in the second part.
As high spatial frequency information, the first processing unit may calculate a first derivative of the brightness levels in the above-mentioned one direction. The first processing unit may also calculate a second or third derivative of the brightness levels, or perform a filtering operation to obtain a certain spatial frequency component of the image, by performing two low-pass filtering operations with different cut-off frequencies and taking the difference between the resulting two low spatial frequency components, for example.
Alternatively, the first processing unit may detect patterns of variation in the brightness levels of the input pixels. The detected patterns describe, for example, the polarity of pixel-to-pixel changes in brightness level, or the polarity and magnitude of the changes. The changes thus described may be, for example, changes in the brightness levels of three consecutive pixels, or changes in the brightness levels of five consecutive pixels.
The invention furthermore provides an image display apparatus for displaying an image formed from input pixels. The image display apparatus includes a memory unit that stores the brightness levels of the input pixels; a first processing unit that detects pixel-to-pixel variations in the brightness levels in at least one direction in the image, thereby generating high spatial frequency information; a second processing unit that sets interpolation points with a spacing that varies according to the high spatial frequency information; a third processing unit that generates output pixels from the input pixels by interpolation at the interpolation points; and a display unit that displays the output pixels.
The second processing unit preferably assigns a basic value to the interpolation spacing in parts of the image in which the brightness level is uniform. In processing portions of the image in which the brightness level changes, the second processing unit may divide each such portion into a first part and a second part, reduce the interpolation spacing in the first part, and increase the interpolation spacing in the second part. Alternatively, it may divide each such portion into a first part, a second part, and a third part, reduce the interpolation spacing in the first and third parts, and increase the interpolation spacing in the second part.
As high spatial frequency information, the first processing unit may calculate a first derivative of the brightness levels in the above-mentioned one direction. The first processing unit may also calculate a second or third derivative of the brightness levels, or perform a filtering operation to obtain a certain spatial frequency component of the image, by performing two low-pass filtering operations with different cut-off frequencies and taking the difference between the resulting two low spatial frequency components, for example.
Alternatively, the first processing unit may detect patterns of variation in the brightness levels of the input pixels. The detected patterns describe, for example, the polarity of pixel-to-pixel changes in brightness level, or the polarity and magnitude of the changes. The changes thus described may be, for example, changes in the brightness levels of three consecutive pixels, or changes in the brightness levels of five consecutive pixels.
Varying the spacing of the interpolation points provides a way to control edge sharpness without introducing discontinuities or other unwanted image artifacts.
Increasing the interpolation spacing mitigates the loss of edge sharpness that occurs when an image is expanded.
Decreasing the interpolation spacing mitigates the drop-out problem that occurs when an image is reduced.
Dividing an image portion into multiple parts and increasing the interpolation spacing in at least one part while decreasing the interpolation spacing in another part enables the loss-of-sharpness problem to be mitigated in edge expansion, and the drop-out problem to be mitigated in image reduction, without changing the overall expansion or reduction ratio
Use of the first, second, and third derivatives as high spatial frequency information enables continuously-varying information to be obtained by simple arithmetic operations. Filtering also enables such information to be obtained by relatively simple arithmetic operations.
Detecting patterns of variation in the brightness levels of the input pixels enables high-frequency information to be generated by simple arithmetic and logic operations. Detecting patterns in the polarity of changes over three consecutive pixels provides adequate continuity, but the continuity can be improved by also detecting the magnitude of the changes, or by detecting patterns over five consecutive pixels.
In the attached drawings:
Embodiments of the invention will be described with reference to the attached drawings, in which like parts are indicated by like reference characters.
The word ‘zoom’ will be used below as a generic term denoting any change in the number of pixels representing an image, or part of an image. Zooming may either increase the number of pixels, thereby either expanding the image, or decrease the number of pixels, thereby reducing the image. The ratio of the number of pixels after zooming to the number before zooming will be referred to as the zoom ratio. An image may be zoomed horizontally, vertically, or in both directions. Horizontal zooming is performed by interpolation as illustrated in
The first ten embodiments relate to the image display apparatus shown in FIG. 6. The apparatus comprises input terminals 1, 2 for an image signal and a synchronization (sync) signal. The image signal passes through, in sequence, an analog-to-digital converter (ADC) 3, an image pre-processor 4, a memory 5, a zoom processor 6, an image post-processor 7, and a digital-to-analog converter (DAC) 8; the processed image is then displayed by a display device 9. The operation of these component elements is controlled by a control unit 10, which receives the synchronization signal.
The input image signal is, for example, a composite video signal with luminance and chrominance components. Alternatively, the luminance and chrominance signals may be input separately, so that the input image signal comprises a pair of separate video input signals. The input image signal may also be a trio of signals for three primary colors (normally red, blue, and green).
The control unit 10 uses the synchronization signal to generate a sampling clock signal for the analog-to-digital converter 3, and to generate clock signals, timing signals, and other control signals for the other component elements.
The analog-to-digital converter 3 samples the input image signal in synchronization with the sampling clock, thereby converting the input image signal to digital data.
The image pre-processor 4 converts the digital data from the input format to the format used by the zoom processor 6, if these formats differ. For example, the image pre-processor 4 may convert a composite video signal to separate luminance and chrominance data, or to separate data for the three primary colors. The image pre-processor 4 may also process the data to adjust the brightness or contrast of the image. The processing performed by the image pre-processor 4 is independent of the zooming process that will be performed by the zoom processor 6.
The memory 5 stores the pre-processed image data temporarily. The data are written into the memory 5 in the usual image scanning sequence, each horizontal line being scanned from left to right, and the scanning lines being taken in order from top to bottom. The memory 5 should have enough capacity to store data for several scanning lines (at least two). Data are read out from the memory 5 at timings determined according to the requirements of the display device 9, not necessarily in synchronization with the sampling clock, and not necessarily in the same order as written. The image data read from the memory 5 become the input data (Pi) of the zoom processor 6.
The zoom processor 6, which constitutes the invented image-processing apparatus, detects brightness-level changes in the input image data Pi, sets interpolation points by calculating zoom ratios, and generates output image data Po by interpolation at the interpolation points, thereby zooming the image. Details will be given in the descriptions of the embodiments below.
The image post-processor 7 further processes the output image data Po by, for example, adjusting the brightness, contrast, or color saturation of the output image, or adjusting the luminance scale. These adjustments are independent of the zooming process.
The digital-to-analog converter 8 converts the post-processed image data to an analog signal or signals. The display device 9 displays the analog signal(s) as an image on a screen, scanning the screen at a rate determined by the control unit 10.
The expansion method used in the first five embodiments can be described generally as follows. The zoom processor 6 detects brightness-level variations in the input row of pixels (FIG. 7A). The information thus obtained divides the row into uniform segments (a), in each of which the brightness level remains uniform, and edges (b, c), at which the brightness level changes. The edges are further divided into first and second parts, more specifically, into leading edge segments (b) and trailing edge segments (c). A basic zoom ratio (n) greater than unity is applied to the uniform segments (a). A variable zoom ratio greater than n is applied in the leading edge segments (b). A variable zoom ratio less than n is applied in the trailing edge segments (c). The image is then expanded by generating new image data (
The basic zoom ratio (n) may have an arbitrary value. A typical value is 1.6, used for converting a 640-by-480-pixel image to a 1024-by-768-pixel image.
The reduction method used in the first five embodiments can be described as follows. The zoom processor 6 again detects brightness-level variations in the input row of pixels (FIG. 8A), dividing the row of pixels into uniform segments (a), leading edge segments (b), and trailing edge segments (c). A basic zoom ratio (n) less than unity is applied in the uniform segments (a). A variable zoom ratio higher than n is applied in the leading edge segments (b). A variable zoom ratio lower than n is applied in the trailing edge segments (c). The image is then reduced by generating new image data (
The internal structure and operation of the zoom processor 6 will now be described. In the descriptions that follow, the zoom processor 6 performs both horizontal and vertical zooming.
Referring to
The vertical high-frequency information detector 12 receives input image data Pi from the memory 5 and performs operations equivalent to mathematical differentiation, obtaining the first derivative vd1 and second derivative vd2 of the image data in the vertical direction. These derivatives furnish information about comparatively high spatial frequencies in the vertical direction.
The vertical zoom ratio control unit 13 uses the vertical derivatives vd1, vd2 output by the vertical high-frequency information detector 12 to determine a vertical zoom ratio vc1, and supplies this zoom ratio vc1 to the vertical interpolator 11.
The vertical interpolator 11 uses the supplied vertical zoom ratio vc1 to generate vertically zoomed image data Pv from the input data Pi.
The horizontal high-frequency information detector 15 performs horizontal differentiation on the vertically zoomed image data Pv to obtain a horizontal first derivative hd1 and second derivative hd2. These derivatives furnish information about comparatively high spatial frequencies in the horizontal direction.
The horizontal zoom ratio control unit 16 uses the horizontal derivatives hd1, hd2 output by the horizontal high-frequency information detector 15 to determine a horizontal zoom ratio hd1, and supplies this horizontal zoom ratio hd1 to the horizontal interpolator 14.
The horizontal interpolator 14 uses the supplied horizontal zoom ratio hd1 to generate output image data Po from the vertically zoomed image data Pv.
In the zoom processor 6, the vertical high-frequency information detector 12 and horizontal high-frequency information detector 15 function as first processing units, the vertical zoom ratio control unit 13 and horizontal zoom ratio control unit 16 function as second processing units, and the vertical interpolator 11 and horizontal interpolator 14 function as third processing units.
Though not shown in the drawings, it is possible to insert a vertical low-pass spatial filter between the memory 5 and the vertical high-frequency information detector 12, to remove noise from the input image data Pi, so that the noise will not disturb the zoom ratio. If this is done, the vertical low-pass spatial filter and vertical high-frequency information detector 12 together constitute a first processing unit. The vertical interpolator 11 continues to receive the unaltered image data Pi read from the memory 5.
Similarly, a horizontal low-pass spatial filter may be inserted between the vertical interpolator 11 and the horizontal high-frequency information detector 15. In this case the horizontal low-pass spatial filter and the horizontal high-frequency information detector 15 together constitute a first processing unit. The horizontal low-pass spatial filter may be provided in addition to or instead of the vertical low-pass spatial filter.
In place of a low-pass spatial filter, a bandpass spatial filter may be inserted between the memory 5 and vertical high-frequency information detector 12, and/or between the vertical interpolator 11 and horizontal high-frequency information detector 15. Similar noise-reduction effects are obtained.
Alternatively, a coring unit with a dead band may be inserted between the vertical high-frequency information detector 12 and vertical zoom ratio control unit 13, or between the horizontal high-frequency information detector 15 and horizontal zoom ratio control unit 16, to remove information about minor variations that are likely to be due to noise.
The horizontal zooming operation will now be described in more detail.
hc1=n+(k×hd1×hd2)
The variable zoom ratio (hc1) obtained with this equation is shown in FIG. 10D. As already noted, the zoom ratio hc1 is equal to n in the segments (a) of uniform brightness level, is greater than n in the leading edge segments (b), and is less than n in the trailing edge segments (c). The average value of hc1 over the entire horizontal line is equal to n. If AVE(x) indicates the average value of x over one horizontal line, then:
AVE(hd1)=n
Similar operations are performed in the vertical direction to generate a varying vertical zoom ratio vc1. The average of this varying vertical zoom ratio vc1 is again equal to n.
Approximately speaking, the distance between points q11 and q12 is the reciprocal of the zoom ratio at q12, the distance between q12 and q13 is the reciprocal of the zoom ratio at q13, and so on. New pixels can thus be generated at points given by the cumulative sum of the reciprocals of the zoom ratios. Specifically, the horizontal zoom ratio control unit 16 calculates the zoom ratio hd1 at the conventional evenly-spaced interpolation points (not visible), and the reciprocals (1/hc1) of the calculated hc1 values are cumulatively summed to set the interpolation points (q11 to q17) at which new pixels are actually generated. This process will be illustrated in the eighth embodiment.
Thus by calculating a variable zoom ratio hc1, the horizontal zoom ratio control unit 16 sets interpolation points (e.g., q11 to q17) with variable spacing in each horizontal line. A basic spacing value (1/n) is used in uniform segments (a). The spacing is decreased in leading edge segments (b), and increased in trailing edge segments (c).
The interpolation points given as cumulative sums of the 1/hc1 values determine the filter coefficients used to generate the output pixel values, and determine the vertically zoomed pixels (p1, p2, etc.) to which the filter coefficients are applied. If the vertically zoomed pixels (p1, p2, etc.) are stored in the memory 5, the horizontal interpolator 14 converts the cumulative sums of 1/hc1 to addresses in the memory 5.
The filter coefficients may be pre-calculated and stored in a look-up table in the memory 5 (or another memory unit, not shown in the drawings). In that case, the horizontal interpolator 14 also converts the cumulative sums of the 1/hc1 to addresses in the look-up table.
When the output image is displayed, the interpolated pixels are evenly spaced, as indicated by s11 to s17 at the bottom of FIG. 11. Thus the leading edge segment (b), which has a zoom ratio higher than n, is expanded into a wider segment than the trailing edge segment (c), which has a zoom ratio lower than n. As a result, the variation in brightness level is not distributed evenly from pixel s11 to s17 in the expanded edge; most of the variation occurs in the trailing half of the expanded edge, from pixel s14 to pixel s17. The expanded edge thus appears sharper than it would appear if it had been expanded by the conventional uniform zoom ratio.
When an image is reduced, conversely, trailing edge segments are reduced by more than the basic zoom ratio, and leading edge segments are reduced by less than the basic zoom ratio. The conventional problem of pixel dropout is therefore mitigated in the leading edge segments, in which the number of pixels is not reduced so much.
Compared with conventional methods, the first embodiment is accordingly able to expand and reduce images by arbitrary zoom ratios with less noticeable loss of edge sharpness when an image is expanded, and less noticeable pixel drop-out when an image is reduced, and without producing noticeable discontinuities, since the interpolation spacing varies in a continuous manner.
The parameter k employed in calculating the variable zoom ratio hd1 can be used to control edge sharpness in the output image, larger values of k leading to sharper edges. This technique can be used to control edge sharpness even when the basic zoom ratio (n) is unity, so that the image as a whole is not expanded or reduced.
The parameters (n, k) used for horizontal zooming need not be the same as the parameters (n, k) used for vertical zooming. For example, the basic zoom-ratio parameter can be set to two (n=2) vertically and one (n=1) horizontally to convert from interlaced to progressive scanning by interpolating new scanning lines, with independent control of edge sharpness in the vertical and horizontal directions.
The variable zoom ratio can be calculated by more complex schemes than simply adding the product of the first derivative, the second derivative, and the parameter k to the basic zoom ratio n. For example, a positive upper limit and a negative lower limit may be placed on the product, or a non-linear function may be applied as a substitute for multiplication by k.
Similarly, the filter response characteristic may be non-linear, instead of linear as shown in FIG. 11.
Referring to
The vertical high-frequency information detector 20 receives the input image data Pi and detects high spatial frequency information by taking differences between vertically adjacent pixels, performing an operation that generates the first derivative vd1 of the image data in the vertical direction. The vertical zoom ratio control unit 21 uses this first derivative vd1 to determine a vertical zoom ratio vc2. The vertical interpolator 11 uses the vertical zoom ratio vc2 to generate vertically zoomed image data Pv from the input image data Pi.
The horizontal high-frequency information detector 22 receives the vertically zoomed image data Pv and detects high spatial frequency information by taking differences between horizontally adjacent pixels, generating the first derivative hd1 of the image data Pv in the horizontal direction. The horizontal zoom ratio control unit 23 uses this first derivative hd1 to determine a horizontal zoom ratio hc2. The horizontal interpolator 14 uses the horizontal zoom ratio hc2 to generate output image data Po from the vertically zoomed image data Pv.
Horizontal zooming in the second embodiment is illustrated in
hc2=n+(k×abs(hd1)) if 0.0≦r<0.5
hc2=n−(k×abs(hd1)) if 0.5≦r<1.0
As illustrated in
AVE(hc2)=n
Vertical zooming is performed in the same way as horizontal zooming. The horizontal zoom ratio and vertical zoom ratio are mutually independent, and different values of the parameter k may be used in the horizontal and vertical directions.
The second embodiment has the same general effect as the first embodiment. Loss of edge sharpness is mitigated by concentrating more of the edge variation into trailing edge segments when an image is expanded. Pixel drop-out is mitigated by keeping more pixels in leading edge segments when an image is reduced.
In a variation of the second embodiment, the sign of the first derivative is switched from positive to negative at an arbitrary point i (0<i<1) instead of at the midpoint (r=0.5). In this variation, the zoom ratio is calculated as follows.
hc2=n+((1−i)×k×abs(hd1)) if 0≦r<i
hc2=n−(i×k×abs(hd1)) if i≦r<1.0
In another variation of the second embodiment, the first derivative is calculated on the basis of three or more consecutive pixels, instead of by simply taking the difference between two adjacent pixels. The parameters r and i shown above may be normalized so that the distance between the outermost pixels referenced in calculating the first derivative is equal to unity.
Horizontal zooming and vertical zooming may also be carried out simultaneously in the second embodiment. The zoom processor 6 then has the structure shown in
The vertical variation pattern detector 26, operating as a first processor, receives the input image data Pi from the memory 5, detects high spatial frequency information by detecting patterns of differences between vertically adjacent pixels, and generates vertical variation pattern information vp1. The vertical zoom ratio control unit 27 uses the vertical variation pattern information vp1 to determine a vertical zoom ratio vc3. The vertical interpolator 11 uses the vertical zoom ratio vc3 to generate vertically zoomed image data Pv from the input image data Pi.
The horizontal variation pattern detector 28 receives the vertically zoomed image data Pv, detects high spatial frequency information by detecting patterns of differences between horizontally adjacent pixels, and generates horizontal variation pattern information hp1. The horizontal zoom ratio control unit 29 uses the horizontal variation pattern information hp1 to determine a horizontal zoom ratio hc3. The horizontal interpolator 14 uses the horizontal zoom ratio hc3 to generate output image data Po from the vertically zoomed image data Pv.
As explained in the first embodiment, a vertical low-pass filter or bandpass filter may be inserted between the memory 5 and the vertical variation pattern detector 26, to remove noise from the image data supplied to the vertical variation pattern detector 26, and a horizontal low-pass filter or bandpass filter may be inserted between the vertical interpolator 11 and the horizontal variation pattern detector 28, to remove noise from the vertically zoomed image data Pv.
The image data Pv output from the vertical interpolator 11 are supplied as pixel data Pd0 to the comparator 32, and are also supplied to delay unit 30. Delay unit 30 stores the received data Pd0 for one pixel interval, and supplies the stored data as pixel data Pd1 to the comparators 32, 33 and delay unit 31. Delay unit 31 stores the received data Pd1 for one pixel interval, and supplies the stored data as pixel data Pd2 to comparator 33.
Comparator 32 thus receives pixel data delayed by zero pixels (Pd0) and one pixel (Pd1) with respect to the image data Pv, while comparator 33 receives pixel data delayed by one pixel (Pd1) and two pixels (Pd2) with respect to the image data Pv. The three pixel values supplied to the two comparators 32, 33 correspond to three consecutive pixels (Pd2, Pd1, Pd0) in one horizontal scanning line of the image. Comparator 32 receives the third pixel (Pd0) as its first input (a) and the second pixel (Pd1) as its second input (b), compares the two input values, and generates a comparison result hcomp2. Comparator 33 receives the second pixel (Pd1) as its first input (a) and the first pixel (Pd2) as its second input (b), compares the two input values, and generates a comparison result hcomp1.
The comparators 32, 33 operate as indicated in FIG. 19. The horizontal axis represents the first input value (a) on a scale from zero to two hundred fifty-five, which is suitable if the input values are eight-bit values. The vertical axis represents the second input value (b) on a similar scale from zero to two hundred fifty-five. If the second input (b) exceeds the first input (a) by more than a predetermined quantity (d), the comparison result has a first value, indicated by a plus sign (+) in the drawing, meaning that the second input is larger. If the first input (a) exceeds the second input (b) by more than the predetermined quantity (d), the comparison result has a second value, indicated by a minus sign (−) in the drawing, meaning that the first input is larger. If the difference between the two input values (a and b) is equal to or less than the predetermined quantity (d), the comparison result has a third value (0), meaning that the two inputs are approximately equal. The comparators 32, 33 thus operate with a dead band from −d to +d, described below as a dead band of ±d, generating information indicating the polarity (positive, negative, or zero) of the difference between the values of adjacent pixels (zero indicating the dead band).
The purpose of the ±d dead band is to reduce the effect of noise in the image data.
The image data comparison result processor 34 generates the horizontal variation pattern information hp1 by combining the comparison results hcomp1 and hcomp2. The horizontal variation pattern information hp1 is accordingly a digital signal with nine values, identified as A to J in Table 1. Table 1 also lists the zoom ratios hc3 output by the horizontal zoom ratio control unit 29 for each pattern, n being the basic zoom ratio and α being an arbitrary positive quantity less than n (0<α<n).
Each pattern represents a pattern of variation of three horizontally consecutive pixels. The listed zoom ratio hc3 is applied at the position of the second of the three pixels.
In pattern A, there are substantially no pixel-to-pixel variations (none greater than ±d), so the basic zoom ratio (n) is applied.
In patterns B and C, there is substantially no variation between the first two pixel values, but the third pixel value is significantly higher or lower than the second pixel value. These patterns correspond to leading edge segments. An increased zoom ratio (n+α) is applied.
In patterns D and E, there is substantially no variation between the last two pixel values, but the first pixel value is significantly higher or lower than the second pixel value. These patterns correspond to trailing edge segments. A decreased zoom ratio (n−α) is applied.
In patterns F and G, the same type of variation appears between the first two pixels as between the last two pixels, either an increase in both cases, or a decrease in both cases. The basic zoom ratio (n) is applied.
In patterns H and J, opposite variations appear between the first two pixels and the last two pixels, the variation being an increase in one case and a decrease in the other case. The basic zoom ratio (n) is applied.
A comparison of
AVE(hc3)=n
In the third embodiment, the parameter α can be adjusted to control edge sharpness in the output image. Larger values of α lead to sharper edges. Edge sharpness can be controlled in this way even when the basic zoom ratio n is equal to unity.
The basic zoom ratio n and parameter α used in the horizontal direction can be set independently of the basic zoom ratio n and parameter α used in the vertical direction.
Referring to
In a fourth embodiment of the invention, the zoom ratio is adjusted according to both the polarity and magnitude of the pixel-to-pixel variations. The fourth embodiment has the same hardware configuration as the third embodiment, illustrated in
As in the third embodiment, one comparison result (0) indicates that the first and second inputs (a and b) do not differ by more than a predetermined positive quantity d.
Another comparison result (+) indicates that the second input (b) exceeds the first input (a) by more than d, but does not exceed twice the first input (a) by more than d.
Another comparison result (2+) indicates that the second input (b) exceeds twice the first input (a) by more than d.
Another comparison result (−) indicates that the first input (a) exceeds the second input (b) by more than d, but that half the first input does not exceed the second input (b) by more than d.
Another comparison result (2−) indicates that half the first input (a) exceeds the second input (b) by more than d.
These results are summarized by the inequalities at the bottom of FIG. 23.
From these comparison results, the image data comparison result processor 34 generates the pattern information (A to J) described in the third embodiment, and four additional patterns (B+, C−, D+, E−). When the image data comparison result processor 34 outputs one of these additional patterns, the horizontal zoom ratio control unit 29 adjusts the zoom ratio (n±α) used in the third embodiment by a further quantity β. This further quantity β may be positive or negative, but its absolute value is less than the difference between n and α. Accordingly, the following condition is satisfied.
n−α−ABS(β)>0
Table 2 summarizes the comparator outputs (hcomp1, hcomp2), the horizontal variation pattern information (hp1), and the zoom ratio (hc3) generated by the horizontal variation pattern detector 28 and horizontal zoom ratio control unit 29 in the fourth embodiment. As in the third embodiment, the horizontal variation pattern information (hp1) describes the pattern of variation of the levels of three horizontally consecutive pixels, and the zoom ratio (hc3) is applied at the position of the second of these three pixels.
In pattern A, there are substantially no pixel-to-pixel variations (none greater than ±d), and the basic zoom ratio (n) is applied.
In patterns B and C, there is substantially no variation between the first two pixel values, but the third pixel value is moderately higher or lower than the second pixel value. These patterns correspond to comparatively gentle leading edge segments. An increased zoom ratio (n+α) is applied.
In patterns B+ and C−, there is substantially no variation between the first two pixel values, but the third pixel value is markedly higher or lower than the second pixel value. These patterns correspond to comparatively sharp leading edge segments. The increased zoom ratio (n+α) is further adjusted (to n+α+β).
In patterns D and E, there is substantially no variation between the last two pixel values, but the first pixel value is moderately higher or lower than the second pixel value. These patterns correspond to comparatively gentle trailing edge segments. A decreased zoom ratio (n−α) is applied.
In patterns D+ and E−, there is substantially no variation between the last two pixel values, but the first pixel value is markedly higher or lower than the second pixel value. These patterns correspond to comparatively sharp trailing edge segments. The decreased zoom ratio (n−α) is further adjusted (to n−α−β).
In patterns F and G, the same type of variation appears between the first two pixels as between the last two pixels, either an increase in both cases, or a decrease in both cases. The basic zoom ratio (n) is applied, regardless of the magnitude of the variations.
In patterns H and J, opposite variations appear between the first two pixels and the last two pixels, an increase in one case and a decrease in the other case. The basic zoom ratio (n) is applied, regardless of the magnitude of the variations.
If the parameter β is positive, then the zoom ratio is further increased at comparatively sharp leading edge segments, and further reduced at comparatively sharp trailing edge segments. As a result, these comparatively sharp trailing edge segments appear sharper in the image displayed by the fourth embodiment than in the image displayed by the third embodiment.
If the parameter β is negative, then the zoom ratio is made lower at comparatively sharp leading edge segments than at comparatively gentle leading edge segments, and is made higher at comparatively sharp trailing edge segments than at comparatively gentle trailing edge segments. As a result, comparatively sharp leading edge segments appear sharper in the image displayed by the fourth embodiment than in the image displayed by the third embodiment.
Vertical zooming in the fourth embodiment is controlled in the same way as horizontal zooming, using parameters α and β and a basic zoom-ratio parameter n. The parameters (n, α, β) used in vertical zooming need not be identical to the parameters (n, α, β) used in horizontal zooming.
The two parameters α and β employed in the fourth embodiment permit more flexible control over edge sharpness than the single parameter α used in the third embodiment. In particular, the value of β can be chosen to avoid over-enhancement or under-enhancement of edges. The fourth embodiment is particularly effective when a single pair of parameter values (α and β) is used for all images. However, it is also possible to provide a selection of parameter values (α and β), to fine-tune the zooming process.
In a variation of the fourth embodiment, interpolation is carried out two-dimensionally, as in FIG. 22.
Whereas the pattern information in the third and fourth embodiments represented patterns of variation in the brightness levels of three consecutive pixels, in a fifth embodiment, the pattern information represents patterns of variation in the brightness levels of five consecutive pixels. Accordingly, the fifth embodiment has the general configuration shown in
The delay units 37, 38, 39, 40 are coupled in series and generate image data Pd1, Pd2, Pd3, Pd4 delayed by one, two, three, and four pixel intervals, respectively, with respect to the vertically zoomed image data Pv (Pd0).
Each of the comparators 41, 42, 43, 44 is similar to the comparators in the third embodiment, having two input terminals (a and b) and generating a comparison result with three possible values (+, 0, −). These three values indicate whether the second input is greater than, approximately equal to, or less than the first input, the approximately equal result (0) corresponding to a dead band of ±d. Comparator 44 receives Pd3 and Pd4, and generates a comparison result hcomp0. Comparator 43 receives Pd2 and Pd3, and generates a comparison result hcomp1. Comparator 42 receives Pd2 and Pd3, and generates a comparison result hcomp2. Comparator 41 receives Pd0 and Pd1, and generates a comparison result hcomp3.
The image data comparison result processor 45 receives the comparison results from the comparators 41, 42, 43, 44, and generates horizontal variation pattern information hp1 as indicated in Table 3. An X in Table 3 indicates a don't-care value. For example, pattern information A is output whenever hcomp1 and hcomp2 both indicate approximate equality (0), regardless of the values of hcomp0 and hcomp3. The pattern information includes patterns A to J as described in the third embodiment, and four new patterns (BF, CG, DF, EG).
The horizontal zoom ratio control unit 29 generates a corresponding zoom ratio hc3, also indicated in Table 3. This zoom ratio is applied at the position of the third pixel (Pd2) in the series of five pixels (Pd0 to Pd4). For patterns A to J, the horizontal zoom ratio control unit 29 generates the zoom ratios described in the third embodiment (n, n+α, n−α). For the four new patterns, the horizontal zoom ratio control unit 29 adjusts the zoom ratio (n±α) used in the third embodiment by a further quantity γ. This further quantity γ may be positive or negative, but its absolute value must satisfy the same condition as satisfied by the parameter β in the fourth embodiment, that is:
n−α−ABS(γ)>0
In pattern A, there are substantially no pixel-to-pixel variations (none greater than ±d) among the second, third, and fourth pixels, and the basic zoom ratio (n) is applied.
In patterns B and C, there is substantially no variation between the second and third pixels. The fourth pixel value is significantly higher or lower than the third pixel value, but this same variation is not seen between the fourth and fifth pixels. An increased zoom ratio (n+α) is applied.
In patterns BF and CG, the variation seen in the third and fourth pixels in pattern B or C is also seen in the fourth and fifth pixels. The increased zoom ratio (n+α) is further adjusted (to n+α+γ).
In patterns D and E, there is substantially no variation between the third and fourth pixels. The second pixel value is significantly higher or lower than the third pixel value, but this same variation is not seen between the first and second pixels. A decreased zoom ratio (n−α) is applied.
In patterns DF and EG, the variation seen in the second and third pixels in pattern D or E is also seen in the first and second pixels. The decreased zoom ratio (n−α) is further adjusted (to n−α−γ).
In patterns F and G, the same type of variation appears between the second and third pixels and between the third and fourth pixels, either an increase in both cases, or a decrease in both cases. The basic zoom ratio (n) is applied, regardless of the values of the first and fifth pixels.
In patterns H and J, opposite variations appear between the second and third pixels and the third and fourth pixels, an increase in one case and a decrease in the other case. The basic zoom ratio (n) is applied, regardless of the values of the first and fifth pixels.
The fifth embodiment distinguishes between brightness-level variations that continue over three or more consecutive pixels, and variations that occur at only one pair of pixels. If the parameter γ is positive, then the zoom ratio is altered more for the former variations than for the latter variations. If the parameter γ is negative, then the zoom ratio is altered more for the latter variations than for the former variations.
Vertical zooming in the fifth embodiment is controlled in the same way as horizontal zooming, using parameters α and γ. The zoom ratio and other parameters (n, α, γ) used in vertical zooming need not be identical to the zoom ratio and other parameters (n, α, γ) used in horizontal zooming.
The two parameters α and γ employed in the fifth embodiment permit more flexible control over edge sharpness than the single parameter α used in the third embodiment, because the width of the edge is taken into account. The fifth embodiment is particularly effective when a single pair of parameter values (α and γ) is used for all images. However, it is also possible to provide a selection of parameter values (α and γ), to fine-tune the zooming process.
In a variation of the fifth embodiment, the comparators 41, 42, 43, 44 generate comparison results with five possible values, as in the fourth embodiment, and the image data comparison result processor 45 determines the zoom ratio from the combination of these comparison results.
In another variation of the fifth embodiment, a two-dimensional zoom ratio is calculated, and interpolation is carried out two-dimensionally.
Although the third, fourth, and fifth embodiments have been described as dividing an edge into leading and trailing segments, when a variation persists over a sufficient number of consecutive pixels, the varying portion is divided into three segments: a leading segment (e.g., pattern B or C), an interior segment (e.g., pattern F or G), and a trailing segment (e.g., pattern D or E). The zoom ratio is increased in the leading segment and reduced in the trailing segment. The basic zoom ratio (n) is used in the interior segment.
A different way of processing interior segments will be shown in the sixth and seventh embodiments of the invention.
In these embodiments, the input row or column of pixels (
A basic zoom ratio (n) is applied in the uniform segments (a). A variable zoom ratio higher than n is applied in the leading and trailing edge segments (b). A variable zoom ratio lower than n is applied in the interior edge segments (c). The image is expanded or reduced by generating new image data (
The internal structure of the zoom processor 6 in the sixth embodiment is shown in FIG. 27. The vertical interpolator 11 and horizontal interpolator 14 are similar to the corresponding elements in the first embodiment.
The vertical high-frequency information detector 46 receives input image data Pi from the memory 5 and detects high spatial frequency information by performing operations that generate the first derivative vd1 and third derivative vd3 of the image data in the vertical direction. The vertical zoom ratio control unit 47 uses these derivatives vd1 , vd3 to determine a vertical zoom ratio vc4. The vertical interpolator 11 uses the vertical zoom ratio vc4 to generate vertically zoomed image data Pv from the received image data Pi.
The horizontal high-frequency information detector 48 receives the vertically zoomed image data Pv and detects high spatial frequency information by performing operations that generate the first derivative hd1 and third derivative hd3 of the image data in the horizontal direction. The horizontal zoom ratio control unit 49 uses these derivatives hd1, hd3 to determine a horizontal zoom ratio hc4. The horizontal interpolator 14 uses the horizontal zoom ratio hc4 to generate output image data Po from the vertically zoomed image data Pv.
As explained in the first embodiment, a vertical low-pass filter or bandpass filter may be inserted between the memory 5 and the vertical high-frequency information detector 46, to remove noise from the input image data Pi, and a horizontal low-pass filter or bandpass filter may be inserted between the vertical interpolator 11 and the horizontal high-frequency information detector 48, to remove noise from the vertically zoomed image data Pv. Alternatively, a coring unit with a dead band may be inserted between the vertical high-frequency information detector 46 and vertical zoom ratio control unit 47, or between the horizontal high-frequency information detector 48 and horizontal zoom ratio control unit 49.
hc4=n+(k×hd1×hd3)
The result of applying this equation is shown in FIG. 28E. As described earlier, the zoom ratio hc4 is equal to n in the segments (a) of uniform brightness level, is greater than n in the leading and trailing edge segments (b), and is less than n in interior edge segments (c). The average value of hc4 over the entire horizontal line is equal to n.
AVE(hc4 )=n
Similar operations are performed in the vertical direction to generate a varying vertical zoom ratio vc4. The average of this varying vertical zoom ratio vc4 is again equal to n.
As explained in the first embodiment, the interpolation points are set at positions equal to cumulative sums of the reciprocals of the zoom ratios. That is, the filter coefficients used to generate the new pixel values, and the memory addresses of the pixels (p1, p2, etc.) to which the filter coefficients are applied, are obtained from these cumulative sums.
When the output image is displayed, the new pixels are evenly spaced, as indicated by s11 to s20 at the bottom of FIG. 29. Thus the leading and trailing edge segments (b), which have a zoom ratio higher than n, are expanded more than the interior edge segment (c), which has a zoom ratio lower than n. As a result, the expanded interior segment of the edge (c) appears sharper than it would appear if expanded by the conventional uniform zoom ratio, while the leading and trailing segments of the edge (b) appear less sharp. Thus the sixth embodiment maintains edge sharpness by concentrating more of the edge variation into the interior segment of the expanded edge.
When an image is reduced, by increasing the zoom ratio in the leading and trailing segments of an edge, the sixth embodiment mitigates the problem of pixel dropout in the leading and trailing edge segments.
Vertical zooming is performed in the same way as horizontal zooming. The horizontal zoom ratio and vertical zoom ratio are mutually independent. The value of the parameter k may also differ between the horizontal and vertical directions.
The value of the parameter k can be increased to enhance edge sharpness in the output image, or decreased to reduce edge sharpness. The sixth embodiment can be used to control edge sharpness in this way even when the basic zoom ratio (n) is equal to unity.
In the description above, the product of the first derivative, the third derivative, and the parameter k was simply added to the basic zoom ratio n, but more complex schemes are possible. For example, a positive upper limit and a negative lower limit may be placed on the product, or a non-linear function may be applied as a substitute for multiplication by k.
Referring to
The horizontal zoom ratio control unit 53 has the internal structure shown in
The vertical zoom ratio control unit 52 has a similar internal structure.
The operation of the seventh embodiment is illustrated in
hc5=n+(k×((abs(hd2)−abs(hd1)))
As can be seen from
AVE(hc5)=n
Vertical zooming is performed in the same way as horizontal zooming. The horizontal zoom ratio and vertical zoom ratio are mutually independent, and different values of the parameter k may be used in the horizontal and vertical directions.
The third derivatives employed in the sixth embodiment are calculated by differentiating the second derivatives employed in the seventh embodiment. Compared with the sixth embodiment, the seventh embodiment requires one less differentiation operation in each direction, and can accordingly be implemented more simply.
Referring to
The vertical high-frequency information detector 61 comprises a vertical high-pass spatial filter 62 and a vertical differentiator 63. The vertical high-pass spatial filter 62 extracts high spatial frequencies of the input image data Pi in the vertical direction and generates a vertical high-frequency component of the image data, denoted Va(y). The vertical differentiator 63 takes the first derivative of the input image data Pi in the vertical direction and generates a vertical first derivative, denoted Vd(y). This Vd(y) may be identical to the first derivative denoted vd1 in preceding embodiments, but the notation Vd(y) will be used for consistency with Va(y).
The vertical zoom rate control unit 64 receives the vertical high-frequency image component Va(y) and vertical first derivative Vd(y), and generates a vertical zoom ratio Vc(y). The vertical interpolator 11 expands or reduces the input image Pi vertically according to this zoom ratio Vc(y), to generate vertically zoomed image data Pv.
The horizontal high-frequency information detector 65 comprises a horizontal high-pass spatial filter 66 and a horizontal differentiator 67. The horizontal high-pass spatial filter 66 extracts high spatial frequencies of the vertically zoomed image data Pv in the horizontal direction, and generates a horizontal high-frequency component of the image data, denoted Ha(x). The horizontal differentiator 67 takes the first derivative of vertically zoomed image data Pv in the horizontal direction and generates a horizontal first derivative, denoted Hd(x). This Hd(x) may be identical to the first derivative denoted hd1 in preceding embodiments, but the notation Hd(x) will be used for consistency with Ha(x).
The horizontal zoom rate control unit 68 receives the horizontal high-frequency image component Ha(x) and horizontal first derivative Hd(x), and generates a horizontal zoom ratio Hc(x). The horizontal interpolator 14 expands or reduces the vertically zoomed image data Pv horizontally according to this zoom ratio Hc(x), to generate output image data Po.
Hc(x)=n+(k×Ha(x)×Hd(x))
As
As explained in the first embodiment, the zoom ratio Hc(x) is calculated at the equally spaced interpolation points (q′1 to q′7), the reciprocal values of the calculated zoom ratios are taken, and the reciprocal values are cumulatively summed to determine the interpolation points (q1 to q7) at which the new pixels will be generated. The new pixels generated at points q1 to q7 are denoted po′1 to po′7. The pixel values are calculated by interpolation from the input data p(x), using the filter response characteristics F(x). When displayed, these pixels are evenly spaced, as indicated by po1 to po7 at the bottom of FIG. 37. As a result, the leading edge segment (b) is expanded more than the trailing edge segment (c).
Vertical zooming in the eighth embodiment is carried out in substantially the same way as horizontal zooming. The vertical zoom ratio Vc(y) is calculated according to the following equation.
Vc(y)=n+(k×Va(y)×Vd(y))
As can be seen by comparing
As in the first embodiment, the parameter k can be used to control edge sharpness in the output image even when the basic zoom ratio (n) is equal to unity. The values of n and k used in horizontal zooming may be independent of the value of n and k used in vertical zooming.
In a variation of the eighth embodiment, the zoom processor 6 has the structure shown in FIG. 38. The vertical high-frequency information detector 61 comprises the vertical differentiator 63 described above, a vertical low-pass spatial filter 69, and a subtractor 70. The vertical low-pass spatial filter 69 generates vertical low-frequency image data Vs (y). The subtractor 70 takes the difference between the input image data Pi and the vertical low-frequency image data Vs(y), thereby generating vertical high-frequency image data Va(y) for supply to the vertical zoom rate control unit 64. Similarly, the horizontal high-frequency information detector 65 comprises the horizontal differentiator 67 described above, a horizontal low-pass spatial filter 71, and a subtractor 72. The horizontal low-pass spatial filter 71 generates horizontal low-frequency image data Hs(x). The subtractor 72 takes the difference between the vertically zoomed image data Pv and the horizontal low-frequency image data Hs(x), thereby generating horizontal high-frequency image data Ha(x) for supply to the horizontal zoom rate control unit 68. This variation generates the same output data Po as the structure shown in FIG. 35.
The vertical high-frequency information detector 73 in the ninth embodiment comprises a vertical differentiator 63 and a vertical bandpass spatial filter 73. The vertical bandpass spatial filter 73 comprises a subtractor 70 and a pair of vertical low-pass spatial filters 75, 76. The vertical low-pass spatial filters 75, 76 extract low spatial frequencies in the vertical direction but operate with different spatial cut-off frequencies, the cut-off frequency of the first vertical low-pass spatial filter 75 being lower than the cut-off frequency of the second vertical low-pass spatial filter 76. The subtractor 70 subtracts the low-frequency image data Vs2(y) output by the second vertical low-pass spatial filter 76 from the low-frequency image data Vs1(y) output by the first vertical low-pass spatial filter 75, and supplies the resulting difference to the vertical zoom rate control unit 64. The vertical zoom rate control unit 64 uses this difference in the same way as the high-frequency image data Ha(y) received in the ninth embodiment.
Similarly, the horizontal high-frequency information detector 77 comprises a horizontal differentiator 67 and a horizontal bandpass spatial filter 78. The horizontal bandpass spatial filter 78 comprises a subtractor 72 and a pair of horizontal low-pass spatial filters 79, 80. The horizontal low-pass spatial filters 79, 80 extract low spatial frequencies in the horizontal direction but operate with different cut-off frequencies, the cut-off frequency of the first horizontal low-pass spatial filter 79 being lower than the cut-off frequency of the second horizontal low-pass spatial filter 80. The subtractor 70 subtracts the low-frequency image data Vs2(y) output by the second horizontal low-pass spatial filter 80 from the low-frequency image data Vs1(y) output by the first horizontal low-pass spatial filter 79, and supplies the resulting difference to the horizontal zoom rate control unit 68. The horizontal zoom rate control unit 68 uses this difference in the same way as the high-frequency image data Ha(x) received in the ninth embodiment.
Hc(x)=n+(k×(Hs1(x)−Hs2(x))×Hd(x))
As
Vertical zooming is carried out in the ninth embodiment in the same way as horizontal zooming. The vertical zooming parameters (n, k, and the cut-off frequencies of the vertical low-pass spatial filters 75, 76) may differ from the horizontal zooming parameters (n, k, and the cut-off frequencies of the horizontal low-pass spatial filters 79, 80).
The high-pass spatial filter 82 generates high-frequency image data a(x, y) by performing filtering computations at equally spaced interpolation points q′nm. These computations are carried out on input pixels that are horizontally, vertically, and diagonally near to the interpolation points q′nm in the input image data Pi. The two-dimensional differentiator 83 generates first-derivative data d(x, y) at the equally spaced interpolation points q′nm, again using data (Pi) for input pixels that are horizontally, vertically, and diagonally nearby. The two-dimensional zoom rate control unit 84 generates a zoom ratio c(x, y) for each of the equally spaced interpolation points q′nm from the high-frequency image data a(x, y) and first-derivative data d(x, y). The zoom ratio c(x, y) is calculated according to the following equation.
c(x, y)=n+(k×a(x, y)×d(x, y))
The first derivative d(x, y) and zoom ratio c(x, y) are two-dimensional quantities with horizontal and vertical components. The two-dimensional interpolator 17 uses the zoom ratios c(x, y) at the equally spaced interpolation points q′nm to determine the interpolation points qnm at which new image data will be generated.
The calculation is explained in FIG. 43. G(x) is the filter response characteristic from which the interpolation coefficients are obtained. The distance between diagonally opposite pairs of input pixels is assumed to be unity. If the distances from the point qnm at which the new image data will be generated to the four pixels p11, p12, p21, p22, are r11, r12, r21, r22, respectively, then the interpolated data value po′nm is calculated as follows.
po′nm=G(r11)p11+G(r12)p12+G(r21)p21+G(r22)p22
In the tenth embodiment, the accuracy of the interpolation calculation is enhanced because each interpolated value is obtained from the values of at least four of the pixels closest, in a two-dimensional sense, to the interpolation point qnm.
In a variation of the tenth embodiment, shown in
In another variation of the tenth embodiment, shown in
The invention can also be practiced when the input and output image signals are digital signals rather than analog signals. As an eleventh embodiment of the invention,
The operation of the eleventh embodiment can be understood from the description of the operation of the preceding embodiments, so further details will be omitted.
In a variation of the eleventh embodiment, an analog display device 9 and a digital-to-analog converter 8 are used as in FIG. 6.
The invention can also be practiced in software, using a general-purpose computer, for example, or a computing device embedded in an image display apparatus, instead of specialized arithmetic and logic circuits. As a twelfth embodiment,
The program is divided into a first part (A) that performs vertical zooming, and a second part (B) that performs horizontal zooming. Both parts scan the image in the usual scanning sequence, from left to right and from top to bottom.
The first step (S1) in part A is to obtain the data needed for calculating vertical high-frequency information at the current scanning point of the image. The necessary data include the values of two or more vertically adjacent pixels in the input image data (Pi), which are read from a memory such as the memory 5 in FIG. 46.
Vertical high-frequency information is calculated in the next step (S2), which detects pixel level variations in the vertical direction. Examples of the types of high-frequency information that may be obtained include a first derivative (vd1), second derivative (vd2), third derivative (vd3), vertical variation pattern information (vp1), high-frequency image data (Va(y)), and a difference between two low-frequency components (Vs1(y)−Vs2(y)), as described in the preceding embodiments.
A vertical zoom ratio (vc1) is then calculated from the vertical high-frequency information and the basic vertical zoom ratio (n), as described in any of the first nine embodiments (step S3), and vertical interpolation filtering calculations are performed according to the calculated vertical zoom ratio to generate vertically zoomed image data Pv (step S4). The vertically zoomed image data Pv are stored temporarily in, for example, the memory 5, or another memory not shown in the preceding drawings.
The above process is repeated (step S5) until the end of the current scanning line is reached; then the next scanning line is processed in the same way (step S6). When the last scanning line has been processed, part A of the program ends and part B begins.
The first step (S7) in part B is to obtain the data needed for calculating horizontal high-frequency information at the current scanning point of the image. The necessary data include the values of two or more horizontally adjacent pixels in the image data (Pv) generated in part A.
Horizontal high-frequency information is calculated in the next step (S8), which detects pixel level variations in the horizontal direction. Examples of the types of high-frequency information that may be obtained include a first derivative (hd1), second derivative (hd2), third derivative (hd3), horizontal variation pattern information (hp1), high-frequency image data (Ha(x)), and a difference between two low-frequency components (Hs1(x)−Hs2(x)), as described in the preceding embodiments. A horizontal zoom ratio (hd1) is then calculated from the horizontal high-frequency information and the basic horizontal zoom ratio, as described in any of the preceding embodiments (step S9), and horizontal interpolation filtering calculations are performed according to the calculated horizontal zoom ratio to generate new image data Po for output to the image post-processor 7 (step S10). These steps are repeated (step S11) until the end of the current scanning line is reached; then the next scanning line is processed in the same way until the last line has been processed (step S12) and the program ends.
In a variation of the twelfth embodiment, horizontal zooming is performed before vertical zooming. That is, the order of parts A and B of the program are interchanged. One part of the program, either part A or part B, may also be omitted, if zooming is necessary in only one direction.
In another variation of the twelfth embodiment, zooming is performed two-dimensionally, as in the tenth embodiment, for example, so that the image has to be scanned and zoomed only once.
It is also possible to vary the scanning sequence by scanning the image from right to left, or from bottom to top.
The basic zoom ratio (n) used in the vertical direction need not be the same as the basic zoom ratio in used in the horizontal direction, but the zoom ratios calculated in steps S3 and S9 should vary in such a way that the correct total number of output pixels is obtained in each vertical column and in each horizontal scanning line.
The computer or computing device that executes the program illustrated in
In all of the preceding embodiments, the terms leading edge segment and trailing edge segment merely denote two opposite parts of a portion of the image in which the pixel level varies. It is not necessary for the leading edge segment to be disposed to the left of the trailing edge segment, or above it, or to precede it in the scanning sequence.
The preceding embodiments have been described as generating a variable zoom ratio with an average value equal to the basic zoom ratio (n), but this condition can be modified to make the average spacing between interpolation points equal to the basic spacing used in uniform segments, or to make the average value of the reciprocal of the zoom ratio equal to the reciprocal of the basic zoom ratio (1/n).
When a color image is processed, the operations described above may be performed separately for each primary color, or separately for the luminance and chrominance components of the image signal.
Those skilled in the art will recognize that further variations are possible within the scope claimed below.
Number | Date | Country | Kind |
---|---|---|---|
2000-184816 | Jun 2000 | JP | national |
2000-354226 | Nov 2000 | JP | national |
2001-015002 | Jan 2001 | JP | national |
2001-061436 | Mar 2001 | JP | national |
This application is a Continuation of application Ser. No. 09/883,940, filed on Jun. 20, 2001 now U.S. Pat. No. 6,724,398, the entire contents of which are hereby incorporated by reference and for which priority is claimed under 35 U.S.C. § 120; and this application claims priority under 35 U.S.C. § 119 of the following applications: CountryApplication No.Date FiledJAPAN2000-184816Jun. 20, 2000JAPAN2001-015002Jan. 23, 2001JAPAN2001-061436Mar. 6, 2001JAPAN2000-354226Nov. 21, 2000
Number | Name | Date | Kind |
---|---|---|---|
6002810 | Wakisawa et al. | Dec 1999 | A |
6724398 | Someya et al. | Apr 2004 | B2 |
20010020950 | Shimizu et al. | Sep 2001 | A1 |
20030053708 | Kryukov et al. | Mar 2003 | A1 |
Number | Date | Country |
---|---|---|
03-088478 | Apr 1991 | JP |
9266531 | Oct 1997 | JP |
2777202 | May 1998 | JP |
11-168622 | Jun 1999 | JP |
2000-101870 | Apr 2000 | JP |
Number | Date | Country | |
---|---|---|---|
20040135798 A1 | Jul 2004 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09883940 | Jun 2001 | US |
Child | 10716634 | US |