図面 (/)

技術 ビデオ信号のエンコーディングまたはデコーディング方法及び装置

出願人 エルジーエレクトロニクスインコーポレイティド
発明者 パク,スンウクキム,ジュンスンパク,ジュンヨンチョイ,ヨンヘジョン,ビョンムンジョン,ヨンジュン
出願日 2009年3月9日 (11年9ヶ月経過) 出願番号 2010-550590
公開日 2011年5月12日 (9年7ヶ月経過) 公開番号 2011-515060
状態 拒絶査定
技術分野 TV信号の圧縮,符号化方式 TV信号の圧縮,符号化方式
主要キーワード 相互類似性 単位間隔 候補テンプレート 垂直モード 直方形状 テンプレート領域 右シフト演算 画素値差
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2011年5月12日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (12)

課題

デコーダ伝送するビット量を減らし、ビデオ信号処理の効率を向上させる。

解決手段

ビデオ信号処理方法を提供する。本発明は、現在ブロックに隣接しているテンプレート領域を用いて現在ブロックの画面内予測モードを決定する段階と、該現在ブロックの画面内予測モードを用いて現在ブロックの予測値を獲得する段階とを含む。従って、本発明は、デコーダに現在ブロックの予測モードに関する情報を伝送せずに、この情報をデコーダで導出できるようにすることによって、ビデオ信号処理の効率を向上させることができる。

概要

背景

ソース提供者エンコーディングされたビデオ信号デコーダ伝送する際に、ビデオ信号の圧縮率を高めるために、時間的冗長性と空間的冗長性を除去する方法、すなわち、画面内予測方法と画面間予測方法が使用される。

概要

デコーダに伝送するビット量を減らし、ビデオ信号処理の効率を向上させる。ビデオ信号処理方法を提供する。本発明は、現在ブロックに隣接しているテンプレート領域を用いて現在ブロックの画面内予測モードを決定する段階と、該現在ブロックの画面内予測モードを用いて現在ブロックの予測値を獲得する段階とを含む。従って、本発明は、デコーダに現在ブロックの予測モードに関する情報を伝送せずに、この情報をデコーダで導出できるようにすることによって、ビデオ信号処理の効率を向上させることができる。

目的

本発明の他の目的は、伝送されるモーションベクトルの量を従来と同一に維持しながら、より精密なモーションベクトルを獲得することにある

効果

実績

技術文献被引用数
0件
牽制数
1件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

現在ブロックに隣接しているテンプレート領域を用いて該現在ブロックの画面内予測モードを決定する段階と、前記現在ブロックの前記画面内予測モードを用いて前記現在ブロックの予測値を獲得する段階と、を含むことを特徴とするビデオ信号処理方法

請求項2

前記現在ブロックに隣接している前記テンプレート領域を用いて前記現在ブロックの前記画面内予測モードを決定する段階は、前記現在ブロックに隣接している前記テンプレート領域の画面内予測モードを抽出する段階をさらに含み、前記現在ブロックに隣接している前記テンプレート領域の該画面内予測モードは、前記現在ブロックの前記画面内予測モードとして用いられることを特徴とする、請求項1に記載のビデオ信号処理方法。

請求項3

前記現在ブロックに隣接している前記テンプレート領域の前記画面内予測モードを抽出する段階は、前記現在ブロックに隣接している前記テンプレート領域の画素と前記テンプレート領域の左側、上端、上端左側、及び上端右側における隣接画素との間の画素値差を、それぞれ計算する段階と、前記画素値差を最小とする前記画面内予測モードを獲得する段階と、をさらに含み、前記画素値差は、前記画面内予測モードの9種の予測方向を考慮して計算されることを特徴とする、請求項2に記載のビデオ信号処理方法。

請求項4

現在ブロックに隣接しているテンプレート領域を用いて該現在ブロックの予測モードを決定する予測モード決定部と、前記現在ブロックの前記予測モードを用いて前記現在ブロックの予測値を獲得する獲得部と、を含むことを特徴とするビデオ信号処理装置

請求項5

現在ブロックのモーションベクトル差値を受信する段階と、前記現在ブロックの前記受信したモーションベクトル差値及び前記現在ブロックのモーションベクトル予測値を用いて前記現在ブロックのモーションベクトルを獲得する段階と、前記現在ブロックの前記モーションベクトルを用いて、前記現在ブロックに対応する参照ブロック及び該参照ブロックに隣接するブロックを特定する段階と、前記特定されたブロックのテンプレート領域と前記現在ブロックのテンプレート領域との間の各画素値差を計算する段階と、前記画素値差を計算した結果に基づいて、修正されたモーションベクトルを抽出する段階と、を含むことを特徴とするモーションベクトル決定方法

請求項6

前記参照ブロックに隣接する前記ブロックは、前記参照ブロックを中心にしてモーションベクトル単位間隔で隣接する8個のブロックであることを特徴とする、請求項5に記載のモーションベクトル決定方法。

請求項7

前記修正されたモーションベクトルを抽出する段階は、前記現在ブロックに隣接する前記テンプレート領域と前記現在ブロックに対応する前記参照ブロックに隣接する前記テンプレート領域との間の前記画素値差が最小値を有する場合、9個の画素値差に基づく2次曲面から、最小の画素値差を有するモーションベクトル位置を獲得する段階をさらに含むことを特徴とする、請求項5に記載のモーションベクトル決定方法。

請求項8

現在ブロックの第1のモーションベクトル差値を受信する段階と、前記現在ブロックの前記第1のモーションベクトル差値にシフト演算を適用して前記現在ブロックの第2のモーションベクトル差値を獲得する段階と、前記現在ブロックの前記第2のモーションベクトル差値及び前記現在ブロックのモーションベクトル予測値に基づいて候補参照ブロックの範囲を決定する段階と、前記候補参照ブロックに隣接しているテンプレート領域と前記現在ブロックに隣接しているテンプレート領域との間の各画素値差を計算する段階と、前記画素値差を計算した結果に基づいて、前記現在ブロックのモーションベクトルを獲得する段階と、を含むことを特徴とするモーションベクトル決定方法。

請求項9

前記現在ブロックの前記第1のモーションベクトル差値は、右シフト演算により、前記現在ブロックの前記モーションベクトル差値の正確度下げた結果の値であり、前記現在ブロックの前記モーションベクトル差値に対する前記右シフト演算は、切り捨てまたは四捨五入のいずれかに従い実行されることを特徴とする、請求項8に記載のモーションベクトル決定方法。

請求項10

前記候補参照ブロックの前記範囲を決定する段階は、前記現在ブロックの前記第1のモーションベクトル差値が切り捨てにより得られた場合、前記候補参照ブロックの前記範囲は、前記現在ブロックの前記第2のモーションベクトル差値と前記現在ブロックの前記モーションベクトル予測値とを合算して得たモーションベクトル位置(基準位置)における画素から右側にX−1番目の画素までを範囲とする画素を含み、前記Xは、モーションベクトル単位の逆数を取った結果の値であることを特徴とする、請求項8に記載のモーションベクトル決定方法。

請求項11

前記候補参照ブロックの前記範囲を決定する段階は、前記現在ブロックの前記第1のモーションベクトル差値が四捨五入により得られた場合、前記候補参照ブロックの前記範囲は、前記基準位置における画素から左側にX/2番目の画素から前記基準位置における前記画素から右側にX/2−1番目の画素までを範囲とする画素を含み、前記Xは、モーションベクトル単位の逆数を取った結果の値であることを特徴とする、請求項8に記載のモーションベクトル決定方法。

請求項12

前記現在ブロックの前記モーションベクトルを獲得する段階は、テンプレートマッチングを行った結果として、前記画素値差を最小にする前記候補参照ブロックから前記現在ブロックの前記モーションベクトルを獲得することを特徴とする、請求項8に記載のモーションベクトル決定方法。

請求項13

現在ブロックのテンプレート領域と参照フレーム候補テンプレート領域との間の画素値差を計算する段階であって、該参照フレームの該テンプレート領域は、該画素値差に基づいて選択される段階と、前記現在ブロックの前記テンプレート領域と前記参照フレームの前記テンプレート領域とのテンプレートマッチングを用いて前記現在ブロックの参照ブロックを選択する段階と、前記選択された参照ブロックを用いて前記現在ブロックの予測値を獲得する段階と、前記予測値に基づき前記現在ブロックをデコーディングする段階と、を含むことを特徴とするビデオ信号処理方法。

請求項14

前記現在ブロックに隣接しているテンプレート領域と参照フレーム内の候補テンプレート領域との間の画素値差を計算する段階は、現在フレームと参照フレームとの間の照度差を考慮することを特徴とする、請求項13に記載のビデオ信号処理方法。

請求項15

前記現在ブロックに隣接しているテンプレート領域は、前記現在ブロックの右側または下端に隣接している画素の領域を含むことを特徴とする、請求項14に記載のビデオ信号処理方法。

技術分野

0001

本発明は、ビデオ信号エンコーディングまたはデコーディングするための方法及び装置に関するものである。

背景技術

0002

ソース提供者がエンコーディングされたビデオ信号をデコーダ伝送する際に、ビデオ信号の圧縮率を高めるために、時間的冗長性と空間的冗長性を除去する方法、すなわち、画面内予測方法と画面間予測方法が使用される。

発明が解決しようとする課題

0003

本発明の目的は、画面間予測モードに割り当てられたビット量を減らすことにある。

0004

本発明の他の目的は、伝送されるモーションベクトルの量を従来と同一に維持しながら、より精密なモーションベクトルを獲得することにある。

0005

本発明のさらに他の目的は、画面間予測の正確性を向上させることにある。

0006

本発明のさらに他の目的は、テンプレート領域範囲と関連して適応的にテンプレートマッチングを利用することにある。

0007

本発明のさらに他の目的は、テンプレートマッチングを行うか否かを指示するフラ使用方法提示することによって、効率的にビデオ信号を処理することにある。

課題を解決するための手段

0008

本発明は、デコーダに画面内予測モードを伝送せずに、デコーダでテンプレート領域を用いて現在ブロックの画面内予測モードを導き出すことを特徴とする。

0009

本発明は、従来のブロックマッチングアルゴリズムを行ってモーションベクトルを獲得し、前記モーションベクトルを中心とする参照フレーム内のブロックと現在ブロックとのテンプレートマッチングを行うことを特徴とする。

0010

本発明は、現在ブロックのモーションベクトル差値をデコーダに伝送する際に、モーションベクトル差値を、正確度下げてデコーダに伝送し、デコーダでは、モーションベクトル単位でテンプレートマッチングを行って現在ブロックのモーションベクトルを獲得することを特徴とする。

0011

本発明は、テンプレートマッチングを用いて現在ブロックに対応する参照ブロック探す際に、現在フレームと参照フレームとの照度差による重み値候補参照ブロックのテンプレート領域に付加して現在ブロックのテンプレート領域とテンプレートマッチングを行うことを特徴とする。

0012

本発明は、テンプレートマッチングにおいて、ターゲット領域とテンプレート領域とを結合した形状がターゲットの形状と同一になるようにテンプレート領域を設定することを特徴とする。

0013

本発明は、テンプレートマッチングを行うか否かを指示するフラグを使用し、マクロブロック内パーティションのそれぞれに対してフラグを使用することを特徴とする。

0014

本発明は、デコーダでマクロブロックのタイプを獲得する前に、テンプレートマッチングを行うか否かを指示するフラグ情報を獲得し、テンプレートマッチングを行わない場合は従来デコーディングプロセスを行い、テンプレートマッチングを行う場合は、マクロブロックのタイプを16*16に、サブマクロブロックのタイプを8*8に設定することを特徴とする。

0015

本発明は、テンプレート領域を、ターゲットの左側と上端に接しているブロックの他に、右側または下端に接している既にコーディングされたブロックまで拡張させることを特徴とする。

発明の効果

0016

この結果、本発明は以下の効果または利点を提供する。

0017

第一、デコーダに画面内予測モードを伝送せず、デコーダでテンプレート領域を用いて現在ブロックの画面内予測モードを誘導することによって、デコーダに伝送されるビット量を減らすことができ、ビデオ信号処理の効率を向上させることができる。

0018

第二、現在ブロックのモーションベクトルを獲得する際に、従来のブロックマッチングアルゴリズムを用いて現在ブロックのモーションベクトルを獲得するが、このモーションベクトルを基準にしてテンプレートマッチングを行うことにより、より正確なモーションベクトルを獲得することができ、これにより、ビデオ信号処理のコーディング効率を向上させることができる。

0019

第三、モーションベクトル差値の正確度を減らす方法により、現在ブロックのモーションベクトル差値を伝送し、デコーダにおいて、4分の1画素単位(quarter-pelunit)でモーションベクトルによるテンプレートマッチングを行うことにより現在ブロックのモーションベクトルを獲得することによって、デコーダに伝送されるモーションベクトル情報量を減らすことができ、これにより、ビデオ信号処理のコーディング効率を向上させることができる。

0020

第四、テンプレートマッチングを用いて現在ブロックに対応する参照ブロックを探す際に、画面間照度差を考慮することによって、現在ブロック予測の正確性を向上させることができる。

0021

第五、ターゲット領域とテンプレート領域とを結合した形状がターゲットの形状と同一になるようにテンプレート領域を設定することによって、ビデオ信号処理の効率性を向上させることができる。

0022

第六、テンプレートマッチングを行うか否かを指示するフラグを使用し、マクロブロック内のパーティションのそれぞれに対してフラグを使用することによって、ビデオ信号処理の効率性を向上させることができる。

0023

第七、デコーダでマクロブロックのタイプを獲得する前に、テンプレートマッチングを行うか否かを指示するフラグ情報を獲得することによって、マクロブロックタイプに対するデコーディング作業を省略し、ビデオ信号処理の効率性を向上させることができる。

0024

第八、テンプレートマッチングにおいて、テンプレート領域を、ターゲットの左側と上端に接しているブロックの他に、右側または下端に接しているブロックまで拡張させることによって、テンプレートマッチングを用いたビデオ信号処理の効率性を向上させることができる。

0025

本発明の更なる理解を提供するために添付され、組み込まれ、及び本明細書の一部を構成する図面は、本発明の実施例を説明し、明細書と共に、本発明の原理を説明する。

図面の簡単な説明

0026

テンプレート領域及びターゲット領域の例を示す図である。
本発明の第1の実施例による、テンプレート領域を用いて現在ブロックの画面内予測モードを決定するためのデコーダにおけるシーケンスフローチャートである。
本発明の第1の実施例による現在ブロックのテンプレート領域の画面内予測モードを獲得する際に用いられる現在ブロックのテンプレート領域と該テンプレート領域の周囲の画素を示す図である。
本発明の第2の実施例による現在ブロックのモーションベクトルに基づいてテンプレートマッチングを行うことで、修正された現在ブロックのモーションベクトルを獲得する手順を示すフローチャートである。
本発明の第2の実施例による現在ブロックに対応する参照ブロックと該参照ブロックに隣接するブロックを示す図である。
本発明の第2の実施例によるテンプレートマッチング実行結果から、修正された現在ブロックのモーションベクトルを決定する方法を示す図である。
本発明の第3の実施例による現在ブロックの修正されたモーションベクトルを獲得する手順を示すフローチャートである。
本発明の第3の実施例によるモーションベクトルの単位が1/4の場合に、現在ブロックとテンプレートマッチングを行う候補参照ブロックの範囲を示す図である。
本発明の第4の実施例による現在ブロックに対応する参照ブロックを特定する際に、画面間照度差を考慮する方法を示す図である。
本発明の第5の実施例によるテンプレートマッチングを行うか否かを指示するフラグ使用を具現したシンタックステーブルである。
本発明の第5の実施例によるテンプレートマッチングを行うか否かを指示するフラグの再配列方法を具現したシンタックステーブルである。

実施例

0027

本発明の特徴及び利点は、以下の詳細な説明で記述され、部分的には、詳細な説明から明らかになるか、発明の実行から理解されるであろう。発明の目的及びその他の利点は、添付図面の他に、明細書、請求項及び図面に記載された事項によって実現または獲得することができる。

0028

上記の目的を達成するために、本発明に係るビデオ信号処理方法は、現在ブロックに接しているテンプレート領域の画面内予測モードを決定し、該テンプレート領域の画面内予測モードを現在ブロックの予測モードに用いて現在ブロックの予測値を獲得することを特徴とする。

0029

本発明によれば、前記現在ブロックに接しているテンプレート領域の画面内予測モード決定は、前記テンプレート領域の左側、上端、上端左側、及び上端右側に隣接している画素(pixel)を特定し、該特定された画素と前記テンプレート領域との画素値差を計算し、前記画素値差を最小とする画面内予測モードを獲得することを特徴とする。前記画素値差は、9つの画面内予測モードの予測方向を考慮して計算することを特徴とする。

0030

本発明の他の側面に係るビデオ信号処理装置によれば、現在ブロックに接しているテンプレート領域を用いて現在ブロックの予測モードを決定する決定部と、前記現在ブロックの予測モードを用いて現在ブロックの予測値を獲得する獲得部と、を含むことを特徴とする。

0031

本発明によるモーションベクトル決定方法は、現在ブロックのモーションベクトルを用いて、現在ブロックに対応する参照ブロック及び前記参照ブロックに隣接するブロックを特定し、前記特定されたブロックに接しているテンプレート領域と現在ブロックに接しているテンプレート領域との画素値差を計算し、前記画素値差に基づいて現在ブロックの修正されたモーションベクトルを抽出することを特徴とする。

0032

本発明によれば、前記参照ブロックに隣接するブロックは、前記参照ブロックを中心にしてモーションベクトル単位間隔で隣接する8個のブロックとすることができる。

0033

本発明によれば、前記現在ブロックの修正されたモーションベクトルの抽出は、現在ブロックに接しているテンプレート領域と前記現在ブロックに対応する参照ブロックに接しているテンプレート領域との画素値差が最小値を有する場合、前記計算された9個の画素値差に基づく2次曲面を獲得し、前記2次曲面から最小の画素値差を有するモーションベクトル位置を獲得することを特徴とする。

0034

本発明によるモーションベクトル決定方法は、現在ブロックの第1のモーションベクトル差値にシフト演算を適用して現在ブロックの第2のモーションベクトル差値を獲得し、前記現在ブロックの第2のモーションベクトル差値と現在ブロックのモーションベクトル予測値とを加算した値を基準に、一定範囲内の候補参照ブロックを特定し、前記特定された候補参照ブロックのテンプレート領域と現在ブロックのテンプレート領域との画素値差を計算し、該画素値差を最小とする候補参照ブロックから、現在ブロックの修正されたモーションベクトルを獲得することを特徴とする。

0035

本発明によれば、現在ブロックの第1のモーションベクトル差値は、現在ブロックのモーションベクトル差値を右シフト演算を適用して獲得した値であり、前記右シフト演算は、切り捨てまたは四捨五入を行うものであることを特徴とする。

0036

本発明によれば、前記現在ブロックの第1のモーションベクトル差値を切り捨てして獲得した場合、現在ブロックの第2のモーションベクトル差値と現在ブロックのモーションベクトル予測値とを加算した値を基準にして右側にX−1番目の画素までを候補参照ブロックの範囲とすることを特徴とし、前記現在ブロックの第1のモーションベクトル差値を四捨五入して獲得した場合、現在ブロックの第2のモーションベクトル差値と現在ブロックのモーションベクトル予測値とを加算した値を基準にして左側にX/2番目の画素から右側にX/2-1番目の画素までを候補参照ブロックの範囲とすることを特徴とする。前記Xは、モーションベクトル単位の逆数である。

0037

本発明によるビデオ信号処理方法は、現在ブロックのテンプレート領域と参照フレーム内の候補参照ブロックのテンプレート領域との画素値差を計算し、該画素値差を最小にする候補参照ブロックを、現在ブロックに対応する参照ブロックと特定することを特徴とする。

0038

本発明によれば、現在ブロックの形状が直方形である場合、現在ブロックと現在ブロックのテンプレート領域とを結合した形状が、現在ブロックと同じ形状となるように、現在ブロックのテンプレート領域を設定することができ、現在ブロックの左側または上端に接している画素の他に、現在ブロックの右側または下端に接している画素を、現在ブロックのテンプレート領域に含めることができる。

0039

本発明によれば、前記画素値差の計算において、現在フレームと参照フレームとの照度差による重み値を候補参照ブロックに付加した候補参照ブロックの画素値を用いることを特徴とする。

0040

本発明によれば、現在ブロックの予測において、マクロブロックのテンプレートマッチング実行有無を指示するフラグを使用し、前記フラグは、前記マクロブロックがM*Nのパーティションに分けられている場合、それぞれのパーティションごとに前記フラグを使用し、前記フラグは、マクロブロックのタイプに関する情報を受信する前に受信することを特徴とする。

0041

本発明のさらに他の側面に係るビデオ信号処理装置によれば、現在ブロックのテンプレート領域と参照フレーム内の候補参照ブロックのテンプレート領域との画素値差を計算し、前記画素値差に基づいて現在ブロックに対応する参照ブロックを選択する選択部と、前記選択された参照ブロックを用いて現在ブロックの予測値を獲得する獲得部と、を含むことを特徴とする。

0042

実施例
以下、添付の図面を参照しつつ、本発明の好適な実施例について詳細に説明する。下記の説明において、本明細書及び請求の範囲に使われた用語や単語は、通常的または辞書的な意味に限定して解釈されるものではなく、発明者はそれ自身の発明を最善の方法で説明するために用語の概念を適切に定義することができるという原則に立って本発明の技術的思想符合する意味と概念として解釈しなければならない。したがって、本明細書に記載された実施例と図面に示された構成は、本発明の好適な一実施例に過ぎず、本発明の技術的思想がそれらに限定されるものではないので、本出願時点においてそれらの実施例に取って代わる様々な均等物及び変形例がありうることを理解しなければならない。

0043

特に、本発明でいうコーディングとは、エンコーディング及びデコーディングの両方を含む概念である。また、画素値差とは、画素値差の絶対値の和と理解すべきである。

0044

まず、現在ブロックの予測に利用できるテンプレートについて説明する。

0045

図1は、テンプレート領域及びターゲット領域の例を示す図である。

0046

図1(a)を参照すると、ターゲット領域10は、テンプレート領域を用いて予測しようとする現在ブロックを意味でき、テンプレート領域11は、ターゲット領域に接している領域で、既にコーディングされた領域でもある。一般に、テンプレート領域11は、ターゲット領域10の左側及び上端に接している領域を意味することができる。

0047

さらに、現在ブロックの右側または下端に接している領域も、現在ブロックに先立ってコーディングすることで、それをテンプレートマッチング実行時にテンプレート領域として用いることもできる。

0048

例えば、図1(b)は、現在ブロック40が16*8の場合であり、現在ブロックのテンプレート領域は、現在ブロックの左側及び上端に接している既にコーディングされた領域41の他に、現在ブロックの下端部分42も含むことができる。

0049

図1(c)でも、現在ブロック43のテンプレート領域は、現在ブロックの左側及び上端に接している既にデコーディングされた領域44の他に、現在ブロックの右側に接している領域45も含むことができる。

0050

マクロブロックのパーティション形状によってターゲットの形状を設定することができ、テンプレート領域とターゲット領域とを結合した形状がターゲットの形状と同一になるようにテンプレート領域を設定することができる。

0051

例えば、図1(d)に示すように、マクロブロックのパーティション形状が16*8の場合に、ターゲットの形状20を、2個の8*8ブロックと定義せずに、16*8ブロックと定義することができる。なお、ターゲットの形状が16*8ブロックと定義されると、テンプレート領域とターゲット領域とを結合した形状がターゲットの形状と同一形状、すなわち、直方形状となるようにテンプレート領域21を設定することができる。

0052

また、マクロブロックの形状が8*16の場合に、ターゲットの形状22を8*16と定義することができ、テンプレート領域23を図1(e)のように設定することができる。

0053

図2は、本発明の第1の実施例によるデコーダでテンプレート領域を用いて現在ブロックの画面内予測モードを決定する手順を示すフローチャートである。

0054

図2(a)を参照すると、エンコーダで現在ブロックのテンプレート領域の画面内予測モードを抽出する(S210)。現在ブロック及びテンプレート領域の相互類似な面を用いて、抽出された現在ブロックのテンプレート領域の画面内予測モードを現在ブロックの画面内予測モードとして用いることがきる。これにより、現在ブロックの画面内予測モードを獲得することができる(S220)。現在ブロックの画面内予測モードで現在ブロックの画素値及び残余(residual)を生成し(S230)、この現在ブロックの残余のみをデコーダに伝送し(S240)、現在ブロックの画面内予測モードは伝送しない。これによって、デコーダに伝送されるブロックの情報量を減らすことができる。

0055

図2(b)を参照すると、デコーダでは、現在ブロックの残余を受信する(S250)。また、エンコーダと同様に、現在ブロックのテンプレート領域の画面内予測モードを獲得し(S260)、現在ブロックの画面内予測モードを獲得することができる(S270)。この獲得した現在ブロックの画面内予測モードによる現在ブロックの画素値、及び受信した現在ブロックの残余を用いて、現在ブロックを復元する(S280)。

0056

図3は、本発明の第1の実施例による現在ブロックのテンプレート領域の画面内予測モードを獲得する際に用いられる現在ブロックのテンプレート領域と該テンプレート領域の周囲の画素を示す図である。

0057

a〜m領域30は、現在ブロックの左側と上端に隣接し、現在ブロックの左上隅画素に隣接しており、既にコーディングされた画素であって、テンプレート領域と見なすことができる。図3において、テンプレート領域の大きさは1である。テンプレート領域の大きさは、n(n=自然数)であり、調節可能である。A〜X領域31は、テンプレート領域を基準にして左側(J〜N)、上端(A〜E)、上端左側(X)、上端右側(F〜I)に接しているコーディングされた画素である。

0058

最適の予測モードを選択するために、a〜m領域とA〜X領域との間の画素値差が計算される。垂直モードの場合、例えば、画素値差は、absolute[(m-A)+(i-A)+(j-A)+(k-A)+(l-A)+(a-B)+(b-C)+(c-D)+(d-E)]になる。同様に、9つの画面内予測モードに対してこの画素値差が計算され、この画素値差を最小とする画面内予測モードが、テンプレート領域の画面内予測モードになりうる。これにより、テンプレート領域と現在ブロックとの相互類似性を用いて現在ブロックの画面内予測モードを決定することができる。

0059

図4は、本発明の第2の実施例による現在ブロックのモーションベクトルに基づいてテンプレートマッチングを行うことで現在ブロックの修正されたモーションベクトルを獲得する手順を示すフローチャートである。

0060

デコーダで現在ブロックのモーションベクトル差値を受信し、該現在ブロックのモーションベクトル差値と現在ブロックのモーションベクトル予測値を用いて現在ブロックのモーションベクトルを獲得する。この現在ブロックのモーションベクトルを用いて、現在ブロックに対応する参照ブロックを特定し、該特定された参照ブロックとこの参照ブロックに隣接するブロックを特定する。

0061

続いて、現在ブロックのテンプレート領域と特定された参照ブロックのテンプレート領域との画素値差を計算し、また、現在ブロックのテンプレート領域と参照ブロックに隣接するブロックのテンプレート領域との画素値差を計算する(S410)。もし、現在ブロックのテンプレート領域と現在ブロックに対応する参照ブロックのテンプレート領域との画素値差が、獲得した画素値差のうちの最小値を有する場合は、本発明で提案するテンプレートマッチングを用いた修正されたモーションベクトル決定方法を用いることができる(S420)。しかし、現在ブロックのテンプレート領域と現在ブロックに対応する参照ブロックのテンプレート領域との画素値差が、前記獲得した画素値差のうちの最小値を有しない場合は、従来のブロックマッチングアルゴリズムにより獲得したモーションベクトルを用いることができる(S450)。上記隣接するブロックについては、図5で後述する。

0062

現在ブロックのテンプレート及び現在ブロックに対応する参照ブロックのテンプレート間の画素値が最小値を有しない場合、従来のブロックマッチングアルゴリズムにより得られるモーションベクトルを使用することができる。

0063

現在ブロックのテンプレート領域と現在ブロックに対応する参照ブロックのテンプレート領域との画素値差が最小値を有する場合は、テンプレートマッチングを行って得た画素値差から2次曲面を誘導することができ(S430)、この2次曲面上で画素値差を最小とする修正されたモーションベクトルを獲得することができる(S440)。

0064

従来のブロックマッチングアルゴリズムを用いてモーションベクトルを獲得する際に、モーションベクトル単位が1/4の場合、獲得した修正されたモーションベクトル単位は、(1/2)n+1になりうる(n=自然数)。この場合、動き補償予測をする時は、参照ピクチャー画素値間の補間を通じて整数画素以下の画素値を生成する。

0065

例えば、修正されたモーションベクトル単位が1/8の場合、1/8画素値を生成する方法を説明する。

0066

まず、1/2画素値は、1/2画素位置を中心に水平方向または垂直方向に在る6個の整数画素値を用いて生成することができる。1/4画素値は、この1/4画素位置を中心に水平方向、垂直方向または対角線方向に隣接している2個の画素を用いて生成することができる。1/8画素値は、この1/8画素位置を中心に水平方向、垂直方向、対角線方向に隣接している画素を用いて生成することができる。ただし、1/8画素位置が周辺画素垂直線上または水平線上となる場合には、この1/8画素に水平方向または垂直方向に隣接している2個の画素を用いて1/8画素値を生成することができ、この1/8画素位置が周辺画素と対角線上となる場合には、この1/8画素を中心に対角線方向に隣接している4個の画素を用いて生成することができる。この生成された参照ブロック内の1/8画素値を用いて現在ブロックの動き補償予測を行うことができる。

0067

以下、修正されたモーションベクトルを獲得する方法について具体的に説明する。

0068

図5は、本発明の第2の実施例による現在ブロックに対応する参照ブロックと該参照ブロックに隣接するブロックを示す図である。

0069

現在ブロックのモーションベクトルが指示する参照フレーム内のブロックが、現在ブロックに対応する参照ブロックになりうる。現在ブロックに対応する参照ブロックを中心に、モーションベクトル単位間隔で隣接するブロックを特定することができる。続いて、特定されたブロックのテンプレート領域と現在ブロックのテンプレート領域との画素値差を計算し、これにより、9個の画素値差を得ることができる。例えば、モーションベクトルの単位が1/4の場合、9個の画素位置(50)は、現在ブロックのモーションベクトルが指示する画素を中心に1/4画素間隔で互いに隣接する画素である。これら9個の画素のそれぞれに対して9個のブロックを特定することができる。

0070

以下、これら9個の画素値差から、修正されたモーションベクトルを獲得する方法について説明する。

0071

図6は、本発明の第2の実施例によるテンプレートマッチング実行結果から、現在ブロックの修正されたモーションベクトルを決定する方法を示す図である。

0072

9個の画素値差は、X軸とY軸をモーションベクトル位置とし、Z軸を画素値差とする座標上に位置させることができ、9個の画素値差のうちの6個の画素値差(51,52)を根(roots)とする2次曲面を得ることができる。現在ブロックに対応する参照ブロックの例(case)(52)が最小値を有するので、図6に示されるように、現在ブロックに対応する参照ブロックの例(52)を配置することができ、対応する参照ブロックに隣接するブロックの例(51)を配置させることができる。ここで、上記2次曲面から、画素値差を最小とするモーションベクトル位置(x,y)(53)を探すことができる。

0073

この2次曲面は、下記の等式1のように表現することができる。

0074

等式1
S(x, y) = Ax2+By2+Cxy+Dx+Ey+F

0075

この2次曲面Sが最小値を有するx、yの値は、Sをx、yでそれぞれ微分した時、0を満たす。等式1を微分すると、下記の等式2及等式3のようになる。

0076

等式2
dS/dx = 2Ax + Cy + D = 0

0077

等式3
dS/dy = 2By +Cx+E = 0

0078

上記の等式2及び等式3を満たすx、yを求めると、下記の等式4のようになる。

0079

0080

図7は、本発明の第3の実施例による現在ブロックの修正されたモーションベクトルを獲得する手順を示すフローチャートである。

0081

以下、候補参照ブロックとは、現在ブロックに対応する参照ブロックになりうる候補領域のことをいう。

0082

図7(a)を参照すると、エンコーダでは、現在ブロックのモーションベクトル予測値及び現在ブロックのモーションベクトルを獲得し、これらから現在ブロックのモーションベクトル差値(mvd)を獲得する(S710)。現在ブロックのモーションベクトル差値(mvd)に右シフト演算を行うことによって正確度の落ちた第1の現在ブロックのモーションベクトル差値(mvd')を獲得することができる(S720)。第1の現在ブロックのモーションベクトル差値(mvd')をコーディングしてデコーダに伝送する(S725)。これによって、モーションベクトル情報の伝送において必要なビット量を減らすことができる。

0083

図7(b)を参照すると、デコーダでは、現在ブロックの第1のモーションベクトル差値(mvd')を受信し(S730)、この値に左側シフト演算を行って現在ブロックの第2のモーションベクトル差値(mvd")抽出する(S740)。現在ブロックの第2のモーションベクトル差値(mvd")は、モーションベクトル単位でテンプレートマッチングを行うために抽出されたものである。

0084

したがって、現在ブロックのモーションベクトル予測値と現在ブロックの第2のモーションベクトル差値(mvd")とを合算して得たモーションベクトルを基準に一定範囲内の候補参照ブロックと現在ブロックとのテンプレートマッチングを行う(S750)。すなわち、現在ブロックのテンプレート領域と候補参照ブロックのテンプレート領域との画素値差を計算し、この画素値差を最小とする候補参照ブロックを、現在ブロックに対応する参照ブロックとすることができる。ただし、この獲得した参照ブロックが、現在ブロックのモーションベクトル予測値と現在ブロックのモーションベクトル差値(mvd)を用いて獲得した参照ブロックと同一であっても良い。当該獲得した参照ブロックから、現在ブロックの修正されたモーションベクトルを獲得することができる(S760)。

0085

以下、現在ブロックとテンプレートマッチングを行う候補参照ブロックの範囲について説明する。

0086

図8は、本発明の第3の実施例によるモーションベクトルの単位が1/4の場合、現在ブロックとテンプレートマッチングを行う候補参照ブロックの範囲を示す図である。

0087

図8(a)は、現在ブロックのモーションベクトル差値(mvd)を右シフト演算して現在ブロックの第1のモーションベクトル差値(mvd')を獲得する際に、切り捨てして得た場合の実施例である。

0088

現在ブロックのモーションベクトル予測値(80)と現在ブロックのモーションベクトル(81)が、図8(a)に示すように位置する場合、現在ブロックのモーションベクトル差値(mvd)は1になることができ、現在ブロックの第1のモーションベクトル差値(mvd')は、下記の等式5のようにシフト演算を行って得ることができる。

0089

等式5
mvd' = mvd >> 2 = 0

0090

現在ブロックの第1のモーションベクトル差値(mvd')は、モーションベクトル単位でテンプレートマッチングを行うために下記の等式6のようにシフト演算を行い、これで、現在ブロックの第2のモーションベクトル差値(mvd")を得ることができる。

0091

等式6
mvd" = mvd' << 2 = 0

0092

現在ブロックの第2のモーションベクトル差値と現在ブロックのモーションベクトル予測値とを合算して得たモーションベクトル位置(82)を、基準画素と設定する。

0093

現在ブロックの第1のモーションベクトル差値を得る際に、シフト演算を実行することにより、現在ブロックのモーションベクトル差値の正確度を低下させることにより生じる整数単位の正確度値のみが抽出され、整数より下の低下した正確度部分は切り捨てられる。候補参照ブロックの範囲は、基準画素(82)から右側3番目の画素までになりうる。

0094

図8(b)は、現在ブロックのモーションベクトル差値(mvd)にシフト演算を行うことで、現在ブロックの第1のモーションベクトル差値(mvd')を獲得する際に四捨五入して得た場合の実施例である。

0095

現在ブロックのモーションベクトル予測値(83)と現在ブロックのモーションベクトル(84)が図8(b)のようになる場合、現在ブロックのモーションベクトル差値(mvd)は、1である。

0096

現在ブロックのモーションベクトル差値(mvd)から整数部分を抽出するためにシフト演算を行うと、下記の等式7のようになる。

0097

等式7
mvd' = (mvd+2) >> 2 = 0

0098

同様に、この現在ブロックの第1のモーションベクトル差値(mvd')にシフト演算を行うことで現在ブロックの第2のモーションベクトル差値(mvd")を獲得する。

0099

等式8
mvd" = mvd' << 2 = 0

0100

この現在ブロックの第2のモーションベクトル差値(mvd")と現在ブロックのモーションベクトル予測値とを合算して得たモーションベクトル位置を、基準画素(85)と設定する。図8(b)は、現在ブロックの第1のモーションベクトル差値(mvd')を得るために四捨五入した場合であるから、候補参照ブロックの範囲は、基準画素(85)の左側2番目から右側1番目までになりうる。

0101

図9は、本発明の第4の実施例による現在ブロックに対応する参照ブロックを特定する際に、画面間照度差を考慮する方法を示す図である。

0102

Xは、現在ブロックの予測された画素値を、X'は現在ブロックのテンプレート領域の画素値を、Yは候補参照ブロックの画素値を、Y’は候補参照ブロックに接しているテンプレート領域の画素値をそれぞれ表す。

0103

もし、照度差を考慮せずにテンプレートマッチングを用いて現在ブロックの画素値を予測する場合、現在ブロックのテンプレート領域と候補参照ブロックのテンプレート領域との画素値差は、absolute[X'-Y']になり、この画素値差が最小になる候補参照ブロックを、現在ブロックに対応する参照ブロックと特定する。したがって、候補参照ブロックAの場合、画素値差はabsolute[12-6]=6であり、候補参照ブロックBの場合、画素値差はabsolute[12-8]=4であるから、候補参照ブロックBが現在ブロックに対応する参照ブロックとして選択され、参照ブロックBのYを、現在ブロックの予測された画素値とする。この場合、現在ブロックの予測値は、2だけ歪みが発生する。

0104

しかし、画面間照度差を考慮する場合、現在ブロックのテンプレート領域と候補参照ブロックのテンプレート領域との画素値差(D)は、下記の等式9で表現することができる。

0105

等式9
D = absolute[X' - (aY' + b)]

0106

等式9で、X'は、現在ブロックのテンプレート領域の画素値を、Y'は、候補参照ブロックに接しているテンプレート領域の画素値を、a及びbは、画素値差が最小にさせる実数をそれぞれ表す。

0107

候補参照ブロックAのテンプレート領域と現在ブロックのテンプレート領域との画素値差が最小値を有すると、現在ブロックに対応する参照ブロックとして候補参照ブロックAを選択することができる。この場合、画素値差を最小にさせるaとb値がそれぞれ、1と2であれば、画素値差は0になり、現在ブロックの予測された画素値Xは、aY+b=6と予測することができる。この場合、現在ブロックには歪みが生じない。

0108

図10は、本発明の第5の実施例によるテンプレートマッチングを行うか否かを指示するフラグ使用を具現したシンタックステーブルである。

0109

マクロブロックのタイプのそれぞれに対してテンプレートマッチングを行うか否かを確認することができる。例えば、テンプレートマッチングを行うか否かを指示するフラグ情報を用いることができる。マクロブロックタイプに関する情報(mb_type)を受信し(S110)、現在マクロブロックのタイプが16*16の場合、現在マクロブロックの予測においてテンプレートマッチングを行うか否かを指示するフラグ情報(tm_active_flag)を受信することができる(S120)。

0110

なお、現在マクロブロックのタイプが16*8または8*16の場合にも、それぞれのパーティションに対してテンプレートマッチングを行うか否かを指示するフラグ情報(tm_active_flags[mbPartIdx])を受信することができる(S130)。マクロブロックのタイプのそれぞれに対してテンプレートマッチングを行うか否かを指示するフラグ情報を使用することによって、適応的にテンプレートマッチングを行うことが可能になる。

0111

図11は、本発明の第5の実施例によるテンプレートマッチングを行うか否かを指示するフラグの再配列方法を具現したシンタックステーブルである。

0112

現在ブロックの予測においてテンプレートマッチングを行うか否かを指示するフラグ情報を、マクロブロックのタイプに関する情報を受信するに先立って受信し(S310)、テンプレートマッチングを行うと指示しなかった場合、マクロブロックのタイプに関する情報を受信することで、従来のデコーディング方法を用いることができる(S320)。

0113

しかし、テンプレートマッチングを行うと指示した場合、マクロブロックのタイプに関する情報をデコーディングせずにマクロブロックのタイプを16*16に設定することができる(S330)。

0114

サブマクロブロックの場合にも同様、サブマクロブロック内のパーティションのそれぞれに対してテンプレートマッチングを行うか否かを指示するフラグ情報を受信し(S340)、テンプレートマッチングを行うと指示しなかった場合、マクロブロック内のパーティションに関する情報を受信することで従来のデコーディング方法を用いることができる(S350)。

0115

しかし、テンプレートマッチングを行うと指示した場合は、サブマクロブロックのタイプを8*8に設定することができる(S360)。

0116

ここでは好適な実施例に挙げて本発明を説明及び図示したが、本発明の精神及び思想を逸脱しない範囲内で、当該技術分野における通常の知識を有する者にとっては、様々な変形及び修正が可能であるということは明らかである。したがって、添付の請求項及びその均等範囲における変形及び修正はいずれも本発明の範囲に含まれる。

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

該当するデータがありません

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

該当するデータがありません

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ