JP2004096757A - 動き補償のための補間方法及びその装置 - Google Patents
動き補償のための補間方法及びその装置 Download PDFInfo
- Publication number
- JP2004096757A JP2004096757A JP2003307711A JP2003307711A JP2004096757A JP 2004096757 A JP2004096757 A JP 2004096757A JP 2003307711 A JP2003307711 A JP 2003307711A JP 2003307711 A JP2003307711 A JP 2003307711A JP 2004096757 A JP2004096757 A JP 2004096757A
- Authority
- JP
- Japan
- Prior art keywords
- integer
- sum
- average value
- pixel
- value
- 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.)
- Pending
Links
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
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/01—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
- H04N7/0135—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes
- H04N7/014—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes involving the use of motion vectors
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or 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/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Abstract
【課題】 動き補償のための補間方法及びその装置を提供する。
【解決手段】 (a) 所定4分画素の水平方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得る段階と、(b) 前記4分画素の垂直方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を段階と、(c) 前記垂直和及び水平和に基づいて整数の前記4分画素を求める段階と、を含むことを特徴とする補間方法である。これによれば、動き補償においてさらに一貫性を有することになって動き補償の効率がさらに高まる。
【選択図】図7
【解決手段】 (a) 所定4分画素の水平方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得る段階と、(b) 前記4分画素の垂直方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を段階と、(c) 前記垂直和及び水平和に基づいて整数の前記4分画素を求める段階と、を含むことを特徴とする補間方法である。これによれば、動き補償においてさらに一貫性を有することになって動き補償の効率がさらに高まる。
【選択図】図7
Description
本発明は動き補償に係り、特に動き補償の正確度を向上させるための補間方法及びその装置に関する。
MPEG−1、MPEG−2、MPEG−4、H.264符号化標準によれば、現在のピクチャーを符号化するにおいて過去のピクチャーを参照するP−ピクチャー符号化方法及び過去と未来とのピクチャーを何れも参照するB−ピクチャー符号化方法を採用し、これに基づいて動き補償を行う。特に、MPEG−4またはH.264符号化標準によれば動き補償はマクロブロック単位はもとよりマクロブロックを複数のブロックに分割した後、分割されたブロック単位で行われる。動き補償は整数画素で構成されたブロックに対して半画素、4分画素、または8分画素を求める補間を行なってデータの精度を高めてから行われる。
図1は、補間の概念を説明するための参考図である。
図1を参照すれば、灰色箱は元画素を示し、白箱は補間画素を示す。元画素は整数画素を意味する。補間画素のうち白箱5、6、7、8は半画素を、白箱9は4分画素を示す。半画素は垂直方向または水平方向に隣接した整数画素または半画素に基づいて得られる。例えば、半画素5は整数画素1及び2に基づいて得られ、半画素8は整数画素3及び4に基づいて得られる。半画素6は整数画素1及び3に基づいて得られ、半画素7は整数画素2及び4に基づいて得られる。一方、4分画素9は半画素5及び8に基づいて得られるか、半画素6及び7に基づいて得られる。説明の便宜上、整数画素の数を4個に限定したが、補間に参与する画素の範囲は適切に加減できる。もし、半画素5を求めるに当たって整数画素1及び2のみならず、水平方向に隣接した整数画素をさらに参与させうる。補間画素も元画素と同じ範囲内の整数値として表示される。たとえば、元画素が0−255の整数値で表示されるならば、補間画素も0−255の整数値で表現される。
図1を参照すれば、灰色箱は元画素を示し、白箱は補間画素を示す。元画素は整数画素を意味する。補間画素のうち白箱5、6、7、8は半画素を、白箱9は4分画素を示す。半画素は垂直方向または水平方向に隣接した整数画素または半画素に基づいて得られる。例えば、半画素5は整数画素1及び2に基づいて得られ、半画素8は整数画素3及び4に基づいて得られる。半画素6は整数画素1及び3に基づいて得られ、半画素7は整数画素2及び4に基づいて得られる。一方、4分画素9は半画素5及び8に基づいて得られるか、半画素6及び7に基づいて得られる。説明の便宜上、整数画素の数を4個に限定したが、補間に参与する画素の範囲は適切に加減できる。もし、半画素5を求めるに当たって整数画素1及び2のみならず、水平方向に隣接した整数画素をさらに参与させうる。補間画素も元画素と同じ範囲内の整数値として表示される。たとえば、元画素が0−255の整数値で表示されるならば、補間画素も0−255の整数値で表現される。
所定ブロックを構成する画素数が補間により増加すれば、動き補償の正確度が向上することが一般的であるが、いつもそうであるわけではない。補間アルゴリズムは整数値を有する補間画素を求めるために四捨五入、切上げまたは切捨て過程を含んでいる。すなわち、通常、補間アルゴリズムにより求めた画素値にはある程度の誤差値が含まれる。
したがって、補間アルゴリズムは誤差値の累積をできるだけ抑制すべく設計されねばならない。その方法の1つで、誤差値が累積されずに相殺されるようにするために、補間による画素値を求めるに当たって四捨五入、切上げまたは切捨て過程を適切に交互に使用することもある。
また、補間アルゴリズムは一貫性がなければならない。何れの過程を使用しても求めようとする補間画素が結局同一になれば別に問題ないが、選択された過程が何かによってあるいは処理順序が変わることによって得られる補間画素が変われば、これに基づいた動き補償も毎度変わって、究極的にエンコーダ側とデコーダ側とのミスマッチが目立つ可能性が高まる。エンコーダ側とデコーダ側とのミスマッチが増加すれば再現された映像の画質低下が引き起こされうる。H.264符号化標準(Draft ITU−Trec.H.264(2002E))によれば、図5の4分画素9を求めるためのアルゴリズムがその一例である。
したがって、本発明の目的は、動き補償においてさらに一貫性を有する補間アルゴリズムに係る補間方法及びその装置を提供することである。
本発明の他の目的は、動き補償の効率をさらに高められる補間アルゴリズムに係る補間方法及びその装置を提供することである。
本発明の他の目的は、動き補償の効率をさらに高められる補間アルゴリズムに係る補間方法及びその装置を提供することである。
前記目的は、本発明によって、(a) 所定4分画素の水平方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得る段階と、(b)前記4分画素の垂直方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を段階と、(c) 前記垂直和と水平和とに基づいて整数の前記4分画素を求める段階と、を含むことを特徴とする補間方法により達成される。
前記(a)段階及び(b)段階は、偶数個の前記半画素が前記水平和及び垂直和に各々参与する段階であり、前記加重値の和は2nであることが望ましい。
また、前記目的は、(a) 所定4分画素の水平方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得る段階と、(b) 前記水平和に基づいて平均値を算出し、整数化して水平平均値を得る段階と、(c) 前記4分画素の垂直方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を得る段階と、(d) 前記垂直和に基づいて平均値を算出し、整数化して垂直平均値を得る段階と、(e) 前記水平平均値と垂直平均値との平均値を算出し、整数化して前記4分画素の画素値を得る段階と、を含むことを特徴とする補間方法によっても達成される。
一方、本発明の他の分野によれば、前記目的は所定4分画素の水平方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得て、前記4分画素の垂直方向に複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を求め、前記垂直和と水平和とに基づいて整数の前記4分画素を求める補間部と、前記補間装置により補間されたブロックに対して動き補償を行う動き補償部と、を備えた動き補償装置によっても達成される。
また、前記目的は、所定の4分画素の水平方向に複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得て、前記水平和に基づいて平均値を算出し、整数化して水平平均値を得た後、前記4分画素の垂直方向に複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を得て、前記垂直和に基づいて平均値を算出し、整数化して垂直平均値を得た後、前記水平平均値と垂直平均値との平均値を算出し、整数化して前記4分画素の画素値を得る補間部と、前記補間部により補間されたブロックに対して動き補償を行う動き補償部と、を含むことを特徴とする動き補償装置によっても達成される。
本発明によれば動き補償においてさらに一貫性を有する補間アルゴリズムに係る補間方法及びその装置が提供される。これにより、動き補償の効率がさらに高まる。
以下、添付した図面を参照して本発明の望ましい実施例を詳細に説明する。
図2は、本発明の望ましい実施例に係る動き補償装置を備えた符号化装置のブロック図である。
図2を参照すれば、符号化装置は映像データを符号化するために多重参照方式を採用した符号化装置であって、符号化制御部100、変換符号化部200、エントロピ符号化部700を備える。また、変換復号化部300、メモリ部400、動き補償部500、及び動き予測部600を備える。多重参照方式は後述する。
図2は、本発明の望ましい実施例に係る動き補償装置を備えた符号化装置のブロック図である。
図2を参照すれば、符号化装置は映像データを符号化するために多重参照方式を採用した符号化装置であって、符号化制御部100、変換符号化部200、エントロピ符号化部700を備える。また、変換復号化部300、メモリ部400、動き補償部500、及び動き予測部600を備える。多重参照方式は後述する。
入力される映像データは、図3のように時間軸に沿ってカメラから入力されるフレームまたはフレームを所定大きさに分割して得られたブロックで構成される。フレームは順次走査方式により得られた順次走査フレーム、跳越し走査方式により得られたフィールドまたは跳越し走査フレームを含む。したがって、後述する映像データは順次走査フレーム、跳越し走査フレーム、フィールド、ブロック構造のピクチャーを意味する。
映像データが入力されれば、符号化制御部100は入力される映像の特性または使用者が所望の所定動作目的によって、入力映像に対して動き補償を行うか否かによるコーディングタイプ(イントラコーディング/インターコーディング)を決定して対応する制御信号を第1スイッチS1に出力する。動き補償を行う場合には以前または以後に入力された映像データが必要なので第1スイッチS1は閉じ、動き補償を行わない場合には以前または以後に入力された映像データが不要なので第1スイッチS1は開放される。第1スイッチS1が閉じれば、入力映像と以前または以後映像から得られた差映像データが第1ソース符号化部200に入力され、第1スイッチS1が開放されれば入力映像のみが変換符号化部200に入力される。
変換符号化部200は入力された映像データを変換符号化して得られた変換係数値を所定量子化ステップによって量子化し、量子化された変換係数値で構成された2次元データのN×Mデータを得る。使われる変換の例としては、DCT(Discrete Cosine Transform)を挙げられる。量子化は既定の量子化ステップによって行われる。
一方、変換符号化部200に入力されて符号化された映像データは以後または以前に入力された映像データの動き補償のための参照データとして使われうるので、変換復号化部300により、変換符号化部200の逆過程である逆量子化と逆変換符号化を経た後、メモリ部400に貯蔵される。また、変換復号化部300から出力されたデータが差映像データであれば、符号化制御部100は第2スイッチS2を閉じて変換復号化部300から出力された差映像データが動き補償部500の出力と加算された後、メモリ部400に貯蔵される。
動き予測部600は入力された映像データとメモリ部400に貯蔵されたデータを比較し、現在入力されたデータと最も類似したデータを探した後、入力された映像データと比較して算出された動きベクトルMV(Motion Vector)を出力する。動きベクトルは少なくとも一つのピクチャーを参照して求められる。すなわち、複数の過去及び/または未来のピクチャーを参照して算出できる。動きベクトルがメモリ部400に伝えられれば、メモリ部400は該当データを動き補償部500に出力し、動き補償部500は入力されたデータに基づいて現在符号化する映像データに該当する動き補償値を作って出力する。
エントロピ符号化部700は変換符号化部200から出力される量子化された変換係数と動き予測部600から出力された動きベクトルに関する情報とを入力され、符号化制御部100から提供されるコーディングタイプ情報、量子化ステップ情報などその他の復号化に必要な情報を入力されて符号化して最終的に得られたビットストリームを出力する。
動き補償部500は本発明の望ましい実施例に係る動き補償装置であって、補間部5を備えている。補間部5は動き補償部500による動き補償値を生成するために必要な映像データの解像度を高めるための補間を行う。補間部5により行われる補間方法(補間アルゴリズム)は後述する。
図4は、本発明の望ましい実施例に係る動き補償装置を備えた復号化装置のブロック図である。
図4を参照すれば、復号化装置は図2の符号化装置により符号化されたビットストリームを受信して復号化するための装置であって、ビットストリームをデマルチプレクスするデマルチプレクサ110、エントロピ復号化部710、変換復号化部210を備える。また、コーディングタイプ情報を解析するコーディングタイプ情報解析部120及び本発明に係る動きベクトルを解析する動きベクトル解析部130を備える。
図4を参照すれば、復号化装置は図2の符号化装置により符号化されたビットストリームを受信して復号化するための装置であって、ビットストリームをデマルチプレクスするデマルチプレクサ110、エントロピ復号化部710、変換復号化部210を備える。また、コーディングタイプ情報を解析するコーディングタイプ情報解析部120及び本発明に係る動きベクトルを解析する動きベクトル解析部130を備える。
ビットストリームはデマルチプレクサ110によりエントロピ符号化された量子化された変換係数、動きベクトル情報、コーディングタイプ情報でデマルチプレクスされる。エントロピ復号化部710はエントロピ符号化された変換係数をエントロピ復号化して量子化された変換係数を出力する。変換復号化部210は量子化された変換係数を変換復号化する。すなわち、図3の変換符号化部200の逆過程を行う。例えば、変換符号化部200がDCTを行ったとすれば、変換復号化部210はIDCT(Inverse Discrete Cosine Transform)を行う。これにより、映像データが復元される。復元された映像データは動き補償のためにメモリ部410に貯蔵される。
一方、コーディングタイプ情報解析部120はコーディングタイプを知って動き補償が必要なインタータイプである場合、第3スイッチS30を閉じる。これにより、変換復号化部210から出力されたデータに動き補償部510から出力された動き補償値が加算されて復元された映像データが得られる。動きベクトル解析部130は動きベクトル情報から得た動きベクトルが示す位置を知らせ、動き補償部510は動きベクトルが示す参照映像データから動き補償値を生成して出力する。
動き補償部510は本発明の望ましい実施例に係る動き補償装置であって、補間部5を備えている。補間部5は動き補償部510による動き補償値を生成するために必要な映像データの解像度を高めるための補間を行う。補間部5により行われる補間方法(補間アルゴリズム)は後述する。
図5は、多重参照方式を説明するための参考図である。
図5を参照すれば、Iピクチャーは他のピクチャーを参照せずに得られるイントラピクチャーを示し、Bピクチャーは2つの相異なるピクチャーを参照して得られる両方向ピクチャーを示す。PピクチャーはIピクチャーだけを参照して得られる予測ピクチャーを示す。矢印は復号化時に必要なピクチャー、すなわち従属関係を示す。B2ピクチャーはI0ピクチャーとP4ピクチャーとに従属され、B1ピクチャーはI0ピクチャー、P4ピクチャー、B2ピクチャーに従属される。B3ピクチャーはI0ピクチャー、P4ピクチャー、B1ピクチャー、及びB2ピクチャーに従属される。したがって、ディスプレー順序はI0,B1,B2,B3,P4,...順であるが、伝送順序はI0,P4,B2,B1,B3,...になる。このように、図2の符号化装置によれば複数のピクチャーを参照して生成されるBピクチャーが存在する。換言すれば、図2及び4を各々参照して説明した符号化装置及び復号化装置での動きベクトルはフォワード予測方式、バックワード予測方式、両方向予測方式、及びダイレクト予測方式のうち両方向予測方式を含む少なくとも1つの方式で算出される。両方向予測方式において2つの参照ピクチャーは全て過去ピクチャーまたは全て未来ピクチャーであり得る。
図5を参照すれば、Iピクチャーは他のピクチャーを参照せずに得られるイントラピクチャーを示し、Bピクチャーは2つの相異なるピクチャーを参照して得られる両方向ピクチャーを示す。PピクチャーはIピクチャーだけを参照して得られる予測ピクチャーを示す。矢印は復号化時に必要なピクチャー、すなわち従属関係を示す。B2ピクチャーはI0ピクチャーとP4ピクチャーとに従属され、B1ピクチャーはI0ピクチャー、P4ピクチャー、B2ピクチャーに従属される。B3ピクチャーはI0ピクチャー、P4ピクチャー、B1ピクチャー、及びB2ピクチャーに従属される。したがって、ディスプレー順序はI0,B1,B2,B3,P4,...順であるが、伝送順序はI0,P4,B2,B1,B3,...になる。このように、図2の符号化装置によれば複数のピクチャーを参照して生成されるBピクチャーが存在する。換言すれば、図2及び4を各々参照して説明した符号化装置及び復号化装置での動きベクトルはフォワード予測方式、バックワード予測方式、両方向予測方式、及びダイレクト予測方式のうち両方向予測方式を含む少なくとも1つの方式で算出される。両方向予測方式において2つの参照ピクチャーは全て過去ピクチャーまたは全て未来ピクチャーであり得る。
図6は、動き補償の単位となる動き補償ブロックを示す参考図である。
図6を参照すれば、ピクチャーは複数の動き補償ブロックで構成される。動き補償ブロックは本実施例に係る16×16マクロブロック(MB)はもとより、マクロブロックを水平方向に2分割して得られた16×8ブロック、マクロブロックを垂直方向に2分割して得られた8×16ブロック、マクロブロックを水平及び垂直方向に各々2分割して得られた8×8ブロック、これを再び水平または垂直方向に2分割して得られた8×4ブロックまたは4×8ブロック、水平及び垂直方向に各々2分割して得られた4×4ブロックを含む。
図6を参照すれば、ピクチャーは複数の動き補償ブロックで構成される。動き補償ブロックは本実施例に係る16×16マクロブロック(MB)はもとより、マクロブロックを水平方向に2分割して得られた16×8ブロック、マクロブロックを垂直方向に2分割して得られた8×16ブロック、マクロブロックを水平及び垂直方向に各々2分割して得られた8×8ブロック、これを再び水平または垂直方向に2分割して得られた8×4ブロックまたは4×8ブロック、水平及び垂直方向に各々2分割して得られた4×4ブロックを含む。
図7は、本発明に係る補間部5の補間方法を説明するための参考図である。
図7を参照すれば、所定の動き補償ブロックを構成する画素の一部を示す。灰色箱は整数画素を、白箱は補間画素を示す。補間部5は次のうち何れか1つの方式を使用して4分画素100を求める。
図7を参照すれば、所定の動き補償ブロックを構成する画素の一部を示す。灰色箱は整数画素を、白箱は補間画素を示す。補間部5は次のうち何れか1つの方式を使用して4分画素100を求める。
<方式1>
1−(a)4分画素100の水平方向に隣接した複数の半画素の画素値に対して各々所定の加重値を与えた後、加算して水平和を得る。参与する半画素の範囲は多様に決定されうる。参与する半画素が2つであれば、これらは半画素11と12である。4つであれば半画素11、12、13、14となる。6つであれば半画素11、12、13、14、15、16である。参与する半画素の数は偶数である。加重値は次の原則に立脚して付与されうる。すなわち、4分画素100により隣接した半画素に付与される加重値の絶対値がより少なく隣接した半画素に付与される絶対値より大きく、4分画素100から同じ距離にある半画素に付与される加重値の絶対値は同じである。また、加重値の和は2nである。
例えば、6個の半画素が参与して付与される加重値が各々a、b、c、d、e、fであれば、水平和Sum_h_100は[a*(半画素15)+b*(半画素13)+c*(半画素11)+d*(半画素12)+e*(半画素14)+f*(半画素16)]である。また、加重値の和a+b+c+d+e+f=2nである。
1−(a)4分画素100の水平方向に隣接した複数の半画素の画素値に対して各々所定の加重値を与えた後、加算して水平和を得る。参与する半画素の範囲は多様に決定されうる。参与する半画素が2つであれば、これらは半画素11と12である。4つであれば半画素11、12、13、14となる。6つであれば半画素11、12、13、14、15、16である。参与する半画素の数は偶数である。加重値は次の原則に立脚して付与されうる。すなわち、4分画素100により隣接した半画素に付与される加重値の絶対値がより少なく隣接した半画素に付与される絶対値より大きく、4分画素100から同じ距離にある半画素に付与される加重値の絶対値は同じである。また、加重値の和は2nである。
例えば、6個の半画素が参与して付与される加重値が各々a、b、c、d、e、fであれば、水平和Sum_h_100は[a*(半画素15)+b*(半画素13)+c*(半画素11)+d*(半画素12)+e*(半画素14)+f*(半画素16)]である。また、加重値の和a+b+c+d+e+f=2nである。
1−(b)4分画素100の垂直方向に複数の半画素の画素値に対して各々所定の加重値を与えた後、加算して垂直和を求める。参与する半画素の範囲は水平和の場合のように多様に決定できるが、水平和に参与した半画素の数と垂直和に参与した半画素の数とが同じであることが望ましい。加重値も水平和の場合と同一に付与されることが望ましい。
例えば、6個の半画素が参与して付与される加重値が各々a、b、c、d、e、fであれば、垂直和Sum_v_100は[a*(半画素25)+b*(半画素23)+c*(半画素21)+d*(半画素22)+e*(半画素24)+f*(半画素26)]である。
例えば、6個の半画素が参与して付与される加重値が各々a、b、c、d、e、fであれば、垂直和Sum_v_100は[a*(半画素25)+b*(半画素23)+c*(半画素21)+d*(半画素22)+e*(半画素24)+f*(半画素26)]である。
1−(c)水平和Sum_h_100と垂直和Sum_v_100とに基づいて整数値を有する4分画素100の画素値を求める。具体的に、数式1のように、水平和Sum_h_100と垂直和Sum_v_100とを加算した後の平均値M_hvを求める。
<数1>
M_hv=(Sum_h_100+Sum_v_100)/[2*(a+b+c+d+e+f)]
<数1>
M_hv=(Sum_h_100+Sum_v_100)/[2*(a+b+c+d+e+f)]
次いで、平均値を整数化する。整数化する方法、すなわち平均値を整数値として作る方法は切捨て、切上げ、四捨五入がある。四捨五入を使用すれば誤差が分散される効果が得られる。得られた整数値が4分画素100の画素値となる。もし、得られた整数値が元画素と同じ範囲の整数値でない場合に適切なマッピングアルゴリズムにより元画素と同じ範囲の整数値で表現されるようにマッピングさせる。例えば、元画素が0−255の整数値で表現されれば、得られた4分画素も0−255の整数値で表現させる。
<方式2>
2−(a) 4分画素100の水平方向に複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得る。参与する半画素の範囲は多様に決定されうる。参与する半画素が2つであればこれらは半画素11と12である。4つであれば半画素11、12、13、14となる。6つであれば半画素11、12、13、14、15、16である。加重値は次の原則に立脚して付与できる。すなわち、4分画素100により隣接した半画素に付与される加重値の絶対値がさらに少なく隣接した半画素に付与される絶対値より大きく、4分画素100から同じ距離にある半画素に付与される加重値の絶対値は同じである。
例えば、6個の半画素が参与して付与される加重値が各々a、b、c、d、e、fであれば、水平和Sum_h_100は[a*(半画素15)+b*(半画素13)+c*(半画素11)+d*(半画素12)+e*(半画素14)+f*(半画素16)]である。
2−(a) 4分画素100の水平方向に複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得る。参与する半画素の範囲は多様に決定されうる。参与する半画素が2つであればこれらは半画素11と12である。4つであれば半画素11、12、13、14となる。6つであれば半画素11、12、13、14、15、16である。加重値は次の原則に立脚して付与できる。すなわち、4分画素100により隣接した半画素に付与される加重値の絶対値がさらに少なく隣接した半画素に付与される絶対値より大きく、4分画素100から同じ距離にある半画素に付与される加重値の絶対値は同じである。
例えば、6個の半画素が参与して付与される加重値が各々a、b、c、d、e、fであれば、水平和Sum_h_100は[a*(半画素15)+b*(半画素13)+c*(半画素11)+d*(半画素12)+e*(半画素14)+f*(半画素16)]である。
2−(b) 水平和Sum_h_100の平均値を算出した後、整数値に作って水平平均値を得る。付与された加重値を考慮すれば平均値は次の数式2による。
<数2>
M_h=(Sum_h_100)/(a+b+c+d+e+f)
次いで、平均値M_hを整数化する。整数化方法は切捨て、切上げ、四捨五入がある。四捨五入を使用すれば誤差が分散される効果を得られる。得られた整数値が水平平均値integer_M_hになる。
<数2>
M_h=(Sum_h_100)/(a+b+c+d+e+f)
次いで、平均値M_hを整数化する。整数化方法は切捨て、切上げ、四捨五入がある。四捨五入を使用すれば誤差が分散される効果を得られる。得られた整数値が水平平均値integer_M_hになる。
2−(c) 4分画素100の垂直方向に複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を得る。参与する半画素の範囲は水平和の場合のように多様に決定されうるが、水平和に参与した半画素の数と垂直和に参与した半画素の数とが同じであることが望ましい。加重値も水平和の場合と同一に付与されることが望ましい。
例えば、6個の半画素が参与して付与される加重値が各々a、b、c、d、e、fであれば、垂直和Sum_v_100は[a*(半画素25)+b*(半画素23)+c*(半画素21)+d*(半画素22)+e*(半画素24)+f*(半画素26)]である。
例えば、6個の半画素が参与して付与される加重値が各々a、b、c、d、e、fであれば、垂直和Sum_v_100は[a*(半画素25)+b*(半画素23)+c*(半画素21)+d*(半画素22)+e*(半画素24)+f*(半画素26)]である。
2−(d) 垂直和Sum_v_100の平均値を算出した後、整数値にして垂直平均値M_vを得る。付与された加重値を考慮すれば平均値は次の数式3による。
<数3>
M_v=(Sum_v_100)/(a+b+c+d+e+f)
次いで、平均値M_vを整数化する。整数化する方法は切捨て、切上げ、四捨五入がある。四捨五入を使用すれば誤差が分散される効果を得られる。得られた整数値が垂直平均値integer_M_vとなる。
<数3>
M_v=(Sum_v_100)/(a+b+c+d+e+f)
次いで、平均値M_vを整数化する。整数化する方法は切捨て、切上げ、四捨五入がある。四捨五入を使用すれば誤差が分散される効果を得られる。得られた整数値が垂直平均値integer_M_vとなる。
2−(e) 水平平均値integer_M_hと垂直平均値integer_M_vとの平均値を算出する。算出された平均値を整数化すれば4分画素100の画素値が得られる。4分画素100の画素値は次の数式4で表現される。
<数4>
4分画素100=integer[(integer_M_h+integer_M_v)/2]
<数4>
4分画素100=integer[(integer_M_h+integer_M_v)/2]
ここで、integer[]は[]を整数化することを意味する。整数化の方法は切捨て、切上げ、四捨五入がある。四捨五入を使用すれば誤差が分散される効果が得られる。
一方、<方式2>は2−(c)、2−(d)、2−(a)、2−(b)、2−(e)の順に行われても同じ結果を得られる。
残りの補間画素、すなわち8分画素及び16分画素また4分画素100と同じ方式で求められる。
一方、<方式2>は2−(c)、2−(d)、2−(a)、2−(b)、2−(e)の順に行われても同じ結果を得られる。
残りの補間画素、すなわち8分画素及び16分画素また4分画素100と同じ方式で求められる。
図8は、本発明の望ましい実施例に係る補間部5の補間方法を説明するための参考図であって、所定動き補償ブロックを構成する画素の一部を示す。灰色箱は整数画素を、白箱は補間画素を示す。本実施例に係る補間方法は1つの補間画素を求めるのに複数の画素、すなわち6個の画素が参与する。また、補間に参与する各画素は加重値が付与される。このために、本実施例では6タップフィルターを使用する。6タップフィルターは6個のタップ値を有する。タップ値は補間に参与する画素値に付与される加重値を意味する。本実施例においてタップ値は(1、−5、20、20、−5、1)である。もちろん、補間に参与する画素の数及びこれらに付与される加重値、すなわちタップ値は多様に決定されうる。
<半画素b>
半画素bを求めるためには半画素bの水平方向に近く位置する順に6個の整数画素E、F、G、H、I、Jが参与する。整数画素E、F、G、H、I、Jに前述した6タップフィルターを適用すれば次の数式5のような水平和Sum_h_bが得られる。
<数5>
Sum_h_b=(E−5F+20G+20H−5I+J)
次いで、数式6のように、水平和Sum_h_bに16を加算した後、32で割り、整数化した後、範囲調整をして最終的に半画素bを求める。
<数6>
b=Clip1((Sum_h_b+16)>>5)
半画素bを求めるためには半画素bの水平方向に近く位置する順に6個の整数画素E、F、G、H、I、Jが参与する。整数画素E、F、G、H、I、Jに前述した6タップフィルターを適用すれば次の数式5のような水平和Sum_h_bが得られる。
<数5>
Sum_h_b=(E−5F+20G+20H−5I+J)
次いで、数式6のように、水平和Sum_h_bに16を加算した後、32で割り、整数化した後、範囲調整をして最終的に半画素bを求める。
<数6>
b=Clip1((Sum_h_b+16)>>5)
ここで、水平和Sum_h_bに16を加算することによって整数値を求めるに当たって四捨五入が行われる。「>>5」は数学的に32(=25)で割った後、小数点以下の数字は捨てることを意味する。6タップフィルターのタップ値の和が32であるために(すなわち、32の画素値が加算されたわけなので)平均値を求めようとすれば、再び32で割らねばならないからである。Clip1()は求められた整数値、すなわち(Sum_h_b+16)>>5が元画素(整数画素)が表現される範囲のうち何れか1つで表現さるべくマッピングさせる役割をする。例えば、整数画素が0−255の値のうち何れか1つで表示される時、求められた平均値がその範囲外の値を有すれば、Clip1()は範囲内の所定値でマッピングさせる。
<半画素h>
半画素hを求めるためには半画素hの垂直方向に近く位置する順に6個の整数画素A、C、G、M、R、Tが参与する。整数画素A、C、G、M、R、Tに前述した6タップフィルターを適用すれば数式7のような垂直和Sum_v_hが得られる。
<数7>
Sum_v_h=(A−5C+20G+20M−5R+T)
次いで、垂直和Sum_v_hに16を加算した後、32で割り、四捨五入して平均値を求め、範囲調整を行って数式8のように、最終的に半画素hを求める。
<数8>
h=Clip1((Sum_v_h+16)>>5)
ここで、垂直和Sum_v_hに16を加算することによって整数値を求めるに当たって四捨五入が行われる。「>>5」は数学的に32(=25)で割った後、小数点以下の数字は捨てることを意味する。6タップフィルターのタップ値の和が32であるために(すなわち、32個の画素値が加算されたわけなので)平均値を求めようとすれば、再び32で割らねばならないからである。Clip1()は求められた整数値、すなわち(Sum_v_h+16)>>5が元画素(整数画素)が表現される範囲のうち何れか1つで表現されるようにマッピングさせる役割をする。例えば、整数画素が0−255の値のうち何れか1つで表示される時、求められた平均値がその範囲外の値を有すれば、Clip1()は範囲内の所定値としてマッピングさせる。
半画素hを求めるためには半画素hの垂直方向に近く位置する順に6個の整数画素A、C、G、M、R、Tが参与する。整数画素A、C、G、M、R、Tに前述した6タップフィルターを適用すれば数式7のような垂直和Sum_v_hが得られる。
<数7>
Sum_v_h=(A−5C+20G+20M−5R+T)
次いで、垂直和Sum_v_hに16を加算した後、32で割り、四捨五入して平均値を求め、範囲調整を行って数式8のように、最終的に半画素hを求める。
<数8>
h=Clip1((Sum_v_h+16)>>5)
ここで、垂直和Sum_v_hに16を加算することによって整数値を求めるに当たって四捨五入が行われる。「>>5」は数学的に32(=25)で割った後、小数点以下の数字は捨てることを意味する。6タップフィルターのタップ値の和が32であるために(すなわち、32個の画素値が加算されたわけなので)平均値を求めようとすれば、再び32で割らねばならないからである。Clip1()は求められた整数値、すなわち(Sum_v_h+16)>>5が元画素(整数画素)が表現される範囲のうち何れか1つで表現されるようにマッピングさせる役割をする。例えば、整数画素が0−255の値のうち何れか1つで表示される時、求められた平均値がその範囲外の値を有すれば、Clip1()は範囲内の所定値としてマッピングさせる。
<半画素s>
半画素sは半画素bと同じ方法で求められる。これは数式9のようである。
<数9>
Sum_h_s=(K−5L+20M+20N−5P+Q)
s=Clip1((Sum_h_s+16)>>5)
<半画素m>
半画素mは半画素hと同じ方法で求められる。これは数式10のようである。
<数10>
Sum_h_m=(B−5D+20H+20N−5S+U)
m=Clip1((Sum_h_m+16)>>5)
半画素sは半画素bと同じ方法で求められる。これは数式9のようである。
<数9>
Sum_h_s=(K−5L+20M+20N−5P+Q)
s=Clip1((Sum_h_s+16)>>5)
<半画素m>
半画素mは半画素hと同じ方法で求められる。これは数式10のようである。
<数10>
Sum_h_m=(B−5D+20H+20N−5S+U)
m=Clip1((Sum_h_m+16)>>5)
<4分画素j>
4分画素jを求めるためには4分画素jの水平方向に近く位置する順に6個の半画素cc、dd、h、m、ee、ffと、4分画素jの垂直方向に近く位置する順に6個の半画素aa、bb、b、s、gg、hh、全て12個の半画素が参与する。
4分画素jを求めるためには4分画素jの水平方向に近く位置する順に6個の半画素cc、dd、h、m、ee、ffと、4分画素jの垂直方向に近く位置する順に6個の半画素aa、bb、b、s、gg、hh、全て12個の半画素が参与する。
<方式3>
まず、水平方向の半画素cc、dd、h、m、ee、ffに前述した6タップフィルターを適用すれば数式11のように水平和Sum_h_jが得られる。
<数11>
Sum_h_j=(cc−5dd+20h+20m−5ee+ff)
垂直方向の半画素aa、bb、b、s、gg、hh、に前述した6タップフィルターを適用すれば数式12のように垂直和Sum_v_jが得られる。
<数12>
Sum_v_j=(aa−5bb+20b+20s−5gg+hh)
次いで、水平和Sum_h_jと垂直和Sum_v_jとの平均値を求めた後、整数化し、範囲調整を行って数式13のように最終的に4分画素jを求める。
<数13>
j=Clip1((Sum_h_j+Sum_v_j+32)>>6)
(Sum_h_j+Sum_v_j+32)>>6はSum_h_j+Sum_v_jに32を加算した後、64で割り、小数点以下の数は捨てることによって整数化することを意味する。この際、水平和と垂直和との和Sum_h_j+Sum_v_jに32を加えるために整数化するに当たって実際には四捨五入が行われる。Clip1()は求められた整数値、すなわち(Sum_h_j+Sum_v_j+32)>>6が元画素(整数画素)の範囲の値のうち1つで表現さるべくマッピングさせる役割をする。例えば、元画素が0−255の値のうち何れか1つで表示される時、求められた整数値がその範囲外の値を有すれば範囲内の所定値でマッピングさせる。
まず、水平方向の半画素cc、dd、h、m、ee、ffに前述した6タップフィルターを適用すれば数式11のように水平和Sum_h_jが得られる。
<数11>
Sum_h_j=(cc−5dd+20h+20m−5ee+ff)
垂直方向の半画素aa、bb、b、s、gg、hh、に前述した6タップフィルターを適用すれば数式12のように垂直和Sum_v_jが得られる。
<数12>
Sum_v_j=(aa−5bb+20b+20s−5gg+hh)
次いで、水平和Sum_h_jと垂直和Sum_v_jとの平均値を求めた後、整数化し、範囲調整を行って数式13のように最終的に4分画素jを求める。
<数13>
j=Clip1((Sum_h_j+Sum_v_j+32)>>6)
(Sum_h_j+Sum_v_j+32)>>6はSum_h_j+Sum_v_jに32を加算した後、64で割り、小数点以下の数は捨てることによって整数化することを意味する。この際、水平和と垂直和との和Sum_h_j+Sum_v_jに32を加えるために整数化するに当たって実際には四捨五入が行われる。Clip1()は求められた整数値、すなわち(Sum_h_j+Sum_v_j+32)>>6が元画素(整数画素)の範囲の値のうち1つで表現さるべくマッピングさせる役割をする。例えば、元画素が0−255の値のうち何れか1つで表示される時、求められた整数値がその範囲外の値を有すれば範囲内の所定値でマッピングさせる。
<方式4>
4分画素jの水平方向に近く位置する順に6個の半画素cc、dd、h、m、ee、ffに前述した6タップフィルターを適用して水平和Sum_h_jを得る。得られた水平和Sum_h_jの平均値を求めた後、整数化して数式14のように水平平均値M_h_jを求める。
<数14>
Sum_h_j=(cc−5dd+20h+20m−5ee+ff)
M_h_j=Clip1((Sum_h_j+16)>>5)
次いで、垂直方向の半画素aa、bb、b、s、gg、hh、に前述した6タップフィルターを適用して垂直和Sum_v_jを得る。得られた垂直和Sum_v_jの平均値を求めた後、整数化して垂直平均値M_v_jを求める。
<数15>
Sum_v_j=(aa−5bb+20b+20s−5gg+hh)
M_v_j=Clip1((Sum_v_j+16)>>5)
次いで、水平平均値M_h_jと垂直平均値M_v_jとの平均値を求めた後、整数化し、数式16のように最終的に4分画素jの画素値を求める。
<数16>
j=Clip1((M_h_j+M_v_j+1)>>1)
4分画素jの水平方向に近く位置する順に6個の半画素cc、dd、h、m、ee、ffに前述した6タップフィルターを適用して水平和Sum_h_jを得る。得られた水平和Sum_h_jの平均値を求めた後、整数化して数式14のように水平平均値M_h_jを求める。
<数14>
Sum_h_j=(cc−5dd+20h+20m−5ee+ff)
M_h_j=Clip1((Sum_h_j+16)>>5)
次いで、垂直方向の半画素aa、bb、b、s、gg、hh、に前述した6タップフィルターを適用して垂直和Sum_v_jを得る。得られた垂直和Sum_v_jの平均値を求めた後、整数化して垂直平均値M_v_jを求める。
<数15>
Sum_v_j=(aa−5bb+20b+20s−5gg+hh)
M_v_j=Clip1((Sum_v_j+16)>>5)
次いで、水平平均値M_h_jと垂直平均値M_v_jとの平均値を求めた後、整数化し、数式16のように最終的に4分画素jの画素値を求める。
<数16>
j=Clip1((M_h_j+M_v_j+1)>>1)
他の4分画素、8分画素、及び16分画素も上の4分画素jと同じ方法で求められる。
一方、前述した補間方法はコンピュータで実行されるコンピュータプログラムで作成されうる。そのコンピュータプログラムを構成するコード及びコードセグメントは当該分野のコンピュータプログラマーによって容易に推論できる。また、前記プログラムはコンピュータで読取れる情報貯蔵媒体に貯蔵され、コンピュータによって読取られて実行されることによって前記補間方法を具現する。前記情報貯蔵媒体は磁気記録媒体、光記録媒体、及びキャリアウェーブ媒体を含む。
一方、前述した補間方法はコンピュータで実行されるコンピュータプログラムで作成されうる。そのコンピュータプログラムを構成するコード及びコードセグメントは当該分野のコンピュータプログラマーによって容易に推論できる。また、前記プログラムはコンピュータで読取れる情報貯蔵媒体に貯蔵され、コンピュータによって読取られて実行されることによって前記補間方法を具現する。前記情報貯蔵媒体は磁気記録媒体、光記録媒体、及びキャリアウェーブ媒体を含む。
動き補償において、一貫性を有し、かつ効率的な補間アルゴリズムに係る補間方法及びその装置に適用される。
100 符号化制御部
200 変換符号化部
300 変換復号化部
400 メモリ部
500 動き補償部
600 動き予測部
700 エントロピ符号化部
200 変換符号化部
300 変換復号化部
400 メモリ部
500 動き補償部
600 動き予測部
700 エントロピ符号化部
Claims (29)
- (a)所定4分画素の水平方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得る段階と、
(b) 前記4分画素の垂直方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を段階と、
(c) 前記垂直和及び水平和に基づいて整数の前記4分画素を求める段階と、を含むことを特徴とする補間方法。 - 前記(a)段階及び(b)段階は、
偶数個の前記半画素が前記水平和及び垂直和に各々参与する段階であることを特徴とする請求項1に記載の補間方法。 - 前記加重値の和は2nであることを特徴とする請求項1に記載の補間方法。
- 前記(a)段階及び(b)段階は、
前記複数の半画素に対して前記加重値をタップ値として有するタップフィルターを適用させる段階であることを特徴とする請求項1に記載の補間方法。 - 前記タップ値の和は2nであることを特徴とする請求項4に記載の補間方法。
- 6個の半画素に対して(1、−5、20、20、−5、1)のタップ値を有する6タップフィルターを適用させる段階であることを特徴とする請求項5に記載の補間方法。
- 前記(c)段階は、
前記垂直和と水平和との平均値を求めた後、四捨五入によって整数値を算出して前記4分画素として決定する段階であることを特徴とする請求項1に記載の補間方法。 - 前記(c)段階は次の式に係る平均値を求めることを特徴とする請求項7に記載の補間方法。
平均値=(水平和+垂直和)/[2*(a+b+c+d+e+f)]
但し、a、b、c、d、e、fは6タップフィルターのタップ値である。 - 前記(c)段階は次の式によることを特徴とする請求項7に記載の補間方法。
4分画素=integer[(integer_M_h+integer_M_v)/2]
integer_M_h=integer[水平和/(a+b+c+d+e+f)]
integer_M_v=integer[垂直和/(a+b+c+d+e+f)]
但し、a、b、c、d、e、fは6タップフィルターのタップ値であり、integer[]は[]を整数化することを意味する。 - (a) 所定4分画素の水平方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得る段階と、
(b) 前記水平和に基づいて平均値を算出し、整数化して水平平均値を得る段階と、
(c) 前記4分画素の垂直方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を得る段階と、
(d) 前記垂直和に基づいて平均値を算出し、整数化して垂直平均値を得る段階と、
(e) 前記水平平均値と垂直平均値との平均値を算出し、整数化して前記4分画素の画素値を得る段階と、を含むことを特徴とする補間方法。 - 前記(a)段階及び(c)段階は、
前記複数の半画素値に対して前記加重値をタップ値として有するタップフィルターを適用させる段階であることを特徴とする請求項10に記載の補間方法。 - 前記(a)段階及び(c)段階は、
各々6個の半画素に対して(1、−5、20、20、−5、1)のタップ値を有する6タップフィルターを適用させる段階であることを特徴とする請求項11に記載の補間方法。 - 前記(e)段階は次の式によることを特徴とする請求項10に記載の補間方法。
4分画素=integer[(integer_M_h+integer_M_v)/2]
integer_M_h=integer[水平和/(a+b+c+d+e+f)]
integer_M_v=integer[垂直和/(a+b+c+d+e+f)]
但し、a、b、c、d、e、fは6タップフィルターのタップ値であり、integer[]は[]を整数化することを意味する。 - 前記(e)段階は次の式によることを特徴とする請求項10に記載の補間方法。
4分画素=Clip1((M_h+M_v+1)>>1)
M_h=Clip1((Sum_h+16)>>5)
M_v=Clip1((Sum_v+16)>>5) - 所定4分画素の水平方向に隣接した複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得て、前記4分画素の垂直方向に複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を求め、前記垂直和及び水平和に基づいて整数の前記4分画素を求める補間部と、
前記補間装置により補間されたブロックに対して動き補償を行う動き補償部と、を備えた動き補償装置。 - 前記補間部は
前記複数の半画素に対して前記加重値をタップ値として有するタップフィルターを適用させることを特徴とする請求項15に記載の動き補償装置。 - 前記補間部は、
6個の半画素に対して(1、−5、20、20、−5、1)のタップ値を有する6タップフィルターを適用させることを特徴とする請求項15に記載の動き補償装置。 - 前記補間部は、
前記垂直和と水平和との平均値を求めた後、四捨五入により整数値を算出して前記4分画素として決定することを特徴とする請求項15に記載の動き補償装置。 - 前記補間部は次の式に係る平均値を求めることを特徴とする請求項15に記載の動き補償装置。
平均値=(水平和+垂直和)/[2*(a+b+c+d+e+f)]
但し、a、b、c、d、e、fは6タップフィルターのタップ値である。 - 前記補間部は次の式によることを特徴とする請求項15に記載の動き補償装置。
4分画素=integer[(integer_M_h+integer_M_v)/2]
integer_M_h=integer[水平和/(a+b+c+d+e+f)]
integer_M_v=integer[垂直和/(a+b+c+d+e+f)]
但し、a、b、c、d、e、fは6タップフィルターのタップ値であり、integer[]は[]を整数化することを意味する。 - 所定4分画素の水平方向に複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得て、前記水平和に基づいて平均値を算出し、整数化して水平平均値を得た後、前記4分画素の垂直方向に複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を得て、前記垂直和に基づいて平均値を算出し、整数化して垂直平均値を得た後、前記水平平均値と垂直平均値との平均値を算出し、整数化して前記4分画素の画素値を得る補間部と、
前記補間部により補間されたブロックに対して動き補償を行う動き補償部と、を含むことを特徴とする動き補償装置。 - 前記補間部は、
前記複数の半画素値に対して前記加重値をタップ値として有するタップフィルターを適用させることを特徴とする請求項21に記載の動き補償装置。 - 前記補間部は次の式によることを特徴とする請求項21に記載の動き補償装置。
4分画素=Clip1((M_h+M_v+1)>>1)
M_h=Clip1((Sum_h+16)>>5)
M_v=Clip1((Sum_v+16)>>5) - 所定4分画素の水平方向に複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得て、前記水平和に基づいて平均値を算出し、整数化して水平平均値を得た後、前記4分画素の垂直方向に複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を得て、前記垂直和に基づいて平均値を算出し、整数化して垂直平均値を得た後、前記水平平均値と垂直平均値との平均値を算出し、整数化して前記4分画素の画素値を得る補間部と、
前記補間部により補間されたブロックに対して動き補償を行う動き補償部と、を含むことを特徴とする動き補償装置を備えた符号化装置。 - 前記補間部は、
前記複数の半画素値に対して前記加重値をタップ値として有するタップフィルターを適用させることを特徴とする請求項24に記載の符号化装置。 - 前記補間部は次の式によることを特徴とする請求項24に記載の符号化装置。
4分画素=Clip1((M_h+M_v+1)>>1)
M_h=Clip1((Sum_h+16)>>5)
M_v=Clip1((Sum_v+16)>>5) - 所定4分画素の水平方向に複数の半画素に対して各々所定の加重値を与えた後、加算して水平和を得て、前記水平和に基づいて平均値を算出し、整数化して水平平均値を得た後、前記4分画素の垂直方向に複数の半画素に対して各々所定の加重値を与えた後、加算して垂直和を得て、前記垂直和に基づいて平均値を算出し、整数化して垂直平均値を得た後、前記水平平均値と垂直平均値の平均値を算出し、整数化して前記4分画素の画素値を得る補間部と、
前記補間部により補間されたブロックに対して動き補償を行う動き補償部と、を含むことを特徴とする動き補償装置を備えた復号化装置。 - 前記補間部は
前記複数の半画素値に対して前記加重値をタップ値として有するタップフィルターを適用させることを特徴とする請求項27に記載の復号化装置。 - 前記補間部は次の式によることを特徴とする請求項27に記載の復号化装置。
4分画素=Clip1((M_h+M_v+1)>>1)
M_h=Clip1((Sum_h+16)>>5)
M_v=Clip1((Sum_v+16)>>5)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2002-0052286A KR100472476B1 (ko) | 2002-08-31 | 2002-08-31 | 움직임 보상을 위한 보간 방법 및 그 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004096757A true JP2004096757A (ja) | 2004-03-25 |
Family
ID=31987293
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003307711A Pending JP2004096757A (ja) | 2002-08-31 | 2003-08-29 | 動き補償のための補間方法及びその装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20060291563A1 (ja) |
EP (1) | EP1406449A3 (ja) |
JP (1) | JP2004096757A (ja) |
KR (1) | KR100472476B1 (ja) |
CN (1) | CN1495674A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005104564A1 (ja) * | 2004-04-21 | 2005-11-03 | Matsushita Electric Industrial Co., Ltd. | 動き補償装置 |
US7941006B2 (en) | 2005-02-25 | 2011-05-10 | Panasonic Corporation | Pixel interpolating method and device |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9330060B1 (en) | 2003-04-15 | 2016-05-03 | Nvidia Corporation | Method and device for encoding and decoding video image data |
NO319660B1 (no) * | 2003-11-17 | 2005-09-05 | Tandberg Telecom As | Fremgangsmåte for interpolering av pixelverdier |
NO319629B1 (no) * | 2003-11-28 | 2005-09-05 | Tandberg Telecom As | Fremgangsmate for korrigering av interpolerte pikselverdier |
KR100605105B1 (ko) * | 2004-05-28 | 2006-07-26 | 삼성전자주식회사 | 영상 보간 장치 |
KR100694050B1 (ko) * | 2004-06-11 | 2007-03-12 | 삼성전자주식회사 | 움직임 예측 방법 및 그 장치 |
JP4284265B2 (ja) * | 2004-11-02 | 2009-06-24 | 株式会社東芝 | 動画像符号化装置、動画像符号化方法、動画像復号化装置および動画像復号化方法 |
US20060133507A1 (en) * | 2004-12-06 | 2006-06-22 | Matsushita Electric Industrial Co., Ltd. | Picture information decoding method and picture information encoding method |
US7623575B2 (en) * | 2005-01-05 | 2009-11-24 | Lsi Corporation | Method and apparatus for sub-pixel motion compensation |
KR101147744B1 (ko) * | 2005-02-22 | 2012-05-25 | 엘지전자 주식회사 | 비디오 트랜스 코딩 방법 및 장치와 이를 이용한 pvr |
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 |
KR100800761B1 (ko) * | 2006-10-19 | 2008-02-01 | 삼성전자주식회사 | 계산량을 최소화하는 색차 신호의 보간 방법 및 장치 |
CN101212672B (zh) * | 2006-12-30 | 2011-01-05 | 安凯(广州)微电子技术有限公司 | 视频内容自适应的亚像素插值方法和装置 |
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 |
US8509567B2 (en) * | 2007-07-09 | 2013-08-13 | Analog Devices, Inc. | Half pixel interpolator for video motion estimation accelerator |
US8873625B2 (en) | 2007-07-18 | 2014-10-28 | Nvidia Corporation | Enhanced compression in representing non-frame-edge blocks of image frames |
US8514939B2 (en) * | 2007-10-31 | 2013-08-20 | Broadcom Corporation | Method and system for motion compensated picture rate up-conversion of digital video using picture boundary processing |
CN101472179A (zh) * | 2007-12-29 | 2009-07-01 | 辉达公司 | 多个视频标准下的运动补偿的二维内插结构 |
GB0800277D0 (en) * | 2008-01-08 | 2008-02-13 | Imagination Tech Ltd | Video motion compensation |
US8705622B2 (en) * | 2008-04-10 | 2014-04-22 | Qualcomm Incorporated | Interpolation filter support for sub-pixel resolution in video coding |
US8971412B2 (en) * | 2008-04-10 | 2015-03-03 | Qualcomm Incorporated | Advanced interpolation techniques for motion compensation in video coding |
US8831086B2 (en) * | 2008-04-10 | 2014-09-09 | Qualcomm Incorporated | Prediction techniques for interpolation in video coding |
US9077971B2 (en) * | 2008-04-10 | 2015-07-07 | Qualcomm Incorporated | Interpolation-like filtering of integer-pixel positions in video coding |
US9967590B2 (en) | 2008-04-10 | 2018-05-08 | Qualcomm Incorporated | Rate-distortion defined interpolation for video coding based on fixed filter or adaptive filter |
CN101345872B (zh) * | 2008-05-23 | 2010-06-09 | 清华大学 | 视频编解码中实现双线性插值的方法 |
WO2011121716A1 (ja) * | 2010-03-30 | 2011-10-06 | 株式会社 東芝 | 動画像符号化方法、復号化方法、符号化装置および復号化装置 |
US10045046B2 (en) | 2010-12-10 | 2018-08-07 | Qualcomm Incorporated | Adaptive support for interpolating values of sub-pixels for video coding |
CN112492249B (zh) * | 2019-09-11 | 2024-04-09 | 瑞昱半导体股份有限公司 | 图像处理方法及电路 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2699703B2 (ja) * | 1991-07-31 | 1998-01-19 | 松下電器産業株式会社 | 動き補償予測方法とそれを用いた画像信号符号化方法 |
JPH09102954A (ja) * | 1995-10-04 | 1997-04-15 | Matsushita Electric Ind Co Ltd | 1つまたは2つの予測ブロックからブロックの画素値を計算する方法 |
EP1237376B1 (en) * | 1997-06-09 | 2015-08-05 | Hitachi, Ltd. | Image information recording medium |
US6108448A (en) * | 1997-06-12 | 2000-08-22 | International Business Machines Corporation | System and method for extracting spatially reduced image sequences in a motion compensated compressed format |
JP4675477B2 (ja) * | 1997-11-14 | 2011-04-20 | アンテオン コーポレーション | ビデオ情報圧縮装置と方法 |
KR20010071519A (ko) * | 1998-06-19 | 2001-07-28 | 벤자민 에프 커틀러 | 제1 해상도를 가지는 인코딩된 이미지를 제2 해상도를가지는 이미지로 직접 디코딩하는 방법 및 장치 |
US6950469B2 (en) * | 2001-09-17 | 2005-09-27 | Nokia Corporation | Method for sub-pixel value interpolation |
JP2003125407A (ja) * | 2001-10-15 | 2003-04-25 | Matsushita Electric Ind Co Ltd | 画像復号装置、画像復号方法および画像復号プログラム |
-
2002
- 2002-08-31 KR KR10-2002-0052286A patent/KR100472476B1/ko not_active IP Right Cessation
-
2003
- 2003-08-29 EP EP20030255366 patent/EP1406449A3/en not_active Withdrawn
- 2003-08-29 JP JP2003307711A patent/JP2004096757A/ja active Pending
- 2003-09-01 CN CNA031470300A patent/CN1495674A/zh active Pending
- 2003-09-02 US US11/356,933 patent/US20060291563A1/en not_active Abandoned
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005104564A1 (ja) * | 2004-04-21 | 2005-11-03 | Matsushita Electric Industrial Co., Ltd. | 動き補償装置 |
JPWO2005104564A1 (ja) * | 2004-04-21 | 2008-03-13 | 松下電器産業株式会社 | 動き補償装置 |
JP4709143B2 (ja) * | 2004-04-21 | 2011-06-22 | パナソニック株式会社 | 動き補償装置、画面間予測符号化装置、画面間予測復号化装置、動き補償方法、および集積回路 |
US8284835B2 (en) | 2004-04-21 | 2012-10-09 | Panasonic Corporation | Motion compensating apparatus |
US8767833B2 (en) | 2004-04-21 | 2014-07-01 | Panasonic Corporation | Motion compensating apparatus |
US7941006B2 (en) | 2005-02-25 | 2011-05-10 | Panasonic Corporation | Pixel interpolating method and device |
Also Published As
Publication number | Publication date |
---|---|
EP1406449A3 (en) | 2005-08-10 |
US20060291563A1 (en) | 2006-12-28 |
KR20040020637A (ko) | 2004-03-09 |
CN1495674A (zh) | 2004-05-12 |
EP1406449A2 (en) | 2004-04-07 |
KR100472476B1 (ko) | 2005-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004096757A (ja) | 動き補償のための補間方法及びその装置 | |
RU2251820C2 (ru) | Экстраполяция вектора движения для перекодировки видеопоследовательности | |
KR101403343B1 (ko) | 부화소 움직임 추정을 이용한 인터 예측 부호화, 복호화방법 및 장치 | |
RU2307478C2 (ru) | Компенсация глобального движения для видеоизображений | |
CN100553321C (zh) | 编码动态滤波器 | |
JP2897763B2 (ja) | 動き補償符号化装置、復号化装置、符号化方法及び復号化方法 | |
JP4844449B2 (ja) | 動画像符号化装置、方法、プログラム、動画像復号化装置、方法、およびプログラム | |
KR101985004B1 (ko) | 부호화 장치, 복호화 장치, 부호화 방법, 복호화 방법, 및 컴퓨터 판독가능 기억 매체 | |
JP3686436B2 (ja) | 映像信号の復号化方法 | |
JP4412672B2 (ja) | 補間された画素値を修正する方法 | |
JP2008507190A (ja) | 動き補償方法 | |
JP2006279573A (ja) | 符号化装置と方法、ならびに復号装置と方法 | |
KR20040077774A (ko) | 화상 정보 부호화 장치 및 방법, 및 화상 정보 복호 장치및 방법 | |
KR20070077312A (ko) | 방향 보간 방법 및 그 장치와, 그 보간 방법이 적용된부호화 및 복호화 방법과 그 장치 및 복호화 장치 | |
KR100878536B1 (ko) | 영상 보간 방법 및 장치 | |
KR19990036188A (ko) | 부호화된 디지탈 비디오 신호의 복호화 방법 및 장치 | |
JP4761390B2 (ja) | 内挿される画素値の計算方法の改良 | |
JP2010035146A (ja) | 符号化装置および符号化方法 | |
KR20040070490A (ko) | 비월 주사 방식의 동영상 부호화/복호화 방법 및 그 장치 | |
JP4318019B2 (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
EP2076050B1 (en) | Motion estimation apparatus and method for moving picture coding | |
JP6875566B2 (ja) | 動画像予測符号化装置、動画像予測復号装置、動画像予測符号化方法、動画像予測復号方法及び動画像予測復号プログラム | |
JPH07336695A (ja) | 動画像の符号化及び復号化方法 | |
JP2003348595A (ja) | 画像処理装置および方法、記録媒体、並びにプログラム | |
JP2002010267A (ja) | 動きベクトル変換装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070403 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070904 |