JP2006014342A - ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 - Google Patents
ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 Download PDFInfo
- Publication number
- JP2006014342A JP2006014342A JP2005185713A JP2005185713A JP2006014342A JP 2006014342 A JP2006014342 A JP 2006014342A JP 2005185713 A JP2005185713 A JP 2005185713A JP 2005185713 A JP2005185713 A JP 2005185713A JP 2006014342 A JP2006014342 A JP 2006014342A
- Authority
- JP
- Japan
- Prior art keywords
- prediction mode
- block
- distortion
- sub
- blocks
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 152
- 238000003491 array Methods 0.000 claims description 16
- 238000013139 quantization Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims 6
- 238000007796 conventional method Methods 0.000 abstract description 19
- 238000010845 search algorithm Methods 0.000 description 67
- 238000010187 selection method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000007429 general method Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 229930091051 Arenine Natural products 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/57—Motion estimation characterised by a search window with variable size or shape
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
【解決手段】1)符号化タイプ選択アルゴリズムにより、マクロブロックに対して最初に検討する符号化タイプ(16×16または4×4)を選択し、2)16×16符号化タイプを選択した場合には、歪みしきい値に基づいて従来の方法または改良した16×16予測モード探索アルゴリズムにより、マクロブロック上で使用することができる4つの16×16予測モードを検討し、3)4×4符号化タイプを選択した場合には、予測モード間の位置関係に基づいて、従来の方法または改良した4×4予測モード探索アルゴリズムにより、マクロブロックの16個の各4×4ブロックに対して使用する4×4予測モードを選択する。
【選択図】図7
Description
本出願は、2004年6月27日出願の「画像の符号化および復号化」(Encoding and Decoding Images)という名称の米国仮特許出願番号60/583,447の利益を主張する。
(技術分野)
本発明は、ビデオ・データを符号化するための符号化タイプおよび予測モードの選択に関する。
H.264圧縮規格の場合、ビデオ・フレームのマクロブロックを、16×16画素アレイとして内部符号化することができ、アレイの画素値が、前に符号化したマクロブロックから計算した値により予測される。16×16マクロブロックも、16個の4×4画素アレイとして内部符号化することができる。この場合、各4×4アレイ内の画素値は、前に符号化した4×4アレイから計算した値により予測される。16×16アレイ(ルマ(luma)ブロック)の場合には4つの内部予測モードを使用することができ、4×4アレイ(ルマ・ブロック)の場合には9つの内部予測モードを使用することができる。
それ故、マクロブロックを符号化する場合、下記の2つの決定(選択)を行わなければならない。すなわち、1)マクロブロックを16×16アレイ(本明細書においては、16×16符号化と呼ぶ)として符号化するのか、または16個の4×4アレイ(本明細書においては、4×4符号化と呼ぶ)として符号化するのかを決定しなければならないし、また2)マクロブロックを符号化するのに使用する予測モードを決定しなければならない。例えば、マクロブロックを16×16アレイとして符号化すると決定した場合には、16×16アレイに対して、4つの予測モードのうちのどれを使用するのかも決定しなければならない。マクロブロックを16個の4×4アレイとして符号化すると決定した場合には、16個の4×4アレイそれぞれに対して、4×4アレイに対する9つの予測モードのうちのどれを使用するのかを決定しなければならない。本明細書においては、ステップ1を符号化タイプ選択と呼び、ステップ2を予測モード選択と呼ぶ。
マクロブロックに対する最適な符号化タイプ(16×16符号化または4×4符号化)および最適な予測モードを選択するための全数探索アプローチは、マクロブロック内の4つのすべての16×16予測モード、および16個の4×4ブロックに対する9つの4×4予測モードのすべての組合わせのコストを決定するステップを含む。この場合、16×16予測モードまたはコストを最低にする4×4予測モードの特定の組合わせが選択される。各マクロブロックに対して、全数探索アプローチは、4×4予測モードの9^16の異なる組合わせを検討するように求め、そのため全数探索アプローチを実行するのは事実上不可能になる。
それ故、通常、あるマクロブロックに対する符号化タイプおよび予測モードを決定するために下記の演算が行われる。
1)4つのすべての可能な16×16予測モードアレイのコストの計算。
2)16個の各4×4ブロックに対する、最低のコストの(9つの予測モードのうちの)予測モードの選択と、その後での結果としての組合わせの全コスト(すなわち、16個の決定したコストの合計コスト)の計算。
3)ステップ1で決定したコストと、ステップ2で決定したコストとの比較、および最低のコストの選択。この選択により、符号化タイプ選択と予測モード選択の両方が行われる。
ある実施形態の場合には、ビデオ・フレーム内のマクロブロックに対する符号化タイプ選択、および予測モード選択を決定するためのもっと効率的な方法を使用している。ある実施形態の場合には、一般的な方法は、1)(簡単に計算できるマクロブロックの属性に基づく)符号化タイプ選択アルゴリズムにより、マクロブロックに対して最初に検討する符号化タイプ(16×16または4×4)を選択し、2)ステップ1で16×16符号化タイプを選択した場合には、歪みしきい値に基づいて、従来の方法または改良した16×16予測モード探索アルゴリズムにより、マクロブロック上で使用することができる4つの16×16予測モードを検討し、3)ステップ1で4×4符号化タイプを選択した場合には、予測モード間の位置関係に基づいて、従来の方法または改良した4×4予測モード探索アルゴリズムにより、マクロブロックの16個の各4×4ブロックに対して使用する4×4予測モードを選択する。
図1は、画素のマクロブロックに対する符号化タイプおよび予測モードを選択するための一般的な方法のフローチャートである。
図2は、画素のマクロブロックに対する符号化タイプを選択するための符号化タイプ選択方法のフローチャートである。
図3は、画素の16×16マクロブロックの予測モードを選択するための16×16予測モード探索方法のフローチャートである。
図4は、4×4アレイの9つの予測モード間の論理的/位置的関係を示す概念図である。
図5は、マクロブロックの4×4アレイに対する予測モードを選択する4×4予測モード探索方法のフローチャートである。
図6は、マクロブロックの4×4アレイに対する予測モードを選択する他の4×4予測モード探索方法のフローチャートである。
図7は、本発明のいくつかの実施形態を実施するコンピュータ・システムである。
以下の説明における、多数の詳細な点は説明のためのものである。しかし、通常の当業者であれば、本発明は、これらの特定の詳細な点を使用しなくても、実行することができることを理解することができるだろう。他の例の場合には、不必要な詳細な記述により、説明が分かりにくくならないように、周知の構造体およびデバイスをブロック図の形で示している。
ある実施形態の場合には、ビデオ・フレーム内のマクロブロックに対する符号化タイプの選択および予測モードの選択を決定するためのもっと効率的な方法を使用している。ある実施形態の場合には、一般的な探索アルゴリズムは、下記の演算、すなわち、
1)符号化タイプ選択アルゴリズム(簡単に計算できるマクロブロックの属性に基づく)による、マクロブロックに対して最初に検討する符号化タイプ(16×16または4×4)の選択。符号化タイプ選択アルゴリズムについては、I節で以下に説明する。
2)ステップ1で16×16符号化タイプを選択した場合の、歪みしきい値に基づいて、従来の方法または改良した16×16予測モード探索アルゴリズムによる、マクロブロック上で使用することができる4つの16×16予測モードの検討(すなわち、試験)。16×16予測モード探索アルゴリズムのある特定の状況の場合には、4×4符号化タイプの選択も行われることに留意されたい。このステップについては、II節で以下に説明する。
3)ステップ1で4×4符号化タイプを選択した場合の、予測モード間の位置関係に基づいて、従来の方法または改良した4×4予測モード探索アルゴリズムによる、マクロブロックの16個の各4×4ブロックに対して使用する4×4予測モードの選択を行う(III節で以下に説明する)。
探索アルゴリズムのステップ1において、符号化タイプ選択アルゴリズムが、最初の検討対象として16×16符号化タイプを選択した場合には、最終的に選択される符号化タイプは、16×16符号化タイプであっても、4×4符号化タイプであってもよいことに留意されたい。対照的に、符号化タイプ選択アルゴリズムが、最初の検討対象として4×4符号化タイプを選択した場合には、実際には、4×4符号化タイプが、マクロブロックに対する符号化タイプとして選択される。最初の検討対象として16×16符号化タイプを選択した場合には、マクロブロックに対する予測モードを決定するために、従来の方法または改良した16×16予測モード探索アルゴリズムが使用される。最初の検討対象として4×4符号化タイプを選択した場合には、マクロブロックに対する予測モードを決定するために、従来の方法または改良した4×4予測モード探索アルゴリズムが使用される。それ故、探索アルゴリズムにより最初の検討対象に対してどの符号化タイプを選択したかにより、予測モードを決定するために異なる探索アルゴリズム(従来のまたは改良した)が使用される。
次に、この方法は、符号化タイプ選択方法200により、マクロブロックに対して最初に検討する符号化タイプ(16×16または4×4)を選択する(105において)(図2のところで以下に説明する)。次に、この方法は、4×4符号化タイプを選択したかどうかを判断する(110において)。選択した場合には、この方法は、従来の方法、改良した4×4予測モード探索方法500により(図5のところで以下に説明する)、または他の4×4予測モード探索方法600により(図6のところで以下に説明する)、マクロブロックの16個の各4×4ブロックに対する予測モードを選択する(115において)。
この方法が、4×4符号化タイプを選択しなかった場合には(110−Noにおいて)、この方法は、16×16予測モード(図3のところで以下に説明するように、従来の方法または改良した16×16予測モード探索方法300により)、または4×4符号化タイプを選択する(120において)。次に、この方法は、4×4符号化タイプを選択したかどうか(120において)を決定する(125において)。選択した場合には、この方法は、ステップ115に進み、そこでマクロブロックの16個の各4×4ブロックに対する予測モードが選択される。この方法が、4×4符号化タイプを選択しなかったと判断した場合には(125−Noにおいて)、そのことは、特定の16×16予測モードが選択されたことを示す。ここでこの方法は終了する。
この節においては、一般的探索アルゴリズムのステップ1の符号化タイプ選択アルゴリズムについて説明する。符号化タイプ選択アルゴリズムは、マクロブロックに対して最初に検討する符号化タイプ(16×16または4×4)を選択し、それによりマクロブロックに対してどの予測モード(16×16モードまたは4×4モード)を最初に検討するのかを決定する。符号化タイプ選択アルゴリズムは、簡単に決定することができるマクロブロックの属性を使用する。
符号化タイプ選択アルゴリズムは、下記の演算を行う。
1)マクロブロックを4つの8×8ブロックに分割し、
2)各8×8ブロックの変化を計算し、所定のしきい値と比較する。例えば、所定のしきい値を、マクロブロックを含むフレーム内のすべての8×8ブロックの平均の変化に等しくセットすることができる。8×8ブロックの変化は、例えば、a)ブロック内のすべての画素値の平均を計算することにより、b)ブロック内の各画素を計算することにより:(画素値−平均)^2、c)ステップbのところで計算したすべての値を合計することにより、(すなわち、ブロック内のすべての画素に対して測定したすべての値を合計することにより)決定することができる。
3)所定のしきい値(マクロブロックを16×16ブロック、または16個の4×4ブロックに符号化すべきかどうかを決定するために使用する属性である)以下の変化を有するマクロブロック内の8×8ブロックの数を決定する。
4)4つすべての8×8ブロックが所定のしきい値以下の変化を有している場合には、16×16符号化タイプが最初の検討対象として選択される。最初の検討対象として16×16符号化タイプが選択された場合には、最終的に選択される符号化タイプは、16×16符号化タイプであっても、4×4符号化タイプであってもよいことに留意されたい。マクロブロック上で使用する16×16予測モードは、従来の方法または改良した16×16予測モード探索アルゴリズムにより選択することができる(II節のところで以下に説明する)。
5)4つの8×8ブロックの中のどれかが、所定のしきい値を超える変化を含んでいる場合には、4×4符号化タイプが選択される。それ故、次に、マクロブロックの16個の各4×4ブロック上で使用する4×4予測モードは、従来の方法または改良した4×4予測モード探索アルゴリズムにより決定される(III節のところで以下に説明するように)。
符号化プロセスの量子化ステップで使用する量子化パラメータ値が、比較的高い場合には(例えば、34を超える)、符号化タイプ選択アルゴリズムの演算は、上記説明から若干ずれることに留意されたい。これらの実施形態の場合には、所定のしきい値は、量子化パラメータ値(QP)である係数によりスケーリングされるので、量子化パラメータ値が増大すると所定のしきい値が増大する。ある実施形態の場合には、スケーリング係数は(1+k(QP−34))という形のスケーリング式により計算される。ここで、kは定数である。他の実施形態の場合には、スケーリング係数は他のスケーリング式により決定される。次に、スケーリングしたしきい値を入手するために、所定のしきい値に所定のスケーリング係数が掛けられる。
これらの実施形態の場合、4つの8×8ブロックの中のどれかがスケーリングしたしきい値を超える変化を有している場合には、マクロブロックは16個の4×4ブロックとして符号化される。この選択は、従来の方法または本発明の方法(改良した4×4予測モード探索アルゴリズムのような)により行うことができる。しかし、マクロブロックの4つのすべての8×8ブロックがスケーリングしたしきい値以下の変化を有している場合には、マクロブロックを16×16ブロックまたは16個の4×4ブロックとして符号化することができる。マクロブロック上で使用する16×16予測モードは、次に、従来の方法または改良した16×16予測モード探索アルゴリズムにより選択することができる(II節のところで以下に説明する)。4×4符号化タイプが選択した16×16予測モード上で選択された場合には、4×4予測モードを、従来の方法または本発明の方法(改良した4×4予測モード探索アルゴリズムのような)により選択することができる。
II節:16×16予測モード探索アルゴリズム
一般的な探索アルゴリズムのステップ1の後で、最初に、検討対象として16×16符号化タイプが選択された場合には、16×16予測モードが試験される。この節においては、一般的な探索アルゴリズムのステップ2について説明する。H.264コーデック規格の場合には、DC、V(垂直)、H(水平)およびP(平面)から選択するために、4つの可能な16×16内部予測モードを使用することができる。ある実施形態の場合には、16×16予測モードを選択するために従来の方法を使用することができる(例えば、4つの各16×16予測モードを決定し、コストが最も安いモードを選択することにより)。他の実施形態の場合には、予測モードによる歪みに基づいて、マクロブロックに対する16×16予測モードを検討(すなわち、試験)するために、改良した16×16予測モード探索アルゴリズムを使用することができる。
ある実施形態の場合には、16×16予測モード探索アルゴリズムは、今処理したマクロブロックに適用した場合に、特定の予測モードによる歪みを測定するために従来の方法を使用する。従来の方法の場合、この歪みは、1)隣接する前に符号化したマクロブロックから画素値を検索することにより、2)検索した画素値から新しい値を入手することにより、3)入手した値により、今処理したマクロブロックに対する予測値を計算することにより、4)今処理したマクロブロックの元の画素値と、計算した予測値との間の歪みを測定することにより決定される。しかし、従来の方法による歪みの測定は時間がかかる。
他の実施形態の場合には、16×16予測モード探索アルゴリズムは、今処理したマクロブロックに適用した場合、特定の予測モードによる歪みを測定するためにより高速な推定方法を使用する。この推定方法は、特定の予測モードによる予測値の推定値(エミュレーション)を与え、推定した予測値の歪みを測定する。
この推定方法の場合には、予測値は、境界のところで今処理したマクロブロックの画素値が、隣接するマクロブロックからの隣接する画素値に近いものと仮定して、今処理したマクロブロックからの画素値を使用して決定される。この推定方法を使用する歪みの測定は、もっと短い時間で行うことができる。何故なら、今処理したマクロブロックからの画素値は、他のマクロブロックからの画素値よりよく使用され、これにより検索時間が短縮するからである。この推定方法を使用すれば、精度をそんなに犠牲にしないで、歪み値を測定するのに必要な時間が有意に短縮する。
ある実施形態の場合には、この推定方法のための疑似コードは下記の通りである。
1)16×16DC予測モードを試験する。
a)16×16DC予測モードにより、マクロブロックの各4×4ブロック内で起きた歪みを測定する。
b)各4×4ブロック内の歪みが所定のしきい値より低い場合には、16×16DC予測モードがこのマクロブロックに対する予測モードとして選択され、16×16予測モード探索アルゴリズムは終了する。
c)任意の4×4ブロック内の歪みが所定のしきい値より大きい場合には、16×16予測モード探索アルゴリズムはステップ2に進む。
2)16×16V予測モードを試験する。
a)16×16V予測モードにより、マクロブロックの各4×4ブロック内で起きた歪みを測定する。
b)各4×4ブロック内の歪みが所定のしきい値より低い場合には、16×16V予測モードがこのマクロブロックに対する予測モードとして選択され、16×16予測モード探索アルゴリズムは終了する。
c)任意の4×4ブロック内の歪みが所定のしきい値より大きい場合には、16×16予測モード探索アルゴリズムはステップ3に進む。
3)16×16H予測モードを試験する。
a)16×16H予測モードによりマクロブロックの各4×4ブロック内で起きた歪みを測定する。
b)各4×4ブロック内の歪みが所定のしきい値より低い場合には、16×16H予測モードがこのマクロブロックに対する予測モードとして選択され、16×16予測モード探索アルゴリズムは終了する。
c)任意の4×4ブロック内の歪みが所定のしきい値より大きい場合には、16×16予測モード探索アルゴリズムは、16×16P予測モードおよび4×4符号化タイプを検討する。ある実施形態の場合には、2つの上記オプションの選択は、4×4予測モード探索アルゴリズムを使用することにより容易になる(III節のところで以下に説明する)。他の実施形態の場合には、2つの上記オプション間の選択は、従来の方法により行うことができる(例えば、16×16P予測モードおよび4×4符号化タイプを使用することにより最も低いコストを測定し、最も低いコストのオプションを選択することにより)。
この方法300は、16×16DC予測モードによりマクロブロックの16個の各4×4ブロック内の歪みを測定する(305において)ことによりスタートする。次に、この方法は、16×16DC予測モードによるすべての4×4ブロック内の歪みが、所定のしきい値歪みより小さいかどうかを判断する(310において)。小さい場合には、16×16DC予測モードが、マクロブロックに対して予測モードとして選択され(315において)、この方法は終了する。
この方法300が16×16DC予測モードによる任意の4×4ブロック内の歪みが所定のしきい値歪み以下でないと判断した場合には(310−Noにおいて)、この方法は、16×16V予測モードによるマクロブロックの16個の各4×4ブロック内の歪みを測定する(320において)。次に、この方法は、16×16V予測モードによるすべての4×4ブロック内の歪みが、所定のしきい値歪みより小さいかどうかを判断する(325において)。小さい場合には、16×16V予測モードがマクロブロックの予測モードとして選択され(330において)、この方法は終了する。
この方法300が、16×16V予測モードによる任意の4×4ブロック内の歪みが所定のしきい値歪み以下でないと判断した場合には(325−Noにおいて)、この方法は、16×16H予測モードによるマクロブロックの16個の各4×4ブロック内の歪みを測定する(335において)。次に、この方法は、16×16H予測モードによるすべての4×4ブロック内の歪みが、所定のしきい値歪みより小さいかどうかを判断する(340において)。小さい場合には、16×16H予測モードがマクロブロックに対する予測モードとして選択され(345において)、この方法は終了する。
この方法300が、16×16H予測モードによる任意の4×4ブロック内の歪みが所定のしきい値歪み以下でないと判断した場合には(340−Noにおいて)、この方法は、マクロブロックに対する予測モードとしての16×16P予測モードの設定、またはマクロブロックに対する4×4符号化タイプとの間で選択を行う(350において)。ある実施形態の場合には、2つの上記オプションの間の選択は、4×4予測モード探索アルゴリズム500を使用することにより容易になる(図5のところで以下に説明する)。他の実施形態の場合には、2つの上記オプションの間の選択は、従来の方法により行われる(すでに説明したように)。ここでこの方法は終了する。
一般的な探索アルゴリズムのステップ1の後で、4×4符号化タイプが最初の検討対象として選択された場合には、4×4予測モードがマクロブロックの16個の各4×4ブロックに対して選択される。この節においては、一般的な探索アルゴリズムのステップ3について説明する。ある実施形態の場合には、各4×4ブロックの4×4予測モードを選択するために従来の方法を使用することができる(例えば、9つの各予測モードのコストを決定し、コストが最も安いモードを選択することにより)。他の実施形態の場合には、4×4ブロックに対する4×4予測モードを選択するために、改良した4×4予測モード探索アルゴリズムを使用することができる。
すでに説明したように、ビデオ・ストリームは、各フレームが複数のマクロブロックからなる一連のビデオ・フレームからなる。マクロブロックは、通常、画素の16×16アレイであり(他のサイズのマクロブロックも使用することができるが)区画(4×4画素アレイの区画など)に分割される。H.264コーデック規格の場合には、フレームを内部符号化する場合、4×4アレイを符号化するのに9つの異なる方法がある(すなわち、9つの内部4×4予測モードがある)。これら9つのモードは、下記の通りである。
0.内部_4×4_垂直
1.内部_4×4_水平
2.内部_4×4_DC
3.内部_4×4_対角線_下_左
4.内部_4×4_対角線_下_右
5.内部_4×4_垂直_右
6.内部_4×4_水平_下
7.内部_4×4_垂直_左
8.内部_4×4_水平_上
各4×4アレイは、1つの予測モードだけで符号化される。通常、コストが最も安くなる予測モードが選択される。コストは、通常、歪み(この場合、歪みは、元の画素値と符号化された予測モード間の差を反映している)、または歪みの加重平均および予測モードによるビット数(この場合、歪みおよび/またはビット数が増大すると、コストが増大する)に等しい。コストが最も安い最適の予測モード(選択予測モード)を決定するために、9つすべての予測モード間の全数探索を行うことができる。しかし、通常、9つすべての予測モード間の全数探索は効率的でない(時間がかかりすぎるし、リソースの処理が多すぎる)。
ある実施形態の場合には、画素アレイに対する予測モードを決定するためのもっと効率的な方法が使用される。ある実施形態の場合には、画素アレイに対する予測モードを決定する際に、少ない数の予測モードを検討する探索アルゴリズムが使用される。この探索アルゴリズムは、もっと効率的であり、精度の低下も少ない。
この探索アルゴリズムは、4×4アレイの可能な9つの予測モード間の論理的/位置的関係をベースとしている。図4は、4×4アレイの9つの予測モード間の論理的/位置的関係を示す概念図である。図4に示すように、円の周囲には8つの予測モード(0、1、3、4、5、6、7および8)が位置していて、1つの予測モード(2)は、円の中心に位置していて、予測モードはノードで表している。円上の2つの予測モードの間隔が近ければ近いほど、2つの予測モード間の論理的/位置的関係は強い。それ故、円上の相互間の間隔が遠ければ遠いほど、2つの予測モードの論理的/位置的関係は弱くなる。例えば、予測モード0および5は円上で相互に隣接しているが、このことはこれら2つの予測モード間に強い論理的/位置的関係が存在することを示す。もう1つの例を挙げると、予測モード0および1は、円上の対向する位置に位置しているが、このことは、これら2つの予測モード間の論理的/位置的関係が弱いことを示す。予測モード2は、円の中心に位置しているが、このことはこの予測モードが、他の予測モードのどれとも論理的/位置的関係を有さないことを示す。
それ故、予測モード間の論理的/位置的関係の強弱は、(今処理した4×4アレイに対する予測モードが示す位置的関係に基づいて)アクセスすることができる。例えば、予測モード0の予測モード1に対する論理的/位置的関係は弱い。何故なら、今処理したアレイ(予測モード0が示す)上に位置する予測アレイは、今処理したアレイ(予測モード1が示す)の左に位置する予測アレイに対して弱い論理的/位置的関係を有しているからである。この弱い論理的/位置的関係は、予測モード0および1が円の対向部分に位置する図4に反映されている。対照的に、予測モード0は、予測モード5に対して強い論理的/位置的関係を有する。何故なら、今処理したアレイ(予測モード0で示す)の中に位置する予測アレイは今処理したアレイ(予測モード5で示す)の上および右に位置する予測アレイに対して強い論理的/位置的関係を有しているからである。この強い論理的/位置的関係は、予測モード0および5が円上で隣接している図4に反映されている。
円の周囲に位置する8つの予測モード(0、1、3、4、5、6、7および8)は、論理的/位置的に関連する予測モードの4つのグループに分けることができる。
1. 7、0および5(垂直_左、垂直および垂直_右)
2. 8、1および6(水平_上、水平および水平_下)
3. 7、3および8(垂直_左、対角線_下_左および水平_上)
4. 5、4および6(垂直_右、対角線_下_右、および水平_下)
同じグループ内の予測モードは、相互に強い論理的/位置的関係を有する。ある実施形態の場合には、探索アルゴリズムは、最初に、予測モード2のコストと一緒に、各グループからの1つの予測モードのコストを決定する。次に、探索アルゴリズムは、最もコストが安い予測モードのこの組間の予測モードを決定する。コストが最も安い予測モードが、予測モードの特定のグループ内に位置している場合には、9つすべての可能な予測モードの最もコストが安いものがこの特定のグループ内に含まれている可能性が高い。それ故、次に、探索アルゴリズムは、特定のグループ内の最もコストが安い予測モードを決定し、最もコストが安い予測モードがアレイに対する最適の予測モードとして選択される。
例えば、ある実施形態の場合には、探索アルゴリズムは、最初に、予測モード0、1、2、3および4のコストを決定する。この場合、予測モード0、1、3および4は、それぞれ異なるグループからのものである。予測モード0、1、3または4が、一組の予測モード(0、1、2、3および4)の中でコストが最も安い場合には、探索アルゴリズムは、前に決定した予測モードを含む予測モードのグループ内のコストが最も安いものを決定する。例えば、探索アルゴリズムが、予測モード1が、一組の予測モード(0、1、2、3および4)内でコストが最も安いと判断した場合には、探索アルゴリズムは、予測モード(8、1および6)のグループの中からコストが最も安いモードを決定し、コストが最も安い予測モードが最適な予測モードとして選択される。
ある実施形態の場合には、探索アルゴリズムは、最初に、所定の一組の予測モードのコストを検討し比較する。この一組の予測モードはいくつかの予測モードを含んでいるが、9つのすべての可能な予測モードを含んでいるわけではない。ある実施形態の場合には、所定の一組の予測モードは、4つの各予測モード・グループ(図4のところで説明した)からの1つの予測モードを含む。上記実施形態の場合には、所定の一組の予測モードは、予測モード0、1、2、3および4を含む。他の実施形態の場合には、所定の一組の予測モードは、他の予測モードを含む。
探索アルゴリズムは、この一組の予測モード内の各予測モードのコストを決定する。この場合、C0、C1、C2、C3およびC4は、それぞれ予測モード0、1、2、3および4に対して決定したコストである。各予測モードに対するコストは、当業者であれば周知の方法により決定することができる。次に、探索アルゴリズムは、コストが最も安い予測モードの索引番号(0、1、2、3または4)を決定する。この場合、変数nは決定した索引番号を表すために使用される。これらの演算は、下式により表すことができる。
次に、探索アルゴリズムは下記の演算を行う。
この方法500は、マクロブロックを16個の4×4アレイに分割する(505において)ことによりスタートする。次に、この方法は、第1の4×4アレイを処理のための現在の4×4アレイとしてセットする(510において)。現在の4×4アレイに対して、この方法500は、各予測モード0、1、2、3および4に対するコストを決定する(515において)。この方法は、コストが最も安い予測モードが2であるかどうかを判断する(520において)。2である場合には、この方法は、予測モード2を現在の4×4アレイに対する予測モードとしてセットする(525において)。次に、この方法は、処理するマクロブロック内に他の4×4アレイが存在するかどうかを判断する(585において)。存在する場合には、この方法は、次の4×4アレイを現在の4×4アレイとしてセットし(590において)、ステップ515に進む。存在しない場合には、この方法は終了する。
この方法がコストが最も安い予測モードが2でないと判断した場合には(520−Noにおいて)、この方法はコストが最も安い予測モードが0であるかどうかを判断する(530において)。0である場合には、この方法は各予測モード7、0および5に対するコストを決定する(535において)。次に、この方法は、コストが最も安い予測モード(予測モード7、0、5内の)を現在の4×4アレイに対する予測モードとしてセットする(540において)。次に、この方法はステップ585に進む。
この方法が、コストが最も安い予測モードが0でないと判断した場合には(530−Noにおいて)、この方法はコストが最も安い予測モードが1であるかどうかを判断する(545において)。1である場合には、この方法は各予測モード8、1および6に対するコストを決定する(550において)。次に、この方法は、コストが最も安い予測モード(予測モード8、1、6内の)を現在の4×4アレイに対する予測モードとしてセットする(555において)。次に、この方法はステップ585に進む。
この方法が、コストが最も安い予測モードが1でないと判断した場合には(545−Noにおいて)、この方法はコストが最も安い予測モードが3であるかどうかを判断する(560において)。3である場合には、この方法は各予測モード7、3および8に対するコストを決定する(565において)。次に、この方法は、コストが最も安い予測モード(予測モード7、3および8の中の)を現在の4×4アレイに対する予測モードとしてセットする(570において)。次に、この方法はステップ585に進む。
この方法が、コストが最も安い予測モードが3でないと判断した場合には(560−Noにおいて)、そのことは、最も安いコストの予測モードが4であることを示す。その場合、この方法は、各予測モード5、4および6に対するコストを決定する(575において)。次に、この方法はコストが最も安い予測モード(予測モード5、4および6の中の)を現在の4×4アレイに対する予測モードとしてセットする(580において)。次に、この方法はステップ585に進む。
ある実施形態の場合には、この方法500は、各4×4アレイに対する予測モードの選択が、マクロブロック内の1つまたは複数の他の4×4アレイに対する前の予測モード選択に依存するマクロブロックの4×4アレイに対する予測モードを選択する。これらの実施形態の場合には、マクロブロックの各4×4アレイに対する予測モードの選択は、その頂部および左の隣接する4×4アレイに対する符号化した値(すなわち、選択した予測モード)により異なる。それ故、これらの実施形態の場合には、この方法500は、マクロブロック内の頂部左の4×4アレイからスタートして予測モードを選択し右、次に下に進む。頂部および左の隣接する4×4アレイに対して前に選択した予測モードの場合には、この方法500は、処理中の現在の4×4アレイに対してコストが最も安い予測モード(9つの予測モードの中の)を選択する。そうするために、この方法500は、例えば、結果として得られる組合わせの全コスト(すなわち、16個の決定したコストの合計)を計算することができる。
A:別の予測モード探索アルゴリズム
他の実施形態の場合には、他の予測モード探索アルゴリズムが、他の一組の演算を行う。最初に、他の探索アルゴリズムは、変数aが決定した索引番号を表すために使用される一組の予測モード(0、1、3および4)の中からコストが最も安い予測モードの索引番号を決定する。他の探索アルゴリズムは、また、変数bが決定した索引番号を表すために使用される一組の予測モード(0、1、3および4)の中から2番目にコストが安い予測モードの索引番号も決定する。さらに、この別の探索アルゴリズムは、また、変数nが決定した索引番号を表すために使用される一組の予測モード(0、1、2、3および4)の中からコストが最も安い予測モードの索引番号も決定する。
これらの演算は下式で表すことができる。
次に、この探索アルゴリズムは下記の演算を行う。
aが0に等しくなく、bが4に等しくなく、またはその逆でもない場合には、他の探索アルゴリズムは、aが4に等しいかどうか、またbが1に等しいかどうか、またはその逆であるかどうかを判断する。そうである場合には、選択した予測モードが、一組の予測モード(4、6、1)のコストが最も安い予測モードである。
aが4に等しくなく、bが1に等しくなく、またはその逆でもない場合には、他の探索アルゴリズムは、aが1に等しいかどうか、またbが3に等しいかどうか、またはその逆であるかどうかを判断する。そうである場合には、選択した予測モードが、一組の予測モード(1、8、3)のコストが最も安い予測モードである。
aが1に等しくなく、bが3に等しくなく、またはその逆でもない場合には、他の探索アルゴリズムは、aが3に等しいかどうか、またbが0に等しいかどうか、またはその逆であるかどうかを判断する。そうである場合には、選択した予測モードが、一組の予測モード(3、7、0)のコストが最も安い予測モードである。
この方法600は、マクロブロックを16個の4×4アレイに分割する(605において)ことによりスタートする。次に、この方法は、第1の4×4アレイを処理のための現在の4×4アレイとしてセットする(610において)。現在の4×4アレイに対して、この方法600は各予測モード0、1、2、3および4に対するコストを決定する(616において)。この方法は、変数aを、予測モード0、1、3および4の中のコストが最も安い予測モードの予測モード索引に等しくセットする(616において)。この方法は、変数bを、予測モード0、1、3および4の中から2番目にコストが安い予測モードの予測モード索引に等しくセットする(617において)。この方法は、変数nを、予測モード0、1、2、3および4の中のコストが最も安い予測モードの予測モード索引に等しくセットする(617において)。
この方法は、nが2に等しいかどうかを判断する(620において)。2に等しい場合には、この方法は、予測モード2を現在の4×4アレイに対する予測モードとしてセットする(625において)。次に、この方法は、処理するマクロブロック内に他の4×4アレイが存在するかどうかを判断する(685において)。存在する場合には、この方法は、次の4×4アレイを現在の4×4アレイとしてセットし(690において)、ステップ615に進む。存在しない場合には、この方法は終了する。
この方法が、nが2に等しくないと判断した場合には(620−Noにおいて)、この方法は、上記条件(aが0に等しく、bが4に等しく、またはその逆)が真であるかどうかを判断する(630において)。真である場合には、この方法は、各予測モード0、5および4に対するコストを決定する(635において)。次に、この方法は、コストが最も安い予測モード(予測モード0、5および4の中の)を現在の4×4アレイに対する予測モードとしてセットする(640において)。次に、この方法はステップ685に進む。
この方法が、上記条件(aが0に等しく、bが4に等しく、またはその逆である)が真でないと判断した場合には(630−Noにおいて)、この方法は、上記条件(aが4に等しく、bが1に等しく、またはその逆である)が真であるかどうかを判断する(645において)。そうである場合には、この方法は、各予測モード4、6および1に対するコストを決定する(650において)。次に、この方法は、コストが最も安い予測モード(予測モード4、6、および1の中の)を現在の4×4アレイに対する予測モードとしてセットする(655において)。次に、この方法はステップ685に進む。
この方法が、上記条件(aが4に等しく、bが1に等しく、またはその逆である)が真でないと判断した場合には(645−Noにおいて)、この方法は、上記条件(aが1に等しく、bが3に等しく、またはその逆である)が真であるかどうかを判断する(660において)。真である場合には、この方法は、各予測モード1、8および3に対するコストを決定する(665において)。次に、この方法は、コストが最も安い予測モード(予測モード1、8および3の中の)を現在の4×4アレイに対する予測モードとしてセットする(670において)。次に、この方法はステップ685に進む。
この方法が、上記条件(aが1に等しく、bが3に等しく、またはその逆である)が真でないと判断した場合には(660−Noにおいて)、この方法は、上記条件(aが3に等しく、bが0に等しく、またはその逆である)が真であるかどうかを判断する(672において)。真である場合には、この方法は、各予測モード3、7および0に対するコストを決定する(675において)。次に、この方法は、コストが最も安い予測モード(予測モード3、7および0の中の)を現在の4×4アレイに対する予測モードとしてセットする(680において)。次に、この方法はステップ685に進む。この方法が、上記条件(aが3に等しく、bが0に等しく、またはその逆である)が真でないと判断した場合には(672−Noにおいて)、この方法は、予測モードを、変数n(ステップ618において決定した)が示す予測モード、すなわち予測モード0、1、2、3および4の中のコストが最も安い予測モードに等しくセットする(673において)。次に、この方法はステップ685に進む。
バス705は、すべてのシステム、周辺機器およびコンピュータ・システム700の多数の内部装置と通信できるように接続しているチップセット・バスを集合的に表す。例えば、バス705は、プロセッサ710を、読出し専用メモリ720、システム・メモリ715、および永久記憶装置725と通信できるように接続している。
読出し専用メモリ(ROM)720は、コンピュータ・システムのプロセッサ710および他のモジュールが必要とする静的データおよび命令を記憶する。一方、永久記憶装置725は、読出し/書込みメモリ素子である。このデバイスは、コンピュータ・システム700の電源をオフにした場合でも、命令およびデータを記憶している不揮発性記憶装置である。ある種の実施形態は、永久記憶装置725として、大量記憶装置(磁気ディスクまたは光ディスクおよびその対応するディスク・ドライブなど)を使用する。他の実施形態は、永久記憶装置として取り外すことができる記憶装置(フロッピー・ディスクまたはzip(登録商標)ディスクおよびその対応するディスク・ドライブなど)を使用する。
永久記憶装置725のように、システム・メモリ715は、読出し/書込みメモリ素子である。しかし、記憶装置725とは異なり、システム・メモリは、ランダム・アクセス・メモリ(RAM)のような揮発性読出し/書込みメモリである。システム・メモリは、プロセッサが稼働時間中に必要とする命令およびデータの中のあるものを記憶する。
ある実施形態を実行するために必要な命令および/またはデータは、システム・メモリ715、永久記憶装置725、読出し専用メモリ720、またはこれら3つの任意の組合わせ内に記憶される。例えば、種々の記憶装置は、ある種の実施形態によるビデオ・データ・ストリームを符号化または復号化するための命令を含むことができ、および/またはビデオ・データを含むことができる。これらの種々の記憶装置から、プロセッサ710は、ある種の実施形態の処理を実行するために実行する命令および処理するデータを検索する。これらの種々の記憶装置から、プロセッサ710は、ある種の実施形態の処理を実行するために実行する命令および処理するデータを検索する。
バス705は、また、入力および出力装置730および735に接続している。入力装置730により、ユーザは、コンピュータ・システム700に情報を入力することができ、コンピュータ・システム700へのコマンドを選択することができる。入力装置730は、英数字キーボードおよびカーソル・コントローラを含む。出力装置735は、コンピュータ・システム700が生成する画像を表示する。出力装置は、プリンタおよび陰極線管(CRT)または液晶表示装置(LCD)のような表示デバイスを含む。
多数の特定の詳細を参照しながら本発明を説明してきたが、通常の当業者であれば、本発明の精神から逸脱することなしに、本発明を他の特定の形態内に埋設することができることを理解することができるだろう。例えば、本発明の多くの実施形態をマクロブロックを参照しながら説明してきたが、通常の当業者であれば、これらの実施形態は、画素値の任意の他のアレイと一緒に使用することができることを理解することができるだろう。
705 バス 710 プロセッサ
715 システム・メモリ
720 ROM 725 記憶装置
730 入力装置 765 ネットワーク
Claims (21)
- ビデオ・フレームの画素値のブロック用の符号化タイプを選択するための方法であって、
前記ブロックが画素値の複数のサブブロックを含み、
前記ブロックの各サブブロックの画素値の変化を計算するステップと、
前記ブロックのすべてのサブブロックの前記計算した変化が所定のしきい値の変化より少ないかどうかを判断するステップと、
前記判断に基づいて前記ブロックに対する前記符号化タイプを選択するステップとを含む方法。 - 前記選択ステップが、
前記ブロックのすべてのサブブロックの変化が前記所定のしきい値の変化より小さいと判断した場合には、16×16符号化タイプを選択するステップと、
前記ブロックの任意のサブブロックの変化が前記所定のしきい値の変化より小さくないと判断した場合には、4×4符号化タイプを選択するステップとを含む請求項1に記載の方法。 - 前記所定のしきい値の変化が、前記ビデオ・フレーム内のすべてのサブブロックの平均の変化と等しい請求項1に記載の方法。
- 前記ビデオ・フレームが、関連する量子化パラメータ値を有する量子化ステップにより符号化され、
前記量子化パラメータ値が増大すると、前記所定のしきい値の変化が増大するように、前記量子化パラメータ値によりある係数でスケーリングされる請求項1に記載の方法。 - 前記ブロックに対する予測モードを選択するステップをさらに含み、前記選択ステップが、
第1の予測モードにより前記ブロックの各サブブロック内で起きた第1の歪みを計算するステップと、
前記ブロックのすべてのサブブロック内の前記第1の歪みが、所定のしきい値の歪みより少ないかどうかを判断するステップと、
前記ブロックのすべてのサブブロック内の前記第1の歪みが、前記所定のしきい値の歪みより少ないと判断した場合には、前記第1の予測モードを、前記ブロックに対する前記選択した予測モードとして選択するステップとを含む請求項1に記載の方法。 - 前記ブロックのすべてのサブブロック内の前記第1の歪みが、前記所定のしきい値の歪みより小さくないと判断した場合に、第2の予測モードにより前記ブロックの各サブブロック内で起きた第2の歪みを計算するステップと、
前記ブロックのすべてのサブブロック内の前記第2の歪みが、前記所定のしきい値の歪み以下であるかどうかを判断するステップと、
前記ブロックのすべてのサブブロック内の前記第2の歪みが、前記所定のしきい値の歪みより小さいと判断した場合には、前記第2の予測モードを、前記ブロックに対する前記選択した予測モードとして選択するステップとをさらに含む請求項5に記載の方法。 - 前記ブロックのすべてのサブブロック内の前記第2の歪みが、前記所定のしきい値の歪み以下でないと判断した場合に、第3の予測モードにより、前記ブロックの各サブブロック内で起きた第3の歪みを計算するステップと、
前記ブロックのすべてのサブブロック内の前記第3の歪みが、前記所定のしきい値の歪み以下であるかどうかを判断するステップと、
前記ブロックのすべてのサブブロック内の前記第3の歪みが、前記所定のしきい値歪み以下であると判断した場合に、前記第3の予測モードを、前記ブロックに対する前記選択した予測モードとして選択するステップとをさらに含む請求項6に記載の方法。 - 前記第1、第2および第3の予測モードが、前記ブロックに対して選択した第1の符号化タイプに関連し、
前記ブロックのすべてのサブブロック内の前記第3の歪みが、前記所定のしきい値歪み以下でないと判断した場合に、前記第1の符号化タイプに関連している第4の予測モードと、前記ブロックに対する第2の符号化タイプとの間で選択を行うステップをさらに含む請求項7に記載の方法。 - 前記第1の予測モードが16×16DC予測モードを含み、
前記第2の予測モードが16×16V予測モードを含み、
前記第3の予測モードが16×16H予測モードを含み、
前記第4の予測モードが16×16P予測モードを含み、
前記第1の符号化タイプが16×16符号化タイプを含み、
前記第2の符号化タイプが4×4符号化タイプを含む請求項8に記載の方法。 - あるサブブロック内の第1の歪みが、前記サブブロックの元の画素値と前記第1の予測モードによる前記サブブロックの予測した値との間の差を反映していて、前記予測した値が前記ブロック内からの画素値により決定される請求項5に記載の方法。
- 前記予測した値が、エミュレーションした予測値を含む請求項10に記載の方法。
- ビデオ・フレームの画素値のアレイを符号化するための予測モードを決定するための方法であって、前記アレイのすべての可能な予測モードが、複数のグループにグループ分けされ、
各グループから選択した1つの予測モードに対して、前記選択した予測モードにより前記アレイの符号化コストを決定するステップと、
前記選択した予測モードの前記決定したコストに基づいて、前記アレイに対する前記予測モードを選択するステップとを含む方法。 - 前記予測モードを選択する前に、コストが最も安い特定の選択した予測モードを決定するステップと、
前記特定の選択した予測モードを含む前記グループ分けの際に、各特定の予測モードに対するコストを決定するステップとをさらに含む請求項12に記載の方法。 - 前記予測モードを選択するステップが、
前記特定の選択した予測モードを含む前記グループ分けの際に、コストが最も安い前記予測モードを前記アレイに対する前記予測モードとして選択するステップを含む請求項13に記載の方法。 - 予測モードが、前記アレイに対して符号化された予測情報の基礎である他のアレイのアレイに対するある位置を示し、
予測モードの前記グループ分けが、前記予測モードが示す位置的関係に基づいて行われる請求項12に記載の方法。 - 予測モードの前記グループ分けが、4×4アレイ用のH.264コーデック規格が規定する9つの予測モード間の位置的関係に基づいて行われる請求項15に記載の方法。
- 予測モードが、同じグループ内に含まれていない予測モードよりも、同じグループ分け内の予測モードと強い位置的関係を有する請求項15に記載の方法。
- 実行した場合、ビデオ・フレームの画素値のブロックに対する符号化タイプを選択するために、その上に記憶している命令を有するコンピュータ可読媒体を備えるコンピュータ・プログラム製品であって、前記ブロックが、画素値の複数のサブブロックを含み、前記コンピュータ・プログラム製品が、
前記ブロックの各サブブロックに対する画素値の変化を計算するための複数の組の命令と、
前記ブロックのすべてのサブブロックの前記計算した変化が所定のしきい値変化より小さいかどうかを判断するための複数の組の命令と、
前記判断に基づいて前記ブロックに対する前記符号化タイプを選択するための複数の組の命令とを含むコンピュータ・プログラム製品。 - 選択のための前記一組の命令が、
前記ブロックのすべてのサブブロックの変化が前記所定のしきい値変化より小さいと判断した場合に、16×16符号化タイプを選択するための複数の組の命令と、
前記ブロックのすべてのサブブロックの変化が前記所定のしきい値変化より小さくないと判断した場合に、4×4符号化タイプを選択するための複数の組の命令とを含む請求項18に記載のコンピュータ・プログラム製品。 - 前記ブロックに対する予測モードを選択するための一組の命令をさらに含み、前記予測モードを選択するための一組の命令が、
第1の予測モードにより前記ブロックの各サブブロック内で起こった第1の歪みを計算するための複数の組の命令と、
前記ブロックのすべてのサブブロック内の前記第1の歪みが、所定のしきい値歪みより小さいかどうかを判断するための複数の組の命令と、
前記ブロックのすべてのサブブロック内の前記第1の歪みが、前記所定のしきい値歪みより小さいと判断した場合に、前記ブロックに対する前記選択した予測モードとして前記第1の予測モードを選択するための複数の組の命令とを含む請求項18に記載のコンピュータ・プログラム製品。 - 実行した場合、ビデオ・フレームの画素値のアレイを符号化するための予測モードを決定するために、その上に記憶している命令を有するコンピュータ可読媒体を備えるコンピュータ・プログラム製品であって、前記アレイのすべての可能な予測モードが複数のグループにグループ分けされ、
各グループからの選択した1つの予測モードに対して、前記選択した予測モードにより前記アレイの符号化のコストを決定するための複数の組の命令と、
前記選択した予測モードの前記決定したコストに基づいて、前記アレイに対する前記予測モードを選択するための複数の組の命令とを含むコンピュータ・プログラム製品。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US58344704P | 2004-06-27 | 2004-06-27 | |
US60/583,447 | 2004-06-27 | ||
US11/070,778 | 2005-03-01 | ||
US11/070,778 US7792188B2 (en) | 2004-06-27 | 2005-03-01 | Selecting encoding types and predictive modes for encoding video data |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011144514A Division JP5318159B2 (ja) | 2004-06-27 | 2011-06-29 | ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2006014342A true JP2006014342A (ja) | 2006-01-12 |
JP2006014342A5 JP2006014342A5 (ja) | 2008-07-17 |
JP4949647B2 JP4949647B2 (ja) | 2012-06-13 |
Family
ID=34942454
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005185713A Active JP4949647B2 (ja) | 2004-06-27 | 2005-06-24 | ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 |
JP2011144514A Active JP5318159B2 (ja) | 2004-06-27 | 2011-06-29 | ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 |
JP2013055342A Active JP5559900B2 (ja) | 2004-06-27 | 2013-03-18 | ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 |
JP2014089530A Active JP5711405B2 (ja) | 2004-06-27 | 2014-04-23 | ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011144514A Active JP5318159B2 (ja) | 2004-06-27 | 2011-06-29 | ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 |
JP2013055342A Active JP5559900B2 (ja) | 2004-06-27 | 2013-03-18 | ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 |
JP2014089530A Active JP5711405B2 (ja) | 2004-06-27 | 2014-04-23 | ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 |
Country Status (6)
Country | Link |
---|---|
US (3) | US7792188B2 (ja) |
EP (1) | EP1610563A3 (ja) |
JP (4) | JP4949647B2 (ja) |
KR (3) | KR101155767B1 (ja) |
CN (2) | CN101945280B (ja) |
TW (1) | TWI350697B (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007251923A (ja) * | 2006-02-15 | 2007-09-27 | Mitsubishi Electric Corp | 画像符号化装置および画像符号化方法 |
KR100842558B1 (ko) | 2007-01-26 | 2008-07-01 | 삼성전자주식회사 | 동영상 부호화를 위한 블록 모드 결정 방법 및 그 장치 |
JP2008283402A (ja) * | 2007-05-09 | 2008-11-20 | Canon Inc | 画像処理装置およびその方法 |
JP2014140169A (ja) * | 2006-10-10 | 2014-07-31 | Nippon Telegr & Teleph Corp <Ntt> | イントラ予測符号化制御方法および装置、そのプログラム並びにプログラムを記録した記録媒体 |
JP2015179944A (ja) * | 2014-03-19 | 2015-10-08 | 日本電信電話株式会社 | イントラ予測方向決定方法及びイントラ予測方向決定プログラム |
Families Citing this family (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7742525B1 (en) | 2002-07-14 | 2010-06-22 | Apple Inc. | Adaptive motion estimation |
US9330060B1 (en) | 2003-04-15 | 2016-05-03 | Nvidia Corporation | Method and device for encoding and decoding video image data |
US8660182B2 (en) | 2003-06-09 | 2014-02-25 | Nvidia Corporation | MPEG motion estimation based on dual start points |
EP1605706A2 (en) * | 2004-06-09 | 2005-12-14 | Broadcom Corporation | Advanced video coding (AVC) intra prediction scheme |
US8111752B2 (en) | 2004-06-27 | 2012-02-07 | Apple Inc. | Encoding mode pruning during video encoding |
US7792188B2 (en) | 2004-06-27 | 2010-09-07 | Apple Inc. | Selecting encoding types and predictive modes for encoding video data |
US20050286777A1 (en) * | 2004-06-27 | 2005-12-29 | Roger Kumar | Encoding and decoding images |
TWI243600B (en) * | 2004-09-17 | 2005-11-11 | Primax Electronics Ltd | Selected area comparison method with high-operational efficient |
US8571100B2 (en) * | 2004-11-04 | 2013-10-29 | Thomson Licensing | Fast intra mode prediction for a video encoder |
US8731071B1 (en) | 2005-12-15 | 2014-05-20 | Nvidia Corporation | System for performing finite input response (FIR) filtering in motion estimation |
US8724702B1 (en) | 2006-03-29 | 2014-05-13 | Nvidia Corporation | Methods and systems for motion estimation used in video coding |
US8295349B2 (en) * | 2006-05-23 | 2012-10-23 | Flextronics Ap, Llc | Methods and apparatuses for video compression intra prediction mode determination |
JP4690966B2 (ja) * | 2006-08-11 | 2011-06-01 | 株式会社東芝 | 動画像符号化装置 |
US8660380B2 (en) | 2006-08-25 | 2014-02-25 | Nvidia Corporation | Method and system for performing two-dimensional transform on data value array with reduced power consumption |
KR100856223B1 (ko) * | 2006-10-19 | 2008-09-03 | 삼성전자주식회사 | H.264 인코더의 적응적 인코딩 모드 결정 장치 및결정 방법 |
CA2665781C (en) | 2006-10-30 | 2014-02-18 | Nippon Telegraph And Telephone Corporation | Predicted reference information generating method, video encoding and decoding methods, apparatuses therefor, programs therefor, and storage media which store the programs |
KR100845644B1 (ko) * | 2006-12-14 | 2008-07-10 | 한국정보통신대학교 산학협력단 | 고속 움직임 모드 결정 방법 |
US8756482B2 (en) | 2007-05-25 | 2014-06-17 | Nvidia Corporation | Efficient encoding/decoding of a sequence of data frames |
US9118927B2 (en) | 2007-06-13 | 2015-08-25 | Nvidia Corporation | Sub-pixel interpolation and its application in motion compensated encoding of a video signal |
US20090016631A1 (en) * | 2007-07-10 | 2009-01-15 | Texas Instruments Incorporated | Video Coding Rate Control |
US8873625B2 (en) * | 2007-07-18 | 2014-10-28 | Nvidia Corporation | Enhanced compression in representing non-frame-edge blocks of image frames |
KR100905059B1 (ko) * | 2007-08-16 | 2009-06-30 | 한국전자통신연구원 | 동영상 부호화에 있어서 비트 발생 가능성 예측을 이용한블록 모드 결정 방법 및 장치 |
US8023562B2 (en) | 2007-09-07 | 2011-09-20 | Vanguard Software Solutions, Inc. | Real-time video coding/decoding |
KR101505195B1 (ko) * | 2008-02-20 | 2015-03-24 | 삼성전자주식회사 | 직접 모드 부호화 및 복호화 방법 |
KR101353301B1 (ko) * | 2008-04-11 | 2014-01-21 | 에스케이 텔레콤주식회사 | 인트라 예측 모드 결정 방법 및 그 장치와 이를 이용한영상 부호화/복호화 방법 및 그 장치 |
US20090274211A1 (en) * | 2008-04-30 | 2009-11-05 | Omnivision Technologies, Inc. | Apparatus and method for high quality intra mode prediction in a video coder |
US8503527B2 (en) | 2008-10-03 | 2013-08-06 | Qualcomm Incorporated | Video coding with large macroblocks |
US8259801B2 (en) * | 2008-10-12 | 2012-09-04 | Mediatek Inc. | Methods for coding digital media data with prediction information and prediction error information being respectively carried by different bit stream sections |
US8666181B2 (en) | 2008-12-10 | 2014-03-04 | Nvidia Corporation | Adaptive multiple engine image motion detection system and method |
CN101854538B (zh) * | 2009-04-03 | 2012-06-27 | 联咏科技股份有限公司 | 运动图像处理方法及运动图像处理器 |
KR20120006488A (ko) * | 2009-04-28 | 2012-01-18 | 텔레폰악티에볼라겟엘엠에릭슨(펍) | 왜곡 가중 |
JP2011151682A (ja) * | 2010-01-22 | 2011-08-04 | Sony Corp | 画像処理装置および方法 |
WO2011100347A2 (en) * | 2010-02-09 | 2011-08-18 | Vanguard Software Solutions, Inc. | Video sequence encoding system and algorithms |
ES2868133T3 (es) | 2010-09-27 | 2021-10-21 | Lg Electronics Inc | Método para partición de bloque y dispositivo de decodificación |
US8842184B2 (en) * | 2010-11-18 | 2014-09-23 | Thomson Licensing | Method for determining a quality measure for a video image and apparatus for determining a quality measure for a video image |
FR2969456A1 (fr) | 2010-12-15 | 2012-06-22 | France Telecom | Procedes et dispositifs de codage et de decodage d'au moins une image mettant en œuvre une selection des pixels a predire, programme d'ordinateur correspondant |
KR101246119B1 (ko) * | 2011-02-08 | 2013-03-21 | 연세대학교 산학협력단 | 인트라 예측 모드 결정 방법 및 장치 |
CN107968945B (zh) * | 2011-09-14 | 2021-09-14 | 三星电子株式会社 | 对视频进行解码的方法和对视频进行编码的方法 |
US20130089136A1 (en) * | 2011-10-10 | 2013-04-11 | Texas Instruments Incorporated | Spatial Intra Prediction Estimation Based on Mode Suppression in Macroblocks of a Video Frame |
US8693551B2 (en) | 2011-11-16 | 2014-04-08 | Vanguard Software Solutions, Inc. | Optimal angular intra prediction for block-based video coding |
US8811758B2 (en) * | 2011-12-18 | 2014-08-19 | Numerica Corporation | Lossy compression of data points using point-wise error constraints |
WO2014000160A1 (en) * | 2012-06-26 | 2014-01-03 | Intel Corporation | Inter-layer coding unit quadtree pattern prediction |
US10333547B2 (en) | 2012-08-13 | 2019-06-25 | Gurologic Microsystems Oy | Encoder and method for encoding input data using a plurality of different transformations or combinations of transformations |
GB2503295B (en) * | 2012-08-13 | 2014-08-06 | Gurulogic Microsystems Oy | Encoder and method |
US9258389B2 (en) | 2012-08-13 | 2016-02-09 | Gurulogic Microsystems Oy | Encoder and method |
US9665572B2 (en) * | 2012-09-12 | 2017-05-30 | Oracle International Corporation | Optimal data representation and auxiliary structures for in-memory database query processing |
TW201419863A (zh) * | 2012-11-13 | 2014-05-16 | Hon Hai Prec Ind Co Ltd | 影像切割系統及方法 |
TW201419862A (zh) * | 2012-11-13 | 2014-05-16 | Hon Hai Prec Ind Co Ltd | 影像切割系統及方法 |
TW201419865A (zh) * | 2012-11-13 | 2014-05-16 | Hon Hai Prec Ind Co Ltd | 影像切割系統及方法 |
TW201419864A (zh) * | 2012-11-13 | 2014-05-16 | Hon Hai Prec Ind Co Ltd | 影像切割系統及方法 |
US9106922B2 (en) | 2012-12-19 | 2015-08-11 | Vanguard Software Solutions, Inc. | Motion estimation engine for video encoding |
JP6212890B2 (ja) * | 2013-03-22 | 2017-10-18 | 富士通株式会社 | 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム |
WO2014193631A1 (en) * | 2013-05-31 | 2014-12-04 | Intel Corporation | Adjustment of intra-frame encoding distortion metrics for video encoding |
WO2015015404A2 (en) * | 2013-07-29 | 2015-02-05 | Riversilica Technologies Pvt Ltd | A method and system for determining intra mode decision in h.264 video coding |
JP6221704B2 (ja) * | 2013-12-05 | 2017-11-01 | Nttエレクトロニクス株式会社 | 符号化装置及びブロックサイズ選択方法 |
KR102294830B1 (ko) | 2014-01-03 | 2021-08-31 | 삼성전자주식회사 | 디스플레이 구동 장치 및 이미지 데이터 처리 장치의 동작 방법 |
US9392272B1 (en) * | 2014-06-02 | 2016-07-12 | Google Inc. | Video coding using adaptive source variance based partitioning |
KR101936663B1 (ko) * | 2014-06-26 | 2019-01-09 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 고효율 비디오 코딩 중 계산 부하의 경감 방법 및 장치 |
US9704066B2 (en) | 2015-03-20 | 2017-07-11 | Microsoft Technology Licensing, Llc | Multi-stage image classification |
US9955186B2 (en) * | 2016-01-11 | 2018-04-24 | Qualcomm Incorporated | Block size decision for video coding |
US11252440B2 (en) * | 2019-11-07 | 2022-02-15 | Comcast Cable Communications, Llc | Pixel filtering for content |
CN112153385B (zh) * | 2020-11-25 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 编码处理方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5060285A (en) * | 1989-05-19 | 1991-10-22 | Gte Laboratories Incorporated | Hierarchical variable block size address-vector quantization using inter-block correlation |
JPH0564015A (ja) * | 1991-08-29 | 1993-03-12 | Toshiba Corp | 画像符号化装置及び画像復号化装置 |
US5576767A (en) * | 1993-02-03 | 1996-11-19 | Qualcomm Incorporated | Interframe video encoding and decoding system |
JP2003523652A (ja) * | 1999-11-08 | 2003-08-05 | クゥアルコム・インコーポレイテッド | 変化に基づいた適応性ブロックサイズdct画像圧縮 |
JP2003319394A (ja) * | 2002-04-26 | 2003-11-07 | Sony Corp | 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム |
JP2005191706A (ja) * | 2003-12-24 | 2005-07-14 | Toshiba Corp | 動画像符号化方法及びその装置 |
JP2007503784A (ja) * | 2003-05-20 | 2007-02-22 | アーエムテー アドバンスド マルチメディア テクノロジー アクティエボラーグ | ハイブリッドビデオ圧縮法 |
Family Cites Families (69)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5200820A (en) | 1991-04-26 | 1993-04-06 | Bell Communications Research, Inc. | Block-matching motion estimator for video coder |
JP2636622B2 (ja) | 1992-03-13 | 1997-07-30 | 松下電器産業株式会社 | ビデオ信号の符号化方法及び復号化方法ならびにビデオ信号の符号化装置及び復号化装置 |
US5508744A (en) | 1993-03-12 | 1996-04-16 | Thomson Consumer Electronics, Inc. | Video signal compression with removal of non-correlated motion vectors |
CN1080067C (zh) * | 1993-07-19 | 2002-02-27 | 英国电讯有限公司 | 视频图象中的错误检测 |
FR2719398B1 (fr) | 1994-04-27 | 1996-07-19 | Sgs Thomson Microelectronics | Dispositif et procédé d'adressage d'une mémoire cache d'un circuit de compression d'images mobiles. |
US5706059A (en) | 1994-11-30 | 1998-01-06 | National Semiconductor Corp. | Motion estimation using a hierarchical search |
JPH08205140A (ja) * | 1995-01-31 | 1996-08-09 | Canon Inc | 画像圧縮装置 |
KR0171143B1 (ko) * | 1995-03-20 | 1999-03-20 | 배순훈 | 육각그리드에서의 삼각구조 형성 장치 |
US5757668A (en) | 1995-05-24 | 1998-05-26 | Motorola Inc. | Device, method and digital video encoder of complexity scalable block-matching motion estimation utilizing adaptive threshold termination |
US5577181A (en) * | 1995-06-07 | 1996-11-19 | E-Systems, Inc. | Method for autonomous determination of tie points in imagery |
US5731850A (en) | 1995-06-07 | 1998-03-24 | Maturi; Gregory V. | Hybrid hierarchial/full-search MPEG encoder motion estimation |
US5929940A (en) | 1995-10-25 | 1999-07-27 | U.S. Philips Corporation | Method and device for estimating motion between images, system for encoding segmented images |
US6192081B1 (en) | 1995-10-26 | 2001-02-20 | Sarnoff Corporation | Apparatus and method for selecting a coding mode in a block-based coding system |
JP3994445B2 (ja) | 1995-12-05 | 2007-10-17 | ソニー株式会社 | 動きベクトル検出装置及び動きベクトル検出方法 |
US6212237B1 (en) | 1997-06-17 | 2001-04-03 | Nippon Telegraph And Telephone Corporation | Motion vector search methods, motion vector search apparatus, and storage media storing a motion vector search program |
EP0896300B1 (en) * | 1997-08-07 | 2002-01-30 | Matsushita Electric Industrial Co., Ltd. | Device and method for motion vector detection |
US6014181A (en) * | 1997-10-13 | 2000-01-11 | Sharp Laboratories Of America, Inc. | Adaptive step-size motion estimation based on statistical sum of absolute differences |
JPH11182444A (ja) * | 1997-10-17 | 1999-07-06 | Takumina:Kk | ソレノイド駆動ポンプの制御回路 |
KR100584495B1 (ko) | 1998-02-13 | 2006-06-02 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 비디오 화상 코딩 장치 및 방법 |
KR100325253B1 (ko) | 1998-05-19 | 2002-03-04 | 미야즈 준이치롯 | 움직임벡터 검색방법 및 장치 |
US6128047A (en) | 1998-05-20 | 2000-10-03 | Sony Corporation | Motion estimation process and system using sparse search block-matching and integral projection |
US6591015B1 (en) * | 1998-07-29 | 2003-07-08 | Matsushita Electric Industrial Co., Ltd. | Video coding method and apparatus with motion compensation and motion vector estimator |
US6081209A (en) | 1998-11-12 | 2000-06-27 | Hewlett-Packard Company | Search system for use in compression |
US6363117B1 (en) | 1998-12-31 | 2002-03-26 | Sony Corporation | Video compression using fast block motion estimation |
GB2348559B (en) | 1999-03-31 | 2001-06-06 | Samsung Electronics Co Ltd | High speed motion estimating method for real time moving image coding and apparatus therefor |
JP2001251632A (ja) | 1999-12-27 | 2001-09-14 | Toshiba Corp | 動きベクトル検出方法および装置並びに動きベクトル検出プログラム |
US6483876B1 (en) | 1999-12-28 | 2002-11-19 | Sony Corporation | Methods and apparatus for reduction of prediction modes in motion estimation |
KR100619377B1 (ko) | 2000-02-22 | 2006-09-08 | 주식회사 팬택앤큐리텔 | 움직임 추정 방법 및 장치 |
EP1134981A1 (en) | 2000-03-17 | 2001-09-19 | STMicroelectronics S.r.l. | Automatic setting of optimal search window dimensions for motion estimation |
US6567469B1 (en) | 2000-03-23 | 2003-05-20 | Koninklijke Philips Electronics N.V. | Motion estimation algorithm suitable for H.261 videoconferencing applications |
US6876703B2 (en) | 2000-05-11 | 2005-04-05 | Ub Video Inc. | Method and apparatus for video coding |
US6700996B1 (en) | 2000-06-07 | 2004-03-02 | Intel Corporation | Adaptive early exit techniques in image correlation |
US6842483B1 (en) | 2000-09-11 | 2005-01-11 | The Hong Kong University Of Science And Technology | Device, method and digital video encoder for block-matching motion estimation |
KR100727910B1 (ko) | 2000-10-11 | 2007-06-13 | 삼성전자주식회사 | 하이브리드형 고속 움직임 추정 방법 및 그 장치 |
US6668020B2 (en) | 2000-11-04 | 2003-12-23 | Vivotek Inc. | Method for motion estimation in video coding |
US20020131500A1 (en) | 2001-02-01 | 2002-09-19 | Gandhi Bhavan R. | Method for determining a motion vector for a video signal |
US6687301B2 (en) | 2001-03-19 | 2004-02-03 | Fulvio Moschetti | Method for block matching motion estimation in digital video sequences |
US6813315B1 (en) | 2001-04-24 | 2004-11-02 | Vweb Corporation | Motion estimation using multiple search windows |
US6650784B2 (en) | 2001-07-02 | 2003-11-18 | Qualcomm, Incorporated | Lossless intraframe encoding using Golomb-Rice |
DE60141961D1 (de) * | 2001-09-10 | 2010-06-10 | Texas Instruments Inc | Verfahren und Vorrichtung zur Bewegungsvektorenabschätzung |
WO2003045069A2 (en) * | 2001-11-16 | 2003-05-30 | Qualcomm Incorporated | Block size assignment using local contrast ratio |
JP4610195B2 (ja) | 2001-12-17 | 2011-01-12 | マイクロソフト コーポレーション | スキップマクロブロックコード化 |
KR100833228B1 (ko) * | 2002-02-21 | 2008-05-28 | 삼성전자주식회사 | 고정 연산량을 갖는 동영상 부호화 방법 및 그 장치 |
KR100492127B1 (ko) | 2002-02-23 | 2005-06-01 | 삼성전자주식회사 | 적응형 움직임 추정장치 및 추정 방법 |
BRPI0304565B1 (pt) | 2002-03-15 | 2018-07-24 | Nokia Technologies Oy | Método de predição de movimento compensado para uso na codificação da sequência de vídeo digital, codificador e decodificador de vídeo para codificar/decodificar uma sequência de vídeo digital usando predição de movimento compensado, terminal de miltimídia, e, codec de vídeo |
JP4120301B2 (ja) | 2002-04-25 | 2008-07-16 | ソニー株式会社 | 画像処理装置およびその方法 |
US7170937B2 (en) * | 2002-05-01 | 2007-01-30 | Texas Instruments Incorporated | Complexity-scalable intra-frame prediction technique |
EP1553782A3 (en) | 2002-05-28 | 2005-07-27 | Sharp Kabushiki Kaisha | Methods and systems for image intra-prediction mode estimation, communication, and organization |
CN100380984C (zh) * | 2002-06-11 | 2008-04-09 | 诺基亚有限公司 | 基于空间预测的帧内编码 |
US7289674B2 (en) | 2002-06-11 | 2007-10-30 | Nokia Corporation | Spatial prediction based intra coding |
US7742525B1 (en) | 2002-07-14 | 2010-06-22 | Apple Inc. | Adaptive motion estimation |
US7239721B1 (en) | 2002-07-14 | 2007-07-03 | Apple Inc. | Adaptive motion estimation |
FR2844131B1 (fr) * | 2002-09-03 | 2004-11-12 | St Microelectronics Sa | Procede et dispositif d'interpolation d'images avec compensation du mouvement |
JP3977716B2 (ja) | 2002-09-20 | 2007-09-19 | 株式会社東芝 | 動画像符号化/復号化方法及び装置 |
US6646578B1 (en) * | 2002-11-22 | 2003-11-11 | Ub Video Inc. | Context adaptive variable length decoding system and method |
GB2395778A (en) * | 2002-11-29 | 2004-06-02 | Sony Uk Ltd | Face detection |
US7280597B2 (en) | 2003-06-24 | 2007-10-09 | Mitsubishi Electric Research Laboratories, Inc. | System and method for determining coding modes, DCT types and quantizers for video coding |
JP2005020294A (ja) | 2003-06-25 | 2005-01-20 | Sony Corp | ブロック歪低減装置 |
US7646437B1 (en) | 2003-09-03 | 2010-01-12 | Apple Inc. | Look-ahead system and method for pan and zoom detection in video sequences |
KR100595616B1 (ko) | 2003-11-24 | 2006-06-30 | 엘지전자 주식회사 | 디지털 동영상 트랜스코딩을 위한 움직임 추정 방법 |
KR100596706B1 (ko) * | 2003-12-01 | 2006-07-04 | 삼성전자주식회사 | 스케일러블 비디오 코딩 및 디코딩 방법, 이를 위한 장치 |
KR20050061762A (ko) | 2003-12-18 | 2005-06-23 | 학교법인 대양학원 | 부호화 모드 결정방법, 움직임 추정방법 및 부호화 장치 |
US7469070B2 (en) | 2004-02-09 | 2008-12-23 | Lsi Corporation | Method for selection of contexts for arithmetic coding of reference picture and motion vector residual bitstream syntax elements |
JP4383240B2 (ja) * | 2004-04-30 | 2009-12-16 | 日本放送協会 | 画面内予測符号化装置、その方法及びそのプログラム |
US8467447B2 (en) * | 2004-05-07 | 2013-06-18 | International Business Machines Corporation | Method and apparatus to determine prediction modes to achieve fast video encoding |
JP2005348280A (ja) * | 2004-06-07 | 2005-12-15 | Nippon Telegr & Teleph Corp <Ntt> | 画像符号化方法、画像符号化装置、画像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体 |
US7792188B2 (en) * | 2004-06-27 | 2010-09-07 | Apple Inc. | Selecting encoding types and predictive modes for encoding video data |
US20050286777A1 (en) | 2004-06-27 | 2005-12-29 | Roger Kumar | Encoding and decoding images |
US8111752B2 (en) | 2004-06-27 | 2012-02-07 | Apple Inc. | Encoding mode pruning during video encoding |
-
2005
- 2005-03-01 US US11/070,778 patent/US7792188B2/en active Active
- 2005-06-17 TW TW094120302A patent/TWI350697B/zh active
- 2005-06-24 JP JP2005185713A patent/JP4949647B2/ja active Active
- 2005-06-27 EP EP05291381A patent/EP1610563A3/en not_active Ceased
- 2005-06-27 KR KR1020050055777A patent/KR101155767B1/ko active IP Right Grant
- 2005-06-27 CN CN2010102865385A patent/CN101945280B/zh active Active
- 2005-06-27 CN CN2010102865366A patent/CN101945279B/zh active Active
-
2010
- 2010-02-16 KR KR1020100013799A patent/KR101152576B1/ko active IP Right Grant
- 2010-07-26 US US12/843,840 patent/US8018994B2/en active Active
-
2011
- 2011-06-29 JP JP2011144514A patent/JP5318159B2/ja active Active
- 2011-08-02 US US13/196,886 patent/US8472516B2/en active Active
- 2011-12-01 KR KR1020110127949A patent/KR101208863B1/ko active IP Right Grant
-
2013
- 2013-03-18 JP JP2013055342A patent/JP5559900B2/ja active Active
-
2014
- 2014-04-23 JP JP2014089530A patent/JP5711405B2/ja active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5060285A (en) * | 1989-05-19 | 1991-10-22 | Gte Laboratories Incorporated | Hierarchical variable block size address-vector quantization using inter-block correlation |
JPH0564015A (ja) * | 1991-08-29 | 1993-03-12 | Toshiba Corp | 画像符号化装置及び画像復号化装置 |
US5576767A (en) * | 1993-02-03 | 1996-11-19 | Qualcomm Incorporated | Interframe video encoding and decoding system |
JP2003523652A (ja) * | 1999-11-08 | 2003-08-05 | クゥアルコム・インコーポレイテッド | 変化に基づいた適応性ブロックサイズdct画像圧縮 |
JP2003319394A (ja) * | 2002-04-26 | 2003-11-07 | Sony Corp | 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム |
JP2007503784A (ja) * | 2003-05-20 | 2007-02-22 | アーエムテー アドバンスド マルチメディア テクノロジー アクティエボラーグ | ハイブリッドビデオ圧縮法 |
JP2005191706A (ja) * | 2003-12-24 | 2005-07-14 | Toshiba Corp | 動画像符号化方法及びその装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007251923A (ja) * | 2006-02-15 | 2007-09-27 | Mitsubishi Electric Corp | 画像符号化装置および画像符号化方法 |
JP2014140169A (ja) * | 2006-10-10 | 2014-07-31 | Nippon Telegr & Teleph Corp <Ntt> | イントラ予測符号化制御方法および装置、そのプログラム並びにプログラムを記録した記録媒体 |
KR100842558B1 (ko) | 2007-01-26 | 2008-07-01 | 삼성전자주식회사 | 동영상 부호화를 위한 블록 모드 결정 방법 및 그 장치 |
JP2008283402A (ja) * | 2007-05-09 | 2008-11-20 | Canon Inc | 画像処理装置およびその方法 |
JP2015179944A (ja) * | 2014-03-19 | 2015-10-08 | 日本電信電話株式会社 | イントラ予測方向決定方法及びイントラ予測方向決定プログラム |
Also Published As
Publication number | Publication date |
---|---|
EP1610563A3 (en) | 2010-07-28 |
JP5318159B2 (ja) | 2013-10-16 |
JP2011239443A (ja) | 2011-11-24 |
TWI350697B (en) | 2011-10-11 |
CN101945280B (zh) | 2012-09-05 |
JP4949647B2 (ja) | 2012-06-13 |
KR101155767B1 (ko) | 2012-06-12 |
CN101945279A (zh) | 2011-01-12 |
EP1610563A2 (en) | 2005-12-28 |
KR20120004370A (ko) | 2012-01-12 |
KR101208863B1 (ko) | 2012-12-05 |
KR20100038335A (ko) | 2010-04-14 |
JP5711405B2 (ja) | 2015-04-30 |
CN101945280A (zh) | 2011-01-12 |
US8472516B2 (en) | 2013-06-25 |
US20110286522A1 (en) | 2011-11-24 |
JP2014161094A (ja) | 2014-09-04 |
JP5559900B2 (ja) | 2014-07-23 |
KR20060092813A (ko) | 2006-08-23 |
TW200623885A (en) | 2006-07-01 |
CN101945279B (zh) | 2012-09-05 |
US20050286630A1 (en) | 2005-12-29 |
US20100290526A1 (en) | 2010-11-18 |
US7792188B2 (en) | 2010-09-07 |
JP2013153515A (ja) | 2013-08-08 |
US8018994B2 (en) | 2011-09-13 |
KR101152576B1 (ko) | 2012-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5711405B2 (ja) | ビデオ・データを符号化するための符号化タイプおよび予測モードの選択 | |
US11622110B2 (en) | Methods and apparatuses for encoding and decoding video according to coding order | |
US11812023B2 (en) | Encoding sequence encoding method and device thereof, and decoding method and device thereof | |
JP4885486B2 (ja) | 画像の符号化および復号化 | |
US8780983B2 (en) | Intra-mode prediction for a video transcoder | |
KR20170084239A (ko) | 디지털 이미지를 처리하는 방법 및 시스템 | |
US8396308B2 (en) | Image coding based on interpolation information | |
US11889090B2 (en) | Methods and systems for adaptive cropping | |
US11356660B2 (en) | Methods and systems of video coding using reference regions | |
US11889055B2 (en) | Methods and systems for combined lossless and lossy coding | |
US20230388483A1 (en) | Methods and Systems of Video Coding Using Reference Regions | |
JPH11103463A (ja) | 画像符号化方法及び記憶媒体 | |
WO2022047144A1 (en) | Methods and systems for combined lossless and lossy coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20071218 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20071227 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20071227 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080603 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080603 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100617 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20100621 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110107 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20110316 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110322 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110629 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110930 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20111222 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20111228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120124 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120213 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120308 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150316 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4949647 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |