Edge direction detector

Abstract: The invention concerns an edge direction detector (44) to be used in a video de-interlacer (20) for detecting at least one best direction from a set of pre-defined directions for producing a spatial direction control signal used for performing a spatio-temporal interpolation in said best direction. Said edge direction detector comprises directional interpolator means (80) for performing an interpolation for each one of said pre-defined directions using a past, a present and a future video field signal received at its input, said directional interpolator means outputting an interpolated signal comprising interpolated signals, for each pixel, for each of said pre-defined directions; and edge direction selector means (222) for selecting said at least one best direction for interpolating using said interpolated signal received from said directional interpolator means.

Description: BACKGROUND OF THE INVENTION Field of the Invention The present invention relates to video line interpolation, field rate converting and de-interlacing methods and apparatus for converting an interlaced standard video image into a progressive HDTV video image. Description of the Prior Art Up Converter is an interesting device for broadcasting at HDTV resolution or format an existing standard interlaced video signal into an HDTV video signal. An HDTV Up Converter can be essentially decomposed in three main parts: a field rate converter, a de-interlacer and a picture resizer. The combination of this three modules provide at the output a 60.00 Hz field (interlaced) or frame (progressive) rate having a 16:9 aspect ratio video signal. The major part in an HDTV Up Converter is the de-interlacer unit which converts the incoming interlaced video signal into a progressive video output. This progressive output permits in turn an easy vertical resizing. The present invention focuses on the first two modules of the HDTV up converter, thus providing improved methods and devices for the field rate conversion and for the de-interlacing a video image. In today's broadcasting industry, more an more video presentations, such as movies and documentaries, must be converted from their original interlaced video format having 59.94 fields per second into the new High Definition Television (HDTV) video format, usually having 60.00 fields per second and a different image aspect rate, 16:9 rather than 4:3 for the standard format. For doing so, a large variety of solution have been proposed, each offering, however, only a partial solution to the problem. For raising the field frequency of a video image from 59.94 Hz to 60.00 Hz, one new field must be added in each sequence of 1000 existing fields. This is usually done by repeating one video field, which does not give reliable results since the image will remain still for a longer time interval so it will often be perceived by the human eye. The second problem, i.e. de-interlacing a video image, is solved by inserting new video lines among the existing interlaced video lines. In the patents US-4677483 and GB-2197152A, fixed spatio-temporal filters are suggested for interpolation. However, this conversion technique introduces some artifacts such as line flicker and serration of diagonal edges. In US-4636857, vertical filter and temporal filter are adaptively used according to a motion detector output. In US-4989090, the adaptation is done by combining, in a suitable manner, vertical linear filter and temporal median filter results. The shortcomings are the resolution loss for moving parts in the picture, the staircase effect on moving diagonal edges. In US-5001563, the interpolator is a spatio-temporal median filter in which the spatial inputs are selected along with estimated edge direction. There are still some defaults with this technique: the given edge detectors are not very reliable for a noisy or high frequency signal. This phenomenon produces some temporal flickers since the adaptation at a given edge can be different from frame to frame. The suggested spatial interpolation yields some resolution loss in the still parts of the picture. The median filter, which is excellent for preserving the edges, can give some unnatural results. In US-5019903 and US-5347599 the interpolations are edge-based and purely spatial which result in similar defaults caused essentially by the edge detection technique. Moreover, when the number of considered edge direction is small, for example three (3) directions for 45°, 90° and 135°, the staircase effect becomes noticeable for nearly horizontal and long edge in the picture. The US 5 936 676 (CA 2 213 606 A1) naming the same applicants, there is disclosed an apparatus for line interpolating an interlaced video signal, which comprises an edge direction detector using direct estimation of a preferred direction of interpolation from a number of predetermined directions through direct correlation calculation. However, such approach is not suitable for interpolating pictures exhibiting nearly horizontal edges. In the case of field rate converter from 59.94 to 60.00 Hz, the reference literature is very restrictive. Usually frame-repeating technique is used at the end of 1000 incoming fields or when a low motion or a still picture is detected in this time window. Generally, frame repeating can create a noticeable motion discontinuity. In WO 9521505 there is disclosed techniques and apparatus for converting video signals from one field rate to another. According to these techniques when applied to up-converting, fields are synchronized in an accelerated, synchronization mode over a first portion of a time interval and are interpolated in an interpolation mode over a second portion of the time interval. The switching moment is determined with a feedback technique involving detection of the phase difference between successive incoming fields by comparison with a predetermined threshold. Although such converting techniques avoid temporal discontinuities which otherwise occur using a conventional temporal interpolator, the repetitive, cyclic character of such phase detection-based converting techniques may still yield to motion discontinuity whenever the switching phase condition occurs during a fast motion frame sequence. Summary of the Invention It is therefore an object of the present invention to provide an edge direction detector and an up-converter apparatus containing such edge direction detector in accordance with the appended claims 1 and 5. Brief Description of the Drawings The present invention is described and will be better understood with reference to the following drawings, in which: Figure 1 is a general block diagram illustrating the main parts of an HDTV up converter, in which Figure 1a illustrates the preferred embodiment of the invention for a 60.00 Hz system and Figure 1b refers to a 50.00 Hz system; Figure 2 is a detailed functional block diagram illustrating the preferred embodiment of the invention referring to the de-interlacer; Figure 3 illustrates the nominal pixel positions corresponding to nine considered edge directions; Figure 4 illustrates the pixel positions used for various line interpolations; Figures 5 and 6 represent edge direction calculation for a series of directions corresponding to 90°, 45°, 30°, 7°, 4° and -45°, -30°, -7°, -4°; Figure 7 is the high frequency detector for direction 90° according to the preferred embodiment of the invention; Figure 8 is the high frequency detector for direction 45° and -45° according to the preferred embodiment of the invention; Figure 9 is the high frequency detector for direction 30° and -30° according to the preferred embodiment of the invention; Figure 10 is the high frequency detector for direction 7° and -7° according to the preferred embodiment of the invention; Figure 11 is the high frequency detector for direction 4° and -4° according to the preferred embodiment of the invention; Figure 12 is the edge direction selector according to the preferred embodiment of the invention; Figure 13 is the algorithm used for minimization in the edge direction selector according to the preferred embodiment of the invention; Figure 14 represents the edge binary filters in consolidations 1, 3, 4, 5; Figure 15 illustrates the edge binary filters for directions 45°, -45°, 30°, -30° in consolidation 2; Figure 16 illustrates the edge binary filters for 7°, -7° in consolidation 2; Figure 17 illustrates the edge binary filters for 4°, -4° in consolidation 2; Figure 18 represents direction decision block diagram in a pseudo code format; Figure 19 is a block diagram of the proposed temporal motion detector according to the preferred embodiment of the invention, also shown in Figures 2 and 21; Figure 20 is a block diagram of a proposed vertical motion detector according to the preferred embodiment of the invention; Figure 21 is a general functional block diagram illustrating a line doubling apparatus or method for chrominance component; Figure 22 is a general functional block diagram illustrating the preferred embodiment of the invention referring to the field frequency converter, Figure 23 is a functional block diagram illustrating the proposed detector for the frame inserting condition shown in Figure 22; Figure 24 is the movement indice calculator block diagram for the embodiment shown Figure 22; Figure 25 is a high level flowchart of the scene change detector according to the preferred embodiment of the invention also shown in Figure 22; Figure 26 illustrates fixed and adaptive threshold detectors respectively according to the preferred embodiment of the invention shown in Figure 21; Figure 27 represents the proposed technique for frame interpolation and frame insertion according to the preferred embodiment of the invention, also shown in Figure 21; Figure 28 represents the separable vertical temporal filters for frame interpolation according to the preferred embodiment of the invention. Detailed Description of the Preferred Embodiments Referring now to the drawings, Fig. 1a illustrates the three main parts of an up converter 10. The first part of the system is a video frame frequency or field rate converter 12, which accepts, according to the preferred embodiment of the invention, a lower frequency video signal, such as a 59.94 Nz interlaced video signal input 14 and outputs a higher video frame frequency signal, such as a 60 Hz interlaced video signal 16. The output video signal output 16 is an intermediate interlaced video signal 16 which has exactly 60 video fields by second and thus complies with the HDTV field frequency standard. The intermediate video signal 16 then enters a de-interlacer 20 whose function is to provide a progressive video signal 22 having the same input picture aspect ratio of 4:3 as the signal 14. The progressive video signal 22 allows a resizer 24 to convert easily its input signal 22 into a progressive HDTV video signal 26 having an aspect ratio of 16:9. The resizer 24 is mainly composed of separable vertical and horizontal digital interpolation filters. Since the filtering technique is relatively well known in the art, the resizer 24 will not be discussed in detail in the present text. The progressive HDTV video output 26 can be further transformed, if necessary, into an interlaced HDTV signal 28 by deleting the appropriate lines in each image or picture. This line decimation or deletion is not shown in Fig 1. The present invention also apply to the European version of the HDTV standard, where the HDTV signal has a frequency of 50 Hz. Since the standard interlaced video signal 30 has the same frequency, in such a system the field frequency converter 12 is no longer needed. As illustrated in Fig. 1b the interlaced video signal 30 is directly fed into the de-interlacer 20. In other worlds, according to the preferred embodiment of the invention, the de-interlacer 20 is functional for any field rate video input. Fig. 2 illustrates the proposed de-interlacer block diagram for interlaced digital luminance video input. The present invention provides an improved edge direction detector 44 which is part of the overall de-interlacer 20. The proposed system is an adaptive interpolator that combines the results from a pure temporal interpolation for picture still part, with a pure vertical interpolation for vertically moving horizontal edges, and with an edge-based steered spatio-temporal interpolation for the general case. Moreover, the edge direction number is extended up to 9, namely 4°, 7°, 30°, 45° and 90° for positive directions and -4°, - 7°, -30° and -45° for negative directions, as illustrated in Fig 3. The proposed directions are chosen approximately in a logarithmic order according to the human visual system. In fact, the picture result will be more pleasant if nearly horizontal edges are carefully interpolated. Referring back to the Fig. 2, the interlaced video input 30 is applied to two field delays 32 and 33 connected in series. These two field delays provide respectively two delayed video signals 34 and 35. According to the preferred embodiment, the video signals 35, 34 and 30 represent respectively the past, the present and the future video fields. These signals are sent in a suitable manner to the three interpolators 38, 40 and 42 and to the three detectors 44, 46 and 48. The cited detectors control in turn the system adaptation in order to provide a final interpolated signal output. The first interpolator 38, namely the temporal interpolator 38, provide an average signal from the past frame signal 35 and the future frame signal 30. Precisely, the temporal output 50 is given by the following expression: TF = (B0 + C0)/2 wherein B is a next field pixel value spatially corresponding to the pixel to be interpolated and C is a similar position pixel value in the previous field. Various pixel positions for interpolation are better illustrated in Fig. 3. The vertical interpolator 40 accepts only as input the present field video signal 34. The vertical interpolator's outputs 40, also designated by VF, is given by the following equation: VF = (5A0 + 5A'0 - F0 - F'0) / 8 wherein A and A' are values of adjacent pixels respectively corresponding to the preceding and to the following existing lines in the vertical direction of the pixel to be interpolated. F is value of existing pixel adjacent to pixel A in the vertical direction. F is also vertically adjacent to A as illustrated by Fig 3. The steered spatio-temporal interpolator 42 accepts the three above-mentioned interlaced video signals as input, namely the present field signal 34, the past field signal 30 and the future field signal 35, as well as a control signal 54, output by the edge direction detector 44. Depending on the state of the control signal 54, the steered spatio- temporal interpolator 42 computes one of the thirteen (13) following equations: SST-4° = (4A-8 + 4A'8 + 2B0 + 2C0 - D-16 - D'16 - E-16 - E'16) / 8 SST+4° = (4A8 + 4A'-8 + 2B0 + 2C0 - D16 - D'-16 - E16 - E'-16) / 8 SST-7° = (4A-4 + 4A'4 + 2B0 + 2C0 - D-8 - D'8 - E-8 - E'8) / 8 SST+7° = (4A4 + 4A'-4 + 2B0 + 2C0 - D8 - D'-8 - E8 - E'-8) / 8 SST-30° = (4A-2 + 4A'2 + 2B0 + 2C0 - D-4 - D'4 - E-4 - E'4) / 8 SST+30° = (4A2 + 4A'-2 + 2B0 + 2C0 - D4 - D'-4 - E4 - E'-4) / 8 SST-45° = (4A-1 + 4A'1 + 2B0 + 2C0 - D-2 - D'2 - E-2 - E'2) / 8 SST+45° = (4A1 + 4A'-1 + 2B0 + 2C0 - D2 - D'-2 - E2 - E'-2) / 8 SST90° = (18A0 + 18A'0 -2F0 -2F'0 + 4B0 + 4C0 -3D0 - 3D'0 - 3E0 - 3E'0+ H0 + H'0 + G0 + G'0) / 32 SST-4°&90° = (SST-4° + SST90°) / 2 SST+4°&90° = (SST+4° + SST90°) / 2 SST-7°&90° = (SST-7° + SST90°) / 2 SST+7°&90° = (SST+7° + SST90°) / 2. The first four equations, namely Eqs. 3 to 6, are computed when the condition "Mix" in the control signal 54 is OFF or "0". The last four equations, namely Eqs. 12 to 15 are computed when the condition "Mix" is ON or "1". Finally, the other equations, namely Eqs. 7 to 11, are independent from the condition "Mix". For a better understanding of the positions of the pixels employed for calculation in the first nine equations, namely A±i, A'±i, B±i, B'±i, C±i, C'±i, D±i, D' ±i, E±i, E'±i, F±i, F'±i, G±i, G'±i, H±i and H'±i the reader is referred to Fig. 4. Equation 1 is chosen in order to reduce the possible additive noise by a factor of 3dB. Equation 2 illustrates the simplest four taps haft-band filter and equations 3 to 10 are edge directed versions of a vertical temporal half-band filter, defined by the following equation: VT = (4A0 + 4A'0 + 2B + 2C - D0 - D'0 - E0 - E'0)/8 Applicants have found that these spatio-temporal filters give more pleasant results than those provided from purely spatial filters. Referring now to Eq. 11, the SST90, which is the expression of a vertical interpolation, is also a vertical temporal filter similar to the one defined in Eq. 16. However, the vertical bandwidth of the filter in Eq. 11 is larger than the one defined in Eq. 16, when temporal frequency is nearly zero. This feature has been selected because the human visual system is more sensitive to still parts in a picture. Moreover, the filter described in Eq. 11 is different from the VT filter used in the corresponding U.S. 5 936 676 mainly because it has a better vertical bandwidth and a shaper transition roll-off. The interpolations described in Eqs. 12 through 15 with "Mix" condition "on", are proposed compromise techniques when detection results, for nearly horizontal edge, are found to be insufficiently reliable. Referring back to Fig. 2, the two interpolated signals VF and SST, designated by numerals 56 and 58 respectively, are fed into a selector 60 which is controlled by a binary signal 62 provided from the vertical motion detector 46. When the control binary signal 62 is "ON", the selector 60 outputs an SF signal 64 which is chosen to be the vertical interpolator VF output 56. Otherwise, when the control binary signal 62 is "OFF", the multiplexer 60 selects the steered spatio-temporal interpolator output 58. The selector SF output 64 and the temporal interpolator TF output 50 are combined in a temporal adapter 66 in order to provide a final interpolated video ignal 68, for non existing lines of interlaced video input signal. The temporal adapter 66 is controlled by the motion indicative value 70, delivered by the temporal motion detection 48. Finally, the interpolated video lines signal 68 and the existing video lines signal 72 are combined by the multiplexer 74. in order to generate the progressive luminance signal 22. Associated with the three above-mentioned interpolation techniques, are the edge direction detector 44, the vertical motion detector 46 and the temporal motion detector 48. The purpose of the temporal motion detector 48 is to locate rapidly moving or approximately still parts in an image. For doing so, it uses as input the low-pass filtered video signals 76 and 77 instead of their original ones 30 and 35 for possibly noisy signals. The purpose of the vertical motion detector 46 is to locate moving horizontal lines in a video image sequence. The edge direction detector 44 has two functions: the first one is to choose the best direction among the nine (9) possible directions for performing a steered interpolation. Its second function is to compute a compromise interpolation for insufficiently reliable nearly horizontal edges that are detected. The decision process is performed in two steps: first, the image is interpolated in all possible directions and the direction having the minimum variation is selected. The nine directional interpolators 80 receive as inputs the three video signals 30, 34 and 35 from the past, the present and the future fields. The interpolations are described by the nine Eqs. 3,4,5,6,7,8,9,10 and 11, each one representing one of the nine possible directions -4°, 4°, -7°, 7°, -30°, 30°, -45°, 45°, 90° respectively. The resulting nine interpolated output signals 82[a-i] are applied to the edge direction calculators 84 and the horizontal and vertical high frequency detectors 86. Figs. 5 and 6 illustrates a detailed view of the edge direction calculators for the directions 90°, 45°, 30°, 7°, 4°, -45°, -30°, -7°, -4°. In these figures, each interpolated input signal, for example 82a, is sent into a horizontal low-pass filter 90 to remove eventually noise and strengthen horizontal edge. The impulse response of this linear-phase filter 90 is (1, 3, 4, 3, 1). The filter outputs 92, 94, 96, 98, 100 and 102, 104, 106 and 108 are then applied individually to their respective directional variation calculator, numbered 110 through 126. Generally, each calculator is a directional high-pass filter whose impulse response is given in Figs 5 and 6. The calculator outputs 110 though 126 are sent into absolute value devices, numbered 130 through 146, in order to convert the initial values into magnitudes of variation in the possible nine directions. The absolute value devices outputs are sent into their respective low-pass filters 151 through 166 to smooth out any eventual noise. Moreover, in order to favor the vertical direction (90o), its low-pass filter may only be a vertical filter having an overall gain two times lower than the one of the other directions. The low-pass filters for the other directions may be identical and may comprise a vertical filter and a horizontal filter. The impulse responses of these filters are shown in greater detail in Figs 5 and 6. Referring back to Fig. 2, the directional interpolator 80 output 82[a-i], is sent as previously mentioned into the horizontal and vertical high frequency detectors 86. The purpose of the high frequency detectors is to locate high horizontal or vertical texture regions of the image that could introduce errors in the edge direction estimation process. Thus, the detectors 86 may need to be different for each considered direction. Fig. 7 illustrates the high frequency detector 86a for vertical direction according to the preferred embodiment of the invention. The corresponding interpolated signal 82a is applied to the input of the detector 86, which detects the high frequency intensity by applying a Laplacian 170, followed by and an absolute value device 172. Its output 174 represents the magnitude of the high frequency signal and is applied to a detector 176, which is simply a level comparator. The comparator output is a binary signal 178 which is equal to 1 if the input signal 174 is greater than a threshold value 180. If not, the binary signal 178 is equal to 0. The threshold value 180 is set to be 40, according to the preferred embodiment of the invention. The binary output signal 178 is sent into a consolidating device, which can link together some isolated detections in a moving window 3x3. Details of the mentioned consolidating device are provided in same Fig. 7: it may be comprise an appropriate delay 182, a filter 184, a comparator 186, and an OR gate 188. The gate output signal 190a represents a binary map of the high frequency region for the direction 90o. Fig. 8 illustrates the high frequency detectors 86 for the directions 45° and - 45°. In these detectors, according to the preferred embodiment of the invention, a pixel is said to be in a high frequency zones if the magnitudes of the horizontal or vertical high frequency components in the input signal 82b or 82f exceed some threshold values, with the exception of a specific high frequency pattern corresponding to the considered direction. For the 45° direction, the horizontal and vertical high frequency components are detected respectively by the high-pass filters 192 and 194. Meanwhile, the mask 196 defines the specific pattern for the 45° direction. For the direction -45°, the high-pass filters 198 and 200 do the same function while the mask 202 defines the -45° pattern. The impulse responses of these filters as well as details of the detection process are given in Fig. 8. The detector's binary signal outputs are the signals 190b and 190f, respectively for directions 45° and -45°. Fig. 9 illustrates the high frequency detectors 86 for the directions 30° and -30° The two detectors 86 are similar to those presented in Fig. 8. The only difference resides in the specific high frequency pattern. For the direction 30°, this is provided by the filter 208, while for the direction -30°, it is provided by the filter 210. The detector's binary signal outputs are 190c and 190g respectively for the directions 30° and -30°. Figs. 10 and 11 illustrate four identical detectors 86 for the four nearly horizontal directions 7°, -7°, 4°, and -4°. As an example, for the direction 7°, a horizontal filter 212 detects the horizontal high frequency component. A vertical filter 214 does the same job for the vertical high frequency component. Further, a vertical mask 216 may be used for the specific pattern. Other detection details are also given in these Figures. The detector 86 outputs the signals 190d, 190h, 190e and 190i respectively for the directions 7°, -7°, 4° and -4°. Referring back to Fig.2, the edge direction calculator 84 outputs 220[a-i] and the high frequency detector outputs 190[a-i] are sent together into the edge direction selector 222 better shown in Fig. 12. First, the nine edge direction variations 220 are sent to a minimum selector 224 which outputs a first signal 226 comprising data related to a minimum value and its corresponding direction, and a second signal 228 having corresponding data. If two or more equal minimum values are detected, the device 224 selects only one direction according to the following priority: 90°, 45°, -45°, 30°, -30°, 7°, -7°, 4° and -4°. The first signal 226, the second signal 228, and the 90° variation signal 220a are applied to a logic device 230, whose pseudo-code is better shown in Fig. 13. The logic device 230 will select only the minimum (the first minimum) direction or the vertical direction. The second minimum is used for a consistent comparison purpose. The logic device 230 provides nine binary outputs 232a and 234 through 248 respectively for the nine directions 90°, 45°, 30°, 7°, 4°, -45°, - 30°, -7° and -4°. The output of the selected direction is set to "1" while the others are set to "0". Finally, the selected direction can be reset to "0" if the considered pixel is located in an unreliable high frequency region detected by the presence of the high frequency binary signals 190. With the exception of the vertical direction, each of the eight selector outputs is thus validated by a different AND gate 250a through 250h, with the negation of its respective detected high frequency binary signal. The nine resulting outputs are 232a through 232i, each representing one of the nine possible directions 90°, 45°, 30°, 7°, 4°, -45°, -30°, -7° and -4°. In general, the edge direction selector output signals 232[a-i] are spiky and comprise many inconsistently isolated directions or discontinuities along a main edge. Consequently, it may be necessary to reinforce the detection results before taking a final decision. The outputs 232[a-i] are sent into the edge binary filters 252, as shown in Fig. 2, in order to consolidate the decision to be taken. Except for the vertical direction (90°), the binary signals 232[b-i] may further be submitted to four (4) or five (5) consecutive phases of consolidation as better shown in Figs. 14 and 15. These five phases can be described successively as a horizontal, a directional, a vertical, another horizontal and finally a logical vertical consolidation. The last operation is employed only for nearly horizontal directions, namely 7°, -7°, 4° and -4°. Regarding the first four phases, each one may comprise eight (8) binary filters followed by level decision devices working in parallel. Each filter and its associated decision device may be used for one direction only. The filter masks and the level detectors are given in Figs 14 and 15. For example, the impulse response of the first consolidation filter 260 is (1,1,1,1,1) wherein the central coefficient corresponds to the current pixel position. The threshold 262 in the detector 264 is set equal to 2. The consolidation 2, also illustrated in Fig. 15 is directional and specific to one considered direction. The consolidations 3 and 4 shown in Fig. 14 have similar structure to that of the first consolidation. The consolidation 5 which is employed for nearly horizontal directions, is composed of four logical filters for four considered directions. Each filter is a linear vertical filter followed by a logical device running the code described by the pseudo code given in Fig. 14, and provides two binary outputs 266 and 268. The outputs 268[d, e, h, i] corresponding to the above-mentioned directions and called "Mix", may represent some composite condition in the output image line interpolation. Referring now to Fig. 18 which represents in pseudo code the final direction decision 270 whose input signals comprise two input vectors 135[b-i] and 150[d, e, h, i] respectively for directions and mixed conditions. The final direction decision output 54 represents the chosen interpolation direction with or without mixed condition and is sent both to the steered spatio-temporal interpolator 42 and to the vertical motion decision device 272, as illustrated in Fig. 2. For a mixed condition, the interpolator 42 combines the directional and the vertical interpolations into a mean value as described by Eqs.. 12-15. Otherwise, the interpolation is strictly directional. Moreover, in the vertical motion device 272, only the direction information carried by the signal 54 may be considered. Refering back to Fig. 2, the vertical motion detector 46 is designed to detect vertically moving horizontal lines. In the case of vertically moving horizontal lines, the vertical motion signal at 62 is "on" and the multiplexer 60 selects the vertical interpolator output 56. Otherwise the steered spatio-temporal interpolator output 58 is selected by the multiplexer 60. In order to get a reliable result, the vertical motion detector 46 works on the lowpass filtered version of the luminance input signal. The filtering is done in the present field, i.e. signal 34, through the filter 120 in the previous field, i.e. signal 35, through the filter 138 and the next field, i.e. signal 30, through the filter 137. These filter outputs, respectively 121, 77 and 76 are sent together to a temporal direction difference calculator 139. The whole vertical motion detector is illustrated in some detail in Fig. 20. The temporal direction difference calculator 139 finds the 4 following values, generally designated at 144[a..d]: T 0 = |Y 3 (B 0 ) - Y 3 (C 0 ) T 1 = |Y 3 (A 0 ) - Y 3 (A' 0 )| T 2 = |Y 3 (E'0) - Y 3 (D 0 )| + 8 T 3 = |Y 3 (E 0 ) - Y 3 (D' 0 )| + 8 wherein 8 is the utilized offset bias value introduced for the "up" and "down" motion indications T 2 and T 3 , and Y 3 denotes the lowpass filtered version of luminance signal Yp at 104. The four outputs values T i designated at 144[a..d] are applied together with the final estimated spatial direction indicative signal D f at 151 to a vertical motion decision device 140, which produces an output signal Dt 145[a,b] in accordance with the following rule: D t = "up" if T 2 is min and D 7 = 90° "down" if T 1 is min and D 7 = 90° "else", otherwise. Since Dt is given a value amongst three possibilities, it can be represented by two binary signals: "up/no up"; and "down/no down". The vertical motion signal Dt at 145[a,b] is still spiky. In order to get a reinforced final decision, it is necessary to utilize binary filters in a similar manner as the previously described edge direction detector. In this case, the binary filters 141 are composed of two sets of binary filters, one for "up" motion, one for "down" motion. Each set of filters is composed of three kinds of filters placed in series, namely 1901, 1902 and 1903 respectively for 2D, horizontal and vertical binary filters. The vertical motion signal Dt at the input of the two filter sets produces a "1" for the up filter and a "0" for the down filter when the decision is "up". Inversely it produces a "0" for the up filter and a "1" for the down filter when the decision is "down". The 2D binary filters 1901 (one for up, one for down) are spatial 3X3 filters producing a "1" at their respective outputs by a majority vote. Precisely, a "1" will be produced at the filter output for the current pixel if, at least, five of the nine considered pixels in the filter are "1". Otherwise a "0" will be produced. The 2D filter outputs 1905[a,b] are applied to two separate horizontal filters 1902 working independently. Each horizontal filter 1902 utilizes a majority vote of five horizontal consecutive pixels in the filter. The horizontal filter outputs 1906[a,b] are applied in turn to two separate vertical filters 1903 working independently by a majority vote from their respective 3 vertical consecutive pixels. These two last filters 1903 send their result 1907[a,b] to a combiner 1904 which combines these two results to produce a final vertical motion signal 146 representing a vertical motion (up or down) or no motion. This signal 146 will control the multiplexer 60 in the selection of two alternatives: vertical interpolation 56 for vertical motion or steered spatial interpolation 58 otherwise, as shown in Fig. 2. Referring now to Fig. 19, there is illustrated a four field moving/still detector used as a temporal motion detector as generally designated at 48 in Fig.1, wherein the detector inputs are the next and previous luminance signals 142 and 143. The field difference 1810 obtained from a subtractor 1801 is applied to a rectifier 1802 which sends, in turn, the absolute value (ABS) 1811 of the frame difference to an average filter 1803. The filter 1803, which calculates the sum of three consecutive values, sends the result to a thresholding device 1804. This device gives a binary "0" or "1" signal h at 1813. The threshold is set to be 4 to produce the "1" output signal. The signal h is also delayed through delay 1805 by 252 lines for the case of 60Hz or by 312 lines for 50Hz video. The line delay output is sent to a one line delay 1806 and the summing device 1807 which combines the line delay output signal 1814 and its one line delayed version 1815 to form a signal 1816 of three levels. The signal 1816 is then divided by two to form the signal 6 k at 1817. The two signals h and k, at 1813 and 1817 are combined together at 1809 by the following equation in order to give the final temporal motion or moving/still detection signal m at 148: m = h + k - h.k It is interesting to note that the detection signal m is a result of 2 consecutive fields video information. The detection signal m at 148 is used for the adaptation between the temporal or spatial interpolations as described previously with reference to Fig.2. Fig. 21 illustrates the adaptive line doubling technique for video image chrominance component. Applicants have found that an adaptation based on moving or still parts in a picture is good enough even for nearly horizontal edges. A first field delay 2001 receives the chrominance input signal at 005 as next chrominance signal to generate a present chrominance signal 2008, which in turn is fed to a second field delay 2002 to produce a previous chrominance signal at 2009. A vertical temporal interpolator 280, implementing a filter according to equation (11), receives the next, present and previous chrominance signals to produce a vertically and temporally interpolated chrominance signal at 2012. A temporal interpolator 2004, implementing a filter similar to equation (1), receives the next and previous chrominance signals to produce a temporally interpolated signal at 2011. Signals 2011 and 2012 are fed to a temporal motion adapter 2005 the output 2013 of which is controlled by the chrominance temporal motion indicative signal m c which is obtained by horizontally down sampling by two the signal m at 148 as produced by a temporal motion detector 48 as shown in Fig. 2, implementing equation (27). The present interpolated chrominance signal at 2013 is then fed to a multiplexer 2007 receiving the chrominance input signal through a further delay 2003, to produce the progressive chrominance signal at 006. Fig. 22 illustrates the preferred embodiment of the invention related to the frame frequency converter or to the field rate converter 12. Even if the following paragraphs describe mainly a frame frequency converter for an standard interlaced video signal, it is to be noted that the same technique may be used for converting the frame frequency of a progressive video signal, still from a lower frame frequency to a higher frame frequency. This particular feature is rarely needed, but is still useful for conversion of standard progressive video signals into HDTV progressive video signals which have higher frame frequency. In the preferred embodiment of the invention, the frame frequency converter 12 receives the standard interlaced video signal 14 having a field frequency of 59.9400599402 fields/s. This standard video signal 14 is fed simultaneously into the clock and field synchronization generator, into the buffer memory 302, into the frame counter 304 and into the frame insertion detector 312. The buffer memory means 302 are means that are used for generating an accelerated video signal 308 and may be a FIFO device, which reads the digital video input signal 14 using a 59.94Hz field synchronization control signal 306, and delivers at its output an accelerated video signal 308 having a field frequency of 60Hz, using the 60Hz field synchronization control signal 307. The accelerating means also called the buffer memory means 302 may also accept an insert frame control signal 310 for freezing a frame of video input in order to equilibrate the output video rate. The clock and field synchronization generator 300 provides the control signals 306 and 307 while the frame insertion detector 312 delivers the control signal 310. The frame counter 304 receives the video signal input 14 and counts from 0 to 1000 the incoming frames. The counter provides a time frame or window in which one new video picture should be inserted in order to get a total of 1001 pictures for each incoming sequence of 1000 pictures. This ratio 1001/1000 is necessary for providing a 60Hz video output starting from an initial frequency of 59.94Hz. The functional block diagram illustrated in Fig. 22 shows the proposed frame insertion detector 312 for the case of an interlaced video signal. The purpose of the detector is to determine the right moment in a given sequence of 1000 consecutive existing frames to insert a frame. This frame may be duplicate from an existing frame or, preferably, may be a new interpolated frame from adjacent existing frames In order to reduce visual artifacts that can be created when inserting the new picture, the proposed detector 312 may examine the sequence of frames in order to detect the following situations: a)- static or nearly static picture sequence, b)- sudden scene change, c)- reduced motion activity and d)- end of the time frame. The static situation a) is obvious, since the newly created picture is easy to be interpolated. The scene change situation b) is also understandable, since in such case, picture interpolation artifacts become not evident for the human visual system. The situation c) is a compromise technique in a dynamic picture sequence: an insertion will be made if motion activity is reduced below an adaptive varying threshold. The situation d) is self-explanatory and happens when no other situation has occurred until the counter reaches 1000 frames. The standard interlaced video signal 14 is fed into a motion indice calculator 320, illustrated in details in Fig. 24, which evaluates the average of absolute difference between the frames. This value, herein called the motion activity indice 322, is fed into a fixed thresholding device 324, into a scene change detector 326 and into an adaptive thresholding 328. The fixed thresholding 324 is simply a level detector, as better shown in Fig. 26, which is used for static or nearly static picture detection. It provides an FT output 330 which may be one of the signals meaning that the condition for possible picture insertion has arrived. The scene change detector 326 provides also a binary output 332 when the motion indice difference between two successive frames is larger than a given threshold. The corresponding scene change detector block diagram is illustrated in greater details in Fig. 25. The adaptive thresholding 328, illustrated in detail in Fig. 26, may comprise a first order low-pass filter 334 providing an output 336. The weighted value 338, changed by a possible factor of 0.9 coming from the low-pass filter output 336 is used as an adaptive varying threshold for the detector 340. If the instantaneous frame motion activity indice is smaller than the threshold signal 338, the detector AT output will be "ON" giving the signal for a possible picture insertion moment. The multiplexer 334' s function is to quickly change the varying threshold when a sudden scene change is detected. Referring back to Fig. 23, the frame count detector 350 provides a binary signal 352 that comprise a Count = 1000 signal, for picture insertion time limit. The frame counter detector 350 also provides a Count = 0 signal, 354, for the beginning of a time interval. This signal is sent to a logic device 356. Meanwhile, the four binary signals, 332, 330, 342 and 352 are fed into an OR gate 358 in order to provide an output signal 360 designating a possible picture insertion signal. This signal 360 is also sent into the logic device 356 in order to further provide the insert frame control signal 310, which will have a value "ON" only once during the 1000 frames time window. In fact, the frame insertion detector 15 only realizes the first event that occurs among the four possibilities: FT, SC, AT and Count = 1000. The frame control signal 310 is transmitted into buffer memory 302 for freezing condition and also to the multiplexer 364 for selecting the new interpolated picture 366 from frame interpolator 368. Fig. 27 illustrates the proposed technique for the frame interpolator module 368 and for the insertion means or frame insertion module 364. In order to reduce the motion discontinuity artifact which occurs when introducing a new, even interpolated picture, the proposed frame insertion technique is performed according to the preferred embodiment of the invention by substituting one incoming frame by two new and interpolated frames (substituting two incoming fields with four new and interpolated fields, for the interlaced case), when the inserting condition is detected. Fig. 27 also illustrates successively in time the various field positions. The present frame 400 composed of the two fields C and D is to be deleted. The two new frames composed, the first one being composed of the fields P and Q and the second one of the fields R and S, are to be inserted. The time distance between the previous fields B and the interpolated field P, may be, according to the best mode of the invention, 3/5 of the incoming field interval. The normalized distance between P and C is thus 3/10. For simplicity purpose, the proposed interpolation technique for the field P is based only on its two nearest existing fields, B and C. Similarly, it should be the fields C and D that are used for the calculation of the interpolated field Q, and so on. New field interpolation may be performed in two separate steps: a) the vertical interpolation for the missing lines in the existent fields and b) the temporal interpolation for the new fields to be inserted. Fig. 28 illustrates these separate interpolation filters. The reader is invited to take note that the pixel and the line notations are described in Fig. 27. The vertical interpolation for the missing lines is provided from a half-band filter whose impulse response is described by the following: (-8,0,40,64,40,0,-8)/64. The temporal filter for new field interpolation is a two taps filter in which the coefficients ¾ and ¼ are used and represent practical fixed-point values, approximately equal to the 3/5 and the 3/10 above mentioned normalized field distances. The coefficient ¾ is associated with the nearest existent field for the considered interpolated field. The coefficient ¼ is associated with the other existent field employed for the interpolation. For example, P2 may be described by the following expression: P2 = (3/4) CC2 + (1/4) B2 Referring back to Fig. 22, the interpolated video pictures 366 may be selected by the insert frame control signal 310 and by the multiplexer 364 in order to provide the output, a 60Hz interlaced video signal 16.

Claims: An edge direction detector (44) to be used in a video de-interlacer (20) for detecting at least one best direction from a set of pre-defined directions for producing a spatial direction control signal used for performing a spatio-temporal interpolation in said best direction, characterized in that: directional interpolator means (80) for performing an interpolation for each one of said pre-defined directions using a past, a present and a future video field signal received at its input, said directional interpolator means (80) outputting an interpolated signal comprising interpolated signals, for each pixel, for each of said pre-defined directions; and edge direction selector means (222) for selecting said at least one best direction for interpolating having minimum edge direction variations (220, 224) based on said interpolated signal received from said directional interpolator means (80). The edge direction detector (44) as claimed in claim 1, wherein said past, present and future video field signals are luminance video signals and said edge direction detector (44) further comprises: edge direction calculator and filtering means (84) for removing noise and strengthening a horizontal edge of said interpolated video signals, said edge direction calculator and filtering means (84) receiving said interpolated signals at its input and outputting corrected interpolated signals to said edge direction selector means (222); horizontal and vertical high frequency detector means (86) for detecting high frequency regions in said interpolated signals, said horizontal and vertical high frequency detector means (86) receiving at its input said interpolated signals and outputting to said edge direction selector means (222) a high frequency information signal representing said high frequency regions for each one of said pre-defined directions, whereby said high frequency regions are possible causes of errors in an edge direction estimation process; edge binary filter means(252) for filtering and reinforcing a result output by said edge direction selector means (222); and direction decision means (270) for selecting one best direction to be used for interpolation. The edge direction detector (44) as claimed in claim 2, wherein said pre-defined directions used for interpolating said video field signals form angles of approximately ±4°, ±7°, ±30°, ±45° and +90° in a floating reference system having its origin located at a pixel to be interpolated and having a first axis oriented horizontally. The edge direction detector (44) as claimed in claim 2 or 3, wherein said directional interpolator means (80) outputs said interpolated signals defined by the following equations: SST-4° = (4A-8 + 4A'8 + 2B0 + 2C0 - D-16 - D'16 - E-16 - E'16) / 8 SST+4° = (4A8+4A'-8+2B0+2C0-D16-D'-16-E16-E'-16)/8 SST-7° = (4A-4 + 4A'4 + 2B0 + 2C0 - D-8 - D'8 - E-8 - E'8) / 8 SST+7° = (4A4 + 4A'-4 + 2B0 + 2C0 - D8 - D'-8 - E8 - E'-8) / 8 SST-30° = (4A-2 + 4A'2 + 2B0 + 2C0 - D-4 - D'4 - E-4 - E'4) / 8 SST+30° = (4A2 + 4A'-2 + 2B0 + 2C0 - D4 - D'-4 - E4 - E'-4) / 8 SST-45° = (4A-1 + 4A'1 + 2B0 + 2C0 - D-2 - D'2 - E-2 - E'2) / 8 SST+45° = (4A1 + 4A'-1 + 2B0 + 2C0 - D2 - D'-2 - E2 - E'-2) / 8 SST90° = (18A0 + 18A'0 -2F0 -2F'0 + 4B0 + 4C0 -3D0 - 3D'0 - 3E0 - 3E'0+ H0 + H'0 + G0 + G'0) / 32 wherein SST is a first interpolated luminance signal associated with each of said directions; A±i is a value of a pixel ± i, in said reference system having its origin being located at said pixel to be interpolated, of a present field line containing said pixel to be interpolated; A'±i is a value of a pixel ± i, in said reference system, of a present existing field line adjacent to the pixel to be interpolated; B0 is a next field pixel value spatially corresponding to said pixel to be interpolated; C0 is a previous field pixel value spatially corresponding to said pixel to be interpolated; D±i is a value of a pixel ± i, in the reference system having its origin being located at a next field pixel spatially corresponding to the pixel to be interpolated, of a next field existing previous line adjacent a next field line containing the next field pixel; D'±i is a value of a pixel ± i, in the reference system having its origin being located at the next field pixel, of a next field existing next line adjacent the next field line; E±i is a value of a pixel ± i, in the reference system having its origin being located at a previous field pixel spatially corresponding to the pixel to be interpolated, of a previous field existing previous line adjacent a previous field line containing the previous field pixel; E'±i is a value of a pixel ± i, in the reference system having its origin being located at the previous field, of a previous field existing next line adjacent the previous field line; F0 is a value of a present field existing pixel adjacent to the pixel A0 in the direction +90°; F'0 is a value of a present field existing pixel adjacent a pixel corresponding to A'0 in the direction +90°. G0 is the value of a future field existing pixel adjacent to D0 in the direction +90°; G'0 is the value of a future field existing pixel adjacent to D'0 in the direction -90°; H0 is the value of a past field existing pixel adjacent to E0 in the direction +90°; and H'0 is the value of a future field existing pixel adjacent to E'0 in the direction -90°. An up-converter apparatus (10) for converting a standard interlaced video signal into a progressive HDTV video signal, said up-converter apparatus comprising: a video frame frequency converter (12) for converting said standard interlaced video signal having a first frame frequency into an intermediate interlaced video signal having a higher second frame frequency, said video frame frequency converter (12) comprising a converter input (14) for receiving said standard interlaced video signal; means (302) for generating an accelerated interlaced video signal from said standard interlaced video signal, said accelerated video signal having said higher second frame frequency; frame interpolator means (368) for creating at least two new interpolated fields by interpolation of existing adjacent fields of said standard interlaced video signal; and insertion means (364) for inserting said at least two new interpolated fields into a sequence of existing frames of said standard video signal upon control of an insert frame control signal and for outputting said sequence of frames including said interpolated fields at said higher second frequency as said intermediate interlaced video signal; and an edge direction detector (44) to be used in a video de-interlacer (20) receiving at an input (16) said intermediate interlaced video signal for detecting at least one best direction from a set of pre-defined directions for producing a spatial direction control signal used for performing a spatio-temporal interpolation in said best direction, said edge direction detector (44) comprising directional interpolator means (80) for performing an interpolation for each one of said pre-defined directions using a past, a present and a future video field signal received at its input, said directional interpolator means (80) outputting an interpolated signal comprising interpolated signals, for each pixel, for each of said pre-defined directions; and edge direction selector means (222) for selecting said at least one best direction for interpolating having minimum edge direction variations (220, 224) based or said interpolated signal received from said directional interpolator means (80); said apparatus (10) being characterized in that said converter (12) further comprises frame insertion detector means (312) for analyzing motion activity of said sequence of existing frames of said standard video signal and for detecting a best moment for adding at least one new frame in said sequence of existing frames of said standard video signal, said frame insertion detector means (312) producing said insert frame control signal when said best moment is detected. The up-converter apparatus (10) as claimed in claim 5, wherein said past, present and future video field signals are luminance video signals and said edge direction detector (44) further comprises: edge direction calculator and filtering means (84) for removing noise and strengthening a horizontal edge of said interpolated video signals, said edge direction calculator and filtering means (84) receiving said interpolated signals at its input and outputting corrected interpolated signals to said edge direction selector means (222); horizontal and vertical high frequency detector means (86) for detecting high frequency regions in said interpolated signals, said horizontal and vertical high frequency detector means (86) receiving at its input said interpolated signals and outputting to said edge direction selector means (222) a high frequency information signal representing said high frequency regions for each one of said pre-defined directions, whereby said high frequency regions are possible causes of errors in an edge direction estimation process; edge binary filter means (252) for filtering and reinforcing a result output by said edge direction selector means (222); and direction decision means (270) for selecting one best direction to be used for interpolation. The up-converter apparatus (10) as claimed in claim 5 or 6, wherein said pre-defined directions used for interpolating said video field signals form angles of approximately ±4°, ±7°, ±30°, ±45° and +90° in a floating reference system having its origin located at a pixel to be interpolated and having a first axis oriented horizontally, and said directional interpolator means (80) outputs said interpolated signals defined by the following equations: SST-4° = (4A-8 + 4A'8 + 2B0 + 2C0 - D-16 - D'16 - E-16 - E'16) /8 SST+4° = (4A8 + 4A'-8 + 2B0 + 2C0 - D16 - D'-16 - E16 - E'-16)/8 SST-7° = (4A-4 + 4A'4 + 2B0 + 2C0 - D-8 - D'8 - E-8 - E'8) / 8 SST+7° = (4A4 + 4A'-4 + 2B0 + 2C0 - D8 - D'-8 - E8 - E'-8) / 8 SST-30° = (4A-2 + 4A'2 + 2B0 + 2C0 - D-4 - D'4 - E-4 - E'4) / 8 SST+30° = (4A2 + 4A'-2 + 2B0 + 2C0 - D4 - D'-4 - E4 - E'-4) / 8 SST-45° = (4A-1 + 4A'1 + 2B0 + 2C0 - D-2 - D'2 - E-2 - E'2) / 8 SST+45° = (4A1 + 4A'-1 + 2B0 + 2C0 - D2 - D'-2 - E2 - E'-2) / 8 SST+90° = (18A0 + 18A'0 -2F0 -2F'0 + 4B0 + 4C0 -3D0 - 3D'0 - 3E0 - 3E'0+ H0 + H'0 + G0 + G'0) / 32 wherein SST is a first interpolated luminance signal associated with each of said directions; A±i is a value of a pixel ± i, in said reference system having its origin being located at said pixel to be interpolated, of a present field line containing said pixel to be interpolated; A'±i is a value of a pixel ± i, in said reference system, of a present existing field line adjacent to the pixel to be interpolated; B0 is a next field pixel value spatially corresponding to said pixel to be interpolated; C0 is a previous field pixel value spatially corresponding to said pixel to be interpolated; D±i is a value of a pixel ± i, in the reference system having its origin being located at a next field pixel spatially corresponding to the pixel to be interpolated, of a next field existing previous line adjacent a next field line containing the next field pixel; D'±i is a value of a pixel ± i, in the reference system having its origin being located at the next field pixel, of a next field existing next line adjacent the next field line; E±i is a value of a pixel ± i, in the reference system having its origin being located at a previous field pixel spatially corresponding to the pixel to be interpolated, of a previous field existing previous line adjacent a previous field line containing the previous field pixel; E'±i is a value of a pixel ± i, in the reference system having its origin being located at the previous field, of a previous field existing next line adjacent the previous field line; F0 is a value of a present field existing pixel adjacent to the pixel A0 in the direction +90°; F'0 is a value of a present field existing pixel adjacent a pixel corresponding to A'0 in the direction +90°. G0 is the value of a future field existing pixel adjacent to D0 in the direction +90°; G'0 is the value of a future field existing pixel adjacent to D'0 in the direction -90°; H0 is the value of a past field existing pixel adjacent to E0 in the direction +90°; and H'0 is the value of a future field existing pixel adjacent to E'0 in the direction -90°.

Inventors: KIEU CONG TOAI, LE DINH CHON TAM, POIRIER DANIEL, KIEU, CONG, TOAI, LE DINH, CHON, TAM, POIRIER, DANIEL
Applicants: MIRANDA TECHNOLOGIES INC, MIRANDA TECHNOLOGIES INC.
Application year: 1999
Main classification: H04N7
IPC codes: H04N5, H04N9, H04N7