【文献】
I.Amonou, et al.,Annex ACDCM Video Codec:Decoder Specification,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 1st Meeting: Dresden, DE,2010年 4月23日,JCTVC-A114-Annex A,pp.1,47-64,JCTVC-A114の付属書類,URL,http://phenix.int-evry.fr/jct/doc_end_user/current_document.php?id=5133
【文献】
I.Amonou, et al.,Description of video coding technology proposal by France Telecom, NTT, NTT DOCOMO, Panasonic and Technicolor,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 1st Meeting: Dresden, DE,2010年 4月23日,JCTVC-A114,pp.1,7,URL,http://phenix.int-evry.fr/jct/doc_end_user/current_document.php?id=5133
(58)【調査した分野】(Int.Cl.,DB名)
前記決定するステップでは、前記エッジ検出の結果に応じて、前記第1フィルタリングと前記第2フィルタリングの何れを前記複数の復号済みブロックに対して適用するかを決
定し、
前記対象ブロックの予測では、前記決定するステップで決定されたフィルタリングをした前記複数の復号済みブロックの画像データを用いてイントラ予測を行う
請求項1に記載の方法。
【背景技術】
【0002】
空間的予測は多くの用途に使用されている。具体的には、空間的予測は多くの画像・映像符号化および処理において不可欠である。ハイブリッド画像または映像符号化アルゴリズムにおいて、空間的予測は通常、既に符号化/復号されたブロックの画素に基づいて画像ブロックを予測するために使用される。空間的予測は、復号された画像または映像信号の後処理の一部として、特に誤り補正のために用いられる場合もある。
【0003】
標準化された映像符号化アルゴリズムの大多数はハイブリッド映像符号化に基づくものである。通常、ハイブリッド映像符号化方法は、所望の圧縮ゲインを達成するために、いくつかの異なる可逆圧縮方式と不可逆圧縮方式とを組み合わせたものである。ハイブリッド映像符号化は、ISO/IEC標準規格(MPEG‐1、MPEG‐2、MPEG‐4のようなMPEG−X標準規格)と同様に、ITU‐T標準規格(H.261やH.263のようなH.26x標準規格)の基礎でもある。現時点で最新かつ最も進んだ映像符号化標準規格は、H.264/MPEG‐4 Advanced Video Coding(AVC)と称される標準規格であり、これは、ITU‐TとISO/IEC MPEGグループとの共同チームであるJVT(joint video team)による標準化努力の結果である。現在、新しい映像符号化標準規格が、特に高解像度の映像符号化の効率改善を目的として、JCT−VC(Joint Collaborative Team on Video Coding)により、HEVC(High−Efficiency Video Coding)という名称で開発中である。
【0004】
エンコーダへ入力される映像信号は、フレームと呼ばれる画像のシーケンスであり、各フレームは2次元マトリクス状の複数の画素である。ハイブリッド映像符号化に基づく上述の標準規格は全て、個々の映像フレームをそれぞれ、複数の画素からなるより小さなブロックに再分割することを含む。典型的に、マクロブロック(通常16×16画素のブロック)は、符号化実行の基本となる画像要素である。しかし、例えばサイズが8×8、4×4、16×8等の、サブブロックまたは単にブロックと称される、より小さな画像要素に対して様々な特定の符号化ステップが実行されてもよい。例えばHEVCにおいて、そのようなブロックにおいて想定される最大サイズは64×64画素である。そしてそれは最大符号化単位(LCU)と称される。HEVCでは、LCUをより小さなブロックに再分割することができる。そのようなブロックは符号化単位(CU)と称される。CUは、符号化実行の基本となる画像要素である。
【0005】
図1は、H.264/MPEG‐4 AVC標準規格に準拠した、典型的な映像エンコーダ100の一例である。減算器105がまず、入力映像(入力信号)の符号化対象ブロックと、対応する予測ブロックとの差分を求める。その差分は、符号化対象ブロックの予測に用いられる。H.264/MPEG−4 AVCにおける予測信号は、時間的予測または空間的予測の何れかによって得られる。予測のタイプは、フレーム毎、スライス毎、またはマクロブロック毎に異なる可能性がある。
【0006】
時間的予測で予測されたマクロブロックまたはCUは、インター符号化されたと称され、空間的予測で予測されたマクロブロックまたはCUは、イントラ符号化されたと称される。可能な限り高い圧縮ゲインを達成するために、映像フレームの予測タイプは、ユーザが設定することも、映像エンコーダに選択させることもできる。選択された予測タイプにしたがって、イントラ/インター切替器175が、対応する予測信号を減算器105に入力する。時間的予測を用いる予測信号は、メモリ140に格納された、符号化済み画像から導出される。空間的予測を用いる予測信号は、先行して符号化され、復号され、かつメモリ140に格納された同一フレームの近隣ブロックの境界画素値から導出される。メモリ部140は、よって、符号化対象信号値と、先行する信号値から生成された予測信号値との比較を可能にする遅延部として動作する。メモリ140は、複数の符号化済み映像フレームを格納できる。入力信号と予測信号との差分は、予測誤差信号または残差信号と呼ばれ、変換されて係数となり、量子化される(110)。データ量をさらに可逆的に削減するために、量子化係数にエントロピー符号化(190)を適用する。これは主に、可変長の符号語を有する符号を適用することによって達成される。この符号語の長さは、発生確率に基づいて選択される。
【0007】
イントラ符号化画像(Iタイプ画像またはIフレームとも呼ばれる)は、イントラ符号化されたマクロブロックまたはCUのみからなる。つまり、イントラ符号化された画像は、他の復号済み画像を参照することなく復号可能である。イントラ符号化画像は、時間的予測によって映像シーケンス内でフレームからフレームへ伝播する可能性があるエラーを取り除く(リフレッシュする)ので、符号化映像シーケンスに対しエラー耐性を与える。さらに、Iフレームは、符号化映像シーケンス内でランダムアクセスを可能にする。フレーム内予測は、予め定義されたイントラ予測モードのセットを用いる。イントラ予測モードには、符号化済み隣接ブロックの境界画素を用いて対象ブロックを予測するものがある。その他のイントラ予測モードは、例えば、テンプレートマッチングとして、同一フレームに属する符号化済み画素からなるサーチエリアを用いる。予め定義されたイントラ予測モードのセットは、いくつかの方向性空間的イントラ予測モードを含む。方向性空間的イントラ予測のモードが異なるとは、適用された2次元予測の方向が異なることを指す。これにより、エッジの方向が様々である場合に空間的イントラ予測を効率化できる。そのようなイントラ予測によって得られた予測信号は、その後、上述のように減算器105によって、入力信号から減算される。また、予測モードを示す空間的イントラ予測モード情報がエントロピーエンコーダ190(
図1に図示せず)に入力され、エントロピー符号化され、符号化映像信号と共に出力される。
【0008】
H.264/MPEG−4 AVCイントラ符号化方式では、空間的冗長性を削減するために、サイズが4×4、8×8、または16×16画素のサブブロックに対して空間的予測を行う。イントラフレーム予測では、基本的に、符号化済み隣接ブロックの境界画素を用いて対象ブロックを予測する、予め定義されたイントラ予測モードのセットが用いられる。方向性空間予測のタイプが異なるということは、エッジの方向、つまり適用された2次元補間の方向が異なるということである。8つの異なる方向性予測モードがあり、サイズが4×4および8×8のサブブロックに対するDC予測モードが1つと、16×16画素のマクロブロックに対して、異なる方向性予測モードが3つとDC予測モードが1つある。HEVCでは、サイズが4×4、8×8、16×16、または32×32のCUに対して空間的予測を実行でき、全てのCUサイズに対して34の異なる方向性予測モードがある。
【0009】
復号映像信号を得るために、映像エンコーダ100に、復号部が組み入れられる。符号化ステップに合わせて、復号ステップは、逆量子化および逆変換(120)を含む。復号予測誤差信号は、量子化ノイズとも称される量子化誤差が原因で、元の予測誤差信号とは異なる。その後、復号予測誤差信号を予測信号に加える(125)ことで、再構築信号を得る。エンコーダ側とデコーダ側の互換性を維持するため、エンコーダ側とデコーダ側の両方で、符号化および復号済みの同じ映像信号に基づいて、予測信号が得られる。量子化の結果、再構築映像信号に量子化ノイズが重畳される。ブロック単位での符号化により、重畳されたノイズはしばしば、ブロッキング特性を有し、特に強い量子化がおこなわれた場合は、復号画像のブロック境界が目立つ結果になる。これらのアーチファクトを減らすために、デブロッキングフィルタ130を全ての再構築画像ブロックに適用する。
【0010】
インター符号化画像を復号するには、先行して符号化および復号済みの(再構築された)画像が必要である。時間的予測は、単方向つまり符号化対象フレームより順序が先行する映像フレームのみを用いておこなってもよく、後続映像フレームも用いて、双方向におこなってもよい。単方向の時間的予測をおこなえば、Pフレームと称されるインター符号化画像が得られ、双方向の時間的予測をおこなえば、Bフレームと呼ばれるインター符号化画像が得られる。一般的に、インター符号化画像は、Pタイプ、Bタイプ、またはIタイプのマクロブロックのいずれかで構成される。インター符号化マクロブロック(PまたはBマクロブロック)またはインター符号化CUは、動き補償予測160を使用することにより予測される。まず、動き検出器165により、先行して符号化され復号された映像フレーム内で対象ブロックに最適なブロックを見つける。当該最適ブロックはその後予測信号になり、対象ブロックとその最適ブロックの間の相対的なずれが、符号化映像データも含むビットストリームにおいて、3次元の動き(時間的動きが1つ、空間的動きが2つ)として、動きデータとして信号で伝えられる。予測精度を最適化するため、1/2画素解像度や1/4画素解像度などの空間的小数画素解像度で動きベクトルを求めてもよい。これは補間フィルタ150によって実現されてもよい。
【0011】
イントラ符号化モードおよびインター符号化モードの両方において、対象入力信号と予測信号との差分は、変換量子化部110によって変換および量子化され、量子化係数となる。一般的に、2次元離散コサイン変換(DCT)またはその整数版のような直交変換が使用される。なぜなら、これにより自然映像の相関を効率的に削減できるからである。変換後に、高周波数よりも低周波数に多くのビットが費やされるように符号化が実行される。これは、低周波数成分は高周波成分よりも、通常、画質にとって重要であるためである。エントロピーコーダにおいて、2次元配列の量子化係数が1次元配列に変換される。典型的には、いわゆるジグザグ走査によって変換される。ジグザグ走査においては、2次元マトリクスの左上隅にあるDC係数から右下隅にあるAC係数まで予め定められた順序で走査される。通常、エネルギーは低周波に相当する2次元マトリクスの係数の左上部分に集中するため、ジグザク走査をおこなうと、最後にゼロ値が続く配列になる。これにより、実際のエントロピー符号化の一部として、またはその前処理として、ランレングス符号を用いた効率的な符号化をおこなうことが可能になる。H.264/MPEG−4 AVCは、量子化パラメータ(QP)およびカスタマイズ可能な量子化マトリクス(QM)によって制御可能なスカラ量子化110を採用している。量子化パラメータにより、52の量子化器のうちの1つが各マクロブロックに対し選択される。加えて、量子化マトリクスは、画質の損失を避けるため、特に、ソース内で特定の周波数を保つように設計される。H.264/MPEG−4 AVCにおける量子化マトリクスは、映像シーケンスに適応可能であり、映像データと共に信号で伝えられる。
【0012】
H.264/MPEG−4 AVCは、ビデオ符号化層(VCL)およびネットワーク抽象化層(NAL)の2つの機能層を有する。ビデオ符号化層は、簡潔に上述したように、符号化の機能性を提供する。ネットワーク抽象化層は、チャネルを越える送信や記憶装置への格納といったさらなる用途に合わせて、情報要素を、NALユニットと称される標準単位にカプセル化する。情報要素は、例えば、符号化予測誤差信号や、または、予測タイプ、量子化パラメータ、動きベクトル等といった映像信号の復号に必要な他の情報である。圧縮された映像データと関連情報を含むVCL NALユニットがあり、映像シーケンス全体に関連するパラメータセットのような追加データをカプセル化しているnon−VCLユニットもあり、また、復号精度の改善に用いられる追加情報を提供する補足的な付加情報(SEI)もある。
【0013】
画質向上を目的として、いわゆるポストフィルタ280をデコーダ側200に適用してもよい。H.264/MPEG−4 AVC標準規格では、そのようなポストフィルタに対するポストフィルタ情報をSEIメッセージを介して送信することが可能である。ポストフィルタ情報は、ローカルで復号された信号と元の入力信号とを比較するポストフィルタ設計部180によってエンコーダ側で決定される。概して、ポストフィルタ情報は、デコーダが適切なフィルタを設定できるようにする情報である。当該情報はフィルタ係数を直接的に含んでもよく、フィルタ設定を可能にする他の情報を含んでもよい。ポストフィルタ設計部180によって出力されるフィルタ情報はまた、符号化し符号化信号に挿入する目的で、エントロピー符号化部190に入力される。そのような適応的フィルタは、例えばHEVC標準規格におけるように、第2のポストフィルタとして用いられてもよい。
【0014】
図2は、H.264/MPEG−4 AVC映像符号化規格に準拠した例示的なデコーダ200を示す。符号化映像信号(デコーダへの入力信号)ビットストリームは、まず、エントロピーデコーダ290に送られる。エントロピーデコーダ290は、量子化係数、動きデータや予測モード等の復号に必要な他の情報要素、およびポストフィルタ情報を復号する。エントロピーデコーダ290において、復号対象ブロックに適用される空間的予測のタイプ/モードを示す空間的イントラ予測モード情報がビットストリームから抽出される。抽出された情報は、空間的予測部270(
図2に図示せず)に入力される。量子化係数は、2次元マトリクスを得る目的で逆走査され、その後、逆量子化・逆変換部220に入力される。逆量子化および逆変換の後に、復号(量子化)予測誤差信号が得られる。復号(量子化)予測誤差信号は、量子化ノイズがない場合にエンコーダに入力された信号から予測信号を減算して、得られた差分に対応する。
【0015】
予測信号は、時間的予測260または空間的予測270の何れかから得られる。これらは、エンコーダにおいて適用された予測を信号で伝える受信情報要素にしたがって切り換えられる(275)。復号された情報要素は、さらに、イントラ予測の場合の予測タイプのような予測に必要な情報(空間的イントラ予測モード情報)や、動き補償予測の場合の動きデータを含む。動きベクトルの現在の値によっては、動き補償予測を行うために画素値の補間が必要になることもある。この補間は、補間フィルタ250によって実行される。空間ドメインにおける量子化予測誤差信号は、その後、加算器225により、動き補償予測260またはフレーム内予測270の何れかから得られた予測信号に加算される。再構築画像は、デブロッキングフィルタ230を通り、その結果得られる復号信号は、メモリ240に格納され、後続ブロックの時間的または空間的予測に使用されてもよい。ポストフィルタ情報は、ポストフィルタ280に入力され、ポストフィルタ280がそれにしたがってポストフィルタを設定する。その後、ポストフィルタが、さらに画質を向上させるために復号信号に適用される。
【0016】
方向性イントラ予測モードは、鋭いエッジの予測には非常に効果的だが、平滑な領域または焦点外の領域の予測には適応していない。そのような領域に対しては、参照対象をローパスフィルタで平滑化することが特に適切であり、符号化効率の面で有益である。よって、特に予測対象の画像領域がぼやけているか、または焦点外である場合に、イントラ予測のために参照画素にローパスフィルタを適用することは、再構築画素に付加された量子化ノイズを除去し、イントラ予測を向上させる技術として周知である。
【発明を実施するための形態】
【0028】
本発明の基となる課題は、ローパスフィルタが参照画素または予測信号に適用された場合に、鋭いエッジが効率的に予測できないことである。したがって、ローパスフィルタが参照画素または予測信号に適用されるべきか否かを判別する必要がある。
【0029】
その解決法として、平滑化(ローパスフィルタ)を実行するか否かを、各ブロックに対して、フラグを送信することで伝えることが考えられる。しかしながら、この手法はビットレートを増加させて、全体的な符号化効率を制限すると思われる。
【0030】
本発明によれば、複数のブロックに分割された符号化画像データをブロック単位で復号する方法であって、複数の復号済みブロックの画像データから対象ブロックを予測するステップと、たとえばエッジが存在するか否か、または信号の分散のような、対象ブロックに隣接した復号済みデータの統計を導出するステップと、前記導出された統計に基づいて、イントラ予測中にフィルタリングを適用するか否かを決定するステップとを含む方法が提供される。
【0031】
本発明の効果の一つは、画像信号の内容に適応してイントラ予測にフィルタリングを適用できるため、より高い予測品質が達成される可能性があることである。
【0032】
好ましくは、フィルタリングは予測に用いられる画素に適用される。しかしながら、本発明はこれに限定されない。別の実施の形態によれば、フィルタリングは予測信号に適用される。
【0033】
有利には、周辺ブロックの信号の分散を算出することにより、復号済み信号の統計が導出される。または、Sobel演算子、または2次元信号における勾配の算出に適した他のマトリクスを用いて勾配を算出し、これらの勾配のノルムと閾値とを比較するような、エッジ検出方法を適用することによって、復号済み信号の統計が導出される。
【0034】
具体的には、周辺ブロックの信号の分散が予め定義された閾値よりも小さければフィルタリングを適用し、周辺ブロックの信号の分散が予め定義された閾値よりも大きければフィルタリングを適用しないとしてもよい。
【0035】
または、エッジが検出されなければフィルタリングを適用し、エッジが検出されればフィルタリングを適用しないとしてもよい。
【0036】
本発明の実施の形態によれば、検出されたエッジを延長することで算出されたラインと交差しない領域に位置する画素にのみフィルタリングを適用する。具体的には、検出されたエッジと参照画素のラインとが交差する位置からの距離が予め定義された数の画素からの距離よりも近い当該ラインにある画素には、このフィルタは適用されない。画素のラインとは、画素の行および/または列であってもよい。
【0037】
画素には、検出されたエッジを延長することで算出されたラインに対するそれらの位置に応じて、異なるフィルタを適用してもよい。
【0038】
具体的には、検出されたエッジと参照画素のラインとが交差する位置からの距離が予め定義された数の画素からの距離よりも近い当該ラインにある画素に第1のフィルタを適用し、残りの画素に第2のフィルタを適用する。しかしながら、本発明はこれに限定されず、検出されたエッジを延長した位置に対する、フィルタリング対象の参照画素の位置に応じて、さらに別のフィルタを適用してもよい。有利には、エッジ近傍の画素はエッジ方向にフィルタリングされる。有利には、エッジ近傍にない画素は、ローパスフィルタを用いてフィルタリングされる。
【0039】
本発明の利点の一つは、鋭いエッジと平滑な領域との両方が、ビットレートを余分に増加させることなく効率的に予測および符号化できることである。
【0040】
本発明の実施の形態1によれば、参照近隣画素に基づいて方向性予測を算出するH.264/AVCイントラ予測部の代わりに、(例えばエッジ予測または分散算出を行うことで)近隣信号の統計を分析し、方向性予測の前または後にフィルタリングを適用する、新たなイントラ予測部を備える画像符号化装置を提供する。
【0041】
図3は、本発明の実施の形態1に係るイントラ予測部300の具体的な構成を示すブロック図である。このイントラ予測部300は、再構築された近隣信号にエッジが存在するか否かを判定し、エッジが存在する場合はその方向および/または位置を判定する算出部(この場合はエッジ検出部)310と、(例えば、2010年7月21〜28日、スイスジュネーブで行われたJCT−VCミーティングでの文書JCTVC−B205_draft007に記載のHEVC標準規格第1版に定義されているようなフィルタか、8×8イントラ予測に関するH.264/MPEG−4AVCにおいて適用されるローパスフィルタのようなフィルタを用いて)方向性予測に用いられる参照画素を、当該エッジ検出部310の出力にしたがってフィルタリングする第1フィルタリング部320と、エンコーダ170および/またはデコーダ270におけるH.264/MPEG−4AVCイントラ予測部、またはEP 2 081 386 A1に記載のイントラ予測に類似の、ある一つの方向性予測にしたがってブロックを予測する方向性予測部330と、エッジ検出部310の出力にしたがって方向性予測部330の出力をフィルタリングする第2フィルタリング部340とを備える。
【0042】
符号化効率を高めるために、EP 2 081 386 A1は、ブロックの画素を予測する方向の数が8に限定されない、改良された空間的予測を記載しているが、エッジ検出は復号済み近隣ブロック内で行われる。主エッジであると判定されたエッジの方向に基づいて、ブロックの画素が、可能であれば近隣ブロックに属する画素のライン内の小数画素位置から予測される。
【0043】
または、算出部310は、近隣信号の分散を算出する分散算出部でもよい。その場合、2つのフィルタリング部が、分散算出部の出力にしたがって、参照画素または方向性予測部の出力をフィルタリングする。
【0044】
ここで、再構築された近隣信号とは、対象ブロックを囲むブロック内の復号画素(サンプル)のことを指す。
【0045】
図4は、イントラ予測部によって実行される可能性のある例示的な方法を説明するフローチャートである。当該方法を実行するため、このイントラ予測部は、再構築された近隣信号にエッジが存在するか否かを判定する(410、430)ことができるエッジ検出部と、当該エッジ検出部においてエッジが検出されなかった場合(ステップ410、およびステップ430で“No”)に、方向性予測に用いられる参照画素をフィルタリングする(440)フィルタリング部と、ある一つの方向性予測にしたがってブロックを予測する(450)方向性予測部とを備える。これらは、上述のH.264/MPEG−4AVC方向性イントラ予測方法、またはEP 2 081 386 A1に記載のイントラ予測に類似していてもよい。
【0046】
図5は、本発明を実行するためのイントラ予測部の具体的な構造および方法のもう一つの例を説明するブロック図である。このイントラ予測部は、再構築された近隣信号の分散が予め定義された閾値よりも小さいかどうかを判定する(510、530)算出部(分散算出部)と、再構築された近隣信号の分散が予め定義された閾値よりも小さい場合に、方向性予測に用いられる参照画素をフィルタリングする(540)フィルタリング部と、ある一つの方向性予測にしたがってブロックを予測する(550)方向性予測部とを備える。
【0047】
上述のように、実施の形態1は、再構築された近隣信号から必要な情報を導出することで、ビットレートを余分に増加させることなく、鋭いエッジと平滑な領域との両方を効率的に符号化する方法および装置を含む。これは、エンコーダおよびデコーダによって同じように実行されてもよい。
【0048】
なお、
図4および5を参照して説明した上記方法ステップは、上記の例とは異なる構造を有する他のいかなる装置で実行されてもよい。具体的には、フローチャートのステップは、いかなる種類のプロセッサまたは装置によって実行されてもよい。
【0049】
上記実施の形態において起こりえる課題の一つは、近隣信号の特徴の分析を、選択された方向性イントラ予測モードとは独立して、エンコーダ100およびデコーダ200側で各ブロックに対して実行しなければならないことである。これにより、デコーダにおいて、または最適化されたエンコーダにおいて、イントラ予測が複雑化する。このような各ブロックに対する分析を避けるため、本発明の実施の形態2では、H.264/MPEG−4AVC方向性イントラ予測モードに加えて、EP 2 081 386 A1に記載のイントラ予測方法のような、新たなイントラ予測モードを導入する。近隣信号の分析は、新たなイントラ予測モードが選択された場合のみ実行する。
図3を参照して説明したイントラ予測部は、新たなイントラ予測モードが選択された場合にのみ用いられる。他の全てのモードでは、エンコーダおよびデコーダにおいて、H.264/MPEG−4AVCイントラ予測部170および/または270がそれぞれ用いられる。
【0050】
この新たなイントラ予測モードは、近隣信号のエッジ検出に依存する。エッジが検出されなければフィルタリングを適用し、エッジが検出されればフィルタリングを適用しない。
【0051】
図6は、この新たなイントラ予測モードに係る予測算出プロセスを説明するフローチャートである。第1のステップは、再構築済み近隣信号においてエッジ検出(610)を行うことである。エッジ検出として、以下のように近隣信号の3×3画素のブロックにSobel演算子を適用することが考えられる。
【0053】
2次元信号における勾配の算出に適した他のマトリクスを用いてもよい。
【0054】
3×3画素の各ブロックに対して、勾配ベクトルに対して垂直なエッジベクトルを定義することができる。主要なエッジ方向を決定するために、最大ノルムを有するエッジベクトル、または最も大きなノルムを有する複数のエッジベクトルの組み合わせを考慮することができる。
【0055】
概して、画像のエッジは、当該画像の勾配ベクトル領域を決定することで検出してもよい。勾配ベクトルはエッジ上でより大きく、エッジに対して垂直である。勾配領域を検出するのに最も一般的な手法の一つは、上記マスクSxおよびSyによって得られる、Sobel演算子等の垂直方向と水平方向のマトリクスを用いた画像の畳み込みである。
【0056】
具体的には、垂直SobelマスクSxと水平SobelマスクSyで画素p(x、y)をフィルタリングすることにより、ある特定の画素p(x、y)における垂直勾配ベクトル軸Gxと水平勾配ベクトル軸Gyとが得られる。
【0057】
多くの適用例に、勾配領域を得るためにSobel演算子が採用されている。しかしながら、本発明はSobel演算子を用いて勾配領域を検出することに限定されない。概して、勾配領域を提供するいかなるエッジ検出手法も使用することができる。例えば、2×2や4×4等の、Sobel演算子以外の大きさのマスクや、より大きなマスクを用いてもよい。具体的なマスクの選択は、所望する結果によって異なる。より大きなマスクを使用すると、エッジ検出が正確になり、小さな局所的エッジの検知を抑制することができる可能性があるが、その一方で、計算が複雑になる。または、Scharr演算子またはより高次の導関数に基づく演算子等の、Sobel演算子以外のマスクが、エッジ検出に用いられてもよい。
【0058】
勾配Gの垂直軸Gxおよび水平軸Gyを得た後に、予測対象ブロックを囲むブロックの複数の画素に対する主勾配を決定してもよい。水平軸Exおよび垂直軸Eyを有する主エッジベクトルEは、勾配ベクトルGに対して垂直である。それに対応して、主エッジベクトルEの水平成分Exおよび垂直成分Eyの大きさはそれぞれ、水平勾配Gyおよび垂直勾配Gxの大きさに対応する(例えば、反時計回りにEx=−Gy、Ey=Gx)。
【0059】
通常、対象ブロックに対する主エッジが、当該対象ブロックと交差する複数のエッジのうちで最大のノルムを有するエッジに決定される。しかしながら、他の方法を用いてもよく、例えば、複数のエッジの重み付け平均、または大多数の画素に対して検出されたエッジ方向等を用いてもよい。勾配の算出は、必ずしも隣接ブロック全体に対して実行されなくてもよい。概して、予測対象ブロックの境界近くの画素のサブセットを選択し、これらの画素に対してのみ勾配の算出を行うと有益である。この手法により、エッジ検出マスクを有する近隣ブロックの畳み込みに必要な動作数を削減できる。さらに、予測のため、予測対象ブロック内の実際のエッジに類似していると思われるエッジのみが重要であるので、境界近くのエッジを検出することで、役に立たないエッジを検出するリスクも削減できる。
【0060】
最終的なエッジベクトルのノルム、またはそれぞれ算出されたエッジベクトルのノルムは、予め定義された閾値と比較することができる。閾値よりも高いノルムが一つあれば、エッジが検出される。その場合、当該エッジベクトルはエッジの方向を示し、最も強いエッジベクトルが算出された画素の3×3ブロックの位置は、エッジの位置を示す。閾値よりも高いノルムがなければ、エッジは検出されない。
【0061】
そして検出結果が評価される(630)。エッジが検出されれば(ステップ630で“yes”)、EP 2 081 386 A1に記載されているようにエッジの方向に応じて、小数画素参照画素の補間(620)によって予測が実行される。具体的には、参照画素のラインと、検出されたエッジ方向の予測対象画素を通るラインとの交点を線形補間することによって、予測信号が算出される。エッジが検出されない場合(ステップ630で“no”)、その次のステップは、予測に用いられる信号を平滑化する目的で、参照画素にローパスフィルタを適用する(640)ことである。ここで、参照画素は、一番上の近隣ブロックの画素の中で、対象ブロックとの境界に最も近い行の画素であってもよい。または、参照画素は、左に位置する近隣ブロックの画素の中で、対象ブロックとの境界に最も近い列の画素であってもよい。参照画素はまた、一番上の行および左の列にある画素のセットであってもよい。次のステップは、ある予め定義された方向を一つ、例えば、最も大きなノルムを有するエッジベクトルの方向に最も近い方向を選択すること(650)である。具体的には、それはエッジ検出ステップ(610)において決定された近隣画素の全体的な方向に対応する方向であってもよい。そして選択された予め定義された方向に対して定義された予測方法を用いて予測が実行される(660)。
【0062】
または、最も強いノルムを有するエッジベクトルの方向が、予め定義された方向のうちの一つの代わりに選択されてもよい。その場合は、予測ステップにおいてEP 2 081 386 A1に記載の方法を用いてもよい。
【0063】
本発明の実施の形態3によると、いくつかの参照画素にローパスフィルタが適用され、他の参照画素にはフィルタが適用されないので、各ブロックに対し、画素毎に平滑化フィルタの使用を切り替えることになる。
【0064】
本実施の形態は、
図7に概略的に示される。エッジ検出が用いられる場合は、エッジ750に示されるように、参照画素のラインおよび予測対象ブロックを通ってエッジを延長することができる。その場合は、エッジ周辺に位置するn画素に対してフィルタリングをオフにすると有益である。ここでnは、たとえば1または2である。その一方で、他の画素に対してフィルタリングを適用してもよい。
図7は、対象ブロック700のイントラ予測に用いられる参照画素の行730を示す。本実施の形態によると、参照画素の行730にありエッジ750に近い参照画素はフィルタリングされない。フィルタリングされないn個の画素は、フィルタリングに用いられる画素がエッジと交差しないように、適用されたローパスフィルタの長さに応じて定められてもよい。
【0065】
本発明の実施の形態4によると、エッジ周辺のn個の画素と、平坦な領域に属する他の画素とに、異なる種類のフィルタリングを適用してもよい。本実施の形態は、
図8に示される。その場合、FILTER1は先行技術(H.264/MPEG−4 AVC標準規格またはHEVC working draft JCTVC−B205_draft007)における参照画素のフィルタリングに用いられるローパスフィルタに類似のローパスフィルタである。FILTER2は、有利には、エッジ方向のみの平滑化フィルタである。FILTER2は、好ましくは、エッジに垂直な方向には平滑でない。FILTER2の効果は、エッジを鋭くすることである。
【0066】
本発明の実施の形態5において、デコーダに、実施の形態1に記載された技術と同じ技術を適用する。
図3における差異は、選択された方向性予測モードが方向性予測部に入力として送信されることのみである。
【0067】
概して、デコーダに、実施の形態1〜4に記載された技術と同じイントラ予測技術を適用してもよい。
【0068】
以下、各実施の形態において説明した映像符号化方法および映像復号方法の応用例と、それらを用いたシステムについて説明する。
【0069】
図9は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示す図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex106、ex107、ex108、ex109、ex110が設置されている。
【0070】
このコンテンツ供給システムex100は、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex106からex110を介して、コンピュータex111、PDA(Personal Digital Assistant)ex112、カメラex113、携帯電話ex114、ゲーム機ex115などの各機器が接続される。
【0071】
しかし、コンテンツ供給システムex100は
図9のような構成に限定されず、いずれかの要素を組合せて接続するようにしてもよい。また、固定無線局である基地局ex106からex110を介さずに、各機器が電話網ex104に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。
【0072】
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器であり、カメラex116はデジタルカメラ等の静止画撮影、動画撮影が可能な機器である。また、携帯電話ex114は、GSM(登録商標)(Global System for Mobile Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband−Code Division Multiple Access)方式、若しくはLTE(Long Term Evolution)方式、HSPA(High Speed Packet Access)の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
【0073】
コンテンツ供給システムex100では、カメラex113等が基地局ex109、電話網ex104を通じてストリーミングサーバex103に接続されることで、ライブ配信等が可能になる。ライブ配信では、ユーザがカメラex113を用いて撮影するコンテンツ(例えば、音楽ライブの映像等)に対して上記各実施の形態で説明したように符号化処理を行い、ストリーミングサーバex103に送信する。一方、ストリーミングサーバex103は要求のあったクライアントに対して送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114、ゲーム機ex115等がある。配信されたデータを受信した各機器では、受信したデータを復号化処理して再生する。
【0074】
なお、撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。同様に配信されたデータの復号化処理はクライアントで行っても、ストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。また、カメラex113に限らず、カメラex116で撮影した静止画像および/または映像データを、コンピュータex111を介してストリーミングサーバex103に送信してもよい。この場合の符号化処理はカメラex116、コンピュータex111、ストリーミングサーバex103のいずれで行ってもよいし、互いに分担して行ってもよい。
【0075】
また、これら符号化・復号化処理は、一般的にコンピュータex111や各機器が有するLSIex500において処理する。LSIex500は、ワンチップであっても複数チップからなる構成であってもよい。なお、映像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な何らかの記録メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込み、そのソフトウェアを用いて符号化・復号化処理を行ってもよい。さらに、携帯電話ex114がカメラ付きである場合には、そのカメラで取得した画像データを送信してもよい。このときの動画データは携帯電話ex114が有するLSIex500で符号化処理されたデータである。
【0076】
また、ストリーミングサーバex103は複数のサーバや複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。
【0077】
以上のようにして、コンテンツ供給システムex100では、符号化されたデータをクライアントが受信して再生することができる。このようにコンテンツ供給システムex100では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号化し、再生することができ、特別な権利や設備を有さないユーザでも個人放送を実現できる。
【0078】
なお、コンテンツ供給システムex100の例に限らず、
図10に示すように、デジタル放送用システムex200にも、上記各実施の形態の少なくとも映像符号化装置または映像復号装置のいずれかを組み込むことができる。具体的には、放送局ex201では映像データに音楽データなどが多重化された多重化データが電波を介して通信または衛星ex202に伝送される。この映像データは上記各実施の形態で説明した映像符号化方法により符号化されたデータである。これを受けた放送衛星ex202は、放送用の電波を発信し、この電波を衛星放送の受信が可能な家庭のアンテナex204が受信する。受信した多重化データを、テレビ(受信機)ex300またはセットトップボックス(STB)ex217等の装置が復号化して再生する。
【0079】
また、DVD、BD等の記録メディアex215に記録した多重化データを読み取り復号化する、または記録メディアex215に映像信号を符号化し、さらに場合によっては音楽信号と多重化して書き込むリーダ/レコーダex218にも上記各実施の形態で示した映像復号化装置または映像符号化装置を実装することが可能である。この場合、再生された映像信号はモニタex219に表示され、多重化データが記録された記録メディアex215により他の装置やシステムにおいて映像信号を再生することができる。また、ケーブルテレビ用のケーブルex203または衛星/地上波放送のアンテナex204に接続されたセットトップボックスex217内に映像復号化装置を実装し、これをテレビのモニタex219で表示してもよい。このときセットトップボックスではなく、テレビ内に映像復号化装置を組み込んでもよい。
【0080】
図11は、上記各実施の形態で説明した映像復号化方法および映像符号化方法を用いたテレビ(受信機)ex300を示す図である。テレビex300は、上記放送を受信するアンテナex204またはケーブルex203等を介して映像データに音声データが多重化された多重化データを取得、または出力するチューナex301と、受信した多重化データを復調する、または外部に送信する多重化データに変調する変調/復調部ex302と、復調した多重化データを映像データと、音声データとに分離する、または信号処理部ex306で符号化された映像データ、音声データを多重化する多重/分離部ex303を備える。
【0081】
また、テレビex300は、音声データ、映像データそれぞれを復号化する、またはそれぞれの情報を符号化する音声信号処理部ex304、映像信号処理部ex305を有する信号処理部ex306と、復号化した音声信号を出力するスピーカex307、復号化した映像信号を表示するディスプレイ等の表示部ex308を有する出力部ex309とを有する。さらに、テレビex300は、ユーザ操作の入力を受け付ける操作入力部ex312等を有するインタフェース部ex317を有する。さらに、テレビex300は、各部を統括的に制御する制御部ex310、各部に電力を供給する電源回路部ex311を有する。インタフェース部ex317は、操作入力部ex312以外に、リーダ/レコーダex218等の外部機器と接続されるブリッジex313、SDカード等の記録メディアex216を装着可能とするためのスロット部ex314、ハードディスク等の外部記録メディアと接続するためのドライバex315、電話網と接続するモデムex316等を有していてもよい。なお記録メディアex216は、格納する不揮発性/揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。テレビex300の各部は同期バスを介して互いに接続されている。
【0082】
まず、テレビex300がアンテナex204等により外部から取得した多重化データを復号化し、再生する構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、CPU等を有する制御部ex310の制御に基づいて、変調/復調部ex302で復調した多重化データを多重/分離部ex303で分離する。さらにテレビex300は、分離した音声データを音声信号処理部ex304で復号化し、分離した映像データを映像信号処理部ex305で上記各実施の形態で説明した復号化方法を用いて復号化する。復号化した音声信号、映像信号は、それぞれ出力部ex309から外部に向けて出力される。出力する際には、音声信号と映像信号が同期して再生するよう、バッファex318、ex319等に一旦これらの信号を蓄積するとよい。また、テレビex300は、放送等からではなく、磁気/光ディスク、SDカード等の記録メディアex215、ex216から多重化データを読み出してもよい。次に、テレビex300が音声信号や映像信号を符号化し、外部に送信または記録メディア等に書き込む構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、制御部ex310の制御に基づいて、音声信号処理部ex304で音声信号を符号化し、映像信号処理部ex305で映像信号を上記各実施の形態で説明した符号化方法を用いて符号化する。符号化した音声信号、映像信号は多重/分離部ex303で多重化され外部に出力される。多重化する際には、音声信号と映像信号が同期するように、バッファex320、ex321等に一旦これらの信号を蓄積するとよい。なお、バッファex318、ex319、ex320、ex321は図示しているように複数備えていてもよいし、1つ以上のバッファを共有する構成であってもよい。さらに、図示している以外に、例えば変調/復調部ex302や多重/分離部ex303の間等でもシステムのオーバフロー、アンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。
【0083】
また、テレビex300は、放送等や記録メディア等から音声データ、映像データを取得する以外に、マイクやカメラのAV入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。なお、ここではテレビex300は上記の符号化処理、多重化、および外部出力ができる構成として説明したが、これらの処理を行うことはできず、上記受信、復号化処理、外部出力のみが可能な構成であってもよい。
【0084】
また、リーダ/レコーダex218で記録メディアから多重化データを読み出す、または書き込む場合には、上記復号化処理または符号化処理はテレビex300、リーダ/レコーダex218のいずれで行ってもよいし、テレビex300とリーダ/レコーダex218が互いに分担して行ってもよい。
【0085】
一例として、光ディスクからデータの読み込みまたは書き込みをする場合の情報再生/記録部ex400の構成を
図12に示す。情報再生/記録部ex400は、以下に説明する要素ex401、ex402、ex403、ex404、ex405、ex406、ex407を備える。光ヘッドex401は、光ディスクである記録メディアex215の記録面にレーザスポットを照射して情報を書き込み、記録メディアex215の記録面からの反射光を検出して情報を読み込む。変調記録部ex402は、光ヘッドex401に内蔵された半導体レーザを電気的に駆動し記録データに応じてレーザ光の変調を行う。再生復調部ex403は、光ヘッドex401に内蔵されたフォトディテクタにより記録面からの反射光を電気的に検出した再生信号を増幅し、記録メディアex215に記録された信号成分を分離して復調し、必要な情報を再生する。バッファex404は、記録メディアex215に記録するための情報および記録メディアex215から再生した情報を一時的に保持する。ディスクモータex405は記録メディアex215を回転させる。サーボ制御部ex406は、ディスクモータex405の回転駆動を制御しながら光ヘッドex401を所定の情報トラックに移動させ、レーザスポットの追従処理を行う。システム制御部ex407は、情報再生/記録部ex400全体の制御を行う。上記の読み出しや書き込みの処理はシステム制御部ex407が、バッファex404に保持された各種情報を利用し、また必要に応じて新たな情報の生成・追加を行うと共に、変調記録部ex402、再生復調部ex403、サーボ制御部ex406を協調動作させながら、光ヘッドex401を通して、情報の記録再生を行うことにより実現される。システム制御部ex407は例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。
【0086】
以上では、光ヘッドex401はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。
【0087】
図13に光ディスクである記録メディアex215の模式図を示す。記録メディアex215の記録面には案内溝(グルーブ)がスパイラル状に形成され、情報トラックex230には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報はデータを記録する単位である記録ブロックex231の位置を特定するための情報を含み、記録や再生を行う装置において情報トラックex230を再生し番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex215は、データ記録領域ex233、内周領域ex232、外周領域ex234を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex233であり、データ記録領域ex233より内周または外周に配置されている内周領域ex232と外周領域ex234は、ユーザデータの記録以外の特定用途に用いられる。情報再生/記録部ex400は、このような記録メディアex215のデータ記録領域ex233に対して、符号化された音声データ、映像データまたはそれらのデータを多重化した多重化データの読み書きを行う。
【0088】
以上では、1層のDVD、BD等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所にさまざまな異なる波長の色の光を用いて情報を記録したり、さまざまな角度から異なる情報の層を記録したりなど、多次元的な記録/再生を行う構造の光ディスクであってもよい。
【0089】
また、デジタル放送用システムex200において、アンテナex205を有する車ex210で衛星ex202等からデータを受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex211の構成は例えば
図10に示す構成のうち、GPS受信部を加えた構成が考えられ、同様なことがコンピュータex111や携帯電話ex114等でも考えられる。
【0090】
図14(a)は、上記実施の形態で説明した映像復号化方法および映像符号化方法を用いた携帯電話ex114を示す図である。携帯電話ex114は、基地局ex110との間で電波を送受信するためのアンテナex350、映像、静止画を撮ることが可能なカメラ部ex365、カメラ部ex365で撮像した映像、アンテナex350で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex358を備える。携帯電話ex114は、さらに、操作キー部ex366を有する本体部、音声を出力するためのスピーカ等である音声出力部ex357、音声を入力するためのマイク等である音声入力部ex356、撮影した映像、静止画、録音した音声、または受信した映像、静止画、メール等の符号化されたデータもしくは復号化されたデータを保存するメモリ部ex367、又は同様にデータを保存する記録メディアとのインタフェース部であるスロット部ex364を備える。
【0091】
さらに、携帯電話ex114の構成例について、
図14(b)を用いて説明する。携帯電話ex114は、表示部ex358及び操作キー部ex366を備えた本体部の各部を統括的に制御する主制御部ex360に対して、電源回路部ex361、操作入力制御部ex362、映像信号処理部ex355、カメラインタフェース部ex363、LCD(Liquid Crystal Display)制御部ex359、変調/復調部ex352、多重/分離部ex353、音声信号処理部ex354、スロット部ex364、メモリ部ex367がバスex370を介して互いに接続されている。
【0092】
電源回路部ex361は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話ex114を動作可能な状態に起動する。
【0093】
携帯電話ex114は、CPU、ROM、RAM等を有する主制御部ex360の制御に基づいて、音声通話モード時に音声入力部ex356で収音した音声信号を音声信号処理部ex354でデジタル音声信号に変換し、これを変調/復調部ex352でスペクトラム拡散処理し、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して送信する。また携帯電話ex114は、音声通話モード時にアンテナex350を介して受信した受信データを増幅して周波数変換処理およびアナログデジタル変換処理を施し、変調/復調部ex352でスペクトラム逆拡散処理し、音声信号処理部ex354でアナログ音声信号に変換した後、これを音声出力部ex356から出力する。
【0094】
さらにデータ通信モード時に電子メールを送信する場合、本体部の操作キー部ex366等の操作によって入力された電子メールのテキストデータは操作入力制御部ex362を介して主制御部ex360に送出される。主制御部ex360は、テキストデータを変調/復調部ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して基地局ex110へ送信する。電子メールを受信する場合は、受信したデータに対してこのほぼ逆の処理が行われ、表示部ex358に出力される。
【0095】
データ通信モード時に映像、静止画、または映像と音声を送信する場合、映像信号処理部ex355は、カメラ部ex365から供給された映像信号を上記各実施の形態で示した映像符号化方法によって圧縮符号化し、符号化された映像データを多重/分離部ex353に送出する。また、音声信号処理部ex354は、映像、静止画等をカメラ部ex365で撮像中に音声入力部ex356で収音した音声信号を符号化し、符号化された音声データを多重/分離部ex353に送出する。
【0096】
多重/分離部ex353は、映像信号処理部ex355から供給された符号化された映像データと音声信号処理部ex354から供給された符号化された音声データを所定の方式で多重化し、その結果得られる多重化データを変調/復調部ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex350を介して送信する。
【0097】
データ通信モード時にホームページ等にリンクされた映像ファイルのデータを受信する場合、または映像およびもしくは音声が添付された電子メールを受信する場合、アンテナex350を介して受信された多重化データを復号化するために、多重/分離部ex353は、多重化データを分離することにより映像データのビットストリームと音声データのビットストリームとに分け、同期バスex370を介して符号化された映像データを映像信号処理部ex355に供給するとともに、符号化された音声データを音声信号処理部ex354に供給する。映像信号処理部ex355は、上記各実施の形態で示した映像符号化方法に対応した映像復号化方法によって復号化することにより映像信号を復号し、LCD制御部ex359を介して表示部ex358から、例えばホームページにリンクされた映像ファイルに含まれる映像、静止画が表示される。また音声信号処理部ex354は、音声信号を復号し、音声出力部ex357から音声が出力される。
【0098】
また、上記携帯電話ex114等の端末は、テレビex300と同様に、符号化器・復号化器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号化器のみの受信端末という3通りの実装形式が考えられる。さらに、デジタル放送用システムex200において、映像データに音楽データなどが多重化された多重化データを受信、送信するとして説明したが、音声データ以外に映像に関連する文字データなどが多重化されたデータであってもよいし、多重化データではなく映像データ自体であってもよい。
【0099】
このように、上記各実施の形態で示した映像符号化方法あるいは映像復号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記各実施の形態で説明した効果を得ることができる。
【0100】
また、本発明はかかる上記実施の形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
【0101】
上記各実施の形態で示した映像符号化方法または装置と、MPEG−2、MPEG4−AVC、VC−1など異なる規格に準拠した映像符号化方法または装置とを、必要に応じて適宜切替えることにより、映像データを生成することも可能である。
【0102】
ここで、それぞれ異なる規格に準拠する複数の映像データを生成した場合、復号する際に、それぞれの規格に対応した復号方法を選択する必要がある。しかしながら、復号する映像データが、どの規格に準拠するものであるか識別できないため、適切な復号方法を選択することができないという課題を生じる。
【0103】
この課題を解決するために、映像データに音声データなどを多重化した多重化データは、映像データがどの規格に準拠するものであるかを示す識別情報を含む構成とする。上記各実施の形態で示す映像符号化方法または装置によって生成された映像データを含む多重化データの具体的な構成を以下説明する。多重化データは、MPEG−2トランスポートストリーム形式のデジタルストリームである。
【0104】
図15は、多重化データの構成を示す図である。
図15に示すように多重化データは、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム(PG)、インタラクティブグラフィックスストリームのうち、1つ以上を多重化することで得られる。ビデオストリームは映画の主映像および副映像を、オーディオストリーム(IG)は映画の主音声部分とその主音声とミキシングする副音声を、プレゼンテーショングラフィックスストリームは、映画の字幕をそれぞれ示している。ここで主映像とは画面に表示される通常の映像を示し、副映像とは主映像の中に小さな画面で表示する映像のことである。また、インタラクティブグラフィックスストリームは、画面上にGUI部品を配置することにより作成される対話画面を示している。ビデオストリームは、上記各実施の形態で示した映像符号化方法または装置、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠した映像符号化方法または装置によって符号化されている。オーディオストリームは、ドルビーAC−3、Dolby Digital Plus、MLP、DTS、DTS−HD、または、リニアPCMのなどの方式で符号化されている。
【0105】
多重化データに含まれる各ストリームはPIDによって識別される。例えば、映画の映像に利用するビデオストリームには0x1011が、オーディオストリームには0x1100から0x111Fまでが、プレゼンテーショングラフィックスには0x1200から0x121Fまでが、インタラクティブグラフィックスストリームには0x1400から0x141Fまでが、映画の副映像に利用するビデオストリームには0x1B00から0x1B1Fまで、主音声とミキシングする副映像に利用するオーディオストリームには0x1A00から0x1A1Fが、それぞれ割り当てられている。
【0106】
図16は、多重化データがどのように多重化されるかを模式的に示す図である。まず、複数のビデオフレームからなるビデオストリームex235、複数のオーディオフレームからなるオーディオストリームex238を、それぞれPESパケット列ex236およびex239に変換し、TSパケットex237およびex240に変換する。同じくプレゼンテーショングラフィックスストリームex241およびインタラクティブグラフィックスex244のデータをそれぞれPESパケット列ex242およびex245に変換し、さらにTSパケットex243およびex246に変換する。多重化データex247はこれらのTSパケットを1本のストリームに多重化することで構成される。
【0107】
図17は、PESパケット列に、ビデオストリームがどのように格納されるかをさらに詳しく示している。
図17における第1段目はビデオストリームのビデオフレーム列を示す。第2段目は、PESパケット列を示す。
図17の矢印yy1,yy2,yy3,yy4に示すように、ビデオストリームにおける複数のVideo Presentation UnitであるIピクチャ、Bピクチャ、Pピクチャは、ピクチャ毎に分割され、PESパケットのペイロードに格納される。各PESパケットはPESヘッダを持ち、PESヘッダには、ピクチャの表示時刻であるPTS(Presentation Time−Stamp)やピクチャの復号時刻であるDTS(Decoding Time−Stamp)が格納される。
【0108】
図18は、多重化データに最終的に書き込まれるTSパケットの形式を示している。TSパケットは、ストリームを識別するPIDなどの情報を持つ4ByteのTSヘッダとデータを格納する184ByteのTSペイロードから構成される188Byte固定長のパケットであり、上記PESパケットは分割されTSペイロードに格納される。BD−ROMの場合、TSパケットには、4ByteのTP_Extra_Headerが付与され、192Byteのソースパケットを構成し、多重化データに書き込まれる。TP_Extra_HeaderにはATS(Arrival_Time_Stamp)などの情報が記載される。ATSは当該TSパケットのデコーダのPIDフィルタへの転送開始時刻を示す。多重化データには
図18下段に示すようにソースパケットが並ぶこととなり、多重化データの先頭からインクリメントする番号はSPN(ソースパケットナンバー)と呼ばれる。
【0109】
また、多重化データに含まれるTSパケットには、映像・音声・字幕などの各ストリーム以外にもPAT(Program Association Table)、PMT(Program Map Table)、PCR(Program Clock Reference)などがある。PATは多重化データ中に利用されるPMTのPIDが何であるかを示し、PAT自身のPIDは0で登録される。PMTは、多重化データ中に含まれる映像・音声・字幕などの各ストリームのPIDと各PIDに対応するストリームの属性情報を持ち、また多重化データに関する各種ディスクリプタを持つ。ディスクリプタには多重化データのコピーを許可・不許可を指示するコピーコントロール情報などがある。PCRは、ATSの時間軸であるATC(Arrival Time Clock)とPTS・DTSの時間軸であるSTC(System Time Clock)の同期を取るために、そのPCRパケットがデコーダに転送されるATSに対応するSTC時間の情報を持つ。
【0110】
図19はPMTのデータ構造を詳しく説明する図である。PMTの先頭には、そのPMTに含まれるデータの長さなどを記したPMTヘッダが配置される。その後ろには、多重化データに関するディスクリプタが複数配置される。上記コピーコントロール情報などが、ディスクリプタとして記載される。ディスクリプタの後には、多重化データに含まれる各ストリームに関するストリーム情報が複数配置される。ストリーム情報は、ストリームの圧縮コーデックなどを識別するためストリームタイプ、ストリームのPID、ストリームの属性情報(フレームレート、アスペクト比など)が記載されたストリームディスクリプタから構成される。ストリームディスクリプタは多重化データに存在するストリームの数だけ存在する。
【0111】
記録媒体などに記録する場合には、上記多重化データは、多重化データ情報ファイルと共に記録される。
【0112】
多重化データ情報ファイルは、
図20に示すように多重化データの管理情報であり、多重化データと1対1に対応し、多重化データ情報、ストリーム属性情報とエントリマップから構成される。
【0113】
多重化データは
図20に示すようにシステムレート、再生開始時刻、再生終了時刻から構成されている。システムレートは多重化データの、後述するシステムターゲットデコーダのPIDフィルタへの最大転送レートを示す。多重化データ中に含まれるATSの間隔はシステムレート以下になるように設定されている。再生開始時刻は多重化データの先頭のビデオフレームのPTSであり、再生終了時刻は多重化データの終端のビデオフレームのPTSに1フレーム分の再生間隔を足したものが設定される。
【0114】
ストリーム属性情報は
図21に示すように、多重化データに含まれる各ストリームについての属性情報が、PID毎に登録される。属性情報はビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、インタラクティブグラフィックスストリーム毎に異なる情報を持つ。ビデオストリーム属性情報は、そのビデオストリームがどのような圧縮コーデックで圧縮されたか、ビデオストリームを構成する個々のピクチャデータの解像度がどれだけであるか、アスペクト比はどれだけであるか、フレームレートはどれだけであるかなどの情報を持つ。オーディオストリーム属性情報は、そのオーディオストリームがどのような圧縮コーデックで圧縮されたか、そのオーディオストリームに含まれるチャンネル数は何であるか、何の言語に対応するか、サンプリング周波数がどれだけであるかなどの情報を持つ。これらの情報は、プレーヤが再生する前のデコーダの初期化などに利用される。
【0115】
上記多重化データのうち、PMTに含まれるストリームタイプを利用する。また、記録媒体に多重化データが記録されている場合には、多重化データ情報に含まれる、ビデオストリーム属性情報を利用する。具体的には、上記各実施の形態で示した映像符号化方法または装置において、PMTに含まれるストリームタイプ、または、ビデオストリーム属性情報に対し、上記各実施の形態で示した映像符号化方法または装置によって生成された映像データであることを示す固有の情報を設定するステップまたは手段を設ける。この構成により、上記各実施の形態で示した映像符号化方法または装置によって生成した映像データと、他の規格に準拠する映像データとを識別することが可能になる。
【0116】
また、映像復号化方法のステップを
図22に示す。ステップexS100において、多重化データからPMTに含まれるストリームタイプ、または、ビデオストリーム属性情報を取得する。次に、ステップexS101において、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した映像符号化方法または装置によって生成された多重化データであることを示しているか否かを判断する。そして、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した映像符号化方法または装置によって生成されたものであると判断された場合には、ステップexS102において、上記各実施の形態で示した映像復号方法により復号を行う。また、ストリームタイプ、または、ビデオストリーム属性情報が、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠するものであることを示している場合には、ステップexS103において、従来の規格に準拠した映像復号方法により復号を行う。
【0117】
このように、ストリームタイプ、または、ビデオストリーム属性情報に新たな固有値を設定することにより、復号する際に、上記各実施の形態で示した映像復号化方法または装置で復号可能であるかを判断することができる。従って、異なる規格に準拠する多重化データが入力された場合であっても、適切な復号化方法または装置を選択することができるため、エラーを生じることなく復号することが可能となる。また、映像符号化方法または装置、または、映像復号方法または装置を、上述したいずれの機器・システムに用いることも可能である。
【0118】
上記各実施の形態で示した映像符号化方法および装置、映像復号化方法および装置は、典型的には集積回路であるLSIで実現される。一例として、
図23に1チップ化されたLSIex500の構成を示す。LSIex500は、以下に説明する要素ex501、ex502、ex503、ex504、ex505、ex506、ex507、ex508、ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
【0119】
例えば符号化処理を行う場合には、LSIex500は、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有する制御部ex501の制御に基づいて、AV I/Oex509によりマイクex117やカメラex113等からAV信号を入力する。入力されたAV信号は、一旦SDRAM等の外部のメモリex511に蓄積される。制御部ex501の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声信号の符号化および/または映像信号の符号化が行われる。ここで映像信号の符号化処理は上記各実施の形態で説明した符号化処理である。信号処理部ex507ではさらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームI/Oex506から外部に出力する。この出力された多重化データは、基地局ex107に向けて送信されたり、または記録メディアex215に書き込まれたりする。なお、多重化する際には同期するよう、一旦バッファex508にデータを蓄積するとよい。
【0120】
なお、上記では、メモリex511がLSIex500の外部の構成として説明したが、LSIex500の内部に含まれる構成であってもよい。バッファex508も1つに限ったものではなく、複数のバッファを備えていてもよい。また、LSIex500は1チップ化されてもよいし、複数チップ化されてもよい。
【0121】
また、上記では、制御部ex510が、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有するとしているが、制御部ex510の構成は、この構成に限らない。例えば、信号処理部ex507がさらにCPUを備える構成であってもよい。信号処理部ex507の内部にもCPUを設けることにより、処理速度をより向上させることが可能になる。また、他の例として、CPUex502が信号処理部ex507、または信号処理部ex507の一部である例えば音声信号処理部を備える構成であってもよい。このような場合には、制御部ex501は、信号処理部ex507、またはその一部を有するCPUex502を備える構成となる。
【0122】
なお、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
【0123】
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【0124】
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
【0125】
上記各実施の形態で示した映像符号化方法または装置によって生成された映像データを復号する場合、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データを復号する場合に比べ、処理量が増加することが考えられる。そのため、LSIex500において、従来の規格に準拠する映像データを復号する際のCPUex502の駆動周波数よりも高い駆動周波数に設定する必要がある。しかし、駆動周波数を高くすると、消費電力が高くなるという課題が生じる。
【0126】
この課題を解決するために、テレビex300、LSIex500などの映像復号化装置は、映像データがどの規格に準拠するものであるかを識別し、規格に応じて駆動周波数を切替える構成とする。
図24は、構成ex800を示している。駆動周波数切替え部ex803は、映像データが、上記各実施の形態で示した映像符号化方法または装置によって生成されたものである場合には、駆動周波数を高く設定する。そして、上記各実施の形態で示した映像復号化方法を実行する復号処理部ex801に対し、映像データを復号するよう指示する。一方、映像データが、従来の規格に準拠する映像データである場合には、映像データが、上記各実施の形態で示した映像符号化方法または装置によって生成されたものである場合に比べ、駆動周波数を低く設定する。そして、従来の規格に準拠する復号処理部ex802に対し、映像データを復号するよう指示する。
【0127】
より具体的には、駆動周波数切替え部ex803は、
図23のCPUex502と駆動周波数制御部ex512から構成される。また、上記各実施の形態で示した映像復号化方法を実行する復号処理部ex801、および、従来の規格に準拠する復号処理部ex802は、
図23の信号処理部ex507に該当する。CPUex502は、映像データがどの規格に準拠するものであるかを識別する。そして、CPUex502からの信号に基づいて、駆動周波数制御部ex512は、駆動周波数を設定する。また、CPUex502からの信号に基づいて、信号処理部ex507は、映像データの復号を行う。ここで、映像データの識別には、例えば、識別情報を利用することが考えられる。識別情報に関しては、上述のものに限られず、映像データがどの規格に準拠するか識別できる情報であればよい。例えば、映像データがテレビに利用されるものであるか、ディスクに利用されるものであるかなどを識別する外部信号に基づいて、映像データがどの規格に準拠するものであるか識別可能である場合には、このような外部信号に基づいて識別してもよい。また、CPUex502における駆動周波数の選択は、例えば、
図26のような映像データの規格と、駆動周波数とを対応付けたルックアップテーブルに基づいて行うことが考えられる。ルックアップテーブルを、バッファex508や、LSIの内部メモリに格納しておき、CPUex502がこのルックアップテーブルを参照することにより、駆動周波数を選択することが可能である。
【0128】
図25は、方法を実施するステップを示している。まず、ステップexS200では、信号処理部ex507において、多重化データから識別情報を取得する。次に、ステップexS201では、CPUex502において、識別情報に基づいて映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものであるか否かを識別する。映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合には、ステップexS202において、駆動周波数を高く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、高い駆動周波数に設定される。一方、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、ステップexS203において、駆動周波数を低く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合に比べ、低い駆動周波数に設定される。
【0129】
さらに、駆動周波数の切替えに連動して、LSIex500またはLSIex500を含む装置に与える電圧を変更することにより、省電力効果をより高めることが可能である。例えば、駆動周波数を低く設定する場合には、これに伴い、駆動周波数を高く設定している場合に比べ、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することが考えられる。
【0130】
また、駆動周波数の設定方法は、復号する際の処理量が大きい場合に、駆動周波数を高く設定し、復号する際の処理量が小さい場合に、駆動周波数を低く設定すればよく、上述した設定方法に限らない。例えば、MPEG4−AVC規格に準拠する映像データを復号する処理量の方が、上記各実施の形態で示した映像符号化方法または装置により生成された映像データを復号する処理量よりも大きい場合には、駆動周波数の設定を上述した場合の逆にすることが考えられる。
【0131】
さらに、駆動周波数の設定方法は、駆動周波数を低くする構成に限らない。例えば、識別情報が、上記各実施の形態で示した映像符号化方法または装置によって生成された映像データであることを示している場合には、LSIex500またはLSIex500を含む装置に与える電圧を高く設定し、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することも考えられる。また、他の例としては、識別情報が、上記各実施の形態で示した映像符号化方法または装置によって生成された映像データであることを示している場合には、CPUex502の駆動を停止させることなく、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、処理に余裕があるため、CPUex502の駆動を一時停止させることも考えられる。識別情報が、上記各実施の形態で示した映像符号化方法または装置によって生成された映像データであることを示している場合であっても、処理に余裕があれば、CPUex502の駆動を一時停止させることも考えられる。この場合は、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合に比べて、停止時間を短く設定することが考えられる。
【0132】
このように、映像データが準拠する規格に応じて、駆動周波数を切替えることにより、省電力化を図ることが可能になる。また、電池を用いてLSIex500またはLSIex500を含む装置を駆動している場合には、省電力化に伴い、電池の寿命を長くすることが可能である。
【0133】
テレビや、携帯電話など、上述した機器・システムには、異なる規格に準拠する複数の映像データが入力される場合がある。このように、異なる規格に準拠する複数の映像データが入力された場合にも復号できるようにするために、LSIex500の信号処理部ex507が複数の規格に対応している必要がある。しかし、それぞれの規格に対応する信号処理部ex507を個別に用いると、LSIex500の回路規模が大きくなり、また、コストが増加するという課題が生じる。
【0134】
この課題を解決するために、上記各実施の形態で示した映像復号方法を実行するための復号処理部と、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する復号処理部とを一部共有化する構成とする。この構成例を
図27(a)のex900に示す。例えば、上記各実施の形態で示した映像復号方法と、MPEG4−AVC規格に準拠する映像復号方法とは、エントロピー符号化、逆量子化、デブロッキングフィルタ、動き補償などの処理において処理内容が一部共通する。共通する処理内容については、MPEG4−AVC規格に対応する復号処理部ex902を共有し、MPEG4−AVC規格に対応しない、本発明特有の他の処理内容については、専用の復号処理部ex901を用いるという構成が考えられる。本発明は、空間的予測に特徴を有していることから、例えば、本発明に係る空間的予測については専用の復号処理部ex901を用い、それ以外のエントロピー符号化、逆変換、逆量子化、および動き補償予測のいずれか、または、全ての処理については、復号処理部を共有することが考えられる。復号処理部の共有化に関しては、共通する処理内容については、上記各実施の形態で示した映像復号化方法を実行するための復号処理部を共有し、MPEG4−AVC規格に特有の処理内容については、専用の復号処理部を用いる構成であってもよい。
【0135】
また、処理を一部共有化する他の例を
図27(b)のex1000に示す。この例では、本発明に特有の処理内容に対応した専用の復号処理部ex1001と、他の従来規格に特有の処理内容に対応した専用の復号処理部ex1002と、本発明の映像復号方法と他の従来規格の映像復号方法とに共通する処理内容に対応した共用の復号処理部ex1003とを用いる構成としている。ここで、専用の復号処理部ex1001、ex1002は、必ずしも本発明、または、他の従来規格に特有の処理内容に特化したものではなく、他の汎用処理を実行できるものであってもよい。また、構成を、LSIex500で実装することも可能である。
【0136】
このように、本発明の映像復号方法と、従来の規格の映像復号方法とで共通する処理内容について、復号処理部を共有することにより、LSIの回路規模を小さくし、かつ、コストを低減することが可能である。
【0137】
要するに、本発明は、画像信号の符号化および/または復号中に実行される可能性のあるイントラ予測に関し、特に、予測信号および/または予測に用いられる信号にフィルタリングが適用される、対象ブロックのイントラ予測に関する。フィルタリングは、対象ブロックに空間的に隣接するブロックに含まれる画像信号の特徴に基づく決定にしたがって適用される。