(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-20
(45)【発行日】2023-11-29
(54)【発明の名称】動画処理方法、ビットストリーム生成方法、動画処理装置、及びプログラム
(51)【国際特許分類】
H04N 19/52 20140101AFI20231121BHJP
H04N 19/58 20140101ALI20231121BHJP
【FI】
H04N19/52
H04N19/58
(21)【出願番号】P 2020553654
(86)(22)【出願日】2018-08-31
(86)【国際出願番号】 CN2018103693
(87)【国際公開番号】W WO2019192141
(87)【国際公開日】2019-10-10
【審査請求日】2021-08-30
(31)【優先権主張番号】PCT/CN2018/095710
(32)【優先日】2018-07-13
(33)【優先権主張国・地域又は機関】CN
(31)【優先権主張番号】PCT/CN2018/081652
(32)【優先日】2018-04-02
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】513068816
【氏名又は名称】エスゼット ディージェイアイ テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】SZ DJI TECHNOLOGY CO.,LTD
【住所又は居所原語表記】6F,HKUST SZ IER Bldg.NO.9 Yuexing 1st Rd.Hi-Tech Park(South),Nanshan District Shenzhen,Guangdong 518057 China
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ゼン、シャオゼン
(72)【発明者】
【氏名】リ、ウェイラン
【審査官】鉢呂 健
(56)【参考文献】
【文献】特表2013-545342(JP,A)
【文献】特表2014-535239(JP,A)
【文献】国際公開第2013/061546(WO,A1)
【文献】CHEN, Jianle et al.,Algorithm Description of Joint Exploration Test Model 7 (JEM 7),Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 7th Meeting: Torino, IT, 13-21 July 2017, [JVET-G1001-v1],JVET-G1001 (version 1),ITU-T,2017年08月19日,<URL:http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/7_Torino/wg11/JVET-G1001-v1.zip>: JVET-G1001-v1.docx: pp.13-15,22
【文献】SERIES H: AUDIOVISUAL AND MULTIMEDIA SYSTEMS Infrastructure of audiovisual services - Coding of moving video,H.265 (04/2013) High efficiency video coding,ITU-T,2013年06月07日,pp.115-116,123-124,127-129,<URL:https://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-H.265-201304-S!!PDF-E&type=items>
【文献】TAKAHASHI, Yoshitomo et al.,High-level Syntax: Motion vector prediction issue for long-term reference picture,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 10th Meeting: Stockholm, SE, 11-20 July 2012, [JCTVC-J0071],JCTVC-J0071 (version 3),ITU-T,2012年07月10日,<URL:http://phenix.it-sudparis.eu/jct/doc_end_user/documents/10_Stockholm/wg11/JCTVC-J0071-v3.zip>: JCTVC-J0071_r1.doc: pp.1-6
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00-19/98
(57)【特許請求の範囲】
【請求項1】
動画処理方法であって、前記方法は、
第1画像ブロックの時間領域参照ブロックの動きベクトルを確定し、ここで、前記時間領域参照ブロック、及び前記第1画像ブロックは、異なる画像に位置することと、
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、処理後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定することと、又は
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを参照することを放棄することで前記第1画像ブロックの動きベクトルを取得することと、又は
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを前記第1画像ブロックの動きベクトルとすることと、を含み、
前記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定することは、
前記第1画像ブロックがある画像において、前記第1画像ブロックの
左側隣接画像ブロックを確定することと、
前記第1画像ブロックの参照画像と同じ前記左側隣接画像ブロックの参照画像に応じて、前記
左側隣接画像ブロックの
動きベクトルに基づいて、前記第1画像ブロックの
前記参照画像における前記第1画像ブロックのサブブロックの時間領域参照ブロックを確定することと、
前記サブブロックの前記時間領域参照ブロックの動きベクトルに基づいて前記サブブロックの動きベクトルを確定することと、を含む、動画処理方法。
【請求項2】
前記処理後の前記時間領域参照ブロックの動きベクトルは、
数値を1とするスケーリング比率に基づいて、前記時間領域参照ブロックの動きベクトルをスケーリング後に得られた動きベクトル、又は
スケーリングステップをスキップした前記時間領域参照ブロックの動きベクトルを含む請求項1に記載の動画処理方法。
【請求項3】
前記方法は、
前記時間領域参照ブロックの動きベクトルが非特定参照画像を指向し、かつ前記第1画像ブロックの参照画像が非特定参照画像である場合、前記時間領域参照ブロックの動きベクトルが指向する参照画像と前記時間領域参照ブロックがある画像との間の時間距離、及び前記第1画像ブロックの参照画像と前記第1画像ブロックがある画像との間の時間距離に基づいて、前記第1画像ブロックの動きベクトルを確定することをさらに含む請求項1又は2に記載の動画処理方法。
【請求項4】
前記方法は、
前記時間領域参照ブロックの動きベクトルが指向する参照画像と前記時間領域参照ブロックがある画像との間の時間距離、及び前記第1画像ブロックの参照画像と前記第1画像ブロックがある画像との間の時間距離に基づいて、前記時間領域参照ブロックの動きベクトルのスケーリング比率を確定することと、
前記スケーリング比率でスケーリング後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定することと、を含む請求項3に記載の動画処理方法。
【請求項5】
前記方法は、
前記第1画像ブロックの動き情報候補リストを構築し、前記動き情報候補リストは、前記第1画像ブロックの空間領域参照ブロックの動きベクトルと前記第1画像ブロックの参照フレームインデックス値とのうちの少なくとも一つを含み、ここで、前記空間領域参照ブロック、及び前記第1画像ブロックは、同じ画像に位置することと、
前記第1画像ブロックの動き情報候補リストに基づいて、前記第1画像ブロックの動きベクトルを確定することと、をさらに含む請求項1~4のいずれか一項に記載の動画処理方法。
【請求項6】
前記処理後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定することは、
前記処理後の前記時間領域参照ブロックの動きベクトルを前記動き
情報候補リストに加えることを含み、
又は、前記時間領域参照ブロックの動きベクトルを参照することを放棄することで前記第1画像ブロックの動きベクトルを取得することは、
前記時間領域参照ブロックの動きベクトルを前記動き
情報候補リストに加えることを放棄することを含む請求項5に記載の動画処理方法。
【請求項7】
前記第1画像ブロックは、符号化ユニットCUである請求項5又は6に記載の動画処理方法。
【請求項8】
前記第1画像ブロックは、第2画像ブロックの一部であり、前記方法は、
前記第1画像ブロックの動き情報候補リストを構築し、前記動き情報候補リストは、前記第2画像ブロックの空間領域参照ブロックの動きベクトルと前記第1画像ブロックの参照フレームインデックス値とのうちの少なくとも一つを含み、ここで、前記空間領域参照ブロック、及び前記第2画像ブロックは、同じ画像に位置することと、
前記第1画像ブロックの動き情報候補リストに基づいて、前記第2画像ブロックの動きベクトルを確定することと、をさらに含む請求項1~3のいずれか一項に記載の動画処理方法。
【請求項9】
前記第1画像ブロックの参照フレームインデックス値と前記第2画像ブロックの参照フレームインデックス値とは同じであり、又は、
前記第1画像ブロックの参照フレームインデックス値は、前記第2画像ブロックの参照フレームインデックス値に基づいて確定される請求項8に記載の動画処理方法。
【請求項10】
前記処理後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定することは、
前記処理後の前記時間領域参照ブロックの動きベクトルを前記第2画像ブロックの動き情報候補リストに加えることを含み、
又は、前記時間領域参照ブロックの動きベクトルを参照することを放棄することで前記第1画像ブロックの動きベクトルを取得することは、
前記時間領域参照ブロックの動きベクトルを前記第2画像ブロックの動き情報候補リストに加えることを放棄することを含む請求項8又は9に記載の動画処理方法。
【請求項11】
前記第2画像ブロックは、符号化ユニットCUであり、前記第1画像ブロックは、前記符号化ユニットにおけるサブ画像ブロックであり、前記サブ画像ブロックは、前記符号化ユニットから分割されて得られる請求項8又は9に記載の動画処理方法。
【請求項12】
前記時間領域参照ブロックは、前記
左側隣接画像ブロックの参照画像において、前記第1画像ブロックの位置と同じ画像ブロックであり、又は、
前記時間領域参照ブロックは、前記
左側隣接画像ブロックの参照画像において、前記
左側隣接画像ブロックの位置と同じ画像ブロックであり、又は、
前記時間領域参照ブロックは、前記
左側隣接画像ブロックの動きベクトルが指向する画像ブロックである請求項1から
11の何れか1つに記載の動画処理方法。
【請求項13】
前記第1画像ブロックの
左側隣接画像ブロックを確定することは、
前記第1画像ブロックがある画像において、特定走査順序により第1の隣接画像ブロックを取得することと、又は、
前記第1画像ブロックがある画像において、特定走査順序により前記第1画像ブロックと同じ参照フレームインデックス値を有する第1の隣接画像ブロックを得ることと、又は、
特定走査順序により動き情報を有する第1の画像ブロックを得ることと、又は、
特定走査順序により前記第1画像ブロックがある画像のデフォルトされた参照画像と同じ第1の隣接画像ブロックを得ることと、を含む請求項1から
11の何れか1つに記載の動画処理方法。
【請求項14】
前記特定走査順序は、前記第1画像ブロックを検索起点とし、
下から上へ、左から右へ、右から左へ、上から下へとのうちの一つの方向に沿って走査順序とする請求項
13に記載の動画処理方法。
【請求項15】
前記特定参照画像は、長期参照画像、合成フレーム、出力されないフレームのうちの少なくとも一つを含む請求項1~
11のいずれか一項に記載の動画処理方法。
【請求項16】
前記
動画処理方法は、
前記参照画像が出力されないフレームであると確定し、前記参照画像が合成フレームである確定する場合、前記参照画像を前記特定参照画像であると確定することをさらに含む請求項1~
11のいずれか一項に記載の動画処理方法。
【請求項17】
前記非特定参照画像は、短期参照画像を含む請求項3に記載の動画処理方法。
【請求項18】
第1画像ブロックの時間領域参照ブロックの動きベクトルを確定し、ここで、前記時間領域参照ブロック、及び前記第1画像ブロックは、異なる画像に位置することと、
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、処理後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定することと、又は
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを参照することを放棄することで前記第1画像ブロックの動きベクトルを取得することと、又は
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを前記第1画像ブロックの動きベクトルとすることと、を含み、
前記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定することは、
前記第1画像ブロックがある画像において、前記第1画像ブロックの
左側隣接画像ブロックを確定することと、
前記第1画像ブロックの参照画像と同じ前記左側隣接画像ブロックの参照画像に応じて、前記
左側隣接画像ブロックの
動きベクトルに基づいて、前記第1画像ブロックの
前記参照画像における前記第1画像ブロックのサブブロックの時間領域参照ブロック時間領域参照ブロック
を確定することと、
前記サブブロックの前記時間領域参照ブロックの動きベクトルに基づいて前記サブブロックの動きベクトルを確定することと、
1または複数の動きベクトルインデックスを含むビットストリームを生成することと、を含む、
ビットストリーム生成方法。
【請求項19】
動画処理装置であって、
コンピュータで実行可能なコマンドを記憶するための少なくとも一つのメモリと、
前記少なくとも一つのメモリにアクセスし、かつ前記コンピュータで実行可能なコマンドを実行することで、以下の操作を実施することに単独、又は共同で用いられる少なくとも一つのプロセッサと、を含み、前記操作は、
動きベクトルの一または複数のインデックスを含むビットストリームを取得することと、
第1画像ブロックの時間領域参照ブロックの動きベクトルを確定し、ここで、前記時間領域参照ブロック、及び前記第1画像ブロックは、異なる画像に位置することと、
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、処理後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定することと、又は
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを参照することを放棄することで前記第1画像ブロックの動きベクトルを取得することと、又は
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを前記第1画像ブロックの動きベクトルとすることと、を含み、
前記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定することは、
前記第1画像ブロックがある画像において、前記第1画像ブロックの
左側隣接画像ブロックを確定することと、
前記第1画像ブロックの参照画像と同じ前記左側隣接画像ブロックの参照画像に応じて、前記
左側隣接画像ブロックの
動きベクトルに基づいて、前記第1画像ブロックの
前記参照画像における前記第1画像ブロックのサブブロックの時間領域参照ブロッ
クを確定することと
、
前記サブブロックの前記時間領域参照ブロックの動きベクトルに基づいて前記サブブロックの動きベクトルを確定することと、を含む、装置。
【請求項20】
動画処理装置であって、
コンピュータで実行可能なコマンドを記憶するための少なくとも一つのメモリと、
前記少なくとも一つのメモリにアクセスし、かつ前記コンピュータで実行可能なコマンドを実行することで、以下の操作を実施することに単独、又は共同で用いられる少なくとも一つのプロセッサと、を含み、前記操作は、
第1画像ブロックの時間領域参照ブロックの動きベクトルを確定し、ここで、前記時間領域参照ブロック、及び前記第1画像ブロックは、異なる画像に位置することと、
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、処理後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定することと、又は
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを参照することを放棄することで前記第1画像ブロックの動きベクトルを取得することと、又は
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを前記第1画像ブロックの動きベクトルとすることと、を含み、
前記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定することは、
前記第1画像ブロックがある画像において、前記第1画像ブロックの
左側隣接画像ブロックを確定することと、
前記第1画像ブロックの参照画像と同じ前記左側隣接画像ブロックの参照画像に応じて、前記
左側隣接画像ブロックの
動きベクトルに基づいて、前記第1画像ブロックの
前記参照画像における前記第1画像ブロックのサブブロックの時間領域参照ブロックを確定することと、
前記サブブロックの前記時間領域参照ブロックの動きベクトルに基づいて前記サブブロックの動きベクトルを確定することと、を含む、装置。
【請求項21】
コンピュータに請求項1~
17のいずれか一項に記載の動画処理方法を実行させるための、プログラム。
【請求項22】
コンピュータに請求項18に記載のビットストリーム生成方法を実行させるための、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
著作権の宣言
本特許文書により開示される内容には著作権により保護される資料が含まれる。当該著作権は、著作権者により所有される。著作権者は、いかなる者が特許商標局の公式記録、及び公文書に存在する当該特許文書、又は当該特許の開示を複製することにも反対しない。
【0002】
本出願は、画像処理分野に関し、特に、画像動き補償のための方法及び装置に関する。
【背景技術】
【0003】
ここ数年、携帯型デバイス、ハンディ型デバイス、及びウェアラブルデバイスの流行により、動画の容量が増え続けている。動画形態がより複雑になるにつれて、動画の記憶と伝送もより難しくなっている。動画の記憶と伝送が占めるバンド幅を軽減するために、通常、符号化端で動画データを符号化圧縮し、復号化端で復号化する。
【0004】
符号化圧縮過程は、予測、変換、定量化、及びエントロピー符号化などの処理を含む。ここで、予測は、フレーム内予測、及びフレーム間予測の二種類のタイプを含み、それは、予測ブロックデータを利用して現在の符号化対象画像ブロックの冗長情報を取り除くことを目的とする。フレーム内予測は、本フレーム画像の情報を利用して予測ブロックデータを取得する。フレーム間予測は、参照画像の情報を利用して予測ブロックデータを取得し、その過程は、現在の符号化対象画像を複数の符号化対象画像ブロックに分け、符号化対象画像ブロックを複数のサブ画像ブロックに分け、その後、各サブ画像ブロックに対して、参照画像において現在のサブ画像ブロックに最もマッチングする画像ブロックを検索して予測画像ブロックとし、予測画像ブロックと現在のサブ画像ブロックとの相対変位がすなわち動きベクトルである。その後、このサブ画像ブロックと予測画像ブロックとの対応画素値を引いて残差を得る。得られた各サブ画像ブロックに対応する残差を一体に組み合わせ、符号化対象画像ブロックの残差を得る。残差は、変換、定量化、エントロピー符号化などの処理を経た後、エントロピー符号化ビットストリームを得て、エントロピー符号化ビットストリーム、及び例えば、フレーム内予測モード、動きベクトル(又は動きベクトル残差)などの情報といった符号化後の符号化モード情報を記憶し、又は復号化端へ送信する。
【0005】
画像の復号化端では、エントロピー符号化ビットストリームを得た後にエントロピー復号化し、対応する残差を得て、復号化により得られた動きベクトル、フレーム内予測などの情報に基づいて復号化対象画像ブロックに対応する予測画像ブロックを検索し、予測画像ブロックと残差に基づいて復号化対象画像ブロックにおける各画素点の値を得る。
【0006】
以上の説明から、フレーム間予測を行う場合、選択された参照画像と現在の符号化対象画像が類似するほど、フレーム間予測により生じる残差が小さくなり、これによりフレーム間予測の符号化効率を高めることがわかる。具体的には、既存の技術では動画における各画像を利用してシーンを含む背景コンテンツの高品質な特定参照画像を構築できるものがある。フレーム間予測を行う場合、現在の符号化対象画像、又は現在の復号化対象画像の背景部分は、前記高品質な特定参照画像を参照して、フレーム間予測の残差情報を減らすことに用いることができ、これにより符号化効率を高める。つまり、この特定参照画像は、フレーム間予測の参照画像である。長期参照画像は、復号化済み画像ではなく、人工的に構築された画像である。長期参照画像には複数の画像ブロックが含まれ、いずれかの画像ブロックはいずれもある復号化済み画像から抽出されたものであり、長期参照画像における異なる画像ブロックは、異なる復号化済み画像からの可能性がある。
【0007】
符号化効率を高め、符号化端により送信される情報量を減らすために、既存の技術では復号化端において動きベクトルを直接、導出できるものがある。符号化端は動きベクトル情報、又は動きベクトル残差情報を送信する必要がなく、復号化端も動きベクトル情報、又は動きベクトル残差情報を復号化せずに真の動きベクトル得ることができる。
【発明の概要】
【発明が解決しようとする課題】
【0008】
動きベクトルの導出を使用する既存の技術、及び双方向動き予測を使用する技術においては、長期参照画像の特殊性を考慮しないものがある。動きベクトルの導出を使用する技術には動きベクトルが指向する参照画像が長期参照画像であるか否かを考慮しないものがあり、動きベクトルの修正を行う場合に長期参照画像において動き検索を行う可能性があり、これによりかえって検索効率、及び符号化効率を低下させてしまう。双方向動き予測を使用する技術は、画像の時間相関性に基づいて動きベクトルを操作し、関連する動きベクトルが指向する参照画像が長期参照画像である場合、現在の符号化対象画像、又は現在の復号化対象画像と長期参照画像との時間距離の定義が不明確なので、これらの操作は失効する可能性がある。
【課題を解決するための手段】
【0009】
本出願は、画像動き補償のための方法、及び画像動き補償のための装置を提供し、符号化/復号化効率を高めることができる。
【0010】
第1の態様では、画像動き補償のための方法を提供し、この方法は、
現在の画像ブロックの初期動きベクトルMVを取得することと、
前記初期MVが指向する参照画像が特定参照画像である場合、前記初期MVに基づいて前記現在の画像ブロックに動き補償を行うことと、
前記初期MVが指向する参照画像が非特定参照画像である場合、前記初期MVを修正し、修正後のMVを得て、前記修正後のMVに基づいて前記現在の画像ブロックに動き補償を行うことと、を含む。
【0011】
第2の態様では、画像動き補償のための装置を提供し、この装置は、
コンピュータで実行可能なコマンドを記憶するための少なくとも一つのメモリと、
前記少なくとも一つのメモリにアクセスし、かつ前記コンピュータで実行可能なコマンドを実行することで、以下の操作を実施することに単独、又は共同で用いられる少なくとも一つのプロセッサと、を含み、操作は、
現在の画像ブロックの初期動きベクトルMVを取得することと、
前記初期MVが指向する参照画像が特定参照画像である場合、前記初期MVに基づいて前記現在の画像ブロックに動き補償を行うことと、
前記初期MVが指向する参照画像が非特定参照画像である場合、前記初期MVを修正し、修正後のMVを得て、前記修正後のMVに基づいて前記現在の画像ブロックに動き補償を行うことと、である。
【0012】
第3の態様では、コンピュータで読み取り可能な記憶媒体を提供し、これにはコマンドが記憶され、コマンドがコンピュータで運用される場合、コンピュータに第1の態様による画像動き補償のための方法を実行させる。
【0013】
第4の態様では、第2の態様による画像動き補償のための装置を含む符号化デバイスを提供する。
【0014】
第5の態様では、第2の態様による画像動き補償のための装置を含む復号化デバイスを提供する。
【0015】
第6の態様では、画像動き補償のための方法を提供し、この方法は、
現在の画像ブロックの初期動きベクトルMVを取得することと、
前記初期MVのスケーリング比率を確定し、ここで、前記初期MVが特定参照画像を指向する場合、前記初期MVのスケーリング1比率は、1であることと、
前記初期MVのスケーリング比率に基づいて、前記初期MVをスケーリングすることと、
前記初スケーリング後のMVに基づいて前記現在の画像ブロックに動き補償を行うことと、を含む。
【0016】
第7の態様では、画像動き補償のための装置を提供し、この装置は、
コンピュータで実行可能なコマンドを記憶するための少なくとも一つのメモリと、
前記少なくとも一つのメモリにアクセスし、かつ前記コンピュータで実行可能なコマンドを実行することで、以下の操作を実施することに単独、又は共同で用いられる少なくとも一つのプロセッサと、を含み、操作は、
現在の画像ブロックの初期動きベクトルMVを取得することと、
前記初期MVのスケーリング比率を確定し、ここで、前記初期MVが特定参照画像を指向する場合、前記初期MVのスケーリング1比率は、1であることと、
前記初期MVのスケーリング比率に基づいて、前記初期MVをスケーリングすることと、
前記スケーリング後のMVに基づいて前記現在の画像ブロックに動き補償を行うことと、である。
【0017】
第8の態様では、コンピュータで読み取り可能な記憶媒体を提供し、これにはコマンドが記憶され、コマンドがコンピュータで運用される場合、コンピュータに第6の態様による画像動き補償のための方法を実行させる。
【0018】
第9の態様では、第7の態様による画像動き補償のための装置を含む符号化デバイスを提供する。
【0019】
第10の態様では、第7の態様による画像動き補償のための装置を含む復号化デバイスを提供する。
【0020】
第11の態様では、画像処理のための方法を提供し、この方法は、
第1初期動きベクトルMV、及び第2初期MVを取得し、前記第1初期MVは、第1参照画像を指向し、前記第2初期MVは、第2参照画像を指向することと、
前記第1参照画像、及び前記第2参照画像のうちの少なくとも一つが特定参照画像である場合、前記第1初期MV、及び前記第2初期MVに基づいて、現在の画像ブロックの予測画像ブロックを計算して得ることと、
前記第1参照画像、及び前記第2参照画像がいずれも非特定参照画像である場合、前記第1初期MV、及び前記第2初期MVが指向する画素点の勾配値に基づいて、現在の画像ブロックのMVを計算して得て、前記現在の画像ブロックのMVに基づいて、現在の画像ブロックの予測画像ブロックを計算して得ることと、を含む。
【0021】
第12の態様では、画像処理のための装置を提供し、この装置は、
コンピュータで実行可能なコマンドを記憶するための少なくとも一つのメモリと、
前記少なくとも一つのメモリにアクセスし、かつ前記コンピュータで実行可能なコマンドを実行することで、以下の操作を実施することに単独、又は共同で用いられる少なくとも一つのプロセッサと、を含み、操作は、
第1初期動きベクトルMV、及び第2初期MVを取得し、前記第1初期MVは、第1参照画像を指向し、前記第2初期MVは、第2参照画像を指向することと、
前記第1参照画像、及び前記第2参照画像のうちの少なくとも一つが特定参照画像である場合、前記第1初期MV、及び前記第2初期MVに基づいて、現在の画像ブロックの予測画像ブロックを計算して得ることと、
前記第1参照画像、及び前記第2参照画像がいずれも非特定参照画像である場合、前記第1初期MV、及び前記第2初期MVが指向する画素点の勾配値に基づいて、現在の画像ブロックのMVを計算して得て、前記現在の画像ブロックのMVに基づいて、現在の画像ブロックの予測画像ブロックを計算して得ることと、である。
【0022】
第13の態様では、コンピュータで読み取り可能な記憶媒体を提供し、これにはコマンドが記憶され、コマンドがコンピュータで運用される場合、コンピュータに第11の態様による画像処理のための方法を実行させる。
【0023】
第14の態様では、第12の態様による画像処理のための装置を含む符号化デバイスを提供する。
【0024】
第15の態様では、第12の態様による画像処理のための装置を含む復号化デバイスを提供する。
【図面の簡単な説明】
【0025】
【
図1】本出願の一つの実施例の画像動き補償のための方法の概略的フローチャートである。
【
図2】本出願の一つの実施例の双方向マッチング法の原理概略図である。
【
図3】本出願の一つの実施例のテンプレートマッチング法の原理概略図である。
【
図4】本出願の一つの実施例のDMVR技術の原理概略図である。
【
図5】本出願の他の一つの実施例の画像処理のための方法の概略的フローチャートである。
【
図6】本出願の一つの実施例のBIO技術の原理概略図である。
【
図7】本出願の一つの実施例の画像動き補償のための装置の概略的フレーム図である。
【
図8】本出願の一つの実施例の画像処理のための装置の概略的フレーム図である。
【
図9】本出願の他の一つの実施例の画像動き補償のための方法の概略的フローチャートである。
【
図10】本出願の別の一つの実施例の画像動き補償のための装置の概略的フレーム図である。
【
図11】本出願の他の一つの実施例の動画処理方法1100の概略的フローチャートである。
【
図12】本出願の他の一つの実施例の動画処理方法1200の概略的フローチャートである。
【
図13】本出願の他の一つの実施例の動画処理方法1200の概略的フローチャートである。
【
図14】現在の画像ブロックAを4つの同じ大きさのサブ画像ブロックに分けた図である。
【発明を実施するための形態】
【0026】
以下に図面を踏まえて、本出願の実施例における技術的解決手段を説明する。
【0027】
別途定義される場合を除き、本文に使用されるすべての技術用語及び学術用語は、本出願の技術分野の当業者が通常理解する意味と同じである。本文においては、本出願の明細書で使用される技術用語は、具体的な実施例を説明する目的のために過ぎず、本出願を限定することを目的としていない。
【0028】
まず本出願の実施例に関する関連する技術、及び概念を説明する。
【0029】
動画とは、複数の画像からなるものである。動画を符号化/復号化する場合、動画における異なる画像は、異なる予測方法を採用できる。画像に基づいて採用される予測方法は、画像をフレーム内予測画像、及びフレーム間予測画像に分けることができ、ここでのフレーム間予測画像は、前方向予測画像、及び双方向予測画像を含む。I画像は、フレーム内予測画像であり、キーフレームともいい、P画像は、前方向予測画像であり、それ以前の符号化/復号化済みの一枚のP画像、又はI画像を参照画像とする。B画像は、双方向予測画像であり、前後の画像を参照画像とする。一実施形態は、符号化/復号化端が複数枚の画像を符号化/復号化した後に一段ずつのグループオブピクチャ(Group Of Picture、GOP)を生成し、このGOPは、一枚のI画像、及び複数枚のB画像(又は双方向予測画像)とP画像(又は前方向予測画像)とのうちの少なくとも一つからなるグループオブピクチャである。復号化端は、再生時に一段ずつのGOPを読み取って復号化した後に画面を読み取り、レンダリング表示する。
【0030】
現代の動画符号化/復号化規格において、画像を複数の小さなブロックに分け、異なる解像度の画像について符号化/復号化することができ、つまり画像は、複数の画像ブロックに分けることができる。画像は、いずれかの数の画像ブロックに分けることができる。例えば、この画像は、m×n画像ブロック行列に分けることができる。画像ブロックは、矩形形状、正方形形状、円形形状、又はいずれかのその他の形状を有することができる。画像ブロックは、いずれかのサイズを有することができ、例えば、p×q画素である。各画像ブロックはいずれも同じサイズと形状とのうちの少なくとも一つを有することができる。代替可能には、二つ又はさらに多くの画像ブロックは異なるサイズと形状とのうちの少なくとも一つを有することができる。画像ブロックは、いずれかの重なり部分を有することができ、又は有しないこともできる。いくつかの実施例において、この画像ブロックは、いくつかの符号化/復号化規格において、マクロブロック、又は最大符号化ユニット(Largest Coding Unit、LCU)と呼ばれる。H.264規格について、この画像ブロックは、マクロブロックと呼ばれ、その大きさは、16×16画素であってよい。高効率映像符号化(High Efficiency Video Coding、HEVC)規格について、画像ブロックは、コーディングツリーユニット(Coding Tree Unit、CTU)と呼ばれ、その大きさは、8×8画素~64×64画素であってよい。
【0031】
他のいくつかの実施例において、画像ブロックは、マクロブロック若しくはコーディングツリーユニットでなくてもよく、マクロブロック若しくはコーディングツリーユニットの一部を含み、又は少なくとも二つの完全なマクロブロック(若しくはコーディングツリーユニット)を含み、又は少なくとも一つの完全なマクロブロック(若しくはコーディングツリーユニット)と一つのマクロブロック(若しくはコーディングツリーユニット)の一部を含み、又は少なくとも二つの完全なマクロブロック(若しくはコーディングツリーユニット)といくつかのマクロブロック(若しくはコーディングツリーユニット)の一部を含む。このように、画像が複数の画像ブロックに分けられた後、それぞれ画像データにおけるこれらの画像ブロックを符号化/復号化できる。
【0032】
他のいくつかの実施例において、画像ブロックとは、マクロブロック又はコーディングツリーユニットの一部ということができる。例えば、画像ブロックとは、いくつかの動画符号化/復号化規格における符号化ユニット(Coding Unit、CU)であってよい。
【0033】
符号化過程は、予測、変換、定量化、及びエントロピー符号化などの処理を含む。ここで、予測は、フレーム内予測、及びフレーム間予測の二種類のタイプを含み、それは、予測ブロックデータを利用して現在の符号化対象画像ブロックの冗長情報を取り除くことを目的とする。フレーム内予測は、本フレーム画像の情報を利用して予測ブロックデータを取得する。フレーム間予測は、参照画像の情報を利用して予測ブロックデータを取得し、その過程は、現在の符号化対象画像を複数の符号化対象画像ブロックに分け、符号化対象画像ブロックについて少なくとも一回分割し(例えば、HEVC規格における四分木分割方法を利用し、又は四分木二分木分割方法を利用する)、複数の画像ブロックに分ける。その後、各画像ブロックに対して、参照画像において現在の画像ブロックに最もマッチングする画像ブロックを検索して予測画像ブロックとし、予測画像ブロックと現在の画像ブロックとの相対変位がすなわち動きベクトルである。その後、この画像ブロックと予測画像ブロックとの対応画素値を引いて残差を得る。得られた各画像ブロックに対応する残差を一体に組み合わせ、符号化対象画像ブロックの残差を得る。
【0034】
本出願の各実施例において、変換行列により画像ブロックの残差の関連性を取り除くことができ、すなわち画像ブロックの冗長情報を取り除くことで、符号化効率を高める。画像ブロックにおけるデータブロックの変換は通常、二次元変換を採用し、すなわち符号化端は、データブロックの残差情報をそれぞれ一つのN×Mの変換行列、及びその転置行列と乗じ、乗じた後に得られるのが変換係数である。変換係数を定量化した後に定量化後の係数を得て、最後に定量化後の係数をエントロピー符号化して、エントロピー符号化ビットストリームを得る。エントロピー符号化ビットストリーム、及び例えば、フレーム内予測モード、動きベクトル(又は動きベクトル残差)などの情報といった符号化後の符号化モード情報を記憶し、又は復号化端へ送信する。
【0035】
画像の復号化端では、エントロピー符号化ビットストリームを得た後にエントロピー符号化し、対応する残差を得る。復号化により得られた動きベクトル、フレーム内予測などの情報に基づいて画像ブロックに対応する予測画像ブロックを検索する。予測画像ブロックと残差に基づいて現在のサブ画像ブロックにおける各画素点の値を得る。
【0036】
前文において符号化/復号化済みの画像を現在の符号化/復号化対象の参照画像とすることに言及した。いくつかの実施例において、参照画像をさらに構築することで、参照画像と現在の符号化/復号化対象画像との類似度を高めることができる。
【0037】
例を挙げると、動画コンテンツ内に特定の符号化/復号化シーンがあり、このシーンにおける背景が基本的に変化しない場合、動画内の前景にのみ変化、又は動きが生じる。例えば動画モニタリングは、このタイプのシーンに属する。動画モニタリングシーンでは通常、モニタリングカメラは固定され動かず、又は緩慢な移動のみ生じ、背景は基本的に変化しないと認めることができる。これに対して、動画モニタリングカメラにより撮影された人又は車両などの物体には常に移動又は変化が生じ、前景が常に変化すると認めることができる。このタイプのシーンにおいて、特定の参照画像を構築でき、この特定の参照画像には高品質の背景情報のみ含まれる。この特定参照画像には複数の画像ブロックが含まれることができ、いずれかの画像ブロックはいずれもある復号化済み画像から抽出されたものであり、この特定参照画像における異なる画像ブロックは、異なる復号化済み画像からの可能性がある。フレーム間予測を行う場合、現在の符号化/復号化対象画像の背景部分は、この特定参照画像を参照でき、これによりフレーム間予測の残差情報を減らすことに用いることができ、これにより符号化/復号化効率を高める。
【0038】
上述は、特定参照画像についての具体的な例示である。いくつかの実施形態において、特定参照画像は、合成フレーム(composite reference)、長期参照画像、出力されない画像のうちの少なくとも一つの性質を有する。ここで、この出力されない画像とは、出力して表示されない画像である。通常、この出力されない画像は、その他の画像の参照画像として存在する。例えば、この特定参照画像は、合成された長期参照画像であってよく、又は出力されない合成フレームであってよく、又は出力されない長期参照画像などであってよい。いくつかの実施形態において、合成フレームは、合成参照フレームと呼ばれる。
【0039】
いくつかの実施例において、非特定参照画像は、以下のうちの少なくとも一つの性質を有しない参照画像であってよい。合成フレーム、長期参照画像、出力されない画像である。例えば、この特定参照画像は、合成フレーム以外の参照画像を含むことができ、又は長期参照画像以外の参照画像を含むことができ、又は出力されない画像以外の参照画像を含むことができ、又は合成された長期参照画像以外の参照画像を含むことができ、又は出力されない合成フレーム以外の参照画像を含むことができ、又は出力されない長期参照画像以外の参照画像を含むことができるなどである。
【0040】
いくつかの実施形態において、動画における画像を参照画像とできる場合、長期参照画像、及び短期参照画像に分けることができる。ここで、この短期参照画像は、長期参照画像に対応する概念である。短期参照画像は、参照画像のバッファ領域におけるある時間帯に存在し、この短期参照画像を経た後の復号化済みの参照画像が参照画像のバッファ領域において複数の入出操作をされた後、短期参照画像は参照画像のバッファ領域から移動される。参照画像のバッファ領域は、参照画像リストバッファメモリ、参照画像リスト、参照フレームリストバッファメモリ、又は参照フレームリストなどということができ、本文においてはそれを参照画像のバッファ領域と統一する。
【0041】
長期参照画像(又は長期参照画像における一部データ)は、参照画像のバッファ領域に存在し続けることができ、この長期参照画像(又は長期参照画像における一部データ)は、復号化済みの参照画像の参照画像のバッファ領域における入出操作の影響を受けず、復号化端が更新コマンド操作を送信したときにのみ、この長期参照画像(又は長期参照画像における一部データ)は、参照画像のバッファ領域から移動される。
【0042】
短期参照画像、及び長期参照画像の異なる規格における呼び方は異なる可能性があり、例えば、H.264/アドバンスビデオコーディング(advanced video coding、AVC)、又はH.265/HEVCなどの規格における短期参照画像は、短期参照フレーム(short-term reference)と呼ばれ、長期参照画像は、長期参照フレーム(long-term reference)と呼ばれる。また、AVSコーディング規格(audio video coding standard、AVS)、1-P2、AVS2-P2、IEEE(institute of electrical and electronics engineers、IEEE)1857.9-P4などの規格において、長期参照画像は、背景フレーム(background picture)と呼ばれる。また、VP8、VP9などの規格において、長期参照画像はゴールデンフレーム(golden frame)と呼ばれる。
【0043】
本出願の実施例において特定の技術用語を採用することは、特定のシーンに応用されなければならないことを示すわけではないことを理解するものとし、例えば、長期参照画像を長期参照フレームということは、H.264/AVC又はH.265/HEVCなどの規格に対応する技術に用いらなければならないことを示すわけではない。
【0044】
以上に述べた長期参照画像は複数の復号化済み画像から抽出された画像ブロックから構築されて得られたものであってよく、又は複数の復号化済み画像を利用して既存の参照フレーム(例えば、予めメモリされた参照フレーム)を更新して得られたものであってよい。当然のことながら、この構築された特定参照画像は、短期参照画像であってもよい。又は、長期参照画像は、構築された参照画像でなくてもよい。
【0045】
上述の実施形態において、特定参照画像は、長期参照画像を含むことができ、非特定参照画像は、短期参照画像を含むことができる。
【0046】
選択可能には、参照フレームのタイプは、ストリーム構造において特殊フィールドから識別できる。
【0047】
選択可能には、参照画像が長期参照画像であると確定する場合、この参照画像を特定参照画像であると確定する。又は参照画像が出力されないフレームであると確定する場合、この参照画像を特定参照画像であると確定する。又は参照画像が合成フレームであると確定する場合、この参照画像を特定参照画像であると確定する。又は参照画像が出力されないフレームであると確定し、かつこの参照画像が合成フレームであると確定する場合、この参照画像を特定参照画像であると確定する。
【0048】
選択可能には、各種タイプの参照画像はいずれも対応するマークを有することができ、このとき復号化端にとって、参照画像が有するマークによってこの参照画像が特定参照画像であるか否かを確定できる。
【0049】
いくつかの実施形態において、参照画像が長期参照画像のマークを有すると確定する場合、この参照画像を特定参照画像であると確定する。
【0050】
いくつかの実施形態において、参照画像が出力されないマークを有すると確定する場合、この参照画像を特定参照画像であると確定する。
【0051】
いくつかの実施形態において、参照画像が合成フレームのマークを有すると確定する場合、この参照画像を特定参照画像であると確定する。
【0052】
いくつかの実施形態において、参照画像が以下の3つのマークのうちの少なくとも二つを有する場合、この参照画像を特定参照画像であると確定する。長期参照画像のマーク、出力されないマーク、合成フレーム又は合成参照フレームのマークである。例えば、参照画像が出力されないマークを有すると確定し、かつ参照画像が合成フレームのマークを有すると確定する場合、参照画像を特定参照画像であると確定する。
【0053】
具体的には、画像は、出力されるフレームか否かを指示するマークを有することができ、ある画像が出力されないと指示される場合、このフレームは参照画像であることを示し、さらに、このフレームが合成フレームのマークを有するか否かを判断し、有する場合、前記参照画像を特定参照画像であると確定する。ある画像が出力されると指示される場合、合成フレームか否かの判断を行わなくてもよく、このフレームは特定参照画像でないと直接、確定する。又は、ある画像が出力されないと指示されるが、合成フレームでないマークを有する場合、このフレームは、特定参照画像でないと確定できる。
【0054】
選択可能には、画像ヘッダ(picture header)、画像パラメータセット(PPS、picture parameter set)、スライスヘッダ(slice header)からパラメータを解析して前記参照画像が以下の条件の一つを満たすと確定する場合、前記参照画像が特定参照画像であると確定する。
【0055】
前記参照画像が長期参照画像である。
【0056】
前記参照画像が合成参照画像である。
【0057】
前記参照画像が出力されない画像である。
【0058】
前記参照画像が出力されない画像である場合、前記参照画像が合成参照画像であるかをさらに判断する。
【0059】
前文において動きベクトルの導出を使用する技術に言及したが、動きベクトルを修正する場合、特定参照画像に動き検索を行うと、かえって検索効率、及び符号化/復号化効率を低下させてしまう。特定参照画像は、人工的に構築されたものであり、又は時間順序が早い以前のある特定参照画像からのものであり、特定参照画像における画像ブロックの間には空間上の関連があるとは限らず、画像ブロックエッジに明らかな揺れがあるので、このような特定参照画像に基づいて、動きベクトルを検索する意義は大きくない。
【0060】
パターンマッチング動きベクトルの導出(Pattern Matching Motion Vector Derivation、PMMVD)技術、及びデコーダー・サイド・モーション・ベクトル・リファインメント(Decode Motion Vector Refinement、DMVR)技術はいずれも動きベクトルの導出を使用する技術である。
【0061】
前文ではさらに双方向動き予測を使用する技術に言及し、画像の時間相関性に基づいて動きベクトルを操作し、関連する動きベクトルが指向する参照画像が特定参照画像である場合、現在の符号化対象画像、又は現在の復号化対象画像と特定参照画像との時間距離の定義が不明確なので、これらの操作は失効する可能性がある。双方向オプティカルフロー(Bi-directional Optical flow、BIO)予測技術は、双方向動き予測を使用した技術である。
【0062】
次にPMMVD、DMVR、及びBIOを踏まえて、本発明の画像動き補償のための方法を、例を挙げて説明する。本発明における画像動き補償のための方法は、この3つの技術に限定されるわけではないことを説明する必要がある。
【0063】
本出願の実施例の画像動き補償のための方法を説明する前に、まずHEVC規格での動画符号化復号化過程を簡単に説明する。
【0064】
HEVC規格は、3つのフレーム間予測のモードを定義している。Interモード、Mergeモード、及びSkipモードである。フレーム間予測の目的は、動きベクトル(Motion Vector、MV)を得て、その後、この動きベクトルに基づいて、予測画像ブロックの参照画像における位置を確定することである。近接する画像ブロックは動き方式において類似性があり、例えば、画像ブロック(例えば、符号化対象画像ブロックと復号化対象画像ブロックとのうちの少なくとも一つ)と近接する画像ブロックとはいずれも同一物体に属し、カメラが移動する場合、それらの移動距離と方向は自然と類似し、又は同じであるので、動きベクトルを計算する必要がないことが多く、直接、近接する画像ブロックの動きベクトルを現在の画像ブロックの動きベクトルとする。ここで、Mergeモード、及びSkipモードでは、動きベクトルの残差(Motion Vector Difference、MVD)は、0であり、すなわち、近接する符号化済み画像ブロック、又は復号化済み画像ブロックに基づいて、直接、動きベクトルを得る。
【0065】
符号化対象画像ブロックと復号化対象画像ブロックとのうちの少なくとも一つのモードがMergeモードの場合、作動原理は以下のとおりである。近接する画像ブロックにより一つの動きベクトル予測(Motion Vector Prediction、MVP)候補リストを構築し、MVP候補リストから最適なMVPを現在の画像ブロックの動きベクトルとして選択し、その後、この動きベクトルに基づいて、予測画像ブロックの位置を確定し、予測画像ブロックを確定した後に残差を計算して得られる。Mergeモードでは、動きベクトルは、MVP候補リストから選択されたものであるので、MVDが存在しない。符号化端は、残差、及び選択された動きベクトルのMVP候補リストにおけるインデックスについて符号化すればよく、MVDを符号化する必要はない。復号化端は、類似の方法によりMVP候補リストを構築でき、その後、符号化端により伝送されたインデックスに基づいて、動きベクトルを得る。復号化端は、動きベクトルに基づいて、予測画像ブロックを確定し、残差を取り込んで復号化して現在の画像ブロックを得る。
【0066】
Mergeモードでの符号化端の具体的な動作プロセスは以下のとおりである。
1.MVP候補リストを取得する。
2.MVP候補リストから最適なMVPを選択するとともに、このMVPのMVP候補リストでのインデックスを得る。
3.選択されたMVPを現在の画像ブロックの動きベクトルとする。
4.動きベクトルに基づいて、参照画像から予測画像ブロックを確定する。
5.現在の画像ブロックから予測画像ブロックを引いて残差を得る。
6.動きベクトルは、MVP候補リストから選択されたものであるので、MVDが存在せず、残差、及び選択されたMVPのMVP候補リストにおけるインデックスを復号化端へ送信すればよい。
【0067】
Mergeモードでの復号化端の具体的な動作プロセスは以下のとおりである。
1.残差、及び動きベクトルのMVP候補リストでのインデックスを受信する。
2.MVP候補リストを取得する。
3.インデックスに基づいて、MVP候補リストにおいて動きベクトルを検索して現在の画像ブロックの動きベクトルとする。
4.動きベクトルに基づいて、予測画像ブロックを確定し、残差を取り込んで復号化して現在の画像ブロックを得る。
【0068】
以上は、通常のMergeモードでの処理過程である。
【0069】
Skipモードは、Mergeモードの特殊な例である。Mergeモードにより動きベクトルを得た後、エンコーダが、ある方法に基づいて、現在の画像ブロック、及び予測画像ブロックが基本的に同じであると判断した場合、残差のデータを伝送する必要はなく、動きベクトルのMVP候補リストでのインデックスのみ伝送すればよく、現在の画像ブロックは予測画像ブロックから直接、マークを得られることを示す。
【0070】
Interモードでは、まずMVPを確定し、その後、MVPを修正し、MVDを得る。符号化端は、復号化端へインデックス、及び残差を伝送する必要があるだけでなく、復号化端へMVDも伝送する必要がある。高度動きベクトル予測(Advanced Motion Vector Prediction、AMVP)は、競争メカニズムにより動きベクトル予測を実現するツールである。
【0071】
AMVPモードでもMVP候補リストがあり、このMVP候補リストにおける動きベクトルは、現在の画像ブロックの空間領域、又は時間領域での近接するブロックから得られるものである。AMVPモードでのMVP候補リストは、MergeモードでのMVP候補リストと異なる可能性がある。符号化端、又は復号化端は、MVP候補リストから最適なMVPを選択する。このMVPを検索開始点として、その付近を検索し、最適な動きベクトルを得て、この動きベクトルは、現在の画像ブロックの動きベクトルである。この動きベクトルに基づいて、予測画像ブロックの位置を確定し、予測画像ブロックを確定した後に残差を計算して得られる。同時にこのMVとMVPとを互いに引いて、MVDを得る。符号化端は、残差、MVPのMVP候補リストにおけるインデックス、及びMVDについて符号化して復号化端へ送信する。復号化端は、類似の方法によりMVP候補リストを構築でき、その後、符号化端により伝送されたインデックスに基づいて、MVPを得る。復号化端は、MVP、及びMVDに基づいて、MVを確定し、MVに基づいて、予測画像ブロックを確定し、残差を取り込んで復号化して現在の画像ブロックを得る。
【0072】
AMVPモードでの符号化端の具体的な動作プロセスは以下のとおりである。
1.MVP候補リストを取得する。
2.MVP候補リストから最適なMVPを選択するとともに、このMVPのMVP候補リストでのインデックスを得る。
3.MVPに基づいて、検索開始点を確定する。
4.開始点付近で検索し、最適な動きベクトルを得る。
5.動きベクトルに基づいて、参照画像から予測画像ブロックを確定する。
6.現在の画像ブロックから予測画像ブロックを引いて残差を得る。
7.動きベクトルからMVPを引いてMVDを得る。
8.残差、選択されたMVPのMVP候補リストにおけるインデックス、及びMVDを復号化端へ送信する。
【0073】
AMVPモードでの復号化端の具体的な動作プロセスは、これ以上説明しない。
【0074】
本出願の実施例は、画像動き補償のための方法100を提供する。
図1は、本出願の一つの実施例の画像動き補償のための方法100の概略的フローチャートである。
図1に示すように、この方法100は、
現在の画像ブロックの初期動きベクトルを取得するS110と、
この初期動きベクトルが指向する参照画像が特定参照画像である場合、この初期動きベクトルに基づいて、この現在の画像ブロックに動き補償を行うS120と、
この初期動きベクトルが指向する参照画像が非特定参照画像である場合、この初期動きベクトルを修正し、修正後の動きベクトルを得て、前記修正後の動きベクトルに基づいてこの現在の画像ブロックに動き補償を行うS130と、を含む。
【0075】
いくつかの実施形態において、初期動きベクトルが特定参照画像を指向する場合、動き補償を直接行い、初期動きベクトルが非特定参照画像を指向する場合、初期動きベクトルを修正し、前記修正後の動きベクトルに基づいて、動き補償を行い、特定参照画像の画像ブロックエッジの明らかな揺れにより、意義のない検索を行うことを回避でき、符号化復号化効率を高めることができる。
【0076】
可能な実施形態において、本出願の実施例の画像動き補償のための方法100は、PMMVD技術に応用できる。
【0077】
PMMVD技術は、フレームレートアップコンバージョン(Frame Rate Up Conversion、FRUC)技術に基づく特殊なMergeモードである。このような特殊なMergeモードでは、現在の画像ブロックの動き情報(例えば、MVとMVD)は、ストリームにおいて符号化されず、復号化端で直接生成される。
【0078】
選択可能には、この可能な実施形態において、S130前記初期動きベクトルが指向する参照画像が非特定参照画像である場合、前記初期動きベクトルを修正し、修正後の動きベクトルを得て、前記修正後の動きベクトルに基づいて、前記現在の画像ブロックに動き補償を行うことは、前記現在の画像ブロックの動きベクトル候補リストを取得し、前記動きベクトルの候補リストにおけるいずれかの動きベクトル候補が指向する参照画像が非特定参照画像であることと、前記動きベクトル候補リストに基づいて、前記初期動きベクトルを確定することと、前記初期動きベクトルを修正し、修正後の動きベクトルを得ることと、前記修正後の動きベクトルに基づいて、前記現在の画像ブロックに動き補償を行うことと、を含むことができる。
【0079】
本実施形態において、動きベクトル候補リストから初期動きベクトルを確定し、この動きベクトル候補リストにおける候補ベクトルが指向する参照画像が非特定参照画像である場合、初期動きベクトルを修正し、修正後の動きベクトルを得て、修正後の動きベクトルに基づいて、現在の画像ブロックに動き補償を行うことは、特定参照画像の画像ブロックエッジの明らかな揺れにより、意義のない検索を行うことを回避し、符号化及び復号化効率を高めることができる。
【0080】
選択可能には、可能な実施形態において、現在の画像ブロックの動きベクトル候補リストを取得することは、前記動きベクトル候補リストに加えるための動きベクトル候補を確定し、前記動きベクトル候補が指向する参照画像が非特定参照画像である場合、前記動きベクトル候補を前記動きベクトル候補リストに加えることを含むことができる。
【0081】
具体的には、一つの実施例において、前記方法100は、前記動きベクトル候補が指向する参照画像のフレームマークに基づいて、前記動きベクトル候補が指向する参照画像が非特定参照画像であると確定することをさらに含むことができる。具体的には、前記動きベクトル候補が指向する参照画像のフレームマークに基づいて、前記動きベクトル候補が指向する参照画像が特定参照画像であるか否か確定できる。動きベクトル候補が指向する参照画像が特定参照画像である場合、特定参照画像に対応する動きベクトル候補を動きベクトル候補リストに加えなくてもよい。このように、動きベクトル候補リストから初期動きベクトルを選択する場合、特定参照画像に対応する動きベクトルを選択しない。
【0082】
本出願の各実施例の動きベクトルは、3つのパラメータを含むことを理解するものとし、つまり、水平成分vx、垂直成分vy及び指向する参照画像のフレームマークである。例えば、このフレームマークは、ピクチャオーダーカウント(Picture Order Count、POC)であってよく、その他の形態のマークであってもよい。符号化端、及び復号化端は、このフレームマークにより、参照画像の属性を確定でき、この参照画像が特定参照画像か、それとも非特定参照画像かを判断する。
【0083】
選択可能には、一つの実施例において、前記動きベクトル候補リストに基づいて、初期動きベクトルを確定することは、選択された初期動きベクトルが特定参照画像を指向する動きベクトルか否かを判断し、選択された初期動きベクトルのうちの少なくとも一つが特定参照画像を指向する場合、初期動きベクトルを再度選択し、指向する参照画像が特定参照画像以外の参照画像の初期動きベクトルを選択するまで行うことを含むことができる。
【0084】
具体的には、動きベクトル候補リストに基づいて、確定された初期動きベクトルが指向するのが特定参照画像である場合、予め設定されたルールに基づいて、動きベクトル候補リストから動きベクトル候補を再度選択し、初期動きベクトルとすることができる。この予め設定されたルールは例えば、マッチングコストが次に小さい動きベクトル候補を選択し、この動きベクトル候補が指向するのが特定参照画像でない場合、この動きベクトル候補を初期動きベクトルとするものであってよい。この実施例は例示に過ぎず、本出願を限定するわけではない。
【0085】
符号化端を例とし、FRUC mergeモードでの動きベクトル導出過程は、二つのステップに分かれる。第1ステップは、符号化ユニット(Coding Unit、CU)レベル動き検索であり、第2ステップは、サブCU(Sub-CU)レベル動き細密化過程である。類似して、復号化端も符号化端に類似した機能を実現できる。
【0086】
CUレベル動き検索において、CUレベル動きベクトル候補リストを生成する。双方向マッチング法に基づいて、CUレベル動きベクトル候補リストからマッチングコスト(cost)が最も小さい動きベクトルを検索し、例えば、MV-Aである。テンプレートマッチング法でもCUレベル動きベクトル候補リストからマッチングコストが最も小さい動きベクトルを検索し、例えば、MV-Bである。その後、Mergeモードポリシーにおいて使用されるレート歪みコスト(Rate Distortion Cost、RD-Cost)ポリシーに基づいて、現在のCUがFRUC mergeモードを使用するか否かを決定する。すなわち、RD-Costポリシーを使用して2つのマッチング法(双方向マッチング法、及びテンプレートマッチング法)の結果をチェックする。マッチングコストが小さいマッチング方法により得られた結果をさらに、その他のCUモードの結果と再度比較する。二つのマッチング法におけるマッチングコストが小さいマッチング方法が最終的なマッチングコストが最も小さいものであり、現在のCUのFRUCのフラグをTRUEとし、かつ復号化端が対応するマッチング方法を使用するよう指示する。
【0087】
この具体的な実施形態において、CUレベル動きベクトル候補リストは、本出願の実施例の方法100における動きベクトル候補リストに対応できる。動きベクトル候補リストを生成する場合、リストに加えられる動きベクトルを走査し、動きベクトルが非特定参照画像を指向する場合、この動きベクトルを動きベクトル候補リストに加えることができ、特定参照画像を指向する場合、この動きベクトルを棄却して、動きベクトル候補リストに加えない。本実施形態における動きベクトル候補リストは、前記現在の画像ブロックが高度動きベクトル予測AMVPモードにある場合、非特定参照画像に対して得られたオリジナルAMVP動きベクトル候補、非特定参照画像に対して得られたマージ動きベクトル候補、非特定参照画像から補間により得られた動きベクトル、及び前記現在のブロックの非特定参照画像に対する上方隣接動きベクトルと左側隣接動きベクトルのうちの少なくとも一つの動きベクトル候補を含むことができる。この動きベクトル候補リストは、CUレベル動きベクトル候補リストとしてもよい。本実施形態において、非特定参照画像は具体的に、短期参照画像、又は短期参照フレームであってよいことを理解するものとする。
【0088】
前記動きベクトル候補リストに基づいて、前記初期動きベクトルを確定することは、双方向マッチング法とテンプレートマッチング法とのうちの少なくとも一つに基づいて、前記動きベクトル候補リストにおける動きベクトル候補に対応する歪みコストを確定することと、前記動きベクトル候補リストにおける歪みコストが最も小さい動きベクトルを前記初期動きベクトルとすることと、を含むことができる。
【0089】
具体的には、符号化端を例とし、前記動きベクトル候補リストに基づいて、初期動きベクトルを確定することは、CUレベル動き検索に対応できる。CUレベル動き検索において、双方向マッチング法に基づいて、CUレベル動きベクトル候補リストからマッチングコストが最も小さい動きベクトルを検索し、例えば、MV-Aである。テンプレートマッチング法でもCUレベル動きベクトル候補リストからマッチングコストが最も小さい動きベクトルを検索し、例えば、MV-Bである。その後、Mergeモードポリシーにおいて使用されるRD-Costポリシーに基づいて、現在のCUがFRUC mergeモードを使用するか否かを決定する。すなわち、RD-Costポリシーを使用して2つのマッチング法(双方向マッチング法、及びテンプレートマッチング法)の結果をチェックする。マッチングコストが小さいマッチング方法により得られた結果をさらに、その他のCUモードの結果と再度比較する。二つのマッチング法におけるマッチングコストが小さいマッチング方法が最終的なマッチングコストの最も小さいものである場合、現在のCUのFRUCのフラグをTRUEとし、かつ復号化端が対応するマッチング方法を使用するよう指示する。類似して、復号化端も符号化端に類似した機能を実現できるが、復号化端は、符号化端ほど複雑ではなく、例えば、復号化端は、符号化端のマッチング方法を指示するためのフラグを直接受信し、RD-Costポリシーを実行する必要はない。
【0090】
選択可能には、初期動きベクトルを修正し、修正後の動きベクトルを得ることは、前記現在の画像ブロックにサブ動きベクトル候補リストを生成し、前記サブ動きベクトル候補リストには前記初期動きベクトルを含むことと、前記サブ動きベクトル候補リストから歪みコストが最も小さい動きベクトルを前記修正後の動きベクトルとして確定することと、を含むことができる。
【0091】
具体的には、初期動きベクトルを修正し、修正後の動きベクトルを得ることは、サブCUレベル動き細密化に対応できる。
【0092】
CUレベル動き検索においてマッチングコストが最も小さい動きベクトルは、初期動きベクトルであり、それはCUレベル動き細密化の開始点とされる。開始点周囲においてCUレベルにより確定されたマッチング方法(双方向マッチング、又はテンプレートマッチング法)に基づいて、局部検索を行う。具体的には、サブCUレベル動き細密化において、サブCUレベル動きベクトル候補リストを生成できる。サブCUレベル動きベクトル候補リストにおいて、マッチングコストが小さい動きベクトルを検索し、現在のCUの動きベクトルとする。
【0093】
サブCUレベル動きベクトル候補リストにおいてCUレベル動き検索により確定された動きベクトル(an MV determined from a CU-level search)と、現在の画像ブロックの上方隣接動きベクトル、左側隣接動きベクトル、左上方隣接動きベクトル、及び右上方隣接動きベクトル(top、left、top-left and top-right neighbouring MVs)と、参照画像における現在の画像ブロックの対応位置のスケーリング後の動きベクトル(scaled versions of collocated MVs from reference pictures)と、その他の時間領域から導出された動きベクトル候補(up to 4 ATMVP candidatesとup to 4 STMVP candidates)を含むことができる。
【0094】
上述の具体的な実施形態において、動きベクトル候補が指向する参照画像が特定参照画像である場合、特定参照画像に対応する動きベクトル候補をCUレベル動きベクトル候補リストに加えず、特定参照画像に対応する動きベクトル候補が初期動きベクトルになる機会がないようにする。
【0095】
他の具体的な実施形態において、CUレベル動きベクトル候補リストに基づいて確定された初期動きベクトルが指向するのが特定参照画像である場合、予め設定されたルールに基づいて、CUレベル動きベクトル候補リストから動きベクトル候補を再度選択し、初期動きベクトルとできる。この予め設定されたルールは例えば、マッチングコストが次に小さい動きベクトル候補を選択し、この動きベクトル候補が指向するのが特定参照画像でない場合、この動きベクトル候補を初期動きベクトルとするものであってよい。
【0096】
図2は、本出願の一つの実施例の双方向マッチング法の原理概略図である。
図2に示すように、双方向マッチング法は、現在のCUの動き軌跡において異なる参照画像における二つの予測画像ブロックの間の最も近接したマッチングを検索し、現在のCUの動きベクトルを導出する。双方向マッチング法は、現在の画像ブロックの動き軌跡が連続しているとの仮定に基づく。二つの予測画像ブロックの動きベクトルMV0、及びMV1は、現在の画像と二つの参照画像(参照画像0と参照画像1)との間の時間領域距離(TD0とTD1)と比例するものとする。動きベクトル候補リストを走査し、例えば、MV0について、動きベクトル対MV0とMV1を生成できる。ここで、MV0、TD0、TD1に基づいて、MV1を生成できる。MV0に対応する動きベクトル対が指向する二つの予測画像ブロックの間の歪みが最も小さい場合、この動きベクトル(つまりMV0)は、現在のCUの動きベクトルである。TD0=TD1の場合、双方向マッチングは、鏡像に基づく双方向マッチングに変化する。
【0097】
二つの参照画像におけるいずれか一つが特定参照画像である場合、現在の画像(現在の符号化対象画像、又は現在の復号化対象画像)と特定参照画像との時間距離の定義が不明確なので、双方向マッチングは実行できないことを理解するものとする。しかも、特定参照画像は、人工的に構築されたものであり、又は時間順序が早い以前のある特定参照画像からのものであり、特定参照画像における画像ブロックの間には空間上の関連があるとは限らず、画像ブロックエッジに明らかな揺れがあるので、双方向マッチングがこのような特定参照画像に基づいて、動きベクトルを検索する意義は大きくない。本出願の可能な実施形態において、特定参照画像に対応する動きベクトル候補をCUレベル動きベクトル候補リストに加えないことで、上述の課題が生じることを回避する。
【0098】
図3は、本出願の一つの実施例のテンプレートマッチング法の原理概略図である。
図3に示すように、テンプレートマッチング法は、現在の画像のテンプレート(現在のCUの上方画像ブロックと左側画像ブロックとのうちの少なくとも一つ)と参照画像におけるブロック(テンプレートの大きさと同じ)との間において最も近接するマッチングを検索し、現在のCUの動きベクトルを導出する。テンプレートを得た後に、テンプレートと候補の動きベクトルが指向する予測画像ブロックとの間の歪みが最も小さい場合、この候補の動きベクトルは、現在のCUの動きベクトルである。
【0099】
参照画像が特定参照画像である場合、特定参照画像は、人工的に構築されたものであり、又は時間順序が早い以前のある特定参照画像からのものであり、特定参照画像における画像ブロックの間には空間上の関連があるとは限らず、画像ブロックエッジに明らかな揺れがあるので、このような特定参照画像に基づいて、動きベクトルを検索する意義は大きくなく、すなわちテンプレートマッチング法の結果は不正確であり、ひいては意義がない。本出願の可能な実施形態において、特定参照画像に対応する動きベクトル候補をCUレベル動きベクトル候補リストに加えないことで、上述の課題が生じることを回避する。
【0100】
具体的な実施形態において、本出願の実施例の画像動き補償のための方法100は、DMVR技術に応用できる。
【0101】
DMVR技術は、双方向予測を行う場合、現在の画像ブロックにさらに正確な予測を行うために使用される細密化技術である。次に復号化端を例として、DMVR技術を詳細に説明する。DMVR技術は主に、二つの大きなステップを含み、第1ステップは、複数の初期動きベクトルに対応する復号化済み画像ブロックに基づいて、テンプレートを構築することである。第2ステップは、テンプレートに基づいて、この複数の初期動きベクトルを修正することである。
【0102】
具体的には、復号化端は、動きベクトル候補リストを生成できる。例えば、この動きベクトル候補リストは、前文で説明したAMVPモードの動きベクトル候補リスト、又はMergeテンプレートの動きベクトル候補リストであってよい。復号化端は、符号化端から送信された初期動きベクトルを指示するための複数のインデックスを受信できる。復号化端は、インデックスに基づいて、動きベクトル候補リストから複数の初期動きベクトルを得る。復号化端は、この複数の初期動きベクトルに対応する復号化済み画像ブロックに基づいて、テンプレート(例えば、画素を加重合計する方法)を生成し、生成されたテンプレートを利用して、それぞれこの複数の初期動きベクトルを修正する。最後に、この修正後の動きベクトルに基づいて前記現在の画像ブロックに動き補償を行う。
【0103】
本具体的な実施形態において、初期動きベクトルは、第1初期動きベクトル、及び第2初期動きベクトルを含むことができる。初期動きベクトルにおいて特定参照画像が存在する場合、以下の処理を採用できる。S120、前記現在の初期動きベクトルが指向する参照画像が特定参照画像である場合、前記初期動きベクトルに基づいて、前記現在の画像ブロックに動き補償を行うことは、前記第1初期動きベクトル、及び第2初期動きベクトルのうちの少なくとも一つの初期動きベクトルが指向する参照画像が特定参照画像である場合、前記第1初期動きベクトル、及び前記第2初期動きベクトルに基づいて、前記現在の画像ブロックに動き補償を行うことと、前記第1初期動きベクトル、及び前記第2初期動きベクトルが指向する参照画像がいずれも非特定参照画像である場合、前記第1初期動きベクトル、及び前記第2初期動きベクトルを修正し、修正後の第1動きベクトル、及び修正後の第2動きベクトルを得て、前記修正後の第1動きベクトル、及び前記修正後の第2動きベクトルに基づいて、前記現在の画像ブロックに動き補償を行うことと、を含むことができる。初期動きベクトルにおいて特定参照画像が存在しない場合、すなわち初期動きベクトルはいずれも非特定参照画像である場合、既存のDMVRの処理方法を採用できる。
【0104】
図4は、本出願の一つの実施例のDMVR技術の原理概略図である。具体的には、初期動きベクトルが第1初期動きベクトル(例えば、MV0であってよい)、及び第2初期動きベクトル(例えば、MV1であってよい)を含み、第1初期動きベクトルに対応する復号化済み画像ブロックが第1フレームの第1復号化済み画像ブロックに属すると仮定すると、この第1フレームは、第1参照画像であってよく、この第1復号化済み画像ブロックは、第1参照画像ブロックであってよい。第2動きベクトルに対応する復号化済み画像ブロックが第2フレームの第2復号化済み画像ブロックに属すると仮定すると、この第2フレームは、第2参照画像であってよく、この第2復号化済み画像ブロックは、第2参照画像ブロックであってよい。この第1参照画像ブロック、及びこの第2参照画像ブロックを加重合計し、テンプレートを得ることができる。ここで、このテンプレートは、双方向テンプレートということができる。
【0105】
選択可能には、一つの実施例において、前記初期動きベクトルは、第1初期動きベクトル、及び第2初期動きベクトルを含む。前記第1初期動きベクトル、及び前記第2初期動きベクトルを修正し、修正後の第1動きベクトル、及び修正後の第2動きベクトルを得ることは、第1参照画像ブロック、及び第2参照画像ブロックに基づいて、テンプレートを生成し、ここで、前記第1参照画像ブロックは前記第1初期動きベクトルに対応し、かつ第1参照画像に属し、前記第2参照画像ブロックは前記第2初期動きベクトルに対応し、かつ第2参照画像に属することと、前記テンプレートに基づいて、前記第1初期動きベクトル、及び前記第2初期動きベクトルを修正し、修正後の第1動きベクトル、及び修正後の第2動きベクトルを得ることと、を含むことができる。
【0106】
具体的には、前記テンプレートに基づいて、前記第1初期動きベクトル、及び前記第2初期動きベクトルを修正し、修正後の第1動きベクトル、修正後の第2動きベクトルを得ることは、N個の第3参照画像ブロックを利用して、それぞれ前記テンプレートとマッチングし、ここで、前記N個の第3参照画像ブロックは、N個の第3初期動きベクトルに対応し、かつ前記第1参照画像に属することと、M個の第4参照画像ブロックを利用して、それぞれ前記テンプレートとマッチングし、ここで、前記M個の第4参照画像ブロックは、M個の第4初期動きベクトルに対応し、かつ前記第2参照画像に属することと、前記マッチング結果に基づいて、前記N個の第3初期動きベクトルから一つの第3初期動きベクトルを選択し、及び前記M個の第4初期動きベクトルから一つの第4初期動きベクトルを選択し、前記一つの第3初期動きベクトル、及び前記一つの第4初期動きベクトルを前記現在の画像ブロックの動きベクトル(すなわち、修正後の第1動きベクトル、及び修正後の第2動きベクトル)とし、又は前記現在の画像ブロックの動きベクトルを確定することに用いることと、を含むことができる。
【0107】
選択可能には、この選択された第3初期動きベクトルは、最も小さい歪みコストに対応する動きベクトルであってよい。又は、この選択された第3初期動きベクトルは、ある特定の値よりも小さい歪みコストに対応する動きベクトルであってよい。
【0108】
選択可能には、この選択された第4初期動きベクトルは、最も小さい歪みコストに対応する動きベクトルであってよい。又は、この選択された第4初期動きベクトルは、ある特定の値よりも小さい歪みコストに対応する動きベクトルであってよい。
【0109】
ここで、前記一つの第3初期動きベクトル、及び前記一つの第4初期動きベクトルを前記現在の画像ブロックの動きベクトルとし、この場合、前記一つの第3初期動きベクトル、及び前記一つの第4初期動きベクトルに対応する既知の画像ブロック(すなわち、初期予測画像ブロック)を加重合計して予測画像ブロックを得ることができる。
【0110】
又は、前記一つの第3初期動きベクトル、及び前記一つの第4初期動きベクトルは前記現在の画像ブロックの動きベクトルを確定することに用いることができ、つまり前記一つの第3初期動きベクトル、及び前記一つの第4初期動きベクトルはそれぞれMVPとできる。この場合、この第3MVPを開始点として検索最適化し、最適化された動きベクトルを得ることができ、及びこの第4MVPを開始点として検索最適化し、他の最適化された動きベクトルを得ることができる。この二つの最適化された動きベクトルに対応する既知の画像ブロック(すなわち、初期予測画像ブロック)を加重合計して予測画像ブロックを得ることができる。
【0111】
選択可能には、このNとMは等しくてよい。
【0112】
選択可能には、この第3初期動きベクトルは、この第1初期動きベクトルを含み、この第4初期動きベクトルは、この第2初期動きベクトルを含み、つまり、テンプレートを生成するための第1初期動きベクトルに対応する参照画像ブロック、及び第2動きベクトルに対応する参照画像ブロックもそれぞれテンプレートとマッチングする必要がある。
【0113】
選択可能には、本出願の実施例において、このN個の第3初期動きベクトルにおける少なくとも一部の初期動きベクトルは、この第1初期動きベクトルに基づいて偏移して得られ、このM個の第4初期動きベクトルにおける少なくとも一部の初期動きベクトルは、この第2初期動きベクトルに基づいて偏移して得られたものである。
【0114】
例えば、このN個の第3初期動きベクトルにおける第1初期動きベクトル以外の初期動きベクトルは、この第1初期動きベクトルに基づいて偏移して得られ、例えば、Nは、9に等しくてよく、そのうちの8個の初期動きベクトルは、第1初期動きベクトルに基づいて偏移して得られ、例えば、8つの方向で偏移して得られ、又は垂直方向、若しくは水平方向で異なる画素を偏移して得られるものである。
【0115】
また例えば、このN個の第4初期動きベクトルにおける第2初期動きベクトル以外の初期動きベクトルは、この第2初期動きベクトルに基づいて偏移して得られ、例えば、Nは、9に等しくてよく、そのうちの8個の初期動きベクトルは、第2初期動きベクトルに基づいて偏移して得られ、例えば、8つの方向で偏移して得られ、又は垂直方向、若しくは水平方向で異なる画素を偏移して得られるものである。
【0116】
選択可能には、本出願の実施例において、前記第1参照画像は、前記現在の画像ブロックの前方向フレームであってよく、前記第2参照画像は、前記現在の画像ブロックの後方向フレームであってよい。又は、前記第1参照画像は、前記現在の画像ブロックの前方向フレームであってよく、前記第2参照画像は、前記現在の画像ブロックの前方向フレームであってよい。
【0117】
具体的な実施形態において、復号化端は、動きベクトル候補リストを生成し、符号化端から送信された初期動きベクトルを指示するための二つのインデックスを受信する。復号化端は、DMVP条件を判断し、このDMVP条件は、二つの初期動きベクトル(例えば、MV0とMV1であってよい)がいずれも特定参照画像を指向せず、かつ二つの初期動きベクトルの予測方向が逆であり、すなわち一つは前方向であり、他は後方向であることを求める。DMVR条件を満たす場合、MV0に対応する画像ブロック、及びMV1に対応する画像ブロックを加重合計し、双方向テンプレートを生成する。
【0118】
本出願の可能な実施形態において、特定参照画像に対応する動きベクトル候補を動きベクトル候補リストに加えないことで、二つのインデックスにより指示される初期動きベクトルが指向する参照画像が特定参照画像であることを回避する。他の可能な実施形態において、二つのインデックスにより指示される初期動きベクトルが指向する参照画像が特定参照画像である場合、復号化端は、符号化端が特定参照画像を指向しない動きベクトルを初期動きベクトルと再度指示するよう求めることができ、又は復号化端は、戻り、又はDMVRアルゴリズムの失効をマークする。
【0119】
第1参照画像において、MV0に対応する画像ブロックについて、水平方向と垂直方向とのうちの少なくとも一つで一つの輝度画素を偏移し、検索された近接する8つの画素ブロックの動きベクトルは、MV0の合計9つの動きベクトルとともに参照リストlist0を形成できる。第2参照画像において、MV1に対応する画像ブロックについて、水平方向と垂直方向とのうちの少なくとも一つで一つの輝度画素を偏移し、検索された近接する8つの画素ブロックの動きベクトルは、MV1の合計9つの動きベクトルとともに参照リストlist1を形成できる。
【0120】
復号化端が使用する双方向テンプレートマッチングは、双方向テンプレートと参照画像における再構築ブロックとの間で歪みに基づく検索を行うために、最終的に、追加の動き情報がない細密化後の動きベクトルを得る。二つの参照画像における動きベクトル(List0における動きベクトル、及びlist1における動きベクトル)について、最も小さいマッチングコストを持つ動きベクトルは、更新動きベクトルとして当初の動きベクトルに替わる。最終的に、二つの新しい動きベクトル(
図3に示すMV0'、及びMV1')で当初のMV0とMV1を代替する。MV0'に対応する予測画像ブロック、及びMV1'に対応する予測画像ブロックに基づいて、最終的な双方向予測結果を生成する。
【0121】
DMVR技術において、参照画像が特定参照画像である場合、特定参照画像は、人工的に構築されたものであり、又は時間順序が早い以前のある特定参照画像からのものであり、特定参照画像における画像ブロックの間には空間上の関連があるとは限らず、画像ブロックエッジに明らかな揺れがあるので、このような特定参照画像に基づいて、動きベクトルを検索する意義は大きくなく、すなわちDMVR技術は不正確であり、ひいては意義がないことを理解するものとする。本出願の実施例において、特定参照画像に対応する動きベクトルを細密化せず、直接動き補償に用いることで、上述の課題が生じることを回避する。
【0122】
本出願の実施例は、画像処理のための方法200を提供する。
図5は、本出願の他の一つの実施例の画像処理のための方法200の概略的フローチャートである。
図5に示すように、この方法200は、
第1初期動きベクトル、及び第2初期動きベクトルを取得し、この第1初期動きベクトルは、第1参照画像を指向し、この第2初期M動きベクトルは、第2参照画像を指向するS210と、
この第1参照画像、及びこの第2参照画像のうちの少なくとも一つが特定参照画像である場合、この第1初期動きベクトル、及びこの第2初期動きベクトルに基づいて、現在の画像ブロックの予測画像ブロックを計算して得るS220と、
この第1参照画像、及びこの第2参照画像がいずれも非特定参照画像である場合、この第1初期動きベクトル、及びこの第2初期動きベクトルが指向する画素点の勾配値に基づいて、現在の画像ブロックの動きベクトルを計算して得て、この現在の画像ブロックの動きベクトルに基づいて、現在の画像ブロックの予測画像ブロックを計算して得るS230と、を含む。
【0123】
本出願の実施例の画像処理のための方法は、二つの初期動きベクトルが指向する参照画像がいずれも非特定参照画像である場合、画素点の勾配値、及び最適化原理を採用して、現在の画像ブロックの動きベクトルを計算して得て、現在の画像ブロックの予測画像ブロックを計算して得る。二つの初期動きベクトルが指向する参照画像に特定参照画像が存在する場合、二つの初期動きベクトルに基づいて、直接現在の画像ブロックの予測画像ブロックを計算して得て、現在の画像と特定参照画像との時間距離の定義が不明確であることにより予測が実行できないことを回避し、符号化復号化効率を高めることができる。
【0124】
選択可能には、S230において前記第1初期MV、及び前記第2初期MVが指向する画素点の勾配値に基づいて、前記現在の画像ブロックのMVを計算して得ることは、前記第1初期MV、及び前記第2初期MVが指向する画素点の勾配値、及び最適化原理に基づいて、前記現在の画像ブロックのMVを計算して得ることを含むことができる。
【0125】
具体的な実施形態において、本出願の実施例の画像処理のための方法200は、双方向動き予測モードの改良に応用できる。双方向動き予測モードとは、ある現在の画像ブロックを符号化する場合に、二つの異なる参照画像由来の二つの初期予測画像ブロックを同時に使用して現在の画像ブロックを予測し、かつ二つの初期予測画像ブロックを一つの画像ブロックに結合し、現在の画像ブロックの予測画像ブロックとすることをいう。BIO予測技術とは、双方向動き予測モードでの技術である。BIO予測技術では、動きベクトルは、通常の双方向動き予測モードに比べて、さらに多くの符号化マークがないが、予測画像ブロックの導出過程は異なる。BIO予測技術は、ブロック動き補償に基づく動き最適化であり、オプティカルフローモードにより動きベクトルを計算し、サンプリングポイントレベルの動き最適化である。
【0126】
本出願の実施例のBIO予測技術は、二つのステップを含むことができる。第1ステップは、二つの初期MV(例えば、第1初期MV、及び第2初期MV)に基づいて、現在の画像ブロックのMVを計算して得ることである。具体的には、前記第1初期MV、及び前記第2初期MVが指向する画素点の勾配値、及び最適化原理に基づいて、現在の画像ブロックのMVを計算して得ることである。第2ステップは、前記現在の画像ブロックのMV、前記第1初期MVが指向する第1参照画像ブロック、及び前記第2初期MVが指向する第2参照画像ブロックに基づいて、前記現在の画像ブロックの予測画像ブロックを計算して得ることである。具体的には、BIO予測技術は、二つの初期MVが指向する二つの参照画像ブロックを補間し、現在の画像ブロックと同じサイズの二つの初期予測画像ブロックを得て、その後、この二つの初期予測画像ブロックを加重合計し、現在の画像ブロックの予測画像ブロックとして結合することである。
【0127】
図6は、本出願の一つの実施例のBIO技術の原理概略図である。BIO技術は、短い時間内に、物体の動きが水平方向、及び垂直方向のいずれにおいても等速運動であると仮定し、オプティカルフロー法の解析条件に適合する。
図6に示すように、二つの初期MVが指向する参照点k(k=0、1)の動きベクトル(v
x、v
y)、及び輝度値I
(k)は、以下のオプティカルフロー公式に適合すると仮定できる。
∂I
(k)/∂t+v
x∂I
(k)/∂x+v
y∂I
(k)/∂y=0 公式1
式中、∂I
(k)/∂x及び∂I
(k)/∂yは、勾配の水平成分、及び垂直成分を示す。
【0128】
オプティカルフロー公式及びHermiteを補間により連立して以下のような多項式を得て、t=0の場合、BIO予測値である。
predBIO=1/2・(I(0)+I(1)+vx/2・(τ1∂I(1)/∂x-τ0∂I(0)/∂x)+vy/2・(τ1∂I(1)/∂y-τ0∂I(0)/∂y)) 公式2
式中、τ0及びτ1は、それぞれ現在の画像から参照画像0、及び参照画像1までの距離を示し、両者は、現在の画像、及び二つの参照画像のPOCにより計算して得ることができる。
τ0=POC(current)-POC(Ref0) 公式3
τ1=POC(Ref1)-POC(current) 公式4
式中、POC(current)は、現在の画像のピクチャオーダーカウントであり、POC(Ref0)は、参照画像0のピクチャオーダーカウントであり、POC(Ref1)は、参照画像1のピクチャオーダーカウントである。
【0129】
参照画像は異なる方向であることができ、すなわち一つは過去からであり、一つは未来からである。二つの参照画像は同じ方向でもあり、すなわちいずれも過去からであり、又はいずれも未来からである。二つの参照画像が同じ方向の場合、τ0及びτ1は、異符号である。このような状況では、二つの参照画像は、同じであることはできず、すなわちτ0≠τ1であり、参照領域は、非ゼロの動き(MVx0,MVy0,MVx1,MVy1≠0)があり、動きベクトルは、時間領域の距離に比例する(MVx0/MVx1=MVy0/MVy1=-τ0/τ1)。
【0130】
小さい領域内の動きが同じであると仮定すると、BIOの動きベクトルが以下のような1次のテイラー展開の公式を満たすことができる。
Δ=(I
(0)-I
(1)+v
x(τ
1∂I
(1)/∂x+τ
0∂I
(0)/∂x)+v
y(τ
1∂I
(1)/∂y+τ
0∂I
(0)/∂y)) 公式5
式中、Δは、二つの参照画像において対応する二つの参照点(例えば、
図4におけるA、Bの両点)の画素差のテイラー1次展開である。勾配値、及び最適化方法により解析し、現在の画像ブロックの最適な動きベクトルが全領域内Δの二乗、及び最小を満たし、これにより最適な動きベクトル(v
x、v
y)を計算でき、アルゴリズムのロバスト性を考慮すると、v
x及びv
yは、ある閾値範囲内にあるものとする。
【0131】
上述の公式に基づいて、BIO予測技術のプロセスは以下のとおりである。現在の画像ブロックについて、その二つの参照画像に対応する位置の画素値はいずれも既に得られた。公式におけるI(0)及びI(1)は、それぞれ二つの参照画における画素値を示し、上述の公式における既知のものは、I(0)、I(1)及びτ0とτ1であり、勾配水平成分、及び垂直成分は、参照画像において計算により得られ、未知のものは、vx、vy及びΔである。一つの領域内のすべての画素点について、いずれも一つのΔを算出でき、最適化方法を使用して、Δが最小値のvx及びvyを得るようにし、つまり必要な最適な動きベクトルである。ここで、vx及びvyを計算する場合、それぞれvx及びvyに一つの区間を与え、この区間の閾値は、二つの参照画像の現在の画像に対する方向により確定される。最適な動きベクトルを得た後、この最適な動きベクトルが指向する画像ブロック+残差を直接、現在の画像ブロックとするわけではなく、公式2により現在の画像ブロックの各画素を計算して、これはBIO予測値ともいい、各画素の予測値を一体に組み合わせて、予測画像ブロックを形成する。
【0132】
選択可能には、本出願の実施例において、前記第1初期動きベクトル、及び前記第2初期動きベクトルに基づいて、現在の画像ブロックの予測画像ブロックを計算して得ることは、前記第1初期動きベクトルが指向する第1参照画像ブロック、及び前記第2初期動きベクトルが指向する第2参照画像ブロックを加重合計し、前記現在の画像ブロックの予測画像ブロックを得ることを含む。
【0133】
具体的には、BIO予測開始実行前に判断条件を追加し、又はBIO条件に必要条件を追加する。第1初期動きベクトルが指向する第1参照画像、及び第2初期動きベクトルが指向する第2参照画像がいずれも特定参照画像でなく、しかも当初のBIO条件に合格する場合、BIO予測を行うことができる。そうでなければ、直接、二つの初期動きベクトルに基づいて、現在の画像ブロックの予測画像ブロックを計算して得て、又は戻り、又はBIO予測アルゴリズムの失効をマークする。
【0134】
BIO条件は、以下をさらに含むことができる。前記第1初期動きベクトル、及び前記第2初期動きベクトルの予測方向は異なることである。又は、代替可能には、BIO条件は、以下をさらに含むことができる。前記第1初期動きベクトル、及び前記第2初期動きベクトルの予測方向は同じであり、前記第1初期動きベクトル、及び前記第2初期動きベクトルはいずれも0ではなく、前記第1参照画像、及び前記第2参照画像は異なることである。同時に、第1初期動きベクトル、及び第2初期動きベクトルの各方向成分の比率は同じであり、いずれも動きベクトルが指向する第1参照画像と現在の画像との距離、及び第2参照画像と現在の画像との距離の比に等しい。
【0135】
本出願の各実施例の動きベクトルは、3つのパラメータを含むことを理解するものとし、水平成分vx、垂直成分vy、及び指向する参照画像のフレームマークである。例えば、このフレームマークは、POCであってよく、その他の形態のマークであってもよい。符号化端、及び復号化端は、このフレームマークにより、参照画像の属性を確定でき、この参照画像が特定参照画像であるか否かを判断する。
【0136】
選択可能には、本出願の実施例において、初期動きベクトルが指向する参照画像が特定参照画像であるか否かを判断することは、初期動きベクトルが指向する参照画像のフレームマークに基づいて、初期動きベクトルが指向する参照画像が特定参照画像であるか否かを確定することを含むことができる。
【0137】
選択可能には、本出願の実施例において、S230前記現在の画像ブロックの動きベクトルに基づいて、現在の画像ブロックの予測画像ブロックを計算して得ることは、前記現在の画像ブロックの動きベクトル、前記第1初期動きベクトルが指向する第1参照画像ブロック、及び前記第2初期動きベクトルが指向する第2参照画像ブロックに基づいて、前記現在の画像ブロックの予測画像ブロックを計算して得ることを含むことができる。具体的な計算公式は、前文において詳細に説明しており、ここではこれ以上説明しない。
【0138】
方法200の具体的な実施形態は、以下のステップを含むことができる。
【0139】
1.現在の二つの初期動きベクトルがBIO条件に適合するか否かを判断し、判断条件は、以下のとおりである。
【0140】
a)二つの初期動きベクトルが指向する参照画像がいずれも非特定参照画像であり、すなわち第1初期動きベクトルが指向する第1参照画像、及び第2初期動きベクトルが指向する第2参照画像がいずれも非特定参照画像である。
【0141】
b)以下の2項のうちの一つを満たし、
i)二つの初期動きベクトルが異なる予測方向(それぞれ前方向と後方向)からである。
ii)二つの初期動きベクトルが同じ予測方向の異なる参照画像からであり、かつ二つの初期動きベクトルがいずれも0ではなく、しかも二つの初期動きベクトルの各方向成分の比率が同じであり、いずれも動きベクトルが指向する参照画像と現在の画像との距離の比に等しい。
【0142】
同時にa)及びb)を満たす初期動きベクトルは、BIO条件に適合し、BIO予測を行うことができる。
【0143】
2.二つの初期動きベクトルの予測方向に基づいて、演算閾値を確定し、すなわちvx及びvyの区間の閾値である。
【0144】
3.二つの初期動きベクトルが指向する画素点の勾配値を計算する。
【0145】
4.勾配値、及び最適化原理に基づいて、最適な動きベクトルを計算し、現在の画像ブロックの動きベクトルとする。
【0146】
5.現在の画像ブロックの動きベクトル、二つの初期動きベクトルが指向する参照画像ブロックによりBIO予測値を得る。
【0147】
b)i)のみを満たす場合、前記第1初期動きベクトルが指向する第1参照画像ブロック、及び前記第2初期動きベクトルが指向する第2参照画像ブロックを加重合計し、前記現在の画像ブロックの予測画像ブロックを得る。
【0148】
本出願の実施例のBIO予測が参照する原理、公式、及びステップは、上述の説明を参照でき、ここではこれ以上説明しない。
【0149】
BIO予測技術において、参照画像が特定参照画像である場合、現在の画像(現在の符号化対象画像、又は現在の復号化対象画像)と特定参照画像との時間距離の定義が不明確なので、BIO予測技術は実行できないことを理解するものとする。本出願の実施例において、二つの初期動きベクトルが指向する参照画像に特定参照画像が存在する場合、直接、二つの初期動きベクトルに基づいて、現在の画像ブロックの予測画像ブロックを計算して得て、これにより上述の課題が生じることを回避する。
【0150】
本出願の各実施例の方法はいずれも符号化端、及び復号化端に応用できることを理解するものとする。本出願の各実施例の現在の画像ブロックは、符号化対象画像ブロックであってよく、復号化対象画像ブロックであってもよい。
【0151】
本出願の実施例は、PMMVD技術、DMVR技術、及びBIO予測技術に応用される画像処理のための方法を例示的に提示したにすぎず、本出願の実施例の方法は、さらに既存の又は将来のその他の動画符号化/復号化技術に応用でき、本出願の実施例は、これを限定しないことを理解するものとする。
【0152】
本出願の実施例において、いくつかの実施形態において、画像ブロックの動きベクトルを確定する過程において、その他の画像のある画像ブロックの動きベクトルを利用してこの画像ブロックの動きベクトルを確定しなければならないことに言及する。説明しやすいように、次ではこの画像ブロックを第1画像ブロックといい、利用しなければならないその他の画像のある画像ブロックをこの第1画像ブロックの時間領域参照ブロックという。第1画像ブロック、及びこの第1画像ブロックの時間領域参照ブロックは、異なる画像に位置することが理解できる。そうすると、この時間領域参照ブロックの動きベクトルを利用して第1画像ブロックの動きベクトルを確定する過程において、この時間領域参照ブロックの動きベクトルをスケーリングしなければならない。
【0153】
通常、前記時間領域参照ブロックの動きベクトルが指向する参照画像と前記時間領域参照ブロックがある画像との間の時間距離、及び前記第1画像ブロックの参照画像と前記第1画像ブロックがある画像との間の時間距離に基づいて、前記時間領域参照ブロックの動きベクトルのスケーリング比率を確定する。具体的には、時間領域参照ブロックの動きベクトルが指向する参照画像とこの時間領域参照ブロックがある画像との間の時間距離、及び第1画像ブロックの参照画像と前記第1画像ブロックがある画像との間の時間距離に基づいて、時間領域参照ブロックの動きベクトルのスケーリング比率を確定する。
【0154】
例示において、時間領域参照ブロックの動きベクトルをMV2とし、この動きベクトルMV2が指向する参照画像の参照フレームインデックス値をxとする。ここで、この参照フレームインデックス値xは、MV2が指向する参照画像の順序番号(例えば、POC)とこの時間領域参照ブロックがある画像の順序番号との差である。第1画像ブロックの参照画像の参照フレームインデックス値をyとする。ここで、この参照フレームインデックス値yは、第1画像ブロックの参照画像の順序番号とこの第1画像ブロックがある画像の順序番号との差である。そうすると、動きベクトルMV2のスケーリング比率は、y/xである。選択可能には、動きベクトルMV2とy/xの積を第1画像ブロックの動きベクトルとしてもよい。
【0155】
しかしながら、時間領域参照ブロックの動きベクトルMV2が特定参照画像を指向する場合、又は、第1画像ブロックの参照画像が特定参照画像である場合、特定参照画像と第1画像ブロックがある画像との時間距離の定義が不明確であるので、時間領域参照ブロックの動きベクトルMV2をスケーリングすることは意義がなくなってしまう。
【0156】
本出願の実施例は、動画処理方法1100を提供する。
図11は、本出願の他の一つの実施例の動画処理方法1100の概略的フローチャートである。
図11に示すように、この方法1100は、
第1画像ブロックの時間領域参照ブロックの動きベクトルを確定し、ここで、前記時間領域参照ブロック、及び前記第1画像ブロックは、異なる画像に位置するS1101と、
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、処理後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定し、前記処理後の前記時間領域参照ブロックの動きベクトル、及び処理前の時間領域参照ブロックの動きベクトルは、同じであるS1102と、を含む。
【0157】
図12は、本出願の他の一つの実施例の動画処理方法1200の概略的フローチャートである。
図12に示すように、この方法1200は、
前記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定し、ここで、前記時間領域参照ブロック、及び前記第1画像ブロックは、異なる画像に位置するS1201と、
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを参照することを放棄することで前記第1画像ブロックの動きベクトルを取得するS1202と、を含む。
【0158】
図13は、本出願の他の一つの実施例の動画処理方法1200の概略的フローチャートである。
図13に示すように、この方法1300は、
第1画像ブロックの時間領域参照ブロックの動きベクトルを確定し、ここで、前記時間領域参照ブロック、及び前記第1画像ブロックは、異なる画像に位置する、S1301、と、
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを前記第1画像ブロックの動きベクトルとするS1302と、を含む。
【0159】
例示において、時間領域参照ブロックの動きベクトルMV2が特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、処理後の時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定する。ここで説明する処理後の時間領域参照ブロックの動きベクトルは、この動きベクトルに対する操作、及び通常の状況でのこの動きベクトルに対する操作が異なることをいうことができる。ここで、ここでの通常の状況での動きベクトルに対する操作とは、時間領域参照ブロックの動きベクトルMV2が特定参照画像を指向しない場合と、第1画像ブロックの参照画像が特定参照画像でない場合とのうちの少なくとも一つの場合のそれに対する操作である。
【0160】
例示において、時間領域参照ブロックの動きベクトルMV2が特定参照画像を指向すると確定する場合、又は前記第1画像ブロックの参照画像が特定参照画像であると確定する場合、時間領域参照ブロックの動きベクトルMV2のスケーリング比率は1にデフォルトされる。ここで説明する処理後の時間領域参照ブロックの動きベクトルは、このデフォルトされたスケーリング比率1によりスケーリングされた後の動きベクトルMV2であってよい。
【0161】
例示において、時間領域参照ブロックの動きベクトルMV2が特定参照画像を指向すると確定する場合、又は前記第1画像ブロックの参照画像が特定参照画像であると確定する場合、この動きベクトルMV2に対するスケーリングステップをスキップする。ここで説明する処理後の時間領域参照ブロックの動きベクトルは、このスケーリングステップをスキップした後の動きベクトルMV2であってよい。
【0162】
例示において、時間領域参照ブロックの動きベクトルMV2が特定参照画像を指向すると確定する場合、又は前記第1画像ブロックの参照画像が特定参照画像であると確定する場合、時間領域参照ブロックの動きベクトルを参照することを放棄することで第1画像ブロックの動きベクトルを取得する。
【0163】
例示において、第1画像ブロックは、符号化ユニット(Coding Unit、CU)であってよく、符号化ユニットにおけるサブ画像ブロックであってもよく、例えば、sub-CUであり、ここでは限定しない。
【0164】
ここで、第1画像ブロックの時間領域参照ブロックを確定する方法は、以下に説明される現在の画像ブロックの関連参照ブロックを確定する方法を参照できる。ここではまず説明しない。
【0165】
次に具体的なシーンを踏まえて、本出願の実施例について具体的に例を挙げて説明する。
【0166】
AMVPモード、Mergeモードなどが動きベクトルを導出するいくつかの実施形態において、現在の画像ブロックの動き情報候補リスト(例えば、MVP候補リスト、参照フレームインデックス値候補リスト、又はその他の動き情報候補リスト)を構築する場合、空間領域で近接する画像ブロックの動きベクトルと現在の画像ブロックの参照フレームインデックス値とのうちの少なくとも一つに基づいて、候補リストを取得するだけでなく、例えば、現在の画像ブロックがある画像における現在の画像ブロックに近接する画像ブロックの動きベクトルと現在の画像ブロックの参照フレームインデックス値とのうちの少なくとも一つに基づいて、候補リストを取得し、さらに時間領域で近接する画像ブロック(上述で説明した時間領域参照ブロックに相当)の動きベクトルに基づいても候補リストを取得する。例えば、現在の画像ブロックの時間領域参照ブロックは、その他の画像における現在の画像ブロックの位置に関連する画像ブロックであってよい。
【0167】
いくつかの実施形態において、「その他の画像における現在の画像ブロックの位置に関連する画像ブロック」とは、現在の画像ブロックの位置が関連する参照画像ブロック(co-located block)(以下、関連参照ブロックという)という。この関連参照ブロックを含む参照画像を位置が関連する参照画像(co-located reference picture)(以下、関連参照画像という)という。
【0168】
現在の画像ブロックの関連参照ブロックは、関連参照画像における現在の画像ブロックの位置と同じ画像ブロックであってよく、関連参照画像における現在の画像ブロックの位置とその他の関連がある画像ブロックであってもよく、ここでは限定しない。
【0169】
現在の画像ブロックの関連参照ブロックを確認する方法は複数あり、次にここでのいくつかについて例を挙げて説明する。
【0170】
例示において、まず現在の画像ブロックの参照画像を確定する。説明しやすいように、次にこの参照画像を第1参照画像という。この第1参照画像は、現在の画像ブロックの参照画像セットにおいて、現在の画像ブロックがある画像との距離(つまり現在の画像)が最も近い画像であってよい。ここで、ここで説明する距離が最も近いとは、符号化順序の距離が最も近いことでもよく、又は表示順序の距離が最も近いことでもよい。ここで、現在の画像ブロックの参照画像セットは、現在の画像ブロックがあるスライスの参照画像セットのことであってよく、又は現在の画像ブロックがあるフレームの参照画像セットのことであってもよい。
【0171】
選択可能には、現在の画像ブロックの関連参照ブロックは、第1参照画像において現在の画像ブロックの位置と同じ画像ブロックであってよく、又は現在の画像ブロックの特定隣接画像ブロックの動きベクトルが指向する画像ブロックであってもよい。又は現在の画像ブロックの特定隣接画像ブロックの動きベクトルが指向する位置の数値カットオフされた位置に対応する画像ブロックであってもよい。又は第1参照画像において現在の画像ブロックの位置と同じ画像ブロックの動きベクトルが指向する画像ブロックであってもよい。又は第1参照画像において現在の画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックであってもよい。又は第1参照画像において現在の画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックの動きベクトルが指向するが画像ブロックであってもよい。
【0172】
例示において、この第1参照画像は、現在の画像ブロックの現在の画像における特定隣接画像ブロックの、ある1つの参照フレームであってよい。例えば、この第1参照画像は、現在の画像ブロックの現在の画像における特定隣接画像ブロックの動きベクトルが指向する画像であってよい。選択可能には、現在の画像ブロックの関連参照ブロックは、この特定隣接画像ブロックの動きベクトルが指向する画像ブロックであってよい。又は第1参照画像において現在の画像ブロックの位置と同じ画像ブロックであってよい。又は第1参照画像において現在の画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックであってもよい。又は第1参照画像において現在の画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックの動きベクトルが指向する画像ブロックであってもよい。
【0173】
例えば、この第1参照画像は、現在の画像ブロックの現在の画像における特定隣接画像ブロックの参照画像セットにおいて、現在の画像と距離が最も近い画像であってよい。選択可能には、現在の画像ブロックの関連参照ブロックは、この第1参照画像において現在の画像ブロック、又は特定隣接画像ブロックの位置と同じ画像ブロックであってもよい。又は現在の画像ブロックに隣接する画像ブロックの動きベクトルが指向する画像ブロックであってもよい。又は現在の画像ブロックに隣接する画像ブロックの動きベクトルが指向する位置の数値カットオフされた位置に対応する画像ブロックであってよい。又はこの第1参照画像において現在の画像ブロック、又は特定隣接画像ブロックの位置と同じ画像ブロックの動きベクトルが指向する画像ブロックであってもよい。又は第1参照画像において現在の画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックであってよい。又は第1参照画像において現在の画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックの動きベクトルが指向する画像ブロックであってもよい。
【0174】
例示において、第1参照画像は、符号化復号化端がデフォルトした参照画像であってよく、例えば、以上の例示において説明されたルールによりデフォルトされた参照画像であってよい。又は符号化端がストリームにおいて現在の画像ブロックの第1参照画像のインデックス情報を追加し、復号化端は、このインデックス情報により現在の画像ブロックの関連参照画像を確定する。
【0175】
ここで、デフォルトされた参照画像は、符号化復号化システムにより定められてもよく、シーケンスヘッダ(sequence header)、画像ヘッダ(picture header)、動画パラメータセット(video parameter set)、シーケンスパラメータセット(SPS、sequence parameter set)、画像パラメータセット(PPS、picture parameter set)、スライスヘッダ(slice header)のうちの少なくとも一つにおいて定めることもできる。
【0176】
ここで、以上の各例示において言及する現在の画像ブロックの現在の画像における特定隣接画像ブロックは、この特定隣接画像ブロックのサイズが現在の画像ブロックのサイズと同じ、又は異なってよい。特定隣接画像ブロックを確定する方法は複数ある。例示において、この特定隣接画像ブロックを確定する方法は、現在の画像において特定走査順序により第1の隣接画像ブロックを得ることであってよい。例示において、この特定隣接画像ブロックを確定する方法は、現在の画像において特定走査順序により現在の画像ブロックと同じ参照フレームインデックス値を有する第1の隣接画像ブロックを取得することでもよい。例示において、この特定隣接画像ブロックを確定する方法は、特定走査順序により動き情報を含む第1の画像ブロックを取得することでもよい。例示において、この特定隣接画像ブロックを確定する方法は、特定走査順序により現在の画像の前記デフォルトされた参照画像と同じ第1の隣接画像ブロックを得ることでもよい。
【0177】
ここで、特定走査順序は、現在の画像ブロックを起点とし、「下から上へ、左から右へ」に沿う走査順序でよく、又は現在の画像ブロックを起点とし、「右から左へ、上から下へ」に沿う走査順序でもよく、又はその他の走査順序でもよい。例示において、この特定走査順序により走査して得られた画像ブロックは、連続した画像ブロックを含んでもよく、離散した複数の画像ブロックを含んでもよい。この特定走査順序は、符号化復号化端が定める。
【0178】
時間領域で近接する画像ブロックの動きベクトルに基づいて、候補リストを取得し、例えば、現在の画像ブロックの関連参照ブロックの動きベクトルに基づいて、現在の画像ブロックの動き情報候補リストを取得する場合、関連参照ブロックの動きベクトルをスケーリングすることに関する。例えば、この関連参照ブロックの動きベクトルが指向する画像とこの関連参照ブロックがある画像との間の距離、及び現在の画像ブロックの参照フレームと現在の画像との間の距離に基づいて、この関連参照ブロックの動きベクトルをスケーリングする必要がある。その後、スケーリング後の関連参照ブロックの動きベクトルを候補リストに加える。
【0179】
この関連参照ブロックの動きベクトルが特定参照画像を指向する場合、現在の画像と特定参照画像との時間距離の定義が不明確であるので、上述の動きベクトルをスケーリングする意義はない。
【0180】
一つの実施例において、取得されたこの関連参照ブロックの動きベクトルが特定参照画像を指向する場合、この関連参照ブロックの動きベクトルをスケーリングせず、直接、この動きベクトルを候補リストに加え、又はこの関連参照ブロックの動きベクトルのスケーリング比率を1にデフォルトし、その後、デフォルトされたスケーリング比率に基づいてスケーリング後の動きベクトルを候補リストに加え、又は直接、この関連参照ブロックの動き情報を現在の画像ブロックの動き情報とする。
【0181】
一つの実施例において、現在の画像ブロックの参照フレームが特定参照画像である場合、この関連参照ブロックの動きベクトルをスケーリングせず、直接、この動きベクトルを候補リストに加え、又はこの関連参照ブロックの動きベクトルのスケーリング比率を1にデフォルトし、その後、デフォルトされたスケーリング比率に基づいてスケーリング後の動きベクトルを候補リストに加え、又は直接、この関連参照画像ブロックの動き情報を現在の画像ブロックの動き情報とする。
【0182】
一つの実施例において、取得されたこの関連参照ブロックの動きベクトルが特定参照画像を指向する場合、この関連参照ブロックの動きベクトルを候補リストに加えない。
【0183】
一つの実施例において、現在の画像ブロックの参照フレームが特定参照画像である場合、この関連参照ブロックの動きベクトルを候補リストに加えない。
【0184】
現在の画像ブロックの動きベクトルの正確さを高めるために、選択可能には、さらに、現在の画像ブロックを複数のサブ画像ブロックに分ける。いくつかの実施形態において、現在のCU(coding unit)を複数のsub-CUに分けるといわれる。現在の画像ブロックにおける各サブ画像ブロックについて、このサブ画像ブロックの位置が関連する画像ブロックを取得する。その後、この位置が関連する参照ブロックの動きベクトルに基づいて、このサブ画像ブロックの動きベクトルを取得する。
【0185】
つまり、現在の画像ブロックは、上述に説明される第1画像ブロックの具体的な例であってよく、又は現在の画像ブロックのサブ画像ブロックは、上述に説明される第1画像ブロックの具体的な例であってよい。
【0186】
一つの実施例において、現在の画像ブロックを複数のサブ画像ブロックに分ける状況において、選択可能には、各サブ画像ブロックについて一つの動き情報候補リストを構築する(例えば、MVP候補リスト、参照フレームインデックス値候補リスト、又はその他の動き情報候補リスト)。具体的には、各サブ画像ブロックの動き情報候補リスト構築する場合、現在の画像ブロックの空間領域で近接する画像ブロックの動きベクトルと現在のサブ画像ブロックの参照フレームインデックス値とのうちの少なくとも一つに基づいて、候補リストを取得でき、例えば、現在の画像ブロックがある画像における現在の画像ブロックに近接する画像ブロックの動きベクトルと現在のサブ画像ブロックの参照フレームインデックス値とのうちの少なくとも一つに基づいて候補リストを取得することで、現在のサブ画像ブロックの動き情報候補リストを構築する。ここで、各サブ画像ブロックの参照フレームインデックス値は、現在の画像ブロックの参照フレームインデックス値と同じである。又は各サブ画像ブロックの参照フレームインデックス値は、現在の画像ブロックの参照フレームインデックス値に基づいて確定される。
【0187】
現在の画像ブロックの動きベクトルは、この現在の画像ブロックにおける各サブ画像ブロックの動き情報候補リストに基づいて確定されるものである。
【0188】
現在の画像ブロックを4つのサブ画像ブロックに分けることを例とし、この現在の画像ブロックにおける各サブ画像ブロックは、一つの動き情報候補リストを有し、この現在の画像ブロックは合計で4つの動き情報候補リストを有する。この現在の画像ブロックの動きベクトルは、この4つの動き情報候補リストに基づいて取得されるものである。
【0189】
一つの実施例において、上述に説明される「時間領域で近接する画像ブロックの動きベクトルに基づいて候補リストを取得する」は、現在の画像ブロックにおける少なくとも一部のサブ画像ブロックの時間領域で近接する画像ブロックの動きベクトルに基づいて候補リストを取得することを含む。例示において、現在の画像ブロックにおける各サブ画像ブロックの時間領域で近接する画像ブロックの動きベクトルに基づいて、候補リストを取得でき、例えば、現在の画像ブロックにおける各サブ画像ブロックの時間領域で近接する画像ブロックの動きベクトルを候補リストに加える。例示において、現在の画像ブロックにおける一部のサブ画像ブロックの時間領域で近接する画像ブロックの動きベクトルに基づいて、候補リストを取得でき、例えば、現在の画像ブロックにおける一部のサブ画像ブロックの時間領域で近接する画像ブロックの動きベクトルを候補リストに加える。
【0190】
ここで、現在の画像ブロックにおける少なくとも一部のサブ画像ブロックの時間領域で隣接する画像ブロックを確定する方法は、複数ある。例えば、以上では現在の画像ブロックの関連参照ブロックを確定する方法を説明した。
【0191】
例示において、「現在の画像ブロックを複数のサブ画像ブロックに分ける」ことと同じ方法で現在の画像ブロックの関連参照ブロックを複数のサブ画像ブロックに分け、そうすると、現在の画像ブロックにおける各サブ画像ブロックは、この関連参照ブロックにおける各サブ画像ブロックに一つ一つ対応する。現在の画像ブロックにおける各サブ画像ブロックの時間領域で近接する画像ブロックは、それぞれこの現在の画像ブロックの関連参照ブロックにおける、この各サブ画像ブロックに対応するサブ画像ブロックであってよい。
【0192】
例示において、上述に説明されるすべての「現在の画像ブロックの関連参照画像、及び関連参照ブロック」を確定する方法に類似し、各方法におけるすべての現在の画像ブロックを現在のサブ画像ブロックに置き替え、この方法を採用し、現在のサブ画像ブロックの関連参照画像、及び関連参照ブロックを確定できる。
【0193】
現在の画像ブロックにおける少なくとも一部のサブ画像ブロックの関連参照ブロックを確定した後、この少なくとも一部のサブ画像ブロックの関連参照ブロックの動きベクトルに基づいて候補リストを取得する場合、この少なくとも一部のサブ画像ブロックの関連参照ブロックの動きベクトルをスケーリングすることに関する。例えば、この関連参照ブロックの動きベクトルが指向する画像とこの関連参照ブロックがある画像との間の距離、及び現在の画像ブロックの参照フレームと現在の画像との間の距離に基づいて、このサブ画像ブロックの関連参照ブロックの動きベクトルをスケーリングし、その後、スケーリング後の動きベクトルを候補リストに加える。
【0194】
一つの実施例において、取得されたこのサブ画像ブロックの関連参照ブロックの動きベクトルが特定参照画像を指向する場合、この動きベクトルをスケーリングせず、直接、この動きベクトルを候補リストに加え、又はこの動きベクトルのスケーリング比率を1にデフォルトし、その後、デフォルトされたスケーリング比率に基づいてスケーリング後の動きベクトルを候補リストに加え、又は直接、このサブ画像ブロックの関連参照ブロックの動きベクトルをこのサブ画像ブロックの動きベクトルとする。
【0195】
一つの実施例において、現在の画像ブロックの参照フレームが特定参照画像である場合、この関連参照ブロックの動きベクトルをスケーリングせず、直接、この動きベクトルを候補リストに加え、又はこの関連参照ブロックの動きベクトルのスケーリング比率を1にデフォルトし、その後、デフォルトされたスケーリング比率に基づいてスケーリング後の動きベクトルを候補リストに加え、又は直接、このサブ画像ブロックの関連参照ブロックの動きベクトルをこのサブ画像ブロックの動きベクトルとする。
【0196】
一つの実施例において、取得されたこのサブ画像ブロックの関連参照ブロックの動き情報が特定参照画像を指向する場合、この動きベクトルを候補リストに加えない。
【0197】
一つの実施例において、現在の画像ブロックの参照フレームが特定参照画像である場合、この関連参照ブロックの動きベクトルを候補リストに加えない。
【0198】
次に具体的な例を踏まえて例を挙げて説明する。
【0199】
図14に示すように、現在の画像ブロックAを4つの同じ大きさのサブ画像ブロックに分ける。現在の画像ブロックAの関連参照画像において関連参照ブロックCol A(co-located A)を取得する。関連参照画像、及び前記関連参照画像は、上述の方法により取得される。具体的には、例示において、この関連参照ブロックColAを現在の画像ブロックAの4つのサブ画像ブロックと大きさが同じ4つのサブ画像ブロックに分ける。関連参照ブロックColAにおける4つのサブ画像ブロック、及び現在の画像ブロックAにおける4つのサブ画像ブロックは一つ一つ対応する。関連参照ブロックColAの各サブ画像ブロックの動きベクトルを基準として、現在の画像ブロックAにおける対応するサブ画像ブロックの動きベクトルを取得する。
【0200】
現在の画像ブロックがサブ画像ブロックを単位として、関連参照ブロックから位置が関連するサブ画像ブロックの動きベクトルを取得した後、現在の画像ブロックのサブ画像ブロックの動きベクトルの計算方法は、以下のとおりである。
【0201】
関連参照画像ブロックにおける位置が関連するサブ画像ブロックの動きベクトルをMVColSubblock、及びこのサブ画像ブロックの参照フレームインデックス値をRefColSubblockと確認する。この参照フレームインデックス値RefColSubblockは、この関連参照ブロックにおける位置が関連するサブ画像ブロックの参照フレームとこの関連参照ブロックがある画像との間の距離を指示するためのものである。
【0202】
現在の画像ブロックの参照フレームインデックス値をRefCurrSubblockと確認する。この参照フレームインデックス値RefCurrSubblockは、現在の参照ブロックの参照フレームとこの現在の参照ブロックがある画像との間の距離を指示するためのものである。
【0203】
物体の動きモードに基づいて、RefColSubblockとRefCurrSubblockとの値が等しくない場合、MVColSubblockをスケーリングして物体の動きモードの仮定に適合させる必要がある。動きベクトルをスケーリングして現在の画像ブロックのサブ画像ブロックの動きベクトルMVCurrSubblockを取得する方法は、以下のとおりである。
MVCurrSubblock=(RefCurrSubblock/RefColSubblock)×MVColSubblock
【0204】
具体的に、動画符号化復号化システムにおいて通常、浮動小数点数、及び小数を使用しないことを考慮し、上述の動きベクトルのスケーリング公式は、動きベクトルスケーリングの基本原理を反映したにすぎず、具体的に実現する際は、整数に変換して演算する必要がある。
【0205】
参照フレームインデックス値RefColSubblockが特定参照画像を指向する場合、動きベクトルMVColSubblockにスケーリング操作をせず、現在の画像ブロックの参照フレームインデックスが特定参照画像を指向する場合、動きベクトルMVColSubblockにスケーリング操作をしない。
【0206】
例示において、動画処理装置は、
コンピュータで実行可能なコマンドを記憶するための少なくとも一つのメモリと、
前記少なくとも一つのメモリにアクセスし、かつ前記コンピュータで実行可能なコマンドを実行することで、以下の操作を実施することに単独、又は共同で用いられる少なくとも一つのプロセッサと、を含み、操作は、
第1画像ブロックの時間領域参照ブロックの動きベクトルを確定し、ここで、前記時間領域参照ブロック、及び前記第1画像ブロックは、異なる画像に位置することと、
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、処理後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定し、前記処理後の前記時間領域参照ブロックの動きベクトル、及び処理前の時間領域参照ブロックの動きベクトルは、同じであることと、又は
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを参照することを放棄することで前記第1画像ブロックの動きベクトルを取得することと、又は
前記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は前記第1画像ブロックの参照画像が特定参照画像である場合、前記時間領域参照ブロックの動きベクトルを前記第1画像ブロックの動きベクトルとすることと、である。
【0207】
選択可能には、前記処理後の前記時間領域参照ブロックの動きベクトルは、
数値を1とするスケーリング比率に基づいて、前記時間領域参照ブロックの動きベクトルをスケーリング後に得られた動きベクトル、又は
スケーリングステップをスキップした前記時間領域参照ブロックの動きベクトルを含む。
【0208】
選択可能には、前記プロセッサは、さらに、
前記時間領域参照ブロックの動きベクトルが非特定参照画像を指向し、かつ前記第1画像ブロックの参照画像が非特定参照画像である場合、前記時間領域参照ブロックの動きベクトルが指向する参照画像と前記時間領域参照ブロックがある画像との間の時間距離、及び前記第1画像ブロックの参照画像と前記第1画像ブロックがある画像との間の時間距離に基づいて、前記第1画像ブロックの動きベクトルを確定するためのものである。
【0209】
選択可能には、前記プロセッサは、
前記時間領域参照ブロックの動きベクトルが指向する参照画像と前記時間領域参照ブロックがある画像との間の時間距離、及び前記第1画像ブロックの参照画像と前記第1画像ブロックがある画像との間の時間距離に基づいて、前記時間領域参照ブロックの動きベクトルのスケーリング比率を確定することと、
前記スケーリング比率でスケーリング後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定することと、に用いられなければならない。
【0210】
選択可能には、前記プロセッサは、さらに、
前記第1画像ブロックの動き情報候補リストを構築し、前記動き情報候補リストは、前記第1画像ブロックの空間領域参照ブロックの動きベクトルと前記第1画像ブロックの参照フレームインデックス値とのうちの少なくとも一つを含み、ここで、前記空間領域参照ブロック、及び前記第1画像ブロックは、同じ画像に位置し、
前記第1画像ブロックの動き情報候補リストに基づいて、前記第1画像ブロックの動きベクトルを確定するためのものである。
【0211】
選択可能には、前記処理後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定することは、
前記処理後の前記時間領域参照ブロックの動きベクトルを前記動きベクトル候補リストに加えることを含み、
又は、前記時間領域参照ブロックの動きベクトルを参照することを放棄することで前記第1画像ブロックの動きベクトルを取得することは、
前記時間領域参照ブロックの動きベクトルを前記動きベクトル候補リストに加えることを放棄することを含む。
【0212】
選択可能には、前記第1画像ブロックは、符号化ユニットCUである。
【0213】
選択可能には、前記第1画像ブロックは、第2画像ブロックの一部であり、前記プロセッサは、さらに、
前記第1画像ブロックの動き情報候補リストを構築し、前記動き情報候補リストは、前記第2画像ブロックの空間領域参照ブロックの動きベクトルと前記第1画像ブロックの参照フレームインデックス値とのうちの少なくとも一つを含み、ここで、前記空間領域参照ブロック、及び前記第2画像ブロックは、同じ画像に位置し、
前記第1画像ブロックの動き情報候補リストに基づいて、前記第2画像ブロックの動きベクトルを確定するためのものである。
【0214】
選択可能には、前記第1画像ブロックの参照フレームインデックス値と前記第2画像ブロックの参照フレームインデックス値とは同じであり、又は、
前記第1画像ブロックの参照フレームインデックス値は、前記第2画像ブロックの参照フレームインデックス値に基づいて確定される。
【0215】
選択可能には、前記処理後の前記時間領域参照ブロックの動きベクトルに基づいて、前記第1画像ブロックの動きベクトルを確定することは、
前記処理後の前記時間領域参照ブロックの動きベクトルを前記第2画像ブロックの動き情報候補リストに加えることを含み、
又は、前記時間領域参照ブロックの動きベクトルを参照することを放棄することで前記第1画像ブロックの動きベクトルを取得することは、
前記時間領域参照ブロックの動きベクトルを前記第2画像ブロックの動き情報候補リストに加えることを放棄することを含む。
【0216】
選択可能には、前記第2画像ブロックは、符号化ユニットCUであり、前記第1画像ブロックは、前記符号化ユニットにおけるサブ画像ブロックであり、前記サブ画像ブロックは、前記符号化ユニットから分割されて得られる。
【0217】
選択可能には、前記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定することは、
前記第1画像ブロックの参照画像セットにおいて、前記第1画像ブロックがある画像と距離が最も近い画像を確定することと、
確定された前記画像に基づいて、前記第1画像ブロックの時間領域参照ブロック、及び前記時間領域参照ブロックの動きベクトルを確定することと、を含む。
【0218】
選択可能には、前記時間領域参照ブロックは、前記確定された画像において、前記第1画像ブロックの位置と同じ画像ブロックであり、又は、
前記時間領域参照ブロックは、前記第1画像ブロックに隣接する画像ブロックの動きベクトルが前記確定された画像で指向する画像ブロックであり、又は、
前記時間領域参照ブロックは、前記第1画像ブロックに隣接する画像ブロックの動きベクトルが前記確定された画像で指向する位置の数値カットオフされた位置に対応する画像ブロックであり、又は、
前記時間領域参照ブロックは、前記確定された画像において、前記第1画像ブロックの位置と同じ画像ブロックの動きベクトルが指向する画像ブロックであり、又は、
前記時間領域参照ブロックは、前記確定された画像において、前記第1画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックであり、又は、
前記時間領域参照ブロックは、前記確定された画像において、前記第1画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックの動きベクトルが指向する画像ブロックである。
【0219】
選択可能には、前記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定することは、
前記第1画像ブロックがある画像において、前記第1画像ブロックの特定隣接画像ブロックを確定することと、
前記特定隣接画像ブロックの参照画像に基づいて、前記第1画像ブロックの時間領域参照ブロック、及び前記時間領域参照ブロックの動きベクトルを確定することと、を含む。
【0220】
選択可能には、前記時間領域参照ブロックは、前記特定隣接画像ブロックの参照画像において、前記第1画像ブロックの位置と同じ画像ブロックであり、又は、
前記時間領域参照ブロックは、前記特定隣接画像ブロックの参照画像において、前記特定隣接画像ブロックの位置と同じ画像ブロックであり、又は、
前記時間領域参照ブロックは、前記特定隣接画像ブロックの動きベクトルが指向する画像ブロックである。
【0221】
選択可能には、前記第1画像ブロックの特定隣接画像ブロックを確定することは、
前記第1画像ブロックがある画像において、特定走査順序により第1の隣接画像ブロックを取得することと、又は、
前記第1画像ブロックがある画像において、特定走査順序により前記第1画像ブロックと同じ参照フレームインデックス値を有する第1の隣接画像ブロックを得ることと、又は、
特定走査順序により動き情報を有する第1の画像ブロックを得ることと、又は、
特定走査順序により前記第1画像のデフォルトされた参照画像と同じ第1の隣接画像ブロックを得ることと、を含む。
【0222】
選択可能には、前記特定走査順序は、前記第1ブロックを検索起点とし、以下のうちの一つの方向に沿って走査順序とし、
下から上へ、左から右へ、右から左へ、上から下である。
【0223】
選択可能には、前記特定参照画像は、長期参照画像、合成フレーム、出力されないフレームのうちの少なくとも一つを含む。
【0224】
選択可能には、前記プロセッサは、さらに、
前記参照画像が出力されないフレームであると確定し、及び前記参照画像が合成フレームであると確定する場合、前記参照画像を前記特定参照画像であると確定するためのものである。
【0225】
選択可能には、前記非特定参照画像は、短期参照画像を含む。
【0226】
図7は、本出願の一つの実施例の画像動き補償のための装置70の概略的フレーム図である。
図7に示すように、画像動き補償のための装置70は、
コンピュータで実行可能なコマンドを記憶するための少なくとも一つのメモリ701と、
前記少なくとも一つのメモリにアクセスし、かつ前記コンピュータで実行可能なコマンドを実行することで、以下の操作を実施することに単独、又は共同で用いられる少なくとも一つのプロセッサ702と、を含み、操作は、
現在の画像ブロックの初期動きベクトルMVを取得することと、
前記初期MVが指向する参照画像が特定参照画像である場合、前記初期MVに基づいて前記現在の画像ブロックに動き補償を行うことと、
前記初期MVが指向する参照画像が非特定参照画像である場合、前記初期MVを修正し、修正後のMVを得て、前記修正後のMVに基づいて前記現在の画像ブロックに動き補償を行うことと、である。
【0227】
いくつかの実施例において、前記プロセッサ702は、具体的に、
前記現在の画像ブロックのMV候補リストを取得し、前記MV候補リストにおけるいずれかの候補MVが指向する参照画像が非特定参照画像であり、
前記MV候補リストに基づいて、前記初期MVを確定し、
前記初期MVを修正し、修正後のMVを得て、
前記修正後のMVに基づいて、前記現在の画像ブロックに動き補償を行うためのものである。
【0228】
いくつかの実施例において、前記プロセッサ702は、さらに、
前記MV候補リストに加えるための候補MVを確定し、前記候補MVが指向する参照画像が非特定参照画像である場合、前記候補MVを前記MV候補リストに加えるためのものである。
【0229】
いくつかの実施例において、前記プロセッサ702は、さらに、
前記候補MVが指向する参照画像のフレームマークに基づいて、前記候補MVが指向する参照画像が非特定参照画像であると確定するためのものである。
【0230】
いくつかの実施例において、前記MV候補リストは、以下のうちの少なくとも一つの候補MVを含み、
前記現在の画像ブロックが高度動きベクトル予測AMVPモードにある場合、非特定参照画像に対して得られたオリジナルAMVP候補MV、
非特定参照画像に対して得られたマージ候補MV、
非特定参照画像から補間により得られたMV、及び
前記現在のブロックの非特定参照画像に対する上方隣接MVと左側隣接MVである。
【0231】
いくつかの実施例において、前記プロセッサ702は、具体的に、
双方向マッチング法とテンプレートマッチング法とのうちの少なくとも一つに基づいて、前記MV候補リストにおける候補MVに対応する歪みコストを確定し、
前記MV候補リストにおける歪みコストが最も小さいMVを前記初期MVとするためのものである。
【0232】
いくつかの実施例において、前記プロセッサ702は、具体的に、
前記現在の画像ブロックにサブMV候補リストを生成し、前記サブMV候補リストには前記初期MVを含み、
前記サブMV候補リストから歪みコストが最も小さいMVを前記修正後のMVとして確定するためのものである。
【0233】
いくつかの実施例において、前記初期MVは、第1初期MV、及び第2初期MVを含み、
前記プロセッサ702は、具体的に、
前記第1初期MV、及び前記第2初期MVのうちの少なくとも一つの初期MVが指向する参照画像が特定参照画像である場合、前記第1初期MV、及び前記第2初期MVに基づいて前記現在の画像ブロックに動き補償を行い、
前記第1初期MV、及び前記第2初期MVが指向する参照画像が非特定参照画像である場合、前記第1初期MV、及び前記第2初期MVを修正し、修正後の第1MV、及び修正後の第2MVを得て、前記修正後の第1MV、及び前記修正後の第2MVに基づいて前記現在の画像ブロックに動き補償を行うためのものである。
【0234】
いくつかの実施例において、前記プロセッサ702は、具体的に、
第1参照画像ブロック、及び第2参照画像ブロックに基づいて、テンプレートを生成し、ここで、前記第1参照画像ブロックは、前記第1初期MVに対応し、かつ第1参照画像に属し、前記第2参照画像ブロックは、前記第2初期MVに対応し、かつ第2参照画像に属し、
前記テンプレートに基づいて、前記第1初期MV、及び前記第2初期MVを修正し、修正後の第1MV、及び前記修正後の第2MVを得るためのものである。
【0235】
いくつかの実施例において、前記プロセッサ702は、具体的に、
N個の第3参照画像ブロックを利用して、それぞれ前記テンプレートとマッチングし、ここで、前記N個の第3参照画像ブロックは、N個の第3初期MVに対応し、かつ前記第1参照画像に属し、
M個の第4参照画像ブロックを利用して、それぞれ前記テンプレートとマッチングし、ここで、前記M個の第4参照画像ブロックは、M個の第4初期MVに対応し、かつ前記第2参照画像に属し、
前記マッチング結果に基づいて、前記N個の第3初期MVから一つの第3初期MVを選択し、及び前記M個の第4初期MVから一つの第4初期MVを選択し、前記一つの第3初期MV、及び前記一つの第4初期MVを前記現在の画像ブロックのMVとし、又は前記現在の画像ブロックのMVを確定することに用いるためのものである。
【0236】
いくつかの実施例において、前記第3初期MVは、前記第1初期MVを含み、前記第4初期MVは、前記第2初期MVを含む。
【0237】
いくつかの実施例において、前記N個の第3初期MVにおける少なくとも一部の初期MVは、前記第1初期MVに基づいて偏移して得られ、前記M個の第4初期MVにおける少なくとも一部の初期MVは、前記第2初期MVに基づいて偏移して得られたものである。
【0238】
いくつかの実施例において、前記Nは、前記Mに等しい。
【0239】
いくつかの実施例において、前記第1参照画像は、前記現在の画像ブロックの前方向フレームであり、前記第2参照画像は、前記現在の画像ブロックの後方向フレームであり、又は、
前記第1参照画像は、前記現在の画像ブロックの前方向フレームであり、前記第2参照画像は、前記現在の画像ブロックの前方向フレームである。
【0240】
画像動き補償のための装置70は、さらに、対応するソフトウェアモジュールにより実現できることを理解するものとし、ここではこれ以上説明しない。
【0241】
図8は、本出願の他の一つの実施例の画像処理のための装置80の概略的フレーム図である。
図8に示すように、画像処理のための装置80は、
コンピュータで実行可能なコマンドを記憶するための少なくとも一つのメモリ801と、
前記少なくとも一つのメモリにアクセスし、かつ前記コンピュータで実行可能なコマンドを実行することで、以下の操作を実施することに単独、又は共同で用いられる少なくとも一つのプロセッサ802と、を含み、操作は、
第1初期動きベクトルMV、及び第2初期MVを取得し、前記第1初期MVは、第1参照画像を指向し、前記第2初期MVは、第2参照画像を指向することと、
前記第1参照画像、及び前記第2参照画像のうちの少なくとも一つが特定参照画像である場合、前記第1初期MV、及び前記第2初期MVに基づいて、現在の画像ブロックの予測画像ブロックを計算して得ることと、
前記第1参照画像、及び前記第2参照画像がいずれも非特定参照画像である場合、前記第1初期MV、及び前記第2初期MVが指向する画素点の勾配値に基づいて、現在の画像ブロックのMVを計算して得て、前記現在の画像ブロックのMVに基づいて、現在の画像ブロックの予測画像ブロックを計算して得ることと、である。
【0242】
いくつかの実施例において、前記プロセッサ802は、具体的に、
前記第1初期MV、及び前記第2初期MVが指向する画素点の勾配値、及び最適化原理に基づいて、前記現在の画像ブロックのMVを計算して得るためのものである。
【0243】
いくつかの実施例において、前記プロセッサ802は、具体的に、
前記第1初期MVが指向する第1参照画像ブロック、及び前記第2初期MVが指向する第2参照画像ブロックを加重合計し、前記現在の画像ブロックの予測画像ブロックを得るためのものである。
【0244】
いくつかの実施例において、前記第1初期MV、及び前記第2初期MVの予測方向は異なる。
【0245】
いくつかの実施例において、前記第1初期MV、及び前記第2初期MVの予測方向は同じであり、前記第1初期MV、及び前記第2初期MVはいずれも0ではなく、前記第1参照画像、及び前記第2参照画像は異なる。
【0246】
いくつかの実施例において、前記プロセッサ802は、具体的に、
前記現在の画像ブロックのMV、前記第1初期MVが指向する第1参照画像ブロック、及び前記第2初期MVが指向する第2参照画像ブロックに基づいて、前記現在の画像ブロックの予測画像ブロックを計算して得るためのものである。
【0247】
画像処理のための装置80は、さらに、対応するソフトウェアモジュールにより実現できることを理解するものとし、ここではこれ以上説明しない。
【0248】
動きベクトルの導出を使用するいくつかの技術においては、動きベクトルが特定参照画像を指向する場合、この動きベクトルに対するスケーリングは意義がなく、検索効率、及び符号化/復号化効率を低下させてしまう。これは、動きベクトルをスケーリングする場合には画像の間の距離に基づいて、動きベクトルをスケーリングし、一方、特定参照画像は人工的に構築される可能性があり、その他の参照画像と距離があるわけではないという考えによるからであり、このような特定参照画像に基づいて動きベクトルをスケーリングする意義は大きくない。
【0249】
本出願は、さらに画像動き補償のための方法を提供する。
図9は、本出願の別の一つの実施例の画像動き補償のための方法900の概略的フローチャートである。
図9に示すように、この方法900は、
S910、現在の画像ブロックの初期動きベクトルMVを取得することと、
S920、この初期MVのスケーリング比率を確定し、ここで、この初期MVが特定参照画像を指向する場合、この初期MVのスケーリング比率は、1であることと、
S930、この初期MVのスケーリング比率に基づいて、この初期MVをスケーリングすることと、
S940、このスケーリング後のMVに基づいて前記現在の画像ブロックに動き補償を行うことと、を含む。
【0250】
ここで、初期MVを取得する方法は、上述に説明された初期MVを取得する方法と同じでもよく、ここではこれ以上説明しない。
【0251】
本出願の実施例の画像動き補償のための方法は、初期MVが特定参照画像を指向する場合、そのスケーリング比率は、1である。初期MVが非特定参照画像を指向する場合、そのスケーリング比率を限定せず、この現在の画像と非特定参照画像との間の距離、及びスケーリングポリシーに基づいて、動きベクトルをスケーリングし、ひいては動き補償を行い、符号化復号化効率を高めることができる。
【0252】
いくつかの実施例において、スケーリング後のMVに基づいて、直接、前記現在の画像ブロックに動き補償を行う。
【0253】
いくつかの実施例において、スケーリング後のMVについて、前記スケーリング後のMVをさらに修正でき、修正後のMVを得て、前記修正後のMVに基づいて前記現在の画像ブロックに動き補償を行う。ここで、スケーリング後のMVを修正する方法は、上述に説明された初期MVを修正する方法と同じでもよく、ここではこれ以上説明しない。
【0254】
例えば、
図5に示すように、前記第1初期MVは、第1参照画像を指向し、前記第2初期MVは、第2参照画像を指向する。第1参照画像、及び第2参照画像がいずれも非特定参照画像を指向する場合、第1参照画像と第2参照画像との間の距離に基づいて、第1初期MV、及び第2初期MVをスケーリングする。その後、スケーリング後の第1初期MV、及びスケーリング後の第2初期MVに基づいて前記現在の画像ブロックに動き補償を行う。一実施形態において、第1参照画像ブロックを確定し、前記第1参照画像ブロックは、このスケーリング後の第1初期MVに対応し、かつ第2参照画像に属し、第2参照画像ブロックを確定し、この第2参照画像ブロックは、このスケーリング後の第2初期MVに対応し、かつ第1参照画像に属する。前記第1参照画像ブロック、及び第2参照画像ブロックに基づいてテンプレートを生成し、及びこのテンプレートに基づいて、第1初期MV、及び第2初期MVを修正し、前記修正後の第1MV、及び前記修正後の第2MVを得る。修正後の第1MV、及び第2MVを利用して、現在の画像ブロックの動きベクトルを計算する。
【0255】
ここで、このテンプレートに基づいて、第1初期MV、及び第2初期MVを修正する方法は、上述に説明されたテンプレートに基づいて、第1初期MV、及び第2初期MVを修正する方法と同じでもよく、ここではこれ以上説明しない。
【0256】
本出願は、さらに別の画像動き補償のための方法を提供する。この画像動き補償のための方法において、現在の画像ブロックの初期動きベクトルMVを取得し、前記初期MVが特定参照画像を指向する場合、及びこの初期MVが非特定参照画像を指向する場合、それぞれ異なる操作を採用して前記初期MVに基づいて、前記現在の画像ブロックに動き補償を行う。
【0257】
ここで、初期MVを取得する方法は、上述に説明された初期MVを取得する方法と同じでもよく、ここではこれ以上説明しない。
【0258】
一つの実施例において、初期MVが特定参照画像を指向する場合、この初期MVを使用して現在の画像ブロックに動き補償を行う。初期MVが非特定参照画像を指向する場合、4つの実施形態があり、1、初期MVをスケーリングし、スケーリング後の初期MVに基づいて、現在の画像ブロックに動き補償を行う、2、初期MVを修正し、修正後の初期MVに基づいて、現在の画像ブロックに動き補償を行う、3、初期MVをスケーリングし、スケーリング後のMVを修正し、修正後のMVを得て、修正後のMVに基づいて、現在の画像ブロックに動き補償を行う、4、初期MVを修正し、修正後のMVをスケーリングし、スケーリング後のMVを得て、スケーリング後のMVに基づいて、現在の画像ブロックに動き補償を行う。
【0259】
ここで、スケーリング後のMVを修正する方法、又は初期MVを修正する方法は、上述に説明された初期MVを修正する方法と同じでもよく、ここではこれ以上説明しない。
【0260】
一つの実施例において、初期MVが特定参照画像を指向する場合、初期MVを修正し、修正後のMVに基づいて動き補償を行うことができる。初期MVが非特定参照画像を指向する場合、初期MVをスケーリング後に、又は初期MVをスケーリングし、及び修正後に、現在の画像ブロックに動き補償を行うことができる。すなわち、初期MVが特定参照画像を指向する状況では、スケーリングのステップをスキップして初期MVを直接、修正し、又は直接、初期MVのスケーリング比率を1にセットしてスケーリングした後に修正する。初期MVが非特定参照画像を指向する状況では、初期MVをスケーリングし、又は初期MVをスケーリングし、及び修正し、符号化復号化効率を高めることができる。
【0261】
本出願のその他の実施例において、初期MVが特定参照画像を指向する場合、初期MVを直接使用して動き補償を行い、又は初期MVを修正し、修正後のMVに基づいて、動き補償を行う。及び初期MVが非特定参照画像を指向する場合、初期MVにスケーリングと修正とのうちの少なくとも一つを行い、動き補償を行い、各種の実施形態は任意に組み合わせてもよく、本出願の実施例はこれを限定しない。
【0262】
いくつかの実施例において、前記現在の画像ブロックの初期動きベクトルMVを取得することは、前記現在の画像ブロックのMV候補リストを取得することと、前記MV候補リストに基づいて、前記初期MVを確定することと、を含む。すなわち、初期MVをスケーリングした(スケーリング比率が1のスケーリングを含む)後に、初期MVが非特定参照画像を指向するMVを選択して修正し、初期MVがいずれのタイプの参照画像を指向するかに関わらず、いずれも修正してもよい。
【0263】
選択可能には、前記MV候補リストにおけるいずれかの候補MVが指向する参照画像は、非特定参照画像である。
【0264】
選択可能には、前記現在の画像ブロックのMV候補リストを取得することは、前記MV候補リストに加えるための候補MVを確定し、前記候補MVが指向する参照画像が非特定参照画像である場合、前記候補MVを前記MV候補リストに加えることを含むことができる。
【0265】
選択可能には、前記方法は、前記候補MVが指向する参照画像のフレームマークに基づいて、前記候補MVが指向する参照画像が非特定参照画像であると確定することをさらに含むことができる。
【0266】
選択可能には、前記MV候補リストは、以下のうちの少なくとも一つの候補MVを含むことができ、前記現在の画像ブロックが高度動きベクトル予測AMVPモードにある場合、非特定参照画像に対して得られたオリジナルAMVP候補MV、非特定参照画像に対して得られたマージ候補MV、非特定参照画像から補間により得られたMV、及び前記現在のブロックの非特定参照画像に対する上方隣接MVと左側隣接MVである。
【0267】
選択可能には、前記MV候補リストに基づいて、前記初期MVを確定することは、双方向マッチング法とテンプレートマッチング法とのうちの少なくともの一つに基づいて、前記MV候補リストにおける候補MVに対応する歪みコストを確定することと、前記MV候補リストにおける歪みコストが最も小さいMVを前記初期MVとすることと、を含むことができる。
【0268】
選択可能には、前記スケーリング後のMVを修正し、修正後のMVを得ることは、前記現在の画像ブロックにサブMV候補リストを生成し、前記サブMV候補リストには前記スケーリング後のMVを含み、前記サブMV候補リストから歪みコストが最も小さいMVを前記修正後のMVとして確定することを含むことができる。
【0269】
選択可能には、前記初期MVは、第1初期MV、及び第2初期MVを含み、前記方法は、前記第1初期MV、及び前記第2初期MVのうちの少なくとも一つの初期MVが指向する参照画像が特定参照画像である場合、前記第1初期MV、及び前記第2初期MVのスケーリング比率をいずれも1にセットし、前記第1初期MV、及び前記第2初期MVに基づいて、前記現在の画像ブロックに動き補償を行うことと、前記第1初期MV、及び前記第2初期MVが指向する参照画像がいずれも非特定参照画像である場合、前記第1初期MVのスケーリング比率、及び前記第2初期MVのスケーリング比率を確定し、前記第1初期MVのスケーリング比率に基づいて、前記第1初期MVをスケーリングし、前記第2初期MVのスケーリング比率に基づいて、前記第2初期MVをスケーリングし、前記スケーリング後の第1初期MV、及び前記スケーリング後の第2初期MVに基づいて、前記現在の画像ブロックに動き補償を行うこととのうちの少なくとも一つを含む。
【0270】
選択可能には、前記スケーリング後の第1初期MV、及び前記スケーリング後の第2初期MVに基づいて、前記現在の画像ブロックに動き補償を行うことは、第1参照画像ブロック、及び第2参照画像ブロックに基づいて、テンプレートを生成し、ここで、前記第1参照画像ブロックは前記スケーリング後の第1初期MVに対応し、かつ第2参照画像に属し、前記第2参照画像ブロックは前記スケーリング後の第2初期MVに対応し、かつ第1参照画像に属し、前記第1参照画像は、前記第1初期MVが指向する参照画像であり、前記第2参照画像は、前記第2初期MVが指向する参照画像であることと、前記テンプレートに基づいて、前記第1初期MV、及び前記第2初期MVを修正し、前記修正後の第1MV、及び前記修正後の第2MVを得ることと、を含む。
【0271】
選択可能には、前記テンプレートに基づいて、前記第1初期MV、及び前記第2初期MVを修正し、前記修正後の第1MV、前記修正後の第2MVを得ることは、N個の第3参照画像ブロックを利用して、それぞれ前記テンプレートとマッチングし、ここで、前記N個の第3参照画像ブロックは、N個の第3初期MVに対応し、かつ前記第1参照画像に属することと、M個の第4参照画像ブロックを利用して、それぞれ前記テンプレートとマッチングし、ここで、前記M個の第4参照画像ブロックは、M個の第4初期MVに対応し、かつ前記第2参照画像に属することと、前記マッチング結果に基づいて、前記N個の第3初期MVから一つの第3初期MVを選択し、及び前記M個の第4初期MVから一つの第4初期MVを選択し、前記一つの第3初期MV、及び前記一つの第4初期MVを前記現在の画像ブロックのMVとし、又は前記現在の画像ブロックのMVを確定することに用いることと、を含む。
【0272】
選択可能には、前記第3初期MVは、前記第1初期MVを含むことができ、前記第4初期MVは、前記第2初期MVを含むことができる。
【0273】
選択可能には、前記N個の第3初期MVにおける少なくとも一部の初期MVは、前記第1初期MVに基づいて偏移して得られ、前記M個の第4初期MVにおける少なくとも一部の初期MVは、前記第2初期MVに基づいて偏移して得られたものであってもよい。
【0274】
選択可能には、前記Nは、前記Mに等しくてよい。
【0275】
選択可能には、前記第1参照画像は、前記現在の画像ブロックの前方向フレームであり、前記第2参照画像は、前記現在の画像ブロックの後方向フレームであり、又は、前記第1参照画像は、前記現在の画像ブロックの前方向フレームであり、前記第2参照画像は、前記現在の画像ブロックの前方向フレームである。
【0276】
上述の選択可能な実施形態は、方法100の詳細に類似して実現できることを理解するものとし、ここではこれ以上説明しない。
【0277】
図10は、本出願の一つの実施例の画像動き補償のための装置1000の概略的フレーム図である。
図10に示すように、画像動き補償のための装置1000は、
コンピュータで実行可能なコマンドを記憶するための少なくとも一つのメモリ1001と、
前記少なくとも一つのメモリにアクセスし、かつ前記コンピュータで実行可能なコマンドを実行することで、以下の操作を実施することに単独、又は共同で用いられる少なくとも一つのプロセッサ1002と、を含み、操作は、
現在の画像ブロックの初期動きベクトルMVを取得することと、
前記初期MVのスケーリング比率を確定し、ここで、前記初期MVが特定参照画像を指向する場合、前記初期MVのスケーリング1比率は、1であることと、
前記初期MVのスケーリング比率に基づいて、前記初期MVをスケーリングすることと、
前記スケーリング後のMVに基づいて、前記現在の画像ブロックに動き補償を行うことと、である。
【0278】
いくつかの実施例において、前記プロセッサ1002が前記スケーリング後のMVに基づいて、前記現在の画像ブロックに動き補償を行うことは、
前記スケーリング後のMVを修正し、修正後のMVを得ることと、
前記修正後のMVに基づいて、前記現在の画像ブロックに動き補償を行うことと、を含む。
【0279】
いくつかの実施例において、前記プロセッサ1002が前記現在の画像ブロックの初期動きベクトルMVを取得することは、
前記現在の画像ブロックのMV候補リストを取得することと、
前記MV候補リストに基づいて、前記初期MVを確定することと、を含む。
【0280】
いくつかの実施例において、前記MV候補リストにおけるいずれかの候補MVが指向する参照画像は、非特定参照画像である。
【0281】
いくつかの実施例において、前記プロセッサ1002が前記現在の画像ブロックのMV候補リストを取得することは、
前記MV候補リストに加えるための候補MVを確定し、前記候補MVが指向する参照画像が非特定参照画像である場合、前記候補MVを前記MV候補リストに加えることを含む。
【0282】
いくつかの実施例において、前記プロセッサ1002は、さらに、
前記候補MVが指向する参照画像のフレームマークに基づいて、前記候補MVが指向する参照画像が非特定参照画像であると確定するためのものである。
【0283】
いくつかの実施例において、前記MV候補リストは、以下のうちの少なくとも一つの候補MVを含み、
前記現在の画像ブロックが高度動きベクトル予測AMVPモードにある場合、非特定参照画像に対して得られたオリジナルAMVP候補MV、
非特定参照画像に対して得られたマージ候補MV、
非特定参照画像から補間により得られたMV、及び
前記現在のブロックの非特定参照画像に対する上方隣接MVと左側隣接MVである。
【0284】
いくつかの実施例において、前記プロセッサ1002が前記MV候補リストに基づいて、前記初期MVを確定することは、
双方向マッチング法とテンプレートマッチング法とのうちの少なくとも一つに基づいて、前記MV候補リストにおける候補MVに対応する歪みコストを確定することと、
前記MV候補リストにおける歪みコストが最も小さいMVを前記初期MVとすることと、を含む。
【0285】
いくつかの実施例において、前記プロセッサ1002が前記スケーリング後のMVを修正し、修正後のMVを得ることは、
前記現在の画像ブロックにサブMV候補リストを生成し、前記サブMV候補リストには前記スケーリング後のMVを含むことと、
前記サブMV候補リストから歪みコストが最も小さいMVを前記修正後のMVとして確定することと、を含む。
【0286】
いくつかの実施例において、前記初期MVは、第1初期MV、及び第2初期MVを含み、前記プロセッサ1002は、具体的に、
前記第1初期MV、及び前記第2初期MVのうちの少なくとも一つの初期MVが指向する参照画像が特定参照画像である場合、前記第1初期MV、及び前記第2初期MVのスケーリング比率をいずれも1にセットし、前記第1初期MV、及び前記第2初期MVに基づいて前記現在の画像ブロックに動き補償を行うことと、
前記第1初期MV、及び前記第2初期MVが指向する参照画像がいずれも非特定参照画像である場合、前記第1初期MVのスケーリング比率、及び前記第2初期MVのスケーリング比率を確定し、前記第1初期MVのスケーリング比率に基づいて、前記第1初期MVをスケーリングし、前記第2初期MVのスケーリング比率に基づいて、前記第2初期MVをスケーリングし、前記スケーリング後の第1初期MV、及び前記スケーリング後の第2初期MVに基づいて、前記現在の画像ブロックに動き補償を行うこととのうちの少なくとも一つのためのものである。
【0287】
いくつかの実施例において、前記プロセッサ1002が前記スケーリング後の第1初期MV、及び前記スケーリング後の第2初期MVに基づいて、前記現在の画像ブロックに動き補償を行うことは、
第1参照画像ブロック、及び第2参照画像ブロックに基づいて、テンプレートを生成し、ここで、前記第1参照画像ブロックは前記スケーリング後の第1初期MVに対応し、かつ第2参照画像に属し、前記第2参照画像ブロックは前記スケーリング後の第2初期MVに対応し、かつ第1参照画像に属し、前記第1参照画像は、前記第1初期MVが指向する参照画像であり、前記第2参照画像は、前記第2初期MVが指向する参照画像であることと、
前記テンプレートに基づいて、前記第1初期MV、及び前記第2初期MVを修正し、前記修正後の第1MV、及び前記修正後の第2MVを得ることと、を含む。
【0288】
いくつかの実施例において、前記プロセッサ1002が前記テンプレートに基づいて、前記第1初期MV、及び前記第2初期MVを修正し、前記修正後の第1MV、及び前記修正後の第2MVを得ることは、
N個の第3参照画像ブロックを利用して、それぞれ前記テンプレートとマッチングし、ここで、前記N個の第3参照画像ブロックは、N個の第3初期MVに対応し、かつ前記第1参照画像に属することと、
M個の第4参照画像ブロックを利用して、それぞれ前記テンプレートとマッチングし、ここで、前記M個の第4参照画像ブロックは、M個の第4初期MVに対応し、かつ前記第2参照画像に属することと、
前記マッチング結果に基づいて、前記N個の第3初期MVから一つの第3初期MVを選択し、及び前記M個の第4初期MVから一つの第4初期MVを選択し、前記一つの第3初期MV、及び前記一つの第4初期MVを前記現在の画像ブロックのMVとし、又は前記現在の画像ブロックのMVを確定することに用いることと、を含む。
【0289】
いくつかの実施例において、前記第3初期MVは、前記第1初期MVを含み、前記第4初期MVは、前記第2初期MVを含む。
【0290】
いくつかの実施例において、前記N個の第3初期MVにおける少なくとも一部の初期MVは、前記第1初期MVに基づいて偏移して得られ、前記M個の第4初期MVにおける少なくとも一部の初期MVは、前記第2初期MVに基づいて偏移して得られたものである。
【0291】
いくつかの実施例において、前記Nは、前記Mに等しい。
【0292】
いくつかの実施例において、前記第1参照画像は、前記現在の画像ブロックの前方向フレームであり、前記第2参照画像は、前記現在の画像ブロックの後方向フレームであり、又は、
前記第1参照画像は、前記現在の画像ブロックの前方向フレームであり、前記第2参照画像は、前記現在の画像ブロックの前方向フレームである。
【0293】
いくつかの実施例において、前記特定参照画像は、長期参照画像、合成フレーム、出力されないフレームのうちの少なくとも一つを含む。
【0294】
いくつかの実施例において、前記プロセッサ1002は、さらに、
前記参照画像が出力されないフレームであると確定し、かつ前記参照画像が合成フレームであるとさらに確定する場合、前記参照画像を前記特定参照画像であると確定するためのものである。
【0295】
いくつかの実施例において、前記非特定参照画像は、短期参照画像を含む。
【0296】
画像動き補償のための装置1000は、さらに、対応するソフトウェアモジュールにより実現できることを理解するものとし、ここではこれ以上説明しない。
【0297】
本出願の各実施例の装置は、メモリ、及びプロセッサにより実現でき、各メモリは、本出願の実施例の方法を実行するためのコマンドを記憶するためのものであり、プロセッサは、上述コマンドを実行し、装置が本出願の各実施例の方法を実行するようにすることを理解するものとする。
【0298】
本出願の実施例において言及するプロセッサは、CPU(Central Processing Unit、CPU)であってよく、その他の汎用プロセッサ、デジタルシグナルプロセッサ(Digital Signal Processor、DSP)、特定用途向け集積回路(Application Specific Integrated Circuit、ASIC)、既成のフィールドプログラマブルゲートアレイ(Field Programmable Gate Array、FPGA)、又はその他のプログラマブルロジックデバイス、ディスクリートゲート、又はトランジスタ論理デバイス、ディスクリートハードウェアコンポーネントなどであってよいことを理解するものとする。汎用プロセッサは、マイクロプロセッサであってよく、又はこのプロセッサは、いずれかの通常のプロセッサなどであってよい。
【0299】
本出願の実施例で言及するメモリは、揮発性メモリ、若しくは不揮発性メモリであってよく、又は揮発性及び不揮発性メモリの両者を含むことができることをさらに理解するものとする。ここで、不揮発性メモリは、リードオンリメモリ(Read-Only Memory、ROM)、プログラマブルリードオンリメモリ(Programmable ROM、PROM)、消去可能プログラマブルリードオンリメモリ(Erasable PROM、EPROM)、電気的消去可能プログラマブルリードオンリメモリ(Electrically EPROM、EEPROM)、又はフラッシュメモリであってよい。揮発性メモリは、ランダムアクセスメモリ(Random Access Memory、RAM)であってよく、外部高速バッファメモリとして用いられる。例示的だが限定しない説明により、多くの形態のRAMを用いることができ、例えば、スタティックラム(Static RAM、SRAM)、ダイナミックランダムアクセスメモリ(Dynamic RAM、DRAM)、シンクロナスDRAM(Synchronous DRAM、SDRAM)、ダブルデータレートSDRAM(Double Data Rate SDRAM、DDR SDRAM)、エンハンストSDRAM(Enhanced SDRAM、ESDRAM)、シンクリンクDRAM(Synchlink DRAM、SLDRAM)、及びダイレクトラムバスRAM(Direct Rambus RAM、DR RAM)である。
【0300】
プロセッサが汎用プロセッサ、DSP、ASIC、FPGA、又はその他のプログラマブルロジックデバイス、ディスクリートゲート、又はトランジスタ論理デバイス、ディスクリートハードウェアコンポーネントの場合、メモリ(記憶モジュール)は、プロセッサに集積されることを説明する必要がある。
【0301】
本文で説明されるメモリは、これらの、及び任意のその他の適切なタイプのメモリを含むが、それに限定しないことに留意するものとする。
【0302】
本出願の実施例は、コンピュータで読み取り可能な記憶媒体をさらに提供し、これにはコマンドが記憶され、コマンドがコンピュータで運用される際、コンピュータに上述の各方法の実施例の方法を実行させる。
【0303】
本出願の実施例は、コンピュータデバイスをさらに提供し、このコンピュータデバイスは、上述コンピュータで読み取り可能な記憶媒体を含む。
【0304】
本出願の実施例は、符号化デバイスをさらに提供し、この符号化デバイスは、画像動き補償のための装置70と、画像処理のための装置80と、画像動き補償のための装置1000とのうちの少なくとも一つを含む。
【0305】
本出願の実施例は、復号化デバイスをさらに提供し、この復号化デバイスは、画像動き補償のための装置70と、画像処理のための装置80と、画像動き補償のための装置1000とのうちの少なくとも一つを含む。
【0306】
本出願の実施例は、航空機に応用でき、特に無人機分野である。
【0307】
本出願の各実施例の電気回路、サブ電気回路、サブユニットの区分は、概略的にすぎないことを理解するものとする。当業者は、本文で開示される実施例により説明される各例示的な電気回路、サブ電気回路、及びサブユニットは、分解、又は組み合わせることができることを認識できる。
【0308】
上述の実施例において、全部又は部分的に、ソフトウェア、ハードウェア、ファームウェア、又はその他の任意の組み合わせにより実現できる。ソフトウェアを使用して実現する場合、全部又は部分的にコンピュータプログラム製品の形態により実現できる。コンピュータプログラム製品は、一つ又は複数のコンピュータコマンドを含む。コンピュータでコンピュータコマンドをロード又は実行する場合、全部又は部分的に、本出願の実施例に基づくプロセス又は機能を生成する。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、又はその他のプログラミング可能な装置でもよい。コンピュータコマンドは、コンピュータで読み取り可能な記憶媒体に記憶でき、又はコンピュータで読み取り可能な記憶媒体から他のコンピュータで読み取り可能な記憶媒体へ伝送でき、例えば、コンピュータコマンドは、サイト、コンピュータ、サーバ、又はデータセンタから有線(例えば、同軸ケーブル、光ファイバ、デジタル加入者線(Digital Subscriber Line、DSL))、又は無線(例えば、赤外線、無線、マイクロ波など)の方法により他のサイト、コンピュータ、サーバ、又はデータセンタへ伝送できる。コンピュータで読み取り可能な記憶媒体は、コンピュータでアクセス可能ないずれかの使用可能な媒体であってよく、又は一つ若しくは複数の使用可能な媒体が集積されたサーバ、データセンタなどを含むデータ記憶デバイスであってよい。使用可能な媒体は、磁性媒体(例えば、フロッピーディスク、ハードディスク、磁気テープ)、光媒体(例えば、DVD(Digital Video Disc、DVD))、又は半導体媒体(例えば、SSD(Solid State Disk、SSD))などであってよい。
【0309】
本明細書全体において言及される「一つの実施例」又は「実施例」は、実施例に関連する特定の特徴、構造、又は特性が本出願の少なくとも一つの実施例に含まれることを意味することを理解するものとする。従って、本明細書全体の各箇所における「一つの実施例において」、又は「実施例において」は、同じ実施例を指すとは限らない。このほか、これらの特定の特徴、構造、又は特性は、任意の適切な方法で一つ又は複数の実施例に結合されることができる。
【0310】
本出願の各実施例において、上述の各過程の番号の大きさは、実行順序の前後を意味するわけではなく、各過程の実行順序は、その機能及び内在的なロジックにより確定され、本出願の実施例の実施過程にいかなる制限を行うものではないことを理解するものとする。
【0311】
本出願の実施例における「Aに対応するB」とは、BがAに関連し、Aに基づいて、Bを確定できることを示すことを理解するものとする。但し、Aに基づいて、Bを確定するとは、AによってのみBを確定することを意味するわけではなく、さらに、Aとその他の情報とのうちの少なくとも一つに基づいて、Bを確定できることを理解するものとする。
【0312】
本文における用語「少なくとも一つの」は、関連対象の関連関係を説明するにすぎず、3つの関係が存在でき、例えば、AとBとのうちの少なくとも一つは、Aが単独で存在する、AとBが同時に存在する、Bが単独で存在する、の3つの状況があることを理解するものとする。このほか、本文における記号「/」は通常、前後の関連対象が「又は」の関係であることを示す。
【0313】
当業者は、本文で開示される実施例により説明される各例示的なユニット、及びアルゴリズムステップを踏まえ、電子ハードウェア、又はコンピュータソフトウェアと電子ハードウェアとの組み合わせにより実現できることを認識できる。これらの機能が最終的にハードウェア、又はソフトウェアの方法で実行されるかは、技術的解決手段の特定の応用、及び設計上の制約条件により決定される。当業者は、各特定の応用に異なる方法を使用することで説明される機能を実現できるが、このような実現は、本出願の範囲を超えると認識されるべきではない。
【0314】
当業者は、説明しやすく、簡潔に説明するために、上述の説明されるシステム、装置、及びユニットの具体的な作動過程が前述の方法の実施例における対応過程を参照できることを明確に理解でき、ここではこれ以上説明しない。
【0315】
本出願により提供される複数の実施例において、開示されるシステム、装置、及び方法は、その他の方法により実現できることを理解するものとする。例えば、上述に説明された装置の実施例は、例示的にすぎない。例えば、前記ユニットの区分は、ロジック機能の区分にすぎず、実際に実現する場合には、他の分割方法があってよく、例えば、複数のユニット、若しくはコンポーネントは、結合でき、若しくは他のシステムに集積でき、又はいくつかの特徴は無視でき、若しくは実行しないことができる。また、示された、若しくは検討された互いの間の結合、又は直接的な結合、又は通信接続は、いくつかのインターフェースによることができ、装置、若しくはユニットの間接的な結合、又は通信接続は、電気的であってよく、機械、又はその他の形態であってよい。
【0316】
前記分離部材として説明されたユニットは、物理的に分割されてもよく、又は物理的に分割されなくてもよく、ユニットとして表示される部材は、物理ユニットでもよく、又は物理ユニットでなくてもよく、すなわち一つの場所に位置でき、又は複数のネットワークユニットに分布されてもよい。実際の必要に応じてそのうちの一部又は全部のユニットを選択して本実施例の解決手段の目的を実現できる。
【0317】
このほか、本出願の各実施例における各機能ユニットは、一つの処理ユニットに集積でき、各ユニットが単独で物理的に存在することもでき、二つ又は二つ以上のユニットが一つのユニットに集積されてもよい。
【0318】
以上に述べたのは、本出願の具体的な実施形態に過ぎないが、本出願の保護範囲は、これに限定されるわけではなく、当業者はいずれも本出願により開示される技術範囲内において、変更又は置換を容易に想到でき、いずれも本出願の保護範囲内に含まれるものとする。従って、本出願の保護範囲は、記載された特許請求の範囲の保護範囲を基準とする。
[項目1]
動画処理方法であって、上記方法は、
第1画像ブロックの時間領域参照ブロックの動きベクトルを確定し、ここで、上記時間領域参照ブロック、及び上記第1画像ブロックは、異なる画像に位置することと、
上記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は上記第1画像ブロックの参照画像が特定参照画像である場合、処理後の上記時間領域参照ブロックの動きベクトルに基づいて、上記第1画像ブロックの動きベクトルを確定し、上記処理後の上記時間領域参照ブロックの動きベクトル、及び処理前の時間領域参照ブロックの動きベクトルは、同じであることと、又は
上記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は上記第1画像ブロックの参照画像が特定参照画像である場合、上記時間領域参照ブロックの動きベクトルを参照することを放棄することで上記第1画像ブロックの動きベクトルを取得することと、又は
上記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は上記第1画像ブロックの参照画像が特定参照画像である場合、上記時間領域参照ブロックの動きベクトルを上記第1画像ブロックの動きベクトルとすることと、を含む動画処理方法。
[項目2]
上記処理後の上記時間領域参照ブロックの動きベクトルは、
数値を1とするスケーリング比率に基づいて、上記時間領域参照ブロックの動きベクトルをスケーリング後に得られた動きベクトル、又は
スケーリングステップをスキップした上記時間領域参照ブロックの動きベクトルを含む項目1に記載の動画処理方法。
[項目3]
上記方法は、
上記時間領域参照ブロックの動きベクトルが非特定参照画像を指向し、かつ上記第1画像ブロックの参照画像が非特定参照画像である場合、上記時間領域参照ブロックの動きベクトルが指向する参照画像と上記時間領域参照ブロックがある画像との間の時間距離、及び上記第1画像ブロックの参照画像と上記第1画像ブロックがある画像との間の時間距離に基づいて、上記第1画像ブロックの動きベクトルを確定することをさらに含む項目1又は2に記載の動画処理方法。
[項目4]
上記方法は、
上記時間領域参照ブロックの動きベクトルが指向する参照画像と上記時間領域参照ブロックがある画像との間の時間距離、及び上記第1画像ブロックの参照画像と上記第1画像ブロックがある画像との間の時間距離に基づいて、上記時間領域参照ブロックの動きベクトルのスケーリング比率を確定することと、
上記スケーリング比率でスケーリング後の上記時間領域参照ブロックの動きベクトルに基づいて、上記第1画像ブロックの動きベクトルを確定することと、を含む項目3に記載の動画処理方法。
[項目5]
上記方法は、
上記第1画像ブロックの動き情報候補リストを構築し、上記動き情報候補リストは、上記第1画像ブロックの空間領域参照ブロックの動きベクトルと上記第1画像ブロックの参照フレームインデックス値とのうちの少なくとも一つを含み、ここで、上記空間領域参照ブロック、及び上記第1画像ブロックは、同じ画像に位置することと、
上記第1画像ブロックの動き情報候補リストに基づいて、上記第1画像ブロックの動きベクトルを確定することと、をさらに含む項目1~4のいずれか一項に記載の動画処理方法。
[項目6]
上記処理後の上記時間領域参照ブロックの動きベクトルに基づいて、上記第1画像ブロックの動きベクトルを確定することは、
上記処理後の上記時間領域参照ブロックの動きベクトルを上記動きベクトル候補リストに加えることを含み、
又は、上記時間領域参照ブロックの動きベクトルを参照することを放棄することで上記第1画像ブロックの動きベクトルを取得することは、
上記時間領域参照ブロックの動きベクトルを上記動きベクトル候補リストに加えることを放棄することを含む項目5に記載の動画処理方法。
[項目7]
上記第1画像ブロックは、符号化ユニットCUである項目5又は6に記載の動画処理方法。
[項目8]
上記第1画像ブロックは、第2画像ブロックの一部であり、上記方法は、
上記第1画像ブロックの動き情報候補リストを構築し、上記動き情報候補リストは、上記第2画像ブロックの空間領域参照ブロックの動きベクトルと上記第1画像ブロックの参照フレームインデックス値とのうちの少なくとも一つを含み、ここで、上記空間領域参照ブロック、及び上記第2画像ブロックは、同じ画像に位置することと、
上記第1画像ブロックの動き情報候補リストに基づいて、上記第2画像ブロックの動きベクトルを確定することと、をさらに含む項目1~3のいずれか一項に記載の動画処理方法。
[項目9]
上記第1画像ブロックの参照フレームインデックス値と上記第2画像ブロックの参照フレームインデックス値とは同じであり、又は、
上記第1画像ブロックの参照フレームインデックス値は、上記第2画像ブロックの参照フレームインデックス値に基づいて確定される項目8に記載の動画処理方法。
[項目10]
上記処理後の上記時間領域参照ブロックの動きベクトルに基づいて、上記第1画像ブロックの動きベクトルを確定することは、
上記処理後の上記時間領域参照ブロックの動きベクトルを上記第2画像ブロックの動き情報候補リストに加えることを含み、
又は、上記時間領域参照ブロックの動きベクトルを参照することを放棄することで上記第1画像ブロックの動きベクトルを取得することは、
上記時間領域参照ブロックの動きベクトルを上記第2画像ブロックの動き情報候補リストに加えることを放棄することを含む項目8又は9に記載の動画処理方法。
[項目11]
上記第2画像ブロックは、符号化ユニットCUであり、上記第1画像ブロックは、上記符号化ユニットにおけるサブ画像ブロックであり、上記サブ画像ブロックは、上記符号化ユニットから分割されて得られる項目1、8又は9に記載の動画処理方法。
[項目12]
上記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定することは、
上記第1画像ブロックの参照画像セットにおいて、上記第1画像ブロックがある画像と距離が最も近い画像を確定することと、
確定された上記画像に基づいて、上記第1画像ブロックの時間領域参照ブロック、及び上記時間領域参照ブロックの動きベクトルを確定することと、を含む項目1~11のいずれか一項に記載の動画処理方法。
[項目13]
上記時間領域参照ブロックは、上記確定された画像において、上記第1画像ブロックの位置と同じ画像ブロックであり、又は、
上記時間領域参照ブロックは、上記第1画像ブロックに隣接する画像ブロックの動きベクトルが上記確定された画像で指向する画像ブロックであり、又は、
上記時間領域参照ブロックは、上記第1画像ブロックに隣接する画像ブロックの動きベクトルが上記確定された画像で指向する位置の数値カットオフされた位置に対応する画像ブロックであり、又は、
上記時間領域参照ブロックは、上記確定された画像において、上記第1画像ブロックの位置と同じ画像ブロックの動きベクトルが指向する画像ブロックであり、又は、
上記時間領域参照ブロックは、上記確定された画像において、上記第1画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックであり、又は、
上記時間領域参照ブロックは、上記確定された画像において、上記第1画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックの動きベクトルが指向する画像ブロックである項目12に記載の動画処理方法。
[項目14]
上記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定することは、
上記第1画像ブロックがある画像において、上記第1画像ブロックの特定隣接画像ブロックを確定することと、
上記特定隣接画像ブロックの参照画像に基づいて、上記第1画像ブロックの時間領域参照ブロック、及び上記時間領域参照ブロックの動きベクトルを確定することと、を含む項目1~11のいずれか一項に記載の動画処理方法。
[項目15]
上記時間領域参照ブロックは、上記特定隣接画像ブロックの参照画像において、上記第1画像ブロックの位置と同じ画像ブロックであり、又は、
上記時間領域参照ブロックは、上記特定隣接画像ブロックの参照画像において、上記特定隣接画像ブロックの位置と同じ画像ブロックであり、又は、
上記時間領域参照ブロックは、上記特定隣接画像ブロックの動きベクトルが指向する画像ブロックである項目14に記載の動画処理方法。
[項目16]
上記第1画像ブロックの特定隣接画像ブロックを確定することは、
上記第1画像ブロックがある画像において、特定走査順序により第1の隣接画像ブロックを取得することと、又は、
上記第1画像ブロックがある画像において、特定走査順序により上記第1画像ブロックと同じ参照フレームインデックス値を有する第1の隣接画像ブロックを得ることと、又は、
特定走査順序により動き情報を有する第1の画像ブロックを得ることと、又は、
特定走査順序により上記第1画像のデフォルトされた参照画像と同じ第1の隣接画像ブロックを得ることと、を含む項目14に記載の動画処理方法。
[項目17]
上記特定走査順序は、上記第1ブロックを検索起点とし、
下から上へ、左から右へ、右から左へ、上から下へとのうちの一つの方向に沿って走査順序とする項目16に記載の動画処理方法。
[項目18]
上記特定参照画像は、長期参照画像、合成フレーム、出力されないフレームのうちの少なくとも一つを含む項目1~14のいずれか一項に記載の方法。
[項目19]
上記方法は、
上記参照画像が出力されないフレームであると確定し、上記参照画像が合成フレームである確定する場合、上記参照画像を上記特定参照画像であると確定することをさらに含む項目1~15のいずれか一項に記載の方法。
[項目20]
上記非特定参照画像は、短期参照画像を含む項目1~16のいずれか一項に記載の方法。
[項目21]
動画処理装置であって、
コンピュータで実行可能なコマンドを記憶するための少なくとも一つのメモリと、
上記少なくとも一つのメモリにアクセスし、かつ上記コンピュータで実行可能なコマンドを実行することで、以下の操作を実施することに単独、又は共同で用いられる少なくとも一つのプロセッサと、を含み、上記操作は、
第1画像ブロックの時間領域参照ブロックの動きベクトルを確定し、ここで、上記時間領域参照ブロック、及び上記第1画像ブロックは、異なる画像に位置することと、
上記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は上記第1画像ブロックの参照画像が特定参照画像である場合、処理後の上記時間領域参照ブロックの動きベクトルに基づいて、上記第1画像ブロックの動きベクトルを確定し、上記処理後の上記時間領域参照ブロックの動きベクトル、及び処理前の時間領域参照ブロックの動きベクトルは、同じであることと、又は
上記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は上記第1画像ブロックの参照画像が特定参照画像である場合、上記時間領域参照ブロックの動きベクトルを参照することを放棄することで上記第1画像ブロックの動きベクトルを取得することと、又は
上記時間領域参照ブロックの動きベクトルが特定参照画像を指向する場合、又は上記第1画像ブロックの参照画像が特定参照画像である場合、上記時間領域参照ブロックの動きベクトルを上記第1画像ブロックの動きベクトルとすることと、である装置。
[項目22]
上記処理後の上記時間領域参照ブロックの動きベクトルは、
数値を1とするスケーリング比率に基づいて、上記時間領域参照ブロックの動きベクトルをスケーリング後に得られた動きベクトル、又は
スケーリングステップをスキップした上記時間領域参照ブロックの動きベクトルを含む項目21に記載の動画処理装置。
[項目23]
上記プロセッサは、さらに、
上記時間領域参照ブロックの動きベクトルが非特定参照画像を指向し、かつ上記第1画像ブロックの参照画像が非特定参照画像である場合、上記時間領域参照ブロックの動きベクトルが指向する参照画像と上記時間領域参照ブロックがある画像との間の時間距離、及び上記第1画像ブロックの参照画像と上記第1画像ブロックがある画像との間の時間距離に基づいて、上記第1画像ブロックの動きベクトルを確定するためのものである項目21又は22に記載の動画処理装置。
[項目24]
上記プロセッサは、
上記時間領域参照ブロックの動きベクトルが指向する参照画像と上記時間領域参照ブロックがある画像との間の時間距離、及び上記第1画像ブロックの参照画像と上記第1画像ブロックがある画像との間の時間距離に基づいて、上記時間領域参照ブロックの動きベクトルのスケーリング比率を確定し、
上記スケーリング比率でスケーリング後の上記時間領域参照ブロックの動きベクトルに基づいて、上記第1画像ブロックの動きベクトルを確定するために用いられる項目23に記載の動画処理装置。
[項目25]
上記プロセッサは、さらに、
上記第1画像ブロックの動き情報候補リストを構築し、上記動き情報候補リストは、上記第1画像ブロックの空間領域参照ブロックの動きベクトルと上記第1画像ブロックの参照フレームインデックス値とのうちの少なくとも一つを含み、ここで、上記空間領域参照ブロック、及び上記第1画像ブロックは、同じ画像に位置し、
上記第1画像ブロックの動き情報候補リストに基づいて、上記第1画像ブロックの動きベクトルを確定するためのものである項目21~24のいずれか一項に記載の動画処理装置。
[項目26]
上記処理後の上記時間領域参照ブロックの動きベクトルに基づいて、上記第1画像ブロックの動きベクトルを確定することは、
上記処理後の上記時間領域参照ブロックの動きベクトルを上記動きベクトル候補リストに加えることを含み、
又は、上記時間領域参照ブロックの動きベクトルを参照することを放棄することで上記第1画像ブロックの動きベクトルを取得することは、
上記時間領域参照ブロックの動きベクトルを上記動きベクトル候補リストに加えることを放棄することを含む項目25に記載の動画処理装置。
[項目27]
上記第1画像ブロックは、符号化ユニットCUである項目25又は26に記載の動画処理装置。
[項目28]
上記第1画像ブロックは、第2画像ブロックの一部であり、上記プロセッサは、さらに、
上記第1画像ブロックの動き情報候補リストを構築し、上記動き情報候補リストは、上記第2画像ブロックの空間領域参照ブロックの動きベクトルと上記第1画像ブロックの参照フレームインデックス値とのうちの少なくとも一つを含み、ここで、上記空間領域参照ブロック、及び上記第2画像ブロックは、同じ画像に位置し、
上記第1画像ブロックの動き情報候補リストに基づいて、上記第2画像ブロックの動きベクトルを確定するためのものである項目21~23のいずれか一項に記載の動画処理装置。
[項目29]
上記第1画像ブロックの参照フレームインデックス値と上記第2画像ブロックの参照フレームインデックス値とは同じであり、又は、
上記第1画像ブロックの参照フレームインデックス値は、上記第2画像ブロックの参照フレームインデックス値に基づいて確定される項目28に記載の動画処理装置。
[項目30]
上記処理後の上記時間領域参照ブロックの動きベクトルに基づいて、上記第1画像ブロックの動きベクトルを確定することは、
上記処理後の上記時間領域参照ブロックの動きベクトルを上記第2画像ブロックの動き情報候補リストに加えることを含み、
又は、上記時間領域参照ブロックの動きベクトルを参照することを放棄することで上記第1画像ブロックの動きベクトルを取得することは、
上記時間領域参照ブロックの動きベクトルを上記第2画像ブロックの動き情報候補リストに加えることを放棄することを含む項目28又は29に記載の動画処理装置。
[項目31]
上記第2画像ブロックは、符号化ユニットCUであり、上記第1画像ブロックは、上記符号化ユニットにおけるサブ画像ブロックであり、上記サブ画像ブロックは、上記符号化ユニットから分割されて得られる項目21、28又は29に記載の動画処理装置。
[項目32]
上記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定することは、
上記第1画像ブロックの参照画像セットにおいて、上記第1画像ブロックがある画像と距離が最も近い画像を確定することと、
確定された上記画像に基づいて、上記第1画像ブロックの時間領域参照ブロック、及び上記時間領域参照ブロックの動きベクトルを確定することと、を含む項目21~31のいずれか一項に記載の動画処理装置。
[項目33]
上記時間領域参照ブロックは、上記確定された画像において、上記第1画像ブロックの位置と同じ画像ブロックであり、又は、
上記時間領域参照ブロックは、上記第1画像ブロックに隣接する画像ブロックの動きベクトルが上記確定された画像で指向する画像ブロックであり、又は、
上記時間領域参照ブロックは、上記第1画像ブロックに隣接する画像ブロックの動きベクトルが上記確定された画像で指向する位置の数値カットオフされた位置に対応する画像ブロックであり、又は、
上記時間領域参照ブロックは、上記確定された画像において、上記第1画像ブロックの位置と同じ画像ブロックの動きベクトルが指向する画像ブロックであり、又は、
上記時間領域参照ブロックは、上記確定された画像において、上記第1画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックであり、又は、
上記時間領域参照ブロックは、上記確定された画像において、上記第1画像ブロックの位置と同じ画像ブロックの特定隣接画像ブロックの動きベクトルが指向する画像ブロックである項目32に記載の動画処理装置。
[項目34]
上記第1画像ブロックの時間領域参照ブロックの動きベクトルを確定することは、
上記第1画像ブロックがある画像において、上記第1画像ブロックの特定隣接画像ブロックを確定することと、
上記特定隣接画像ブロックの参照画像に基づいて、上記第1画像ブロックの時間領域参照ブロック、及び上記時間領域参照ブロックの動きベクトルを確定することと、を含む項目21~31のいずれか一項に記載の動画処理装置。
[項目35]
上記時間領域参照ブロックは、上記特定隣接画像ブロックの参照画像において、上記第1画像ブロックの位置と同じ画像ブロックであり、又は、
上記時間領域参照ブロックは、上記特定隣接画像ブロックの参照画像において、上記特定隣接画像ブロックの位置と同じ画像ブロックであり、又は、
上記時間領域参照ブロックは、上記特定隣接画像ブロックの動きベクトルが指向する画像ブロックである項目34に記載の動画処理装置。
[項目36]
上記第1画像ブロックの特定隣接画像ブロックを確定することは、
上記第1画像ブロックがある画像において、特定走査順序により第1の隣接画像ブロックを得ることと、又は、
上記第1画像ブロックがある画像において、特定走査順序により上記第1画像ブロックと同じ参照フレームインデックス値を有する第1の隣接画像ブロックを得ることと、又は、
特定走査順序により動き情報を有する第1の画像ブロックを得ることと、又は、
特定走査順序により上記第1画像のデフォルトされた参照画像と同じ第1の隣接画像ブロックを得ることと、を含む項目34に記載の動画処理装置。
[項目37]
上記特定走査順序は、上記第1ブロックを検索起点とし、下から上へ、左から右へ、右から左へ、上から下へとのうちの一つの方向に沿って走査順序とする項目36に記載の動画処理装置。
[項目38]
上記特定参照画像は、長期参照画像、合成フレーム、出力されないフレームのうちの少なくとも一つを含む項目21~34のいずれか一項に記載の装置。
[項目39]
上記プロセッサは、さらに、
上記参照画像が出力されないフレームであると確定し、及び上記参照画像が合成フレームである確定する場合、上記参照画像を上記特定参照画像であると確定するためのものである項目21~35のいずれか一項に記載の装置。
[項目40]
上記非特定参照画像は、短期参照画像を含む項目21~36のいずれか一項に記載の装置。
[項目41]
コンピュータで読み取り可能な記憶媒体であって、
これにはコマンドが記憶され、コマンドがコンピュータで運用される場合、コンピュータに項目1~20のいずれか一項に記載の画像処理方法を実行させるコンピュータで読み取り可能な記憶媒体。
[項目42]
項目21~39のいずれか一項に記載の動画処理装置を含む符号化デバイス。
[項目43]
項目21~39のいずれか一項に記載の動画処理装置を含む復号化デバイス。