IP Library › Granted Patent US 8,498,330
Granted Patent B2
US 8,498,330 · App. 12/493,785 · Granted Jul 30, 2013

Method and apparatus for coding mode selection

Inventors: Yan Ho Kam (Kowloon, HK); Wan Chi Siu (New Territories, HK); Yui Lam Chan (Kowloon, HK); Wai Lam Hui (New Territories, HK); Wai Hong Wong (Quarry Bay, HK); Ka Man Cheng (Kowloon, HK); Yan Huo (Shenzhen, CN)
Assignee: Hong Kong Applied Science and Technology Research Institute Company Limited
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,498,330
App. No.
12/493,785
Granted
Jul 30, 2013
Kind
B2
Abstract

Method and apparatus for providing a fast and accurate video coding process are disclosed. After checking the coding history of certain coded video frame units of a video, the order of the inter prediction and the intra prediction is adaptively exchanged for each coding video frame unit of an inter frame. Furthermore, the computations for coding modes in the latter part of the computation order are selectively skipped so as to speed up the coding process without degrading the video quality.

Claims (54)

1. A method of video coding mode selection, comprising:

retrieving, by a processor, coding history of one or more specific coded video frame units;

determining, by the processor, whether a first motion prediction to be performed on a current coding video frame unit being with either an inter prediction or an intra prediction according to the retrieved coding history;

performing, by the processor, the first motion prediction on the current coding video frame unit;

determining, by the processor, a best inter prediction mode among one or more possible inter prediction modes for said first motion prediction if the first motion prediction being performed with an inter prediction, or a best intra prediction mode among one or more possible intra prediction modes for said first motion prediction if the first motion prediction being performed with an intra prediction;

comparing, by the processor, the performance of said best inter prediction mode if the first motion prediction being performed with an inter prediction or said best intra prediction mode if the first motion prediction being performed with an intra prediction with a threshold value to determine whether to bypass a second motion prediction; wherein if the second motion prediction is not bypassed, the second motion prediction to be performed with an inter prediction if the first motion prediction being an intra prediction; otherwise with an intra prediction.

2. The method as claimed in claim 1 , wherein said first motion prediction is to be performed with an intra prediction if more than half of the specific coded video frame units being intra coded.

3. The method as claimed in claim 1 , wherein said first motion prediction is to be performed with an inter prediction if more than half of the specific coded video frame units being inter coded.

4. The method as claimed in claim 1 , wherein said coding history including: coding mode, motion vectors, cost value, sum-of-absolute-difference (SAD), sum-of-squared-difference (SSD), mean-of-absolute-difference (MAD), mean-of-squared-difference (MSD), and sum-of-absolute-transformed-difference (SATD) of each specific coded video frame unit.

5. The method as claimed in claim 1 , wherein said one or more specific coded video frame units are selected from:

a coded video frame unit which is adjacent to the current coding video frame unit,

a coded video frame unit which is on top of the current coding video frame unit,

a coded video frame unit which is on left of the current coding video frame unit,

a coded video frame unit which is on top-left of the current coding video frame unit, or

a coded video frame unit which is on top-right of the current coding video frame unit.

6. The method as claimed in claim 1 , wherein said one or more specific coded video frame units are selected from:

a coded video frame unit in a coded video frame with a position same as the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on top of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on left of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on right of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on top-left of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on top-right of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on bottom of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on bottom-left of the current coding video frame unit, or

a coded video frame unit in a coded video frame with a position on bottom-right of the current coding video frame unit.

7. The method as claimed in claim 1 , wherein said threshold value is a fixed value predefined for the current video frame.

8. The method as claimed in claim 1 , wherein said threshold value is selected from: a maximum value, a minimum value, an average value, a median value, a weighted average value, or a weighted median value of the one or more specific coded video frame units.

9. An apparatus for video coding mode selection, comprising:

a first motion predictor;

a checker for checking coding history of one or more specific coded video frame units to determine whether the first motion predictor is to perform either an inter prediction or an intra prediction on a current coding video frame unit;

a selector for selecting a best inter prediction mode among one or more possible inter prediction modes for the first motion predictor in performing the inter prediction if the first motion predictor is to perform an inter prediction, or a best intra prediction mode among one or more possible intra prediction modes for the first motion predictor in performing the intra prediction if the first motion prediction is to perform an intra prediction;

a second motion predictor;

a comparator for comparing output of the first motion predictor with a threshold value to decide whether to bypass the second motion predictor; wherein if the second motion predictor is not bypassed, the second motion predictor is to perform an inter prediction if the first motion predictor performed an intra prediction; otherwise the second motion predictor is to perform an intra prediction.

10. The apparatus as claimed in claim 9 , wherein the first motion predictor performs an inter prediction if more than half of the specific coded video frame units are inter mode.

11. The apparatus as claimed in claim 9 , wherein the first motion predictor performs an intra prediction if more than half of the specific coded video frame units are intra mode.

12. The apparatus as claimed in claim 11 , wherein said coding history including: coding mode, motion vectors, cost value, sum-of-absolute-difference (SAD), sum-of-squared-difference (SSD), mean-of-absolute-difference (MAD), mean-of-squared-difference (MSD) and sum-of-absolute-transformed-difference (SATD) of each specific coded video frame unit.

13. The apparatus as claimed in claim 9 , wherein said one or more specific coded video frame units are selected from:

a coded video frame unit which is adjacent to the current coding video frame unit,

a coded video frame unit which is on top of the current coding video frame unit,

a coded video frame unit which is on left of the current coding video frame unit,

a coded video frame unit which is on top-left of the current coding video frame unit, or

a coded video frame unit which is on top-right of the current coding video frame unit.

14. The apparatus as claimed in claim 9 , wherein said one or more specific coded video frame units are selected from a group consisting of:

a coded video frame unit in a coded video frame with a position same as the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on top of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on left of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on right of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on top-left of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on top-right of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on bottom of the current coding video frame unit,

a coded video frame unit in a coded video frame with a position on bottom-left of the current coding video frame unit, or

a coded video frame unit in a coded video frame with a position on bottom-right of the current coding video frame unit.

15. The apparatus as claimed in claim 9 , wherein said threshold value is a fixed value predefined for the current video frame.

16. The apparatus as claimed in claim 9 , wherein said threshold value is selected from: a maximum value, a minimum value, an average value, a median value, a weighted average value, or a weighted median value of the one or more specific coded video frame units.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2009
From: KAM, YAN HO; SIU, WAN CHI; CHAN, YUI LAM; HUI, WAI LAM; WONG, WAI HONG; CHENG, KA MAN; HUO, YAN
To: HONG KONG APPLIED SCIENCE AND TECHNOLOGY RESEARCH INSTITUTE COMPANY LIMITED
Reel/Frame 022946/0861 →
Continuity (1)
Related Publication 20100329341A1 · Dec 30, 2010