Fast edge-oriented image interpolation algorithm
Granted 23 Oct 2007 · 1 office action
Current assignee: CHEVRON TECHNOLOGY VENTURES LLC · originally LEADTEK RESEARCH INC.
Law firm: Law firm · Log in to unlock
Attorney: Attorney · Log in to unlock
Inventors: Mei-Juan Chen, Chin-Hui Huang · Examiner: Yosef Kassa · AU 2624 · TC 2600
Life of the application
9 dated eventsAbstract
The invention provides an image interpolating method, which comprises receiving the low resolution pixels Y ij . Then, a homogenous area and an edge area of the image are determined according to pixel differences of the pixels Y 2i,2j in comparing with a threshold. Then, the pixels Y 2i,2j belonging to the homogenous area are interpolated by a first interpolating algorithm, while the pixels Y 2i,2j belonging to the edge area are interpolated by a second interpolating algorithm.
Description
5 parts›BACKGROUND OF THE INVENTION
1. Field of Invention
The present invention relates to image scaling. More particularly, the present invention relates to image interpolating method to zoom a digital image.
2. Description of Related Art
Multimedia communication is becoming important in modem networks. Human can talk face to face and exchange the information each other by Internet and wireless communication. However, the digital image and video sequence have larger size of data, and network bandwidth is limited, thus the quality of multimedia communication decreases. If the low-resolution video sequences are coded in the encoder, and the low-resolution video sequences are enlarged to high-resolution ones using interpolation techniques in the decoder, the bandwidth will be saved.
Briefly, the image interpolation is about image enlargement. Some common interpolation algorithms are proposed, which include zero-order interpolation, linear interpolation and cubic convolution interpolation, . . . etc. To solve artifact effects, many algorithms are proposed, which interpolate images using pixels feature. However, the methods of determining pixel feature need higher computational complexity, and do not achieve real-time (30 frames/sec) image enlargement in video sequence.
To solve artifact effects for image interpolation, many algorithms are proposed. The algorithm can be based on spatial domain direction. The interpolated values along various directions are combined using directional weights, which depend on the variation in the direction. The algorithms also include convolution-based, wherein the interpolated pixels are classified to two decimations. The different decimations are interpolated using different filters, respectively. Also, a hybrid of convolution and median-based is conventionally used by splitting the interpolation into two directional stages.
Also and, a NEDI (new edge-directed interpolation) algorithm is a good algorithm, which produces better subjective quality for image enlargement. The basic idea in NEDI algorithm is first to estimate local covariance coefficient from a low-resolution image and then use these covariance estimates to adapt the interpolation at a higher resolution based on the geometric duality between the low-resolution covariance and the high-resolution covariance. The covariance-based interpolation algorithm has higher computational complexity.
The high-resolution covariance is estimated from its low-resolution counterpart based on their intrinsic “geometric duality”. Geometric duality refers to the correspondence between the high-resolution covariance and low-resolution covariance that couple the pair of pixels at the different resolutions but along the same orientation. FIG. 1 shows the geometric duality between the high-resolution covariance R kl , r k and the low-resolution covariance {circumflex over (R)} kl , {circumflex over (r)} k when interpolating the interlacing lattice Y 2i+1,2 j+1 form Y 2i,2j . Geometric duality facilitates the estimation of local covariance for 2-D signals without the necessity of explicitly estimating the edge orientation. Similar geometric duality can also be observed in FIG. 2 when interpolating the interlacing lattice Y ij (i+j=odd) from the lattice Y ij (i+j=even). In fact, FIG. 1 and FIG. 2 are isomorphic up to a scaling factor of 2 1/2 and a rotation factor of π/4.
The low-resolution covariance {circumflex over (R)} kl , {circumflex over (r)} k can be easily estimated from a local window of the low-resolution image using the classical covariance method
R ^ = 1 M 2 C T C , r ⇀ ^ = 1 M 2 C T y ⇀ ( 1 )
where {right arrow over (y)}=[y l . . . y k . . . y M 2 ] 2 is the data vector containing the M×M pixels inside the local window and C is a 4×M 2 data matrix whose k-th column vector is the four nearest neighbors of y k along the diagonal direction. The interpolated value of y 2i+1,2j+1 can be obtained in the following
Y 2 i + 1 , 2 j + 1 = ∑ k = 0 1 ∑ l = 0 1 α 2 k + 1 Y 2 ( i + k ) , 2 ( j + 1 ) ( 2 )
According to classical Wiener filtering theory, the optimal minimum mean squared error (MMSE) linear interpolation coefficients are given by
{right arrow over (α)}= R −1 {right arrow over (r)} (3)
According to (1) and (3), {right arrow over (α)} is obtained in the following.
{right arrow over (α)}=( C T C ) −1 ( C T {right arrow over (y)} ) (4)
The NEDI algorithm can be used to magnify the size of a grayscale image by any factor that is a power of two along each dimension. In the basic case where the magnification factor is just two, the resizing scheme consists of two steps: the first step is to interpolate the interlacing lattice Y 2i+1,2j+1 from the lattice Y 2i,2j ; and the second step is to interpolate the other interlacing lattice Y ij (i+j=odd) from the lattice Y ij (i+j=even).
Even though many interpolation algorithms have been proposed, the current interpolation algorithms still consume a lot of computation time to zoom an image up. A fast interpolating algorithm is still under developing.
›SUMMARY OF THE INVENTION
The invention provides an image interpolating method for zooming the low resolution pixels Y ij of an image into the high resolution pixels Y 2i,2j . The edge-orient is considered, so that the interpolation can be faster and image quality can remain at an acceptable level.
The invention provides an image interpolating method, which comprises receiving the low resolution pixels Y ij . Then, a homogenous area and an edge area of the image are determined according to pixel differences of the pixels Y 2i,2j in comparing with a threshold. Then, the pixels Y 2i,2j belonging to the homogenous area are interpolated by a first interpolating algorithm, while the pixels Y 2i,2j belonging to the edge area are interpolated by a second interpolating algorithm.
In the foregoing interpolating method, the step of determining the homogenous area and the edge area of the image uses three variables of
Δ Y 1 =|Y 2i,2j −Y 2i+2p,2j+2q |, p,q∈{( 0,1),(1,0)},
Δ Y 2 =|Y 2i+2,2j −Y 2i,2j+2 |, and
Δ Y 3 =|Y 2i,2j −Y 2i+2,2j+2 |
to determine whether the homogenous area or the edge area by a condition set of:
if ΔY 1 <the threshold then
the pixel Y 2i+p,2j+q is in the homogenous area
else
the pixel Y 2i+p,2j+q is in the edge area as one of edge pixels;
if ΔY 2 <the threshold and ΔY 3 <the threshold then
the pixel Y 2i+1,2j+1 is in the homogenous area
else if ΔY 2 <the threshold then
the pixel Y 2i+1,2j+1 is in the homogenous area
else if ΔY 3 <the threshold then
the pixel Y 2i+1,2j+1 is in the homogenous area else the pixel Y 2i+1,2j+1 is in the edge area as one of edge pixels.
In the foregoing interpolating method, the second interpolating algorithm can include interpolating the pixels Y 2i,2j along a direction having a minimum difference in the neighboring pixels.
In the foregoing image interpolating method, the neighboring pixels of one of the pixels Y 2i,2j does not include the determined edge pixel.
In the foregoing image interpolating method, when the minimum difference diff min is determined by taking a minimum of four differences of
diff 1 =|Y 2i−1,2j −Y 2i+1,2j |,
diff 2 =|Y 2i−1,2j−1 −Y 2i+1,2j+1 |,
diff 3 =|Y 2i,2j−1 −Y 2i,2j+1 |, and
diff 4 =|Y 2i+1,2j−1 −Y 2i−1,2j+1 |,
wherein the differences including one of the edge pixels is skipped.
In the foregoing image interpolating method, the pixel Y ij is obtained by calculating (Y 2i−1,2j +Y 2i+1,2j )/2 at a direction with the minimum pixel difference.
It is to be understood that both the foregoing general description and the following detailed description are exemplary, and are intended to provide further explanation of the invention as claimed.
›BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings are included to provide a further understanding of the invention, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.
FIG. 1 is a drawing, showing the geometric duality between the high-resolution covariance R kl , r k and the low-resolution covariance {circumflex over (R)} kl , {circumflex over (r)} k when interpolating the interlacing lattice Y 2i+1,2j+1 form Y 2i,2j .
FIG. 2 is a drawing, showing a similar geometric duality when interpolating the interlacing lattice Y ij (i+j=odd) from the lattice Y ij (i+j=even).
FIG. 3 is a flow diagram, schematically illustrating the process of the image interpolating method, according to a preferred embodiment of the invention.
FIG. 4 is a drawing, schematically illustrating the pixel difference in three directions, according to a preferred embodiment of the invention.
FIG. 5 is a drawing, schematically illustrating the result of an image Lena after the first step of the interpolating algorithm, according to a preferred embodiment of the invention.
FIG. 6 is a drawing, schematically illustrating the neighboring pixels.
FIG. 7 is a drawing, schematically illustrating the interpolation of the homogenous pixels.
FIG. 8 is a drawing, schematically illustrating the interpolation of the edge pixels.
FIG. 9 is a drawing, schematically illustrating the interpolation results by various algorithms for artificial image A.
FIG. 10 is a drawing, schematically illustrating a subjective quality of the portion of Lena image.
FIG. 11 is a drawing, schematically illustrating a subjective quality of the portion of Pepper image.
›DESCRIPTION OF THE PREFERRED EMBODIMENTS · 1 of 2
As previously mentioned, there are many conventional image interpolation algorithms having been proposed. However, the conventional method at least causes a calculation load. To solve the problem, a novel interpolation algorithm for image enlargement is introduced in the invention. The algorithm provides better subjective quality and lower computational complexity for image enlargement.
To design the new algorithm, at least two goals, which are lower computational complexity and better subjective quality, have been considered. The novel interpolation algorithm of the invention can be at least applied, for example, to video sequences and videoconference efficiently. However, a still image can also be enlarged by the image interpolation algorithm of the invention.
The image interpolation method to interpolate image preferably bases on analyzing the local structure. The original images are segmented dynamically into two areas: homogenous area and edge area. The interpolated pixels in the different areas correspond to different interpolation algorithms, respectively.
In the algorithm of the invention, the interpolated pixels are determined to belong to homogenous area or edge area using a threshold value. The threshold value for example is 10% of the full displaying range of the pixel value. For example, the full displaying range of gray level images are from 0 to 255, and the threshold is 25. The algorithm of the invention includes two steps 100 and 102 , as shown in FIG. 3 . In step 104 of the first step 100 , a definition is made for the differences on the horizontal, vertical and diagonal directions, respectively, in the 3×3 window. Referring to FIG. 4 , the differences on three directions one by one are determined. If the pixel difference is less than the threshold value, the pixel belongs to a homogenous area, wherein the homogenous pixel is interpolated using, for example, bilinear interpolation algorithm (step 106 ). If the pixel difference is bigger than the threshold value, it belongs to an edge area. After the first step 100 , some remaining non-interpolated pixels then belong to the edge area. Second, the edge pixels are interpolated by the proposed algorithm of the invention, which interpolates edge pixels using neighboring pixels information. The neighboring pixels contain original pixels and interpolated pixels in the first step 100 .
FIG. 5 shows the result of first step 100 of the invention for Lena image. Some non-interpolated pixels exist at the image edge. In the second step 102 of the invention, the edge pixels are interpolated using all neighboring pixels, which contain original pixels and interpolated pixels at first step. As shown in FIG. 6 , the neighboring pixels contain black-points, gray-points and spot-points. We know the smallest pixel difference imply the greatest relation between the pixels. Furthermore, the edge pixel is interpolated along the direction of the minimum difference. If all of the spot-points belong to interpolated pixels at the first step 100 , the minimum difference is found on four directions through the white-point (edge pixel). If any spot-points belong to edge pixels, the minimum difference is found on the other directions excluding the edge pixels. In the following, the proposed algorithm is described in detail.
Referring to FIG. 7 , it is assumed that the X of low-resolution image with size H×W is enlarged to the Y of high-resolution image with size 2H×2W. The Y 2i,2j is zoomed from X ij and it is determines about the homogenous pixels at Y 2i+1,2j , Y 2i,2j+1 and Y 2i+1,2j+1 using pixel difference criterion. If these pixels homogenous pixels, it is interpolated for these pixels using, for example, bilinear interpolation algorithm. The pixel difference criterion is described as following:
Δ Y 1 =|Y 2i,2j −Y 2i+2p,2j+2q |
Δ Y 2 =|Y 2i+2,2j −Y 2i,2j+2 |
Δ Y 3 =|Y 2i,2j −Y 2i+2,2j+2 |
if ΔY 1 <threshold then
Y 2i+p,2j+q =( Y 2i,2j +Y 2i+2p,2j+2q )/2 (5)
else
Y 2i+p,2j+q are edge pixel (6)
where p,q ∈{(0,1),(1,0)}
if ΔY 2 <threshold and ΔY 3 <threshold then
ΔY min =min{ ΔY 2 , ΔY 3 }
if ΔY min =ΔY 2
Y 2i+1,2j+1 =( Y 2i+2,2j +Y 2i,2j+2 )/2 (7)
else
Y 2i+1,2j+1 =( Y 2i,2j +Y 2i+2,2j+2 )/2 (8)
else if ΔY 2 <threshold then
Y 2i+1,2j+1 =( Y 2i+2,2j +Y 2i,2j+2 )/2 (9)
else if ΔY 3 <threshold then
Y 2i+1,2j+1 =( Y 2i,2j +Y 2i+2,2j+2 )/2 (10)
else
Y 2i+1,2j+1 is edge pixel. (11)
The edge pixels are the non-interpolated pixels after the decision of pixel difference criterion and processed by following procedure.
An Edge-Oriented Adaptive Interpolation for the edge pixels of the invention is described as an example.
To find the minimum difference, two cases are described in the following. Case 1, all of the neighboring pixels are already interpolated at first step. The algorithm interpolates the edge pixels by the neighboring pixels of four directions. The minimum difference among four directions is evaluated first. The direction of the minimum difference represents that the edge pixel is oriented to this direction as shown in FIG. 8 . The procedure of the minimum difference algorithm is shown as following:
diff 1 =|Y 2i−1,2j −Y 2i+1,2j |
diff 2 =|Y 2i−1,2j−1 −Y 2i+1,2j+1 |
diff 3 =|Y 2i,2j−1 −Y 2i,2j+1 |
diff 4 =|Y 2i+1,2j−1 −Y 2i−1,2j+1 |
diff min =min{diff k }, for k= 1-4 (12)
In case 2, some of neighboring pixels are not interpolated at first step. In other words, some of neighboring pixels belong to the edge pixels, too. The minimum difference is found by using remaining neighboring pixels. The case 2 is explained in the following. Referring to FIG. 8 , it is assumed that two pixels Y 2i−1,2j+1 and Y 2i,2j+1 are not interpolated at first step as an example, then the minimum difference is found by skipping these two directions. The procedure shows in the following.
diff 1 =|Y 2i−1,2j −Y 2i+1,2j |
diff 2 =|Y 2i−1,2j−1 −Y 2i+1,2j+1 |
diff min =min{diff k }, for k= 1-2 (13)
From the above cases, we can find the orientation of the diff min . For example, if the diff min is found as diff 1 , Y 2i−1,2j correlates closely with Y 2i+1,2j , and Y 2i,2j is interpolated using (14).
›DESCRIPTION OF THE PREFERRED EMBODIMENTS · 2 of 2
Y 2i,2j =( Y 2i−1,2j +Y 2i+1,2j )/2 (14)
Experiments are performed to verify the image interpolating method of the invention. It has been tested for comparing subjective and objective qualities of Zero-order, Bilinear, Bicubic, NEDI and proposed algorithms. Six gray-level images, Pepper, Milkdrop, Tiffany, Comtal, Jet, Lena and three color images, Pepper, Jet, Lena are tested. Our goals are real-time interpolation and better subjective quality. The experiment results are shown in the following.
Zero-order, bilinear and bicubic are well-known linear interpolation methods, and the PSNR and computational complexity of these algorithms are compared and shown in Table 1 and Table 4, respectively. Then, the interpolation algorithm of homogenous area is decided according to the above results. The PSNR of bilinear and bicubic interpolation algorithms are similar, but the bicubic interpolation algorithm has greater computational complexity than bilinear interpolation algorithm. So, the bilinear interpolation algorithm is used in the first step of our proposed algorithm.
FIG. 9 shows the subjective quality for step edge test. In FIG. 9 , the simple image is interpolated, and the result of NEDI algorithm has better performance than zero-order, bilinear and bicubic algorithms. The result of our proposed algorithm is similar to the NEDI algorithm. FIG. 10 and FIG. 11 show subjective qualities for the portions of Lena and Pepper images. In FIG. 10 and FIG. 11 , the image edge is concerned, and the interpolated images have smoother on edge. Also and, the shoulders and the brim of a hat in FIG. 10 are observed, and pepper in FIG. 11 is observed. Table 2 shows the objective quality of gray-level images for up sample from 256×256 to 512×512 and from 128×128 to 512×512, and Table 3 shows the objective quality of color images for up sample from 256×256 to 512×512 and 128×128 to 512×512. The proposed algorithm of the invention has better objective quality in the most of gray-level images. According to the above results, it is found that the NEDI algorithm has worse objective quality but has better subjective quality. The NEDI algorithm hides the distortion in homogenous area, and human eyes are not sensitive for homogenous area. So, our proposed algorithm has better objective quality than NEDI algorithm, and has similar subjective quality to NEDI algorithm.
The computational complexity of each algorithm is shown in Table 4. According to Table 4, the NEDI algorithm has the highest computational complexity on edge area. And, our proposed algorithm has lower computational complexity than most of other algorithms.
In conclusions, the proposed algorithm at least successfully achieves two goals, which can have real-time interpolation and the subjective quality similar to edge direction interpolation. So, the proposed algorithm can be applied to videoconference, which transforms QCIF to CIF size or transforms CIF to 4CIF size. And, the quality of videoconference will be promoted.
It will be apparent to those skilled in the art that various modifications and variations can be made to the structure of the present invention without departing from the scope or spirit of the invention. In view of the foregoing, it is intended that the present invention covers modifications and variations of this invention provided they fall within the scope of the following claims and their equivalents.
›Tables in the description — 3
| Zero-order | Bilinear | Bicubic | |
| (dB) | (dB) | (dB) | |
| PSNR | 26.61 | 29.96 | 30.05 |
| 256 × 256 to 512 × 512 | 128 × 128 to 512 × 512 | |||||||||||
| Pep- | Milk- | Milk- | Tif- | |||||||||
| per | drop | Tiffany | Comtal | Jet | Lena | Pepper | drop | fany | Comtal | Jet | Lena | |
| Zero- | 27.53 | 29.85 | 27.87 | 25.39 | 26.61 | 29.01 | 24.39 | 26.36 | 26.12 | 22.01 | 23.47 | 25.87 |
| order | ||||||||||||
| Bilinear | 32.19 | 34.18 | 29.90 | 29.60 | 30.79 | 34.17 | 27.52 | 29.60 | 27.77 | 24.58 | 25.91 | 28.67 |
| Bicubic | 32.27 | 34.31 | 29.86 | 29.73 | 31.19 | 34.68 | 27.50 | 29.66 | 27.61 | 24.50 | 25.97 | 28.75 |
| NEDI | 28.54 | 29.20 | 28.58 | 27.06 | 28.97 | 30.10 | 23.94 | 24.94 | 24.86 | 22.21 | 23.62 | 24.98 |
| Pro- | 33.35 | 35.34 | 29.99 | 29.95 | 30.77 | 33.95 | 28.96 | 31.16 | 27.90 | 24.77 | 25.99 | 28.56 |
| posed |
| 256 × 256 to 512 × 512 | 128 × 128 to 512 × 512 | |||||
| Pepper | Jet | Lena | Pepper | Jet | Lena | |
| Zero- | 26.14 | 25.93 | 28.04 | 23.34 | 23.19 | 25.14 |
| order | ||||||
| Bilinear | 30.01 | 29.35 | 32.57 | 26.25 | 25.37 | 27.77 |
| Bicubic | 29.95 | 29.62 | 32.86 | 26.14 | 25.38 | 27.78 |
| NEDI | 27.06 | 27.41 | 29.11 | 23.17 | 23.00 | 24.46 |
| Proposed | 30.84 | 29.45 | 32.32 | 27.47 | 25.49 | 27.64 |
Claims as granted
12 claimsLog in to read the claims of this application.
Log in to unlockClassifications
9 codes- G06T3/40
- G06K9/32
Claim changes
SoonSee which claims were amended, added or cancelled during examination, with every added and removed word marked.
The published claims of this application are not paired with the granted ones in what we hold.
File wrapper
See the full prosecution history — every USPTO and applicant action on this file, in order.
Log in to unlockDocuments
Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.
Log in to unlockChain of title
See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.
Log in to unlock