IP Library Granted Patent US 8,818,136
Granted Patent B2
US 8,818,136 · App. 13/376,995 · Granted Aug 26, 2014

Image interpolation method based on matrix and image processing system

Inventor: Xiaodong Huang (Shanghai, CN)
Assignee: Montage Technology (Shanghai) Co., Ltd.
G06T5/001G06T3/4007H04N19/00757H04N19/00266H04N19/00127
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,818,136
App. No.
13/376,995
Granted
Aug 26, 2014
Kind
B2
Abstract

The present invention relates to an image interpolation method based on matrix and an image processing system. The image processing system first determines a gradient direction of an image region formed by a pixel dot array containing an interpolation point, and then based on the gradient direction and a position of the interpolation point, determines a triangle for interpolation in the image region formed with the pixel dot array, and finally, based on pixel values of pixel dots corresponding to three vertexes of the determined triangle and a distance from the interpolation point to a vertex of the triangle, calculates a pixel value of the interpolation point. Thus, the problem of edge jag or sawteeth of details in an oblique direction of a zoomed image is effectively solved, and a high-quality image is obtained. Furthermore, for the method the calculation is simple, and the computation load is light.

Claims (47)

1. An image interpolation method based on matrix in an image processing system, comprising steps of:

(A) determining a gradient direction of an image region formed by a pixel dot array containing an interpolation point, wherein Step (A) further comprises Step (A1) as follows:

(A1) comparing the pixel value of each pixel dot on a diagonal in the pixel dot array containing the interpolation point with the pixel values of pixel dots on the other diagonal respectively, so as to find out whether the image region formed by the pixel dot array is a flat region to further determine the gradient direction;

(B) determining a triangle for interpolation in the image region based on the gradient direction and position of the interpolation point; and

(C) calculating the pixel value of the interpolation point based on the pixel values of pixel dots corresponding to three vertexes of the determined triangle and the distance between the interpolation point and one of three vertexes of the determined triangle.

2. The image interpolation method based on matrix in an image processing system as in claim 1 , wherein Step (A1) comprises following step:

the image processing system comparing the pixel value of each of two pixel dots on the same diagonal and adjacent to the interpolation point, with the pixel values of two adjacent pixel dots on the other diagonal and adjacent to the interpolation point; and determining the image region formed by the pixel dot array as a flat region and determining the gradient direction as the diagonal direction if the following condition is satisfied: the pixel value of one of the two pixel dots on one diagonal is not smaller than the pixel values of two pixel dots adjacent to the interpolation point and on the other diagonal, and the pixel value of the other pixel dot is smaller than the pixel values of the two pixel dots adjacent to the interpolation point and on the other diagonal; and

Step (B) comprises following step:

selecting a triangle with this diagonal as its edge to be the triangle for interpolation according to the position of the interpolation point and the diagonal direction.

3. The image interpolation method based on matrix in an image processing system as in claim 1 , wherein Step (A1) further comprises steps A11 and A12 as follows:

(A11) determining the image region formed by the four pixel dots as a non-flat region if the following condition can't be satisfied: the pixel value of one of the two pixel dots on one diagonal is not smaller than the pixel values of two pixel dots adjacent to the interpolation point and on the other diagonal, and the pixel value of the other pixel dot is smaller than the pixel values of the two pixel dots adjacent to the interpolation point and on the other diagonal; and

(A12) determining the gradient direction by comparing the pixel value of each of the pixel dots adjacent to the interpolation point with the pixel values of its specific adjacent pixel dots both in horizontal and vertical directions.

4. The image interpolation method based on matrix in an image processing system as in claim 3 , wherein Step (A12) further comprises following step:

after comparing the pixel value of each of two pixel dots, which are adjacent to the interpolation point and on a same diagonal, with the pixel values of its specific adjacent pixel dots both in horizontal and vertical directions; determining the diagonal direction as the gradient direction if the comparison results demonstrate that the following condition is satisfied: the sum of the comparison result values in the horizontal and vertical directions of one of these two pixel dots is greater than a preset value, and the sum of the comparison result values in the horizontal and vertical directions of the other pixel dot is also greater than a preset value; and

Step (B) comprises following step:

selecting a triangle with this diagonal as its edge to be the triangle for interpolation according to the position of the interpolation point and the diagonal direction.

5. The image interpolation method based on matrix in an image processing system as in claim 3 , wherein Step (A12) further comprises following step:

determining a current gradient direction based on the gradient direction determined in previous interpolation if the following condition can't be satisfied: the sum of the comparison result values in the horizontal and vertical directions of one of these two pixel dots is greater than a preset value, and the sum of the comparison result values in the horizontal and vertical directions of the other pixel dot is also greater than a preset value; and

Step (B) further comprises step of:

selecting a triangle for interpolation according to the gradient direction determined in the previous interpolation.

6. The image interpolation method based on matrix in an image processing system as in claim 1 , wherein Step (C) comprises following step:

calculating a pixel value zout of the interpolation point according to the following formula:

z out= p 0−(− p 1 +p 0)* x −( p 0 −p 2)* y,

wherein, p 0 , p 1 , p 2 are pixel values of pixel dots corresponding to three vertexes of the triangle for interpolation, x and y respectively are a horizontal distance and a vertical distance from the interpolation point to the pixel dot having the pixel value of p 0 .

7. An image interpolation system based on matrix, comprising:

a gradient determination module, for determining a gradient direction of an image region formed by a pixel dot array containing an interpolation point, wherein the gradient determination module comprises:

a comparison module, for comparing a pixel value of each pixel dot on the same diagonal in the pixel dot array containing the interpolation point with pixel values of pixel dots on the other diagonal, so as to determine whether the image region formed by the pixel dot array is a flat region and further determine the gradient direction;

a triangle determination module, for determining a triangle for interpolation in the image region based on the gradient direction and a position of the interpolation point; and

a calculation module, for calculating a pixel value of the interpolation point based on pixel values of pixel dots corresponding to three vertexes of the triangle for interpolation and a distance from the interpolation point to one vertex of the triangle.

8. The image processing system for image interpolation based on matrix as in claim 7 , wherein the comparison module is further used for:

comparing the pixel value of each of two pixel dots on the same diagonal and adjacent to the interpolation point, with the pixel values of two adjacent pixel dots on the other diagonal and adjacent to the interpolation point; and determining the image region formed by the pixel dot array is a flat region and determining the gradient direction as the diagonal direction if the pixel value of one of the two pixel dots adjacent to the interpolation point on a same diagonal is not smaller than the pixel values of the two pixel dots adjacent to the interpolation point and on the other diagonal, and the pixel value of the other pixel dot is smaller than the pixel values of the two pixel dots adjacent to the interpolation point and on the other diagonal; and

the triangle determination module is further used for the following procedure:

selecting a triangle with this diagonal as its edge to be a triangle for interpolation according to the position of the interpolation point and the diagonal direction.

9. The image processing system for image interpolation based on matrix as in claim 7 , wherein the comparison module is further used for:

determining the image region formed by the pixel dot array as a non-flat region if the following condition can't be satisfied:

the pixel value of one of the two pixel dots adjacent to the interpolation point on a same diagonal is not smaller than the pixel values of the two pixel dots adjacent to the interpolation point and on the other diagonal, and the pixel value of the other pixel dot is smaller than the pixel values of the two pixel dots adjacent to the interpolation point and on the other diagonal; and

further determining the gradient direction by comparing the pixel value of each of two pixel dots, which are both adjacent to the interpolation point on a same diagonal, with the pixel values of its specific adjacent pixel dots both in horizontal and vertical directions.

10. The image processing system for image interpolation based on matrix as in claim 9 , wherein the comparison module is further used for:

comparing the pixel value of each of two pixel dots, which are both adjacent to the interpolation point on a same diagonal, with the pixel values of its specific adjacent pixel dots both in horizontal and vertical directions; and determining the diagonal direction as the gradient direction if the comparison results demonstrate that the following condition is satisfied: the sum of the comparison result values in the horizontal and vertical directions of one of these two pixel dots and the sum of the comparison result values in the horizontal and vertical directions of the other pixel dot are both greater than a preset value; and

the triangle determination module is further used for:

selecting a triangle with this diagonal as its edge to be the triangle for interpolation according to the position of the interpolation point and the diagonal direction.

11. The image processing system for image interpolation based on matrix as in claim 9 , wherein the comparison module is further used for:

comparing the pixel value of each of two pixel dots, which are both adjacent to the interpolation point on a same diagonal, with the pixel values of its specific adjacent pixel dots both in horizontal and vertical directions; and determining a current gradient direction based on a gradient direction determined in previous interpolation if the comparison results demonstrate that the following condition can't be satisfied: the sum of the comparison result values in the horizontal and vertical directions of one of these two pixel dots and the sum of the comparison result values in the horizontal and vertical directions of the other pixel dot are both greater than a preset value.

12. The image processing system for image interpolation based on matrix as in claim 7 , wherein the calculation module is further used for:

calculating a pixel value zout of the interpolation point according to the following formula:

z out= p 0−(− p 1 +p 0)* x −( p 0 −p 2)* y,

wherein p 0 , p 1 , p 2 are pixel values of pixel dots corresponding to three vertexes of the triangle for interpolation, x and y respectively are a horizontal distance and a vertical distance from the interpolation point to the pixel dot having the pixel value of p 0 .

Assignments (3)
SECURITY INTEREST Recorded Apr 24, 2024
From: MONTAGE LZ SEMICONDUCTOR (SHANGHAI) CO., LTD.
To: RENLAI ELECTRONIC TECHNOLOGIES (SHANGHAI) CO., LTD.
Reel/Frame 067200/0576 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2017
From: MONTAGE TECHNOLOGY (SHANGHAI) CO., LTD.
To: MONTAGE LZ SEMICONDUCTOR (SHANGHAI) CO., LTD.
Reel/Frame 044033/0137 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2011
From: HUANG, XIAODONG
To: MONTAGE TECHNOLOGY (SHANGHAI) CO., LTD.
Reel/Frame 027353/0600 →
Priority Claims (1)
CN 2011 1 0037074 · Feb 12, 2011 · national
Continuity (1)
Related Publication 20130322780A1 · Dec 5, 2013