JP4813328B2 - 符号化装置、符号化方法、及びプログラム - Google Patents

符号化装置、符号化方法、及びプログラム Download PDF

Info

Publication number
JP4813328B2
JP4813328B2 JP2006305148A JP2006305148A JP4813328B2 JP 4813328 B2 JP4813328 B2 JP 4813328B2 JP 2006305148 A JP2006305148 A JP 2006305148A JP 2006305148 A JP2006305148 A JP 2006305148A JP 4813328 B2 JP4813328 B2 JP 4813328B2
Authority
JP
Japan
Prior art keywords
prediction mode
encoding
image data
block
blocks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006305148A
Other languages
English (en)
Other versions
JP2008124699A (ja
Inventor
真吾 長滝
靖昭 徳毛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2006305148A priority Critical patent/JP4813328B2/ja
Publication of JP2008124699A publication Critical patent/JP2008124699A/ja
Application granted granted Critical
Publication of JP4813328B2 publication Critical patent/JP4813328B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

本発明は、符号化装置、符号化方法、及びプログラムに関する。
近年、画像符号化技術、画像符号化方式の発展はめざましく、薄型テレビ、HDDレコーダに代表されるデジタル家電製品などに幅広く応用されている。
なかでも、非特許文献1に記載される画像符号化方式は、デジタル放送や、光ディスクの規格にも採用されており、今後ますます利用範囲が拡大していくことが期待される。
非特許文献1、2に記載される画像符号化方式などにおいて、映像データは、一連の静止画像データ(以下、単に画像データという。)により構成される。各画像データはスライスと呼ばれる単位に分割されて符号化される。ここで、各スライスは1つ以上のマクロブロック(縦16画素、横16画素からなる矩形のブロック)から構成される。
符号化装置は、マクロブロック毎に、同一画像データ内の相関または画像データ間の相関のいずれかを利用した予測画像データを生成する。具体的には、符号化装置は、まず予測モードを決定し、決定した予測モードを用いて、予測画像データを生成する。
この予測モードは、大きく分けてイントラ予測モードとインター予測モードの2種類に分類される。符号化装置は、マクロブロック毎に、イントラ予測モード又はインター予測モードのいずれかを選択し、選択した予測モードを用いて予測画像データを生成する。イントラ予測モードとインター予測モードは、それぞれ以下に説明する複数の予測モードに細分される。以下、イントラ予測モードとインター予測モードそれぞれについて、詳細に説明する。
イントラ予測モードにおいては、符号化装置は、同一画像データ内の相関を用いて予測画像データを生成する。具体的には、各符号化方式において規定される1又は複数のイントラ予測画像データ生成方法(一例では、符号化対象のマクロブロックの真上に隣接するマクロブロック(既に符号化済み)の再生画像のうち、最も下のラインの画素値をそのまま下に引き伸ばして予測画像データを生成する方法。また、他の一例では、符号化対象マクロブロックの真左に隣接するマクロブロック(既に符号化済み)の再生画像のうち、最も右のラインの画素値をそのまま下に引き伸ばして予測画像データを生成する方法。)から最適な方法を選択した上で、同一画像データ内の既符号化部分の再生データを用いて、予測画像データを生成する。イントラ予測モードにかかる各予測モードは、イントラ予測画像データ生成方法により特定される。以下では、イントラ予測画像データ生成方法を特定するための情報をイントラ予測モード情報と称する。
インター予測モードにおいては、符号化装置は、まず前予測、後予測、双方向予測といった動き予測の方向を決定し、決定結果に応じて、過去に符号化した画像データの中から予測画像データの生成に使用する画像データ(参照画像)を選択する。なお、前予測、後予測では1枚、双方向予測では2枚の参照画像がそれぞれ選択される。次に、選択した画像データごとに、当該マクロブロックの内容に最も近い領域を特定し、当該マクロブロックと前記領域の相対的な位置関係を動きベクトルとして抽出する。そして、参照画像を動きベクトルに基づいて変化させることにより、予測画像データを生成する。以下では、こうして決定される予測の方向を示す情報を予測方向情報と称する。また、選択される参照画像を特定する情報を参照画像インデックスと称する。さらに、動きベクトルを示す情報を動きベクトル情報と称する。
ここで、インター予測において選択される参照画像は必ずしもマクロブロックの単位で選択されるわけではなく、例えばマクロブロックを更に縦横2分割したサブマクロブロック単位で選択されることもある。参照画像がサブマクロブロックの単位で選択される場合、マクロブロックの分割方法を示す情報が復号時に必要となる。以下では、この情報を分割情報と称する。
インター予測モードにかかる各予測モードは、予測方向、参照画像、動きベクトル、及び分割方法の組み合わせにより特定される。以下では、予測モードを特定するこれらの組み合わせを示す情報(予測方向情報、参照画像インデックス、動きベクトル情報、及び分割情報の組み合わせ)をインター予測モード情報と称する。
なお、イントラ予測モードのみを使用して符号化されたスライスはイントラスライス、インター予測モードも使用して符号化されたスライスはインタースライスと呼ばれる。
符号化装置は、生成した予測画像データと当該ブロックの差分を示す差分データと、上記イントラ予測モード情報又はインター予測モード情報と、を符号化することにより、当該ブロックに対応する符号化データを得る。これにより、画像データが持つデータ量の大幅な削減が実現される。
特許文献1には、非特許文献1に記載される画像符号化方式を用いて画像データを符号化する際に発生しやすい平坦領域(画像データの複雑さが比較的小さい領域)での画質劣化を、平坦領域に属するブロックでインター予測モードが選択され易くすることにより抑制することに関する画像符号化技術が提案されている。すなわち、特許文献1に記載の符号化装置は、平坦領域に属するブロックでは、符号化効率の観点から、インター予測モード及びイントラ予測モードのうち、イントラ予測モードが選択されやすい傾向にあるところ、平坦領域をイントラ予測モードで符号化すると、ノイズ等の影響により、イントラ予測画像データ生成方法がブロック毎に頻繁に切り換わり、特に低ビットレートで符号化する場合に、符号化データを再生した際、その切り換わりが視覚的に知覚されてしまうという問題意識に基づき、平坦領域に属するブロックでイントラ予測モードが選択されにくいようにしている。
また、特許文献2には、既に符号化された画像データの入力を受け付け、一旦復号化して再度符号化する再符号化装置の例が記載されている。この再符号化装置は、入力された符号化画像データから上記イントラ予測モード情報又はインター予測モード情報を取り出し、その中のいくつかを踏襲しつつ、符号化データを得ている。
特開2006−94081号公報 特開平7−288804号公報 「国際標準化機構(ISO)/国際電気標準会議(IEC) 14496−10」,2005年 「国際標準化機構(ISO)/国際電気標準会議(IEC) 13818−2」,2002年
しかしながら、特許文献1に記載の技術により平坦領域に属するブロックがインター予測モードにより符号化されるようにしたとしても、予測モードの切り換え(予測方向、参照画像、動きベクトル、及び分割方法のうちいずれか少なくとも1つの切り換え)がブロック毎に頻繁に行われるとやはり、特に低ビットレートで符号化する場合に、ブロック境界における画質の劣化が人間の目に知覚されることになる。
以下、ブロック単位で参照画像が切り換わることによる画質劣化について図面を用いて説明する。
図17は、符号化対象である画像データの一例を示すイメージ図である。図17に示す画像データは、横8×縦6のブロックに分割されて符号化されるものとする。ここで、ブロックO01、ブロックO02、ブロックO03は、1つの平坦領域を構成するブロック群であり、水平方向に連続している。また、線分O04は、ブロックO01、O02、O03を横断する線分である。
図18(a)は、図17に示す画像データにおける線分O04上の画素値の変化を示すイメージ図である。横軸は、画素の水平方向の位置を表し、縦軸は、各位置における画素値を表している。区間PA01、区間PA02、区間PA03は、それぞれブロックO01、O02、O03に対応している。
図18(b)、(c)は、いずれも、図17に示す画像データを符号化する際、参照画像をブロック毎に切り換えずに、1枚の参照画像を用いて予測画像データの生成を行った結果得られる予測画像データにおける線分O04上の画素値の変化の例を示すイメージ図である。ここで、図18(b)に示す予測画像データを生成するときに使用する参照画像を参照画像A、図18(c)に示す予測画像データを生成するときに使用する参照画像を参照画像Bとし、参照画像Aと参照画像Bは異なる画像であるとする。区間PB01、PB02、PB03は、それぞれ、ブロックO01、O02、O03についての予測画像データの画素値を表し、区間PC01、PC02、PC03は、それぞれ、ブロックO01、O02、O03についての予測画像データの画素値を表す。図18(a)に示す画像データと、図18(b)、(c)に示す予測画像データの対応する位置の画素同士の画素値の差分は、画素の位置にかかわらず概ね一定の値である。図18(b)、(c)に示すような状態は、例えば、動きの小さい平坦な物体を、蛍光灯のように照度の時間的変動(フリッカー)が発生する光源下で撮影してなる映像データや、フェードインやフェードアウトなどのエフェクトを施してなる映像データを符号化する際に生じやすい。
一方、図18(d)は、図17に示す画像データを符号化する際、参照画像をブロック毎に切り換えた結果得られる予測画像データにおける線分O04上の画素値の変化の一例を示すイメージ図である。ここで、区間PD01、PD02、PD03は、それぞれ、ブロックO01、O02、O03についての予測画像データの画素値を表しており、区間PD01、PD03は、参照画像Aにより予測画像データが生成され、区間PD02は、参照画像Bにより予測画像データが生成されている。
図18(d)に示す予測画像データには、ブロック境界(区間PD01と区間PD02の境界及び区間PD02と区間PD03の境界)において、図18(b)、(c)に示す予測画像データには存在しない、画素値のギャップが存在する。そして、このギャップは、量子化スケールの値が大きい場合には、符号化データを再生した際、ほぼそのままの形で現われる。
つまり、例え、符号化効率の観点から図18(d)に示す予測画像データが生成される予測モードが最適モードであったとしても、劣化が目立ちやすい平坦領域に属するブロックO01、O02、O03に関しては、あえて図18(b)または図18(c)に示す予測画像データが生成される予測モードを選択するほうが、つまり、いずれのブロックについても同じ参照画像を用いて予測するほうが、上記ギャップが存在しない分、主観的な画質向上の観点からは好ましいのである。
換言すれば、平坦領域における画質劣化を抑制するためには、特許文献1に記載の技術のようにインター予測モードが優先的に選ばれるようにするだけでは不十分で、ブロック毎の予測モードの頻繁な切り換わりについて制限することが望まれる。
従って、本発明の課題の一つは、平坦領域におけるブロック毎の予測モードの切り換わりを制限することで、再生画像の画質向上に資する符号化装置、符号化方法、及びプログラムを提供することにある。
上記課題の本発明にかかる符号化装置は、複数のブロックから構成される画像データについて、前記ブロック単位で予測モードを切り換えて符号化を行う符号化装置であって、前記画像データ中の平坦領域を抽出する平坦領域抽出手段と、前記ブロック毎に予測モードを決定する予測モード決定手段と、を含み、前記予測モード決定手段は、前記平坦領域に属するブロックのうちの少なくとも一部の間で予測モードが統一されるよう、各ブロックについての予測モードを決定する、ことを特徴とする。
これによれば、平坦領域におけるブロック毎の予測モードの切り換わりが制限できるので、再生画像の画質が向上する。
また、本発明の別の一側面にかかる符号化装置は、複数のブロックから構成される画像データについて、前記ブロック単位で予測モードを切り換えて符号化を行う符号化装置であって、前記画像データ中の平坦領域を抽出する平坦領域抽出手段と、前記平坦領域に属するブロックのうちの少なくとも一部について予測モードを決定する際の基準とする基準予測モードを決定する基準予測モード決定手段と、前記平坦領域に属するブロックのうちの前記少なくとも一部について、前記基準予測モード決定手段により決定される前記基準予測モードに基づき、予測モードを決定する予測モード決定手段と、を含むことを特徴とする。
これによっても、平坦領域におけるブロック毎の予測モードの切り換わりが制限できるので、再生画像の画質が向上する。
また、上記各符号化装置において、前記平坦領域抽出手段は、画像データの複雑さを表すアクティビティの値を用いて、前記平坦領域を抽出する、こととしてもよい。
また、上記符号化装置において、当該符号化装置は、前記画像データを符号化する際、所与の量子化パラメータを用いる量子化処理を行い、前記平坦領域抽出手段は、前記量子化パラメータの値を用いて、前記平坦領域を抽出する、こととしてもよい。
また、上記各符号化装置において、前記平坦領域は、空間的に連続する2以上のブロックにより構成される、こととしてもよい。
また、上記各符号化装置において、前記予測モード決定手段は、前記複数のブロックそれぞれについて予測モードを決定し、前記基準予測モード決定手段は、前記平坦領域に属するブロックのうち、前記予測モード決定手段により最初に予測モードが決定されるブロックについての予測モードを、前記基準予測モードとして決定する、こととしてもよい。
また、上記各符号化装置において、前記画像データは、ブロック単位で予測モードを切り換えて符号化されており、当該符号化装置は、前記画像データを一旦復号した後、前記ブロック単位で予測モードを切り換えて再度符号化し、前記基準予測モード決定手段は、前記平坦領域に属するブロックそれぞれについて、前記画像データが符号化された際に用いられた予測モードを取得し、その中の最頻の予測モードを、前記基準予測モードとして決定する、こととしてもよい。
また、上記各符号化装置において、前記予測モードは、予測方向、参照画像、動きベクトル、及び分割情報のうちいずれか少なくとも1つにより特定される、こととしてもよい。
また、本発明にかかる符号化方法は、複数のブロックから構成される画像データについて、前記ブロック単位で予測モードを切り換えて符号化を行う符号化方法であって、前記画像データ中の平坦領域を抽出する平坦領域抽出ステップと、前記平坦領域に属するブロックのうちの少なくとも一部について予測モードを決定する際の基準とする基準予測モードを決定する基準予測モード決定ステップと、前記平坦領域に属するブロックのうちの前記少なくとも一部について、前記基準予測モード決定ステップにおいて決定される前記基準予測モードに基づき、予測モードを決定する予測モード決定ステップと、を含むことを特徴とする。
また、本発明にかかるプログラムは、複数のブロックから構成される画像データについて、前記ブロック単位で予測モードを切り換えて符号化を行う符号化装置としてコンピュータを機能させるためのプログラムであって、前記画像データ中の平坦領域を抽出する平坦領域抽出手段、前記平坦領域に属するブロックのうちの少なくとも一部について予測モードを決定する際の基準とする基準予測モードを決定する基準予測モード決定手段、及び前記平坦領域に属するブロックのうちの前記少なくとも一部について、前記基準予測モード決定手段により決定される前記基準予測モードに基づき、予測モードを決定する予測モード決定手段、として前記コンピュータをさらに機能させるためのプログラムである。
本発明によれば、再生画像の画質が向上する。
以下、本発明の実施の形態について、図面を参照しながら説明する。
[実施形態1]
図1は、本発明の実施形態1にかかる符号化装置1aの構成を示す概略ブロック図である。同図に示すように、符号化装置1aは、A/D(アナログディジタル変換回路)2、画面並べ替えバッファ3、減算回路4、直交変換回路7、量子化回路8、可逆符号化回路10、蓄積バッファ11、逆量子化回路13、逆直交変換回路14、デブロックフィルタ回路15、フレームメモリ16、加算回路17、アクティビティ算出回路42a、レート制御回路43、動き予測・補償回路44、イントラ・インター判定回路45a、イントラ予測回路46、領域情報設定回路51a、領域情報メモリ52aを含んで構成される。これらの各構成要素は、映像を符号化するための一連の処理を行うためのものである。
以下では、符号化のための一般的な構成についてまず説明し、その後、平坦領域におけるブロック毎の予測モードの切り換わりを制限するための構成について説明する。
A/D2は、ビデオ信号をアナログディジタル変換して画像データを出力する。
画面並べ替えバッファ3は、A/D2から出力される画像データを入力し、符号化処理に係るGOP(Group of Pictures)構造に応じて、画像データのフレームを並べ替えて出力する。
アクティビティ算出回路42aは、処理対象の画像データについて、ブロック(縦16画素、横16画素からなる矩形のブロックであるマクロブロック、またはマクロブロックを更に縦横2分割したサブマクロブロック)毎に画像の平坦度を示すパラメータ(アクティビティ)を計算、出力する。アクティビティの値は画像データの複雑さを示している。具体的なアクティビティとしては、例えばマクロブロック単位でアクティビティを導出する場合、式(1)に示すようなマクロブロックに含まれる画素値の分散が用いられる。ただし、式(1)における変数actが該分散である。また、Pはk番目の画素の画素値であり、Pの上に線を引いてなる記号は、各Pの平均値である。また、ここではkを、1から256までの自然数であるとしている。このようにしているのは、マクロブロックの画素数が16×16=256であるためである。
Figure 0004813328
レート制御回路43は、アクティビティ算出回路42aにより得られるアクティビティと後述する蓄積バッファ11の空き容量とに基づき、レート制御の処理を実行する。レート制御回路43は、レート制御の処理結果に応じて量子化パラメータを取得し、出力する。
イントラ・インター判定回路45aは、後述するイントラ予測回路46から、ブロック毎に誤差値SA(T)D、オフセット値SA(T)D0の入力を受け付ける。そして、ブロック毎に、イントラ予測モードにかかる全ての予測モード(イントラ予測画像データ生成方法)について、それぞれコスト値Cost(Mode)を算出する。ここで、変数Modeは予測モードを示す。なお、イントラ・インター判定回路45aは、イントラ予測モードにかかる全ての予測モードではなく、その中から処理速度の観点などに基づいて選択された1以上の予測モードのみについて、それぞれコスト値Cost(Mode)を算出することとしてもよい。
また、イントラ・インター判定回路45aは、ブロック毎に、後述する動き予測・補償回路X44からコスト値Cost(Mode)の入力を受け付ける。こうして受け付けられるコスト値Cost(Mode)は、ブロック毎に、インター予測モードにかかる全ての予測モード(予測方向、参照画像、動きベクトル、及び分割方法の組み合わせ)又はその中から後述のようにして選択された1以上の予測モードについて、それぞれ算出されたコスト値Cost(Mode)のうち、その値が最も小さいものである。
イントラ・インター判定回路45aは、算出したコスト値Cost(Mode)と、動き予測・補償回路44から入力されたコスト値Cost(Mode)と、を比較し、最もコスト値Cost(Mode)が小さくなる予測モードをブロック毎に決定する。そして、決定した予測モードによる予測画像データを出力するよう、イントラ予測回路46又は動き予測・補償回路44に指示する。
なお、イントラ・インター判定回路45aは、式(2)により、各ブロックについてのコスト値Cost(Mode)を算出する。
Figure 0004813328
なお、誤差値SA(T)Dは、各ブロックについて、画像データと予測モードModeにおける予測画像データとの画素値差分の絶対値誤差和(SAD)、又は該画素値差分を直交変換して得られる直交変換係数の絶対値和(SATD)のいずれかである。いずれであるにしても、誤差値SA(T)Dの値が小さいことは、画像データと予測画像データの差分が小さい、つまり、差分データの符号量が小さくなることを示唆し、ひいては、予測モードModeにおける符号化効率が高くなることを示唆する。
また、オフセット値SA(T)D0は、イントラ予測モード情報の符号化にかかるコスト(例えばイントラ予測モード情報の符号量)を示す。
動き予測・補償回路44は、イントラ・インター判定回路45aの制御により、ブロック毎に、インター予測モードにかかる全ての予測モード(予測方向、参照画像、動きベクトル、及び分割方法の組み合わせ)について、式(2)を用い、それぞれコスト値Cost(Mode)を算出する。ただし、この場合、オフセット値SA(T)D0は、インター予測モード情報の符号化にかかるコスト(例えばインター予測モード情報の符号量)を示す。なお、動き予測・補償回路44も、イントラ・インター判定回路45aと同様、インター予測モードにかかる全ての予測モードではなく、その中から処理速度の観点などに基づいて選択された1以上の予測モードのみについて、それぞれコスト値Cost(Mode)を算出することとしてもよい。
そして、算出した各コスト値Cost(Mode)を比較し、最もその値が小さいCost(Mode)をイントラ・インター判定回路45aに出力する。また、この出力に応じたイントラ・インター判定回路45aからの指示に応じて予測画像データを生成し、イントラ・インター判定回路45aを介して、減算回路4に出力する。
イントラ予測回路46は、イントラ・インター判定回路45aの制御により、イントラ予測モードにかかる全ての予測モード(イントラ予測画像データ生成方法)について、上記誤差値SA(T)D及びオフセット値SA(T)D0を算出し、イントラ・インター判定回路45aに出力する。また、この出力通知に応じたイントラ・インター判定回路45aからの指示に応じて予測画像データを生成し、イントラ・インター判定回路45aを介して、減算回路4に出力する。
減算回路4は、画面並べ替えバッファ3から画像データの入力を受け付け、イントラ予測回路46や動き予測・補償回路44により生成される予測画像との差分データを生成して出力する。
直交変換回路7は、減算回路4から差分データの入力を受け付け、離散コサイン変換などの直交変換処理を実行し、その処理結果として得られる変換係数データを出力する。
量子化回路8は、レート制御回路43から入力される量子化パラメータを用いて、直交変換回路7が出力する変換係数データを量子化して出力する。具体的には、変換係数データを量子化パラメータで決定される除数によって除算し、その結果を小数点以下を切り捨てることにより、量子化された変換係数データを取得し、出力する。この処理では、量子化パラメータの値が大きいほど、対応する上記除数も大きくなり、結果として切り捨てられる情報量も多くなる。
可逆符号化回路10は、量子化回路8の出力データを可変長符号化、算術符号化などにより可逆符号化処理する。また、可逆符号化回路10は、ブロック毎に、イントラ予測回路46や動き予測・補償回路44が生成する各予測モード情報などを、ヘッダ情報として設定する処理も行う。可逆符号化回路10は、以上の各処理の結果得られる符号化データを出力する。
蓄積バッファ11は、可逆符号化回路10が出力した符号化データを蓄積し、後続する伝送路の伝送速度に応じて出力する。こうして出力された符号化データは、その符号化データを読み出す装置又は受信する装置によって復号され、映像として再生される。これらの装置には、従来公知のものを使用して差し支えない。
逆量子化回路13は、量子化回路8の出力データを逆量子化処理し、これにより量子化回路8に入力された変換係数データを再生する。
逆直交変換回路14は、逆量子化回路13の出力データを逆直交変換処理し、直交変換回路7に入力された差分データを再生する。
加算回路17は、逆直交変換回路14から出力される再生差分データに、適宜、イントラ予測回路46や動き予測・補償回路44により生成される予測画像データを加算し、再生画像データとして出力する。
デブロックフィルタ回路15は、加算回路17が出力した再生画像データからブロック歪を除去して出力する。
フレームメモリ16は、デブロックフィルタ回路15が出力したブロック歪除去後の再生画像を、参照画像として用いるために記録する。
以下、平坦領域におけるブロック毎の予測モードの切り換わりを制限するための構成について説明する。
領域情報設定回路51aは、アクティビティ算出回路42aからアクティビティ、レート制御回路43から量子化パラメータ、イントラ予測回路46や動き予測・補償回路44から各予測モード情報、の入力をそれぞれ受け付ける。そして、そのうち上記アクティビティ及び量子化パラメータの値を用いて、画像データ中の平坦領域を抽出し、抽出した平坦領域を特定するための平坦領域情報と、該平坦領域についての代表的な予測モード(該平坦領域情報により示される平坦領域に属する各ブロックについて予測モードを決定する際の基準とする基準予測モード)を示す基準予測モード情報と、を対応付けてなる領域情報を生成し、出力する。この基準予測モードを決定するための処理については後述する。
領域情報メモリ52aは、領域情報設定回路51aが出力する領域情報を少なくとも1画像データ分格納する。
図2は、1画像データ分の領域情報の具体的な格納形式の一例を示すイメージ図である。同図に示す領域情報の格納形式においては、領域情報設定回路51aは、1画像データに含まれる平坦領域を1つの平坦領域として取り扱い、該1つの平坦領域についての基準予測モード情報を、そのまま領域情報として領域情報メモリ52aに格納する。なお、平坦領域が存在しない画像データについては、無効な予測モードに関する情報(無効予測モード情報)が領域情報として格納される。
イントラ・インター判定回路45aは、領域情報メモリ52aに格納される領域情報に基づいて動き予測・補償回路X44とイントラ予測回路X46を制御し、ブロック毎に予測モードを決定する。この場合において、イントラ・インター判定回路45aは、平坦領域に属するブロックの間で予測モードが統一されるよう、各ブロックについての予測モードを決定する。
以下、具体的に説明する。イントラ・インター判定回路45aは、画像データ中の各ブロックについて、所定の順序で順次予測モードを決定していく。領域情報設定回路51aは、こうして順次決定される予測モードを動き予測・補償回路44又はイントラ予測回路46を介して順次受け取り、平坦領域に属するブロックのうち、最初に予測モードが決定されるブロックについての予測モードを、基準予測モードとして決定する。領域情報設定回路51aは、こうして決定した基準予測モードに基づいて領域情報を生成し、領域情報メモリ52aに記憶させる。
イントラ・インター判定回路45aは、領域情報メモリ52aに基準予測モード情報が記憶されている場合に、平坦領域に属するブロックについて、該基準予測モード情報により示される基準予測モードに基づき、予測モードを決定する。より具体的には、基準予測モードを、該ブロックの予測モードとする。
以下、フローチャートを用いて、上述した予測モード決定の方法についてより詳細に説明する。
図3は、符号化装置1aが、領域情報の初期化を行う際の動作フローチャートの一例を示す図である。同図に示す動作フローチャートの処理は、1つの画像データの符号化処理の開始直前に呼び出される。
符号化処理開始後、領域情報設定回路51aは、領域情報メモリ52aの内容を初期化し(ステップSF01)、処理を終了する。なお、初期化とは、領域情報の初期値として上記無効予測モード情報を格納することを意味する。つまり、画像データの符号化の開始直前の時点では、平坦領域は存在しないものとして領域情報が設定される。
図4は、符号化装置1aが、各ブロックを符号化する際の動作フローチャートの一例を示す図である。
アクティビティ算出回路42aは、符号化対象のブロックについて、アクティビティを求める(ステップSF11)。続いて、レート制御回路43は、量子化パラメータを求める(ステップSF12)。
次に、領域情報設定回路51aは、ステップSF11で求められたアクティビティが所定の閾値THA1以下であるか否か、つまり、符号化対象のブロックが平坦であるか否かを、判定する(ステップSF13)。ここで、閾値THA1は、定数であってもよいし、量子化パラメータなどに依存する変数であってもよい。より具体的には、閾値THA1は、ステップSF12で求められた量子化パラメータの値が所定値以上の場合は所定の正の定数に設定され、該量子化パラメータの値が所定値未満の場合はゼロに設定される変数である。
アクティビティの値が閾値THA1以下でない場合は(ステップSF13における否定判定)、イントラ・インター判定回路45aは予測モードを決定し(ステップSF14)、符号化装置1aの処理は後述するステップSF19に移行する。ステップSF14における予測モードの決定動作は、イントラ予測モードにかかる全ての予測モード及びインター予測モードにかかる全ての予測モードを含む全ての予測モードの中から最適なものを決定するような動作であってもよいし、処理速度の観点などから限定された予測モードの中から最適なものを決定するような動作であってもよい。
一方、アクティビティの値が閾値THA1以下である場合には(ステップSF13における肯定判定)、イントラ・インター判定回路45aは、領域情報が初期値(無効予測モード情報)のままであるか否かを判定する(ステップSF15)。
領域情報が初期値のまま更新されていない場合には(ステップSF15における肯定判定)、イントラ・インター判定回路45aは、インター予測モードにかかる全ての予測モード又はそのうちの一部の中から最適なものを決定する(ステップSF16)。領域情報設定回路A51aは、決定された予測モードを示す予測モード情報で領域情報メモリ52a内の領域情報を更新し(ステップSF17)、符号化装置1aの処理は後述するステップSF19に移行する。つまり、1つの画像データを構成する全てのブロックを符号化する過程において、最初に平坦であると判定されたブロックについて決定された予測モードが、該画像データ内の平坦領域における代表的な予測モードとして、領域情報メモリ52aに保存されることとなる。
なお、ステップSF16において、インター予測モードのみに限定して予測モードを決定するのは、アクティビティの低い領域においてイントラ予測モードが選択されないようにすることで画質の劣化をより抑えることができるためであるが、ステップSF14同様、全ての予測モードの中から最適なものを決定するようにしても構わない。
なお、ステップSF16においては、決定する予測モードの候補をインター予測モードにかかる全ての予測モードのみに完全に限定するのではなく、イントラ予測モードにかかる全ての予測モードも含む全ての予測モードを候補とし、かつインター予測モードにかかる予測モード候補が選択され易くすることとしてもよい。以下、このための具体的な処理について説明する。
動き予測・補償回路44は、インター予測モードに関するオフセット値SA(T)D0を、式(3)によって計算する。ここで、QP0(QP)は、量子化パラメータQPを量子化スケールに変換する関数であり、オフセット値SA(T)D0のオーダーを誤差値SA(T)Dと揃える目的で導入されているものである。
Figure 0004813328
他方、イントラ・インター判定回路45aは、イントラ予測モードに関するオフセット値SA(T)D0を、式(4)によって計算する。
Figure 0004813328
ここで、MBactは、アクティビティ算出回路42aにより得られるアクティビティであり、f(MBact)は、アクティビティMBactを変数とする所定の単調減少関数である。この関数f(MBact)を適切に定義してオフセット値SA(T)D0を算出することで、アクティビティMBactの値が小さいときに、イントラ予測モードにかかるオフセット値SA(T)D0、更には、イントラ予測モードにかかるコスト値Cost(Mode)が大きくなるようにすることができる。一方、このようにしてもインター予測モードに関するオフセット値SA(T)D0には影響がないので、インター予測モードにかかるコスト値Cost(Mode)に変化はなく、結局、イントラ予測モードの選択頻度が下がることになる。すなわち、インター予測モードにかかる予測モード候補が選択され易くなる。
さて、領域情報がステップSF17の処理により既に更新されていた場合は(ステップSF15における否定判定)、イントラ・インター判定回路45aは、インター予測モードにかかる全ての予測モード又はそのうちの一部の中から領域情報の内容に応じた制限の下で予測モードを決定し(ステップSF18)、符号化装置1aの処理は後述するステップSF19に移行する。
ステップSF18における制限の具体的な内容としては、参照画像を、領域情報として保持されている基準予測モード情報により示される参照画像と同一に制限するというもの、予測方向を、領域情報として保持されている基準予測モード情報により示される予測方向と同一に制限するというもの、動きベクトルを、領域情報として保持されている基準予測モード情報により示される動きベクトルと同一に制限するというもの、分割方法を、領域情報として保持されている基準予測モード情報により示される分割方法と同一に制限するというもの、などが挙げられる。また、ステップSF17において領域情報として格納する情報は、必ずしも各予測モード情報の全てでなくともよく、必要に応じ、例えば参照画像を示す情報だけ、或いは動きベクトルを示す情報だけ(インター予測モード情報の場合)、というようにしてもよい。
なお、ステップSF18において、インター予測モードのみに限定して予測モードを決定するのは、ステップSF16と同様に理由によるが、ステップSF14同様、全ての予測モードの中から最適なものを決定するようにしても構わない。また、ステップSF18で決定された予測モードにかかるコスト値が所定の閾値THCOST1以上の場合は、予測モードの制限に伴う符号化効率の極端な低下を回避するために、制限を解除し、再度全ての予測モードの中から最適な予測モードを決定しなおすようにしてもよい。
そして最後に、符号化装置1aは、決定された予測モードを用いて符号化対象のブロックの符号化を行い(ステップSF19)、処理を終了する。
図5は、符号化対象である画像データの一例を示すイメージ図である。図5(a)に示すように、ここでは、画像データは横8×縦6の48ブロックに分割されて符号化されるものとする。図5(b)は、図5(a)に示す画像データを構成する各ブロックに付与されるアドレスを示すイメージ図である。符号化装置1aは、図5(b)に示すアドレスの値の小さいブロックから順に符号化を行う。図5(c)は、図5(a)に示す画像データについてのアクティビティのマップの一例を示すイメージ図である。図5(d)は、図5(a)に示す原画像を、符号化装置1aにより符号化する過程で検出される平坦領域の一例を示すイメージ図である。
例えば、上記閾値THA1が定数値10であるとすると、図5(c)に示すアクティビティのマップにおいて、アクティビティの値が3、5、7となるブロックが平坦であると判定される。結果、符号化装置1aは、図5(d)に示す領域ND01、領域ND02、領域ND03を1つの平坦領域とみなし、該平坦領域の中で最初に処理されるブロック(図5(d)において網掛けされている、アドレス9のブロック)のために決定された予測モードを、平坦領域における代表的な予測モード(基準予測モード)とする。そして、平坦領域に属する他のブロックの処理においては、参照画像や動きベクトルが、上記代表的な予測モードと同一なものとなるよう、予測モードの決定動作に制限を加えるのである。具体的には、基準予測モードを、平坦領域に属する他のブロックの予測モードとして決定するのである。
以上の説明から、符号化装置1aによると、アクティビティが上記閾値THA1以下である全てのブロックについて、参照画像や、予測方向、動きベクトル、分割方法の統一がなされる。結果、図18(d)に示す予測画像データに見られるようなブロック境界におけるギャップが軽減され、ひいては再生画像の主観的な画質が向上する。また、ステップSF16、ステップSF18においては、制限された予測モードの中から最適な予測モードを決定するため、常に全ての予測モードの中から予測モードを決定する場合と比べて、処理時間が短縮される。
[実施形態2]
図6は、本発明の実施形態2にかかる符号化装置1bの構成を示す概略ブロック図である。同図に示すように、符号化装置1bの構成は、符号化装置1aにおいて、イントラ・インター判定回路45a、領域情報設定回路51a、及び領域情報メモリ52aに代えてイントラ・インター判定回路45b、領域情報設定回路51b、及び領域情報メモリ52bを含むものとなっている。以下では、イントラ・インター判定回路45a、領域情報設定回路51a、及び領域情報メモリ52aと、イントラ・インター判定回路45b、領域情報設定回路51b、及び領域情報メモリ52bと、の相違点を中心に説明する。
領域情報設定回路51bは、アクティビティ算出回路42aから入力されるアクティビティ及びレート制御回路43から入力される量子化パラメータの値を用いて、画像データ中の平坦領域を抽出する。本実施形態では、平坦領域は空間的に連続する1又は複数のブロックにより構成される領域であり、場合により、領域情報設定回路51bは、1つの画像データにおいて複数の平坦領域を抽出する。ここで、2つのブロックA、Bが「空間的に連続する」とは、ブロックAの一辺とブロックBの一辺とが接している状況のことを指す。
領域情報設定回路51bは、こうして抽出した1又は複数の平坦領域をそれぞれ特定するための平坦領域情報と、該各平坦領域それぞれについての代表的な予測モード(該平坦領域情報により示される各平坦領域にそれぞれ属する各ブロックについて予測モードを決定する際の基準とする基準予測モード)を示す基準予測モード情報と、からなる領域情報を生成し、出力する。この基準予測モードを決定するための処理については後述する。
領域情報メモリ52bは、領域情報設定回路51bが出力する領域情報を少なくとも1画像データ分格納する。
図7は、1画像データ分の領域情報の具体的な格納形式の一例を示すイメージ図である。同図に示す領域情報の格納形式においては、平坦領域毎に識別子が割り当てられている。領域情報設定回路51bは、各ブロックに、いずれかの平坦領域に属する場合にはその平坦領域の識別子を、該ブロックがいずれの平坦領域にも属さない場合には無効な識別子を、対応付けてなる平坦領域情報(図中の領域MB01)と、各平坦領域それぞれについての代表的な予測モード(基準予測モード)を示す基準予測モード情報(図中の領域MB02)と、を領域情報メモリ52bに格納する。
イントラ・インター判定回路45bは、領域情報メモリ52bに格納される領域情報に基づいて動き予測・補償回路44とイントラ予測回路46を制御し、ブロック毎に予測モードを決定する。この場合において、イントラ・インター判定回路45bは、平坦領域毎に、該平坦領域に属するブロックの間で予測モードが統一されるよう、各ブロックについての予測モードを決定する。
以下、具体的に説明する。イントラ・インター判定回路45bは、画像データ中の各ブロックについて、所定の順序で順次予測モードを決定していく。領域情報設定回路51aは、こうして順次決定される予測モードを動き予測・補償回路44又はイントラ予測回路46を介して順次受け取り、平坦領域ごとに、各平坦領域に属するブロックのうち、最初に予測モードが決定されるブロックについての予測モードを、基準予測モードとして決定する。領域情報設定回路51bは、ある平坦領域について基準予測モードを決定すると、領域情報メモリ52bに記憶される領域情報において、該平坦領域についての基準予測モードを、決定した基準予測モードにより更新する。
イントラ・インター判定回路45bは、ある平坦領域に属するブロックについて予測モードを決定しようとする際、領域情報メモリ52bに該平坦領域についての基準予測モードが記憶されている場合、該基準予測モードに基づき、予測モードを決定する。より具体的には、該基準予測モードを、該ブロックの予測モードとする。
以下、フローチャートを用いて、上述した予測モード決定の方法についてより詳細に説明する。
図8は、符号化装置1bが、領域情報の初期化を行う際の動作フローチャートの一例を示す図である。同図に示す動作フローチャートの処理は、1つの画像データの符号化処理の開始直前に呼び出される。
符号化処理開始後、領域情報設定回路51bは、まず、処理対象ブロックのアドレスを示す変数ADDRをゼロに設定する(ステップSH01)。
次に、アクティビティ算出回路42aは、アドレスADDRのブロックについてアクティビティを求める(ステップSH02)。続いて、レート制御回路43は、量子化パラメータを求める(ステップSH03)。
次に、領域情報設定回路51bは、ステップSH02で求められたアクティビティが所定の閾値THA2以下であるか否か、つまり、アドレスADDRのブロックが平坦であるか否かを判定する。そして、平坦領域であると判定したブロックについては仮の識別子0を、平坦領域でないと判定したブロックについては無効であることを示す識別子−1を、それぞれ対応付けることにより、平坦領域情報(の一部分)を生成し、領域情報メモリ52bの領域MB01に保存する(ステップSH04)。ここで、閾値THA2は、定数であってもよいし、量子化パラメータなどに依存する変数であってもよい。より具体的には、閾値THA2は、ステップSH03で求められた量子化パラメータの値が所定値以上の場合は所定の正の定数に設定され、該量子化パラメータの値が所定値未満の場合はゼロに設定される変数である。
領域情報設定回路51bは、ステップSH04の処理が終了すると、変数ADDRの値が画像データに属する最後のブロックを指すか否かを判定する(ステップSH05)。そして、最後のブロックを指さない場合(ステップSH05における否定判定)、符号化装置1bは、変数ADDRの値を1増加した上で(ステップSH06)、その処理をステップSH02に戻す。
一方、変数ADDRの値が最後のブロックを指す場合(ステップSH05における肯定判定)、領域情報設定回路51bは、空間的に連続する平坦なブロック群毎に異なる識別子を付与し、領域情報メモリ52b内に、識別子毎の代表的な予測モードに関する情報(基準予測モード情報)を保持するための領域MB02を確保した上で、該領域MB02を初期化し(ステップSH07)、処理を終了する。なお、領域MB02の初期化とは、各識別子にそれぞれ無効予測モードを対応付ける基準予測モード情報を、領域MB02に記憶させることを意味する。
図9は、符号化装置1bが、各ブロックを符号化する際の動作フローチャートの一例である。
アクティビティ算出回路42aは、符号化対象のブロックについて、アクティビティを求める(ステップSI01)。続いて、レート制御回路43は、量子化パラメータを求める(ステップSI02)。なお、図8に示す動作フローチャートにおいても、結果的に画像データ内の全てのブロックについてのアクティビティと量子化パラメータを取得しているため、これらの値を保持しておくメモリを別途追加し、ステップSI01、SI02は、このメモリから値を読み出すだけの処理であるとしてもよい。
次に、イントラ・インター判定回路45bは、符号化対象のブロックが属する領域の識別子を領域情報メモリ52b内の領域MB01(平坦領域情報)から読み出し、読み出した識別子に基づいて、該ブロックが平坦領域に属するか否かを判定する(ステップSI03)。
符号化対象のブロックが平坦領域に属さないと判定された場合は(ステップSI03における否定判定)、イントラ・インター判定回路45bは、ステップSF14(図4)と同様の処理により予測モードを決定し(ステップSI04)、符号化装置1bの処理は後述するステップSI09に移行する。
一方、符号化対象のブロックが平坦領域に属すると判定された場合は(ステップSI03における肯定判定)、イントラ・インター判定回路45bは、該ブロックが属する平坦領域についての基準予測モードを領域情報メモリ52b内の領域MB02(基準予測モード情報)から読み出し、該基準予測モードが初期値(無効予測モード)のままであるか否かを判定する(ステップSI05)。
基準予測モードが初期値のまま更新されていない場合は(ステップSI05における肯定判定)、イントラ・インター判定回路45bは、ステップSF16(図4)と同様の処理により、インター予測モードにかかる全ての予測モード又はそのうちの一部の中から最適なものを決定する(ステップSI06)。領域情報設定回路A51bは、決定された予測モードにより、基準予測モード情報に含まれる基準予測モードを更新し(ステップSI07)、符号化装置1bの処理は後述するステップSI09に移行する。つまり、1つの平坦領域を構成するブロックのうち、最初に符号化されるマクロブロックについて決定された予測モードが、該平坦領域における代表的な予測モードとして、領域情報メモリ52b内の領域MB02に保存されることとなる。
一方、基準予測モードがステップSI07の処理により既に更新されていた場合は(ステップSI05における否定判定)、イントラ・インター判定回路45bは、ステップSF18(図4)と同様の処理により、インター予測モードにかかる全ての予測モード又はそのうちの一部の中から基準予測モードに応じた制限の下で予測モードを決定し(ステップSI08)、符号化装置1bの処理は後述するステップSI09に移行する。ここで、ステップSI08で決定された予測モードにかかるコスト値が所定の閾値THCOST2以上の場合は、予測モードの制限に伴う符号化効率の極端な低下を回避するために、制限を解除し、再度全ての予測モードの中から最適な予測モードを決定しなおすようにしてもよい。
そして最後に、符号化装置1bは、決定された予測モードを用いて符号化対象のブロックの符号化を行い(ステップSI09)、処理を終了する。
図10(a)は、図5(d)に示した平坦領域について、符号化装置1bにより付与される識別子を表示してなるイメージ図である。
例えば、閾値THA2が定数値10であるとすると、図5(c)に示すアクティビティのマップにおいて、アクティビティの値が3、5、7となるマクロブロックが平坦であると判定される。結果、符号化装置1bは、図10(a)に示す領域NE01、領域NE02、領域NE03を、それぞれ独立した平坦領域とみなし、各平坦領域の中でそれぞれ最初に処理されるブロック(図10(a)中、各平坦領域内において網掛けされている、アドレスが9、20、32のブロック)のために決定された予測モードを、それぞれ各平坦領域における代表的な予測モード(基準予測モード)とする。そして、各平坦領域に属する他のブロックの処理においては、参照画像や動きベクトルが、上記代表的な予測モードと同一なものとなるよう、予測モードの決定動作に制限を加えるのである。具体的には、基準予測モードを、平坦領域に属する他のブロックの予測モードとして決定するのである。
なお、図10(a)において、アドレスが32のブロックのみにより構成される領域NE03を1つの独立した平坦領域としているが、上下左右に隣接するブロックがいずれも平坦でないため、ブロック境界におけるギャップが画質劣化として問題となることはない。つまり、1つのブロックのみにより構成される領域を平坦領域として取り扱っても、再生画像の画質向上に資することはない。逆に、基準予測モードの決定等にかかる処理が必要となるため、符号化装置1bの処理量が増加してしまう。よって、単一のマクロブロックから構成される領域については、平坦領域として取り扱わないことが望ましい。具体的には、ステップSH07において、該ブロックに付与する識別子を無効な識別子とすることにより、事実上平坦領域でない領域として扱うようにしてもよい。図10(b)は、図10(a)に示した各平坦領域から、単一のブロックで構成される領域NE03を除外した状態を示している。
以上の説明から、符号化装置1bによると、空間的に連続する平坦領域毎に、参照画像や、予測方向、動きベクトル、分割方法を図ることができるようになる。結果、図18(d)に示す予測画像データに見られるようなマクロブロック境界におけるギャップが軽減され、ひいては再生画像の主観的な画質が向上する。また、ステップSI06、ステップSI08においては、制限された予測モードの中から最適な予測モードを決定するため、常に全ての予測モードの中から予測モードを決定する場合と比べて、処理時間が短縮される。
また、符号化装置1bは、空間的に不連続で、ブロック境界におけるギャップが発生し得ない平坦領域間では予測モードの統一を行わないため、符号化装置1aと比べて、符号化効率がさらに向上することが期待できる。
[実施形態例3]
図11は、本発明の実施形態3にかかる符号化装置1cの構成を示す概略ブロック図である。同図に示すように、符号化装置1cの構成は、符号化装置1bにおいて、A/D2、画面並べ替えバッファ3、アクティビティ算出回路42a、イントラ・インター判定回路45b、及び領域情報設定回路51bに代えて復号回路61、アクティビティ算出回路42c、イントラ・インター判定回路45c、及び領域情報設定回路51cを含むものとなっている。以下では、復号回路61について説明するとともに、アクティビティ算出回路42a、イントラ・インター判定回路45a、及び領域情報設定回路51aと、アクティビティ算出回路42c、イントラ・インター判定回路45c、及び領域情報設定回路51cと、の相違点を中心に説明する。
符号化装置1cは、例えば高ビットレートの入力符号化データ(画像データを、符号化装置1a、符号化装置1b、又は背景技術にかかる符号化装置により符号化したもの)を低ビットレートの出力符号化データに変換する、という目的で用いられる再符号化装置である。このような再符号化装置は、入力符号化データを一旦復号した後、該入力符号化データにおける符号化情報を原則として踏襲しつつ、量子化パラメータだけを大きし、ブロック単位で予測モードを切り換えて再度符号化することで発生符号量を削減し、出力符号化データを生成する。上述のように、平坦領域におけるブロック毎の予測モードの切り換わりによりブロック境界においてギャップが生ずる場合があるが、量子化パラメータが大きくなることにより、出力符号化データにおいて、このギャップが強調されてしまう場合がある。そこで、本実施形態では、再符号化装置である符号化装置1cにおいて、平坦領域におけるブロック毎の予測モードの切り換わりを制限する。
復号回路61は、外部から入力符号化データを受け取って所定の復号化処理を施し、符号化情報や復号画像データを出力する。ここで、この符号化情報には、GOP構造にかかるIピクチャ、Pピクチャ、Bピクチャなどのピクチャ種別情報、各ブロックの符号化に用いられている予測モードを示す予測モード情報、量子化パラメータの情報、変換係数の情報、ブロック毎の発生符号量など、入力符号化データの復号の過程で得られる情報が含まれる。復号回路61が出力する復号画像データには、後段の各回路により、符号化装置1aや符号化装置1bで行われるものと同様な符号化処理が施される。
また、復号回路61は、各ブロックにかかる復号画像データを、入力符号化データの符号化時における符号化の順に出力する。このようにしているので、符号化装置1cが、入力符号化データのGOP構造と同一のGOP構造を利用する符号化処理を行う限りにおいては、符号化装置1aや符号化装置1bに含まれる画面並べ替えバッファ3に相当する回路は不要である。ただし、画面並べ替えバッファ3を用いて、入力符号化データとは異なる任意のGOP構造で符号化を行うようにしても構わないのは勿論である。
アクティビティ算出回路42cは、処理対象の画像データについて、復号回路61から符号化情報を受け取り、ブロック毎にアクティビティを計算、出力する。具体的なアクティビティとしては、式(5)に示すように、量子化パラメータQPを量子化スケールに変換してなる値QP0(QP)と、ブロック毎の発生符号量MBbitsの値と、の積が用いられる。
Figure 0004813328
なお、アクティビティ算出回路42cは、符号化情報の代わりに、復号画像データを受け取り、アクティビティ算出回路42aと同一の方法により、アクティビティを求めるようにしてもよい。
領域情報設定回路51cは、復号回路61から符号化情報、アクティビティ算出回路42cからアクティビティ、レート制御回路43から量子化パラメータ、イントラ予測回路46や動き予測・補償回路44により生成される各予測モード情報を受け取り、領域情報を生成、出力する。領域情報設定回路51aや領域情報設定回路51bとの主たる違いは、復号回路61が出力する符号化情報を領域情報の生成に利用する点にある。
具体的には、領域情報設定回路51cは、平坦領域に属するブロックそれぞれについて、入力符号化データが符号化された際に用いられた予測モードを取得する。そして、平坦領域ごとに最頻の予測モードを取得し、各平坦領域についての基準予測モードとして決定する。領域情報設定回路51cは、こうして決定した各基準予測モードを用い、領域情報設定回路51bと同様の処理により領域情報を生成し、領域情報メモリ52bに記憶させる。
イントラ・インター判定回路45cは、領域情報及び符号化情報に基づいて、動き予測・補償回路44とイントラ予測回路46を制御し、ブロック毎に予測モードを決定する。イントラ・インター判定回路45cの動作は、予測モードの決定の過程において符号化情報を利用する点で、イントラ・インター判定回路45aやイントラ・インター判定回路45bと異なる。すなわち、イントラ・インター判定回路45cは、例えば、符号化情報に含まれる動きベクトルを利用して動き予測に掛かる処理量を削減する。なお、符号化情報を利用せず、イントラ・インター判定回路45cはイントラ・インター判定回路45aと全く同一の動作をすることとしてもかまわない。
以下、フローチャートを用いて、上述した予測モード決定の方法についてより詳細に説明する。
図12は、符号化装置1cが、領域情報の設定を行う際の動作フローチャートの一例である。同図に示す動作フローチャートの処理は、1つの復号画像データの符号化の開始直前に呼び出される。
符号化処理開始後、領域情報設定回路51cは、まず、処理対象ブロックのアドレスを示す変数ADDRをゼロに設定する(ステップSK01)。
次に、アクティビティ算出回路42cは、アドレスADDRのマクロブロックについて、アクティビティを求める(ステップSK02)。続いて、レート制御回路43は、量子化パラメータを求める(ステップSK03)。
次に、領域情報設定回路51cは、ステップSK02で求められたアクティビティが所定の閾値THA3以下であるか否か、つまり、アドレスADDRのブロックが平坦であるか否かを判定する。そして、平坦領域であると判定したブロックについては仮の識別子0を、平坦領域でないと判定したブロックについては無効であることを示す識別子−1を、それぞれ対応付けることにより、平坦領域情報(の一部分)を生成し、領域情報メモリ52bに保存する(ステップSK04)。ここで、閾値THA3は、定数であってもよいし、量子化パラメータなどに依存する変数であってもよい。より具体的には、閾値THA3は、ステップSK03で求められた量子化パラメータの値が所定値以上の場合は所定の正の定数に設定され、該量子化パラメータの値が所定値未満の場合はゼロに設定される変数である。
領域情報設定回路51cは、ステップSK04の処理が終了すると、変数ADDRの値が復号画像データの最後のブロックを指すか否かを判定する(ステップSK05)。そして、最後のブロックを指さない場合(ステップSK05における否定判定)、符号化装置1cは、アドレスADDRの値を1増加した上で(ステップSK06)、その処理をステップSK02に戻す。
一方、変数ADDRの値が最後のブロックを指す場合(ステップSK05における肯定判定)、領域情報設定回路51cは、空間的に連続する平坦なブロック群毎に異なる識別子を付与し、領域情報メモリ52b内に、識別子毎の代表的な予測モードに関する情報(基準予測モード情報)を保持するための領域MB02を確保するとともに、平坦領域毎の基準予測モード(最頻の予測モード)を決定し、決定した各基準予測モードを示す基準予測モード情報を領域MB02内に記憶させて(ステップSK07)、処理を終了する。
ここで、基準予測モード(最頻の予測モード)の具体的な決定方法について例示する。ここでは、2通りの方法を示す。1つは、面積的に最も支配的な予測モードを最頻の予測モードとする方法である(決定方法1)。もう1つは、ブロックの個数が最多となる予測モードを最頻の予測モードとする方法(決定方法2)である。以下、予測モードを参照画像インデックスにより特定する場合を取り上げ、決定方法1、決定方法2について図を用いて詳しく説明する。
図13は、入力符号化データ内にある1つの平坦領域内に属するブロックを示す図である。同図に示す太い黒線は、マクロブロックを示している。マクロブロックQA01,QA02,QA07は、2つのブロックから構成される。また、マクロブロックQA03,QA04,QA05,QA08,QA09は、1つのブロックから構成される。また、マクロブロックQA06は、4つのブロックから構成される。結局、同図に示す平坦領域は、15個のブロックから構成されている。同図において、各ブロックに書き込まれている0または1の数値は、参照画像インデックスを示す値である。
決定方法1によると、仮に1マクロブロックあたりの面積を4とした場合、参照画像インデックス0で特定される参照画像を予測に用いる予測モード(予測モード0)を使用するブロックの総面積は19、参照画像インデックス1で特定される参照画像を予測に用いる予測モード(予測モード1)を使用するブロックの総面積は17であるため、最頻の予測モードは、予測モード0となる。
一方、決定方法2によると、予測モード0を使用するブロックの数は7、予測モード1を使用するブロックの数は8であるため、最頻の予測モードは、予測モード1となる。
図14は、符号化装置1cが、各ブロックを符号化する際の動作フローチャートの一例を示す図である。
アクティビティ算出回路42aは、符号化対象のブロックについて、アクティビティを求める(ステップSL01)。続いて、レート制御回路43は、量子化パラメータを求める(ステップSL02)。なお、図12に示す動作フローチャートにおいても、結果的に復号画像データ内の全てのマクロブロックについてのアクティビティと量子化パラメータを取得しているため、これらの値を保持しておくためのメモリを別途追加し、ステップSL01、SL02は、このメモリから値を読み出すだけの処理であるとしてもよい。
次に、イントラ・インター判定回路45cは、符号化対象のブロックが属する領域の識別子を領域情報メモリ52b内の領域MB01から読み出し、読み出した識別子に基づいて、該ブロックが平坦領域に属するか否かを判定する(ステップSL03)。
符号化対象のブロックが平坦領域に属さないと判定された場合は(ステップSL03における否定判定)、イントラ・インター判定回路45bは、ステップSF14(図4)と同様の処理により予測モードを決定し(ステップSL04)、符号化装置1cの処理は後述するステップSL06に移行する。なお、ステップSL04における予測モードの決定において、入力符号化データに含まれる符号化情報に応じて、決定される予測モードに所定の制限を加えてもよい。
一方、符号化対象のブロックが平坦領域に属すると判定された場合は(ステップSL03における肯定判定)、イントラ・インター判定回路45cは、該ブロックが属する平坦領域についての基準予測モードを領域情報メモリ52b内の領域MB02(基準予測モード情報)から読み出し、ステップSF18(図4)と同様の処理により、インター予測モードにかかる全ての予測モード又はそのうちの一部の中から該基準予測モードに応じた制限の下で予測モードを決定し(ステップSL05)、符号化装置1cの処理は後述するステップSL06に移行する。ここで、ステップSL05で決定された予測モードにかかるコスト値が所定の閾値THCOST3以上の場合は、予測モードの制限に伴う符号化効率の極端な低下を回避するために、制限を解除し、再度全ての予測モードの中から最適な予測モードを決定しなおすようにしてもよい。
そして最後に、符号化装置1cは、決定された予測モードを用いて符号化対象のブロックの符号化を行い(ステップSL06)、処理を終了する。
図15(a)は、図5(d)に示した平坦領域について、符号化装置1bにより付与される識別子を表示してなるイメージ図である。
例えば、閾値THA3が定数値10であるとすると、図5(c)に示すアクティビティのマップにおいて、アクティビティの値が3、5、7となるマクロブロックが平坦であると判定される。結果、符号化装置1cは、図15(a)に示す領域NG01、領域NG02、領域NG03を、それぞれ独立した平坦領域とみなし、各平坦領域の中で最頻の予測モードを、それぞれ各平坦領域における代表的な予測モード(基準予測モード)とする。そして、各平坦領域に属する他のブロックの処理においては、参照画像や動きベクトルが、上記代表的な予測モードと同一なものとなるよう、予測モードの決定動作に制限を加えるのである。具体的には、基準予測モードを、平坦領域に属する他のブロックの予測モードとして決定するのである。
なお、図15(a)において、アドレスが32のブロックのみにより構成される領域NG03を1つの独立した平坦領域としているが、上下左右に隣接するブロックがいずれも平坦でないため、ブロック境界におけるギャップが画質劣化として問題となることはない。よって、実施形態2でも説明したように、ステップSK07において、アドレス32のブロックに付与する識別子を無効な識別子とすることにより、事実上平坦領域でない領域として扱うようにしてもよい。図15(b)は、図15(a)に示した各平坦領域から、単一のブロックで構成される領域NE03を除外した状態を示している。
以上の説明から、符号化装置1cによると、空間的に連続する平坦領域毎に、参照画像や、予測方向、動きベクトル、分割方法の統一を図ることができるようになる。
また、ここでいうところの統一とは、入力符号化データにおける最頻の予測モードへの統一であるため、符号化装置1aや符号化装置1bのように、各平坦領域の最初に符号化されるマクロブロックについての予測モードに統一する場合と比べて基準予測モードが適切なものとなる可能性が高まり、符号化効率の観点で有利になる。
結果、特に高ビットレートから低ビットレートへの再符号化、つまり、入力符号化データより量子化パラメータが大きくなるような再符号化において、図P(d)に示す予測画像に見られるようなブロック境界におけるギャップが軽減され、ひいては再生画像の主観的な画質が向上する。
なお、本発明は上記各実施形態に限定されるものではない。例えば、上記実施形態2及び実施形態3で用いた領域情報(図7)に代えて、図16に示す領域情報を用いることも可能である。図16は、1画像データ分の領域情報の具体的な格納形式の一例を示すイメージ図である。同図に示す領域情報の格納形式においては、平坦領域毎に領域が割り当てられている。例えば、0番目の平坦領域には領域MCが、1番目の平坦領域には領域MCが、それぞれ割り当てられている。そして、各領域の先頭には、各平坦領域についての代表的な予測モード(基準予測モード)を示す基準予測モード情報が記憶されており、さらに各領域の残りの部分には、各平坦領域に属するブロックの数を示すブロック数情報及び各ブロックのアドレスが記憶されている。
また、実施形態3では、最頻の予測モードを基準予測モードとする実施形態を、復号画像データを符号化する再符号化装置をベースに説明したが、(非復号)画像データを符号化する符号化装置において、同様に最頻の予測モードを基準予測モードとすることも可能である。この場合、1つの画像データに属する全てのブロックについて一旦予測モードを仮決定した後、その結果に基づいて基準予測モードを決定し、再度全てのブロックについて予測モードの決定を行う、という処理を行うことが望ましい。
また、符号化装置1a乃至1cの各機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、上記各処理を行ってもよい。
ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。また、この「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに、「コンピュータ読み取り可能な記録媒体」には、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
さらに、上記プログラムは、上述した各機能の一部を実現するためのものであってもよい。さらに、上述した各機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
本発明の実施形態1にかかる符号化装置の構成を示す概略ブロック図である。 本発明の実施形態1にかかる領域情報を示す図である。 本発明の実施形態1にかかる符号化装置の処理フローを示すフロー図である。 本発明の実施形態1にかかる符号化装置の処理フローを示すフロー図である。 本発明の実施形態1にかかる符号化対象の画像データの一例を示すイメージ図である。 本発明の実施形態2にかかる符号化装置の構成を示す概略ブロック図である。 本発明の実施形態2にかかる領域情報を示す図である。 本発明の実施形態2にかかる符号化装置の処理フローを示すフロー図である。 本発明の実施形態2にかかる符号化装置の処理フローを示すフロー図である。 本発明の実施形態2にかかる符号化対象の画像データの一例を示すイメージ図である。 本発明の実施形態3にかかる符号化装置の構成を示す概略ブロック図である。 本発明の実施形態3にかかる符号化装置の処理フローを示すフロー図である。 本発明の実施形態3にかかる入力符号化データ内にある1つの平坦領域内に属するブロックを示す図である。 本発明の実施形態3にかかる符号化装置の処理フローを示すフロー図である。 本発明の実施形態3にかかる符号化対象の画像データの一例を示すイメージ図である。 本発明の変形例にかかる領域情報を示す図である。 本発明の背景技術にかかる符号化対象の画像データを示すイメージ図である。 本発明の背景技術にかかる符号化対象の画像データの画素値(輝度)の変化を示すイメージ図である。
符号の説明
1a,1b,1c 符号化装置、
2 A/D、
3 画面並べ替えバッファ、
4 減算回路、
7 直交変換回路、
8 量子化回路、
10 可逆符号化回路、
11 蓄積バッファ、
13 逆量子化回路、
14 逆直交変換回路、
15 デブロックフィルタ回路、
16 フレームメモリ、
17 加算回路、
42a,42c アクティビティ算出回路、
43 レート制御回路、
44 動き予測・補償回路、
45a,45b,45c イントラ・インター判定回路、
46 イントラ予測回路、
51a,51b,51c 領域情報設定回路、
52a,52b 領域情報メモリ、
61 復号回路。

Claims (9)

  1. 複数のブロックから構成される画像データについて、前記ブロック単位で予測モードを切り換えて符号化を行う符号化装置であって、
    前記画像データ中の平坦領域を抽出する平坦領域抽出手段と、
    前記平坦領域に属するブロックのうちの少なくとも一部について予測モードを決定する際の基準とする基準予測モードを決定する基準予測モード決定手段と、
    前記平坦領域に属するブロックについて、前記基準予測モードを該ブロックの予測モード決定する予測モード決定手段と、
    を含むことを特徴とする符号化装置。
  2. 請求項に記載の符号化装置において、
    前記平坦領域抽出手段は、画像データの複雑さを表すアクティビティの値を用いて、前記平坦領域を抽出する、
    ことを特徴とする符号化装置。
  3. 請求項に記載の符号化装置において、
    当該符号化装置は、前記画像データを符号化する際、所与の量子化パラメータを用いる量子化処理を行い、
    前記平坦領域抽出手段は、前記アクティビティの値が前記量子化パラメータに依存する閾値以下である平坦領域を抽出する、
    ことを特徴とする符号化装置。
  4. 請求項からまでのいずれかに記載の符号化装置において、
    前記平坦領域は、空間的に連続する2以上のブロックにより構成される、
    ことを特徴とする符号化装置。
  5. 請求項からまでのいずれかに記載の符号化装置において、
    前記予測モード決定手段は、前記複数のブロックそれぞれについて予測モードを決定し、
    前記基準予測モード決定手段は、前記平坦領域に属するブロックのうち、前記予測モード決定手段により最初に予測モードが決定されるブロックについての予測モードを、前記基準予測モードとして決定する、
    ことを特徴とする符号化装置。
  6. 請求項からまでのいずれかに記載の符号化装置において、
    前記画像データは、ブロック単位で予測モードを切り換えて第1の符号化がなされており、
    当該符号化装置は、前記画像データを一旦復号した後、前記ブロック単位で予測モードを切り換えて再度符号化する第2の符号化をし、
    前記基準予測モード決定手段は、前記平坦領域に属するブロックそれぞれについて、前記画像データが前記第1の符号化された際に用いられた予測モードを取得し、その中の最頻の予測モードを、前記基準予測モードとして決定する、
    ことを特徴とする符号化装置。
  7. 請求項からまでのいずれかに記載の符号化装置において、
    前記予測モードは、予測方向、参照画像、動きベクトル、及び分割方法のうちいずれか少なくとも1つにより特定される、
    ことを特徴とする符号化装置。
  8. 複数のブロックから構成される画像データについて、前記ブロック単位で予測モードを切り換えて符号化を行う符号化方法であって、
    前記画像データ中の平坦領域を抽出する平坦領域抽出ステップと、
    前記平坦領域に属するブロックのうちの少なくとも一部について予測モードを決定する際の基準とする基準予測モードを決定する基準予測モード決定ステップと、
    前記平坦領域に属するブロックについて、前記基準予測モードを該ブロックの予測モード決定する予測モード決定ステップと、
    を含むことを特徴とする符号化方法。
  9. 複数のブロックから構成される画像データについて、前記ブロック単位で予測モードを切り換えて符号化を行う符号化装置としてコンピュータを機能させるためのプログラムであって、
    前記画像データ中の平坦領域を抽出する平坦領域抽出手段、
    前記平坦領域に属するブロックのうちの少なくとも一部について予測モードを決定する際の基準とする基準予測モードを決定する基準予測モード決定手段、及び
    前記平坦領域に属するブロックについて、前記基準予測モードを該ブロックの予測モード決定する予測モード決定手段、
    として前記コンピュータをさらに機能させるためのプログラム。
JP2006305148A 2006-11-10 2006-11-10 符号化装置、符号化方法、及びプログラム Expired - Fee Related JP4813328B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006305148A JP4813328B2 (ja) 2006-11-10 2006-11-10 符号化装置、符号化方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006305148A JP4813328B2 (ja) 2006-11-10 2006-11-10 符号化装置、符号化方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2008124699A JP2008124699A (ja) 2008-05-29
JP4813328B2 true JP4813328B2 (ja) 2011-11-09

Family

ID=39509017

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006305148A Expired - Fee Related JP4813328B2 (ja) 2006-11-10 2006-11-10 符号化装置、符号化方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP4813328B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9544613B2 (en) 2013-04-24 2017-01-10 Sony Corporation Local detection model (LDM) for recursive motion estimation

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5205471B2 (ja) * 2008-12-12 2013-06-05 パナソニック株式会社 トランスコード装置、トランスコード方法及びデジタルレコーダー
JP5798467B2 (ja) * 2011-12-07 2015-10-21 ルネサスエレクトロニクス株式会社 符号化タイプ決定装置及び動画像符号化装置、符号化タイプ決定方法及び動画像符号化方法、プログラム
JP6130648B2 (ja) * 2012-11-08 2017-05-17 日本放送協会 画像符号化装置及び画像符号化プログラム
JP6468703B2 (ja) 2013-12-20 2019-02-13 キヤノン株式会社 動き検出装置、動き検出方法及びプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4529615B2 (ja) * 2004-09-24 2010-08-25 ソニー株式会社 符号化装置、符号化方法、符号化方法のプログラム及び符号化方法のプログラムを記録した記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9544613B2 (en) 2013-04-24 2017-01-10 Sony Corporation Local detection model (LDM) for recursive motion estimation

Also Published As

Publication number Publication date
JP2008124699A (ja) 2008-05-29

Similar Documents

Publication Publication Date Title
US11259033B2 (en) Method and apparatus for encoding or decoding blocks of pixel
US9894360B2 (en) Image processing device, image processing method, and program
KR102043580B1 (ko) 화상 코딩 장치, 화상을 코딩하는 방법, 화상 디코딩 장치, 화상을 디코딩하는 방법 및 컴퓨터 판독가능 매체
US20110249755A1 (en) Moving image coding method, moving image decoding method, moving image coding apparatus, moving image decoding apparatus, program, and integrated circuit
JP2012502593A (ja) 適応セグメンテーションを用いた動画符号化システムおよび方法
JP4813328B2 (ja) 符号化装置、符号化方法、及びプログラム
JP2014207536A (ja) 画像処理装置および方法
US20230239464A1 (en) Video processing method with partial picture replacement
JP5396711B2 (ja) 動画像復号装置、動画像復号方法及びプログラム
US20220150515A1 (en) Adaptive temporal filter for an unavailable reference picture
JP4643437B2 (ja) 情報処理装置
GB2521410A (en) Method and apparatus for encoding or decoding blocks of pixel
KR20130054435A (ko) 적응형 스캔 패턴에 의한 컨텍스트 모델 선택을 이용하는 코딩 및 디코딩
KR20230097129A (ko) 교차-컴포넌트 변환 계수 레벨 재구성에서의 오프셋 도출
JP5387520B2 (ja) 情報処理装置と情報処理方法
US8306110B2 (en) Moving image coding apparatus and method using copy pictures depending on virtual buffer verifier occupancy
JP2008042660A (ja) 映像信号再符号化装置及び映像信号再符号化方法
GB2523992A (en) Method and apparatus for encoding or decoding blocks of pixel
US11595652B2 (en) Explicit signaling of extended long term reference picture retention
US11985318B2 (en) Encoding video with extended long term reference picture retention
WO2023127940A1 (ja) 画像処理装置および画像処理方法
US20210360229A1 (en) Online and offline selection of extended long term reference picture retention
JP2005303487A (ja) 動画像復号装置及び動画像復号プログラム
JP2005260989A (ja) 画像処理装置及び画像処理方法
JP2024045681A (ja) ビデオコーディングのための方法、装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110816

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110824

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140902

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees