以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(画像処理システム)
2.第2の実施の形態(復号装置)
3.第3の実施の形態(多視点画像符号化・復号システム)
4.第4の実施の形態(階層画像符号化・復号システム)
5.第5の実施の形態(コンピュータ)
6.第6の実施の形態(応用例)
7.第7の実施の形態(その他の例)
<1.第1の実施の形態>
(画像処理システム)
図1は、本技術の画像処理システムの構成例を示す図である。
図1の例の画像処理システム1においては、サムネイル再生やN倍速の早送り再生、(Nは整数でなくてもよい)などの特殊再生を行う場合、AU(Access Unit)を復号した後に表示するピクチャを選択することで間引いた間引き処理が行われる。画像処理システム1においては、その間引き再生時に、復号の必要の有無が判定され、判定結果に応じて復号が行われる。
画像処理システム1は、符号化装置11および復号装置12を含むように構成されている。例えば、画像処理システム1においては、符号化方式として、MPEG(Moving Picture Experts Group)、H.264及びMPEG-4 Part10(Advanced Video Coding、以下AVCと記す)、HEVC(High Efficiency Video Coding)などが用いられる。
符号化装置11は、原画像を取り込む。符号化装置11は、取り込まれた原画像を符号化して、動画像データを生成する。その際、符号化装置11は、必要に応じて、間引き再生時に復号の必要の可否を示す間引き可否情報をuserdataに挿入する。特に、符号化方式がHEVCの場合、間引き可否情報は、SEI(Supplemental Enhancement Information)のuserdataに挿入される。
復号装置12は、符号化装置11により符号化された動画像データを受ける。復号装置12は、間引き再生時に、入力された動画像データから間引き可否情報を読み出し、間引き可否情報に基づいて、動画像データの復号を行い、表示データを生成する。
(本技術の概要)
図2は、復号順に並んだ動画像データの例を示している。
まず、図2に示されるように、I,P,B,B,P,B,B,…というような、参照ピクチャの周期が3で、表示前に並び替え(reorder)が必要になる復号順の動画像データを例に説明する。
通常の復号装置においては、ピクチャ(スライス)の復号を終え、表示順に並べ替えた後に、間引きの周期を加味することで、当該ピクチャが間引き対象であるか否かを知ることができる。
図3および図4は、図2の例において、復号順、表示順のそれぞれで、間引き周期が2乃至5のそれぞれの場合についての表示の必要性の有無を示す図である。なお、図3および図4の例において、Disp.の数字は、表示順番を示し、Ref.の丸印は、参照ピクチャであることを示している。また、2乃至4の間引き周期において、丸印は、表示するピクチャを示し、バツ印は、表示しないピクチャ(AU)を示す。さらに、図4の表示順の例において、ハッチ付のバツは、復号前に間引き可能なピクチャ(AU)であることを示している。
図3に示されるように、復号順では、間引きの周期に規則性がなく、この時点では間引き対象を判別することが困難である。他方、図4に示されるように、表示順に並べ替えた後であれば、間引き対象か否かの判定は容易である。しかしながら、この時点では、すべてのAUの復号が終了しており、結果として、復号する必要がなかったAUまで復号していることになる。
図4の例においては、バツ印のAUは間引き対象であり、その中でもハッチが付されているバツ印のAUは、参照もされておらず、表示対象でもないため、結果的に復号が不要であることがわかる。
これに対して、本技術を用いることで、復号する前に復号の必要性を判定し、復号の必要があるAUのみの復号を行うことができるようになる。
具体的には、動画像データの符号化の際に、userdataに、間引き再生時に復号の必要の可否を示すN bitの間引き可否情報を持たせる。これにより、n枚毎に間引いて再生する場合(間引き周期n)には、間引き可否情報のbit(n-1)のみを参照すれば、当該AUの復号の必要性を知ることができる。なお、この情報は、間引き再生であれば、16bitあればよい。
図5は、間引き周期n=2,3,4,5の場合について、間引き可否情報の16bitのうち、LSB詰め5bit分に着目した例を示す図である。この場合、例えば、B2の間引き可否情報は、「…11110」となり、bit1,2,3,4が立っているため、2,3,4,5枚で間引いた再生の場合に復号が不要であることがわかる。
また、例えば、B9の間引き可否情報を見ると、「…10100」となっており、bit2,4のみが立っているため、3枚間引きと5枚間引きの際に復号が不要であることがわかる。
なお、理解のため、例では、Bピクチャを間引き対象としているが、必ずしもBピクチャのみが対象というわけではなく、参照されないPピクチャに対しても本技術を適用することができる。
(符号化装置の構成例)
図6は、図1の符号化装置の構成例を示すブロック図である。図6の例においては、HEVC(High Efficiency Video Coding)方式の画像符号化・復号に適用する場合を例に、本技術を説明する。
符号化装置11は、取り込み部21、リオーダ部22、間引き情報生成部23、シンタクス符号化部24、スライス符号化部25、ユーザデータ挿入部26、および伝送部27を含むように構成されている。
取り込み部21は、原画像を取り込み、取り込んだ原画像を、リオーダ部22に出力する。リオーダ部22は、M値に応じたリオーダ(並べ替え)を行う。すなわち、リオーダ部22は、表示の順番のフレームの画像を、M値に応じて、符号化のための順番に並べ替える。リオーダ部22は、リオーダ後の原画像とリオーダの情報を、シンタクス符号化部24に出力する。また、リオーダ部22は、リオーダの情報を、間引き情報生成部23に供給する。
間引き情報生成部23は、リオーダにより確定された参照関係に基づいて、間引き可否情報(以下、単に間引き情報とも称する)を生成する。すなわち、間引き情報生成部23は、間引き可否情報を含むuserdataを生成し、生成された間引き可否情報を含むuserdataを、ユーザデータ挿入部26に供給する。
シンタクス符号化部24は、上位シンタクス、例えば、SPS(Sequence Parameter Set),PPS(Picture Parameter Set),SEIの符号化を行い、符号化された上位シンタクスと原画像を、スライス符号化部25に出力する。スライス符号化部25は、原画像のスライスデータを、例えば、HEVCにより符号化する。スライス符号化部25は、符号化された上位シンタクスとスライスデータとからなる符号化ストリームを生成し、ユーザデータ挿入部26に出力する。
ユーザデータ挿入部26は、符号化ストリームにおける符号化された上位シンタクスのSEIに、間引き可否情報を含むuserdataを挿入し、その後、符号化された上位シンタクスとスライスデータ(符号化ストリーム)である動画像データを伝送部27に出力する。伝送部27は、動画像データを、復号装置12へ送信する。
(符号化単位の説明)
図7は、HEVC方式における符号化単位であるCoding UNIT(CU)を説明する図である。
HEVC方式では、4000画素×2000画素のUHD(Ultra High Definition)などのような大きな画枠の画像も対象としているため、符号化単位のサイズを16画素×16画素に固定することは最適ではない。従って、HEVC方式では、符号化単位としてCUが定義されている。
CUは、AVC方式におけるマクロブロックと同様の役割を果たす。具体的には、CUはPUに分割されたり、TUに分割されたりする。
但し、CUのサイズは、シーケンスごとに可変の2のべき乗画素で表される正方形である。具体的には、CUは、最大のサイズのCUであるLCUを、最小のサイズのCUであるSCU(Smallest Coding Unit)より小さくならないように、任意の回数だけ水平方向および垂直方向に2分割することにより設定される。即ち、LCUを、SCUになるまで、上の階層のサイズが下の階層のサイズの1/4となるように階層化したときの任意の階層のサイズがCUのサイズである。
例えば、図7では、LCUのサイズが128であり、SCUのサイズが8である。従って、LCUの階層深度(Depth)は0乃至4となり、階層深度数は5となる。即ち、CUに対応する分割数は0乃至4のいずれかである。
なお、LCUとSCUのサイズを指定する情報は、SPSに含められる。また、CUに対応する分割数は、各階層においてさらに分割するかどうかを表すsplit_flagにより指定される。
TUのサイズは、CUのsplit_flagと同様に、split_transform_flagを用いて指定することができる。インター予測時およびイントラ予測時のTUの最大分割数は、それぞれ、max_transform_hierarchy_depth_inter,max_transform_hierarchy_depth_intraとして、SPSにより指定される。
また、本明細書において、CTU(Coding Tree Unit)は、LCUのCTB(Coding Tree Block)と、そのLCUベース(レベル)で処理するときのパラメータを含む単位であるとする。また、CTUを構成するCUは、CB(Coding Block)と、そのCUベース(レベル)で処理するときのパラメータを含む単位であるとする。
(モード選択)
ところで、AVCそしてHEVC符号化方式において、より高い符号化効率を達成するには、適切な予測モードの選択が重要である。
かかる選択方式の例として、JM(Joint Model)と呼ばれるH.264/MPEG-4 AVCの参照ソフトウエア(http://iphome.hhi.de/suehring/tml/index.htm において公開されている)に実装されている方法を挙げることが出来る。
JMにおいては、以下に述べる、High Complexity Modeと、Low Complexity Modeの2通りのモード判定方法を選択することが可能である。どちらも、それぞれの予測モードModeに関するコスト関数値を算出し、これを最小にする予測モードを当該ブロック乃至マクロブロックに対する最適モードとして選択する。
High Complexity Modeにおけるコスト関数は、以下の式(1)のように示される。
ここで、Ωは、当該ブロック乃至マクロブロックを符号化するための候補モードの全体集合、Dは、当該予測モードで符号化した場合の、復号画像と入力画像の差分エネルギーである。λは、量子化パラメータの関数として与えられるLagrange未定乗数である。Rは、直交変換係数を含んだ、当該モードで符号化した場合の総符号量である。
つまり、High Complexity Modeでの符号化を行うには、上記パラメータD及びRを算出するため、全ての候補モードにより、一度、仮エンコード処理を行う必要があり、より高い演算量を要する。
Low Complexity Modeにおけるコスト関数は、以下の式(2)のように示される。
ここで、Dは、High Complexity Modeの場合と異なり、予測画像と入力画像の差分エネルギーとなる。QP2Quant(QP)は、量子化パラメータQPの関数として与えられ、HeaderBitは、直交変換係数を含まない、動きベクトルや、モードといった、Headerに属する情報に関する符号量である。
すなわち、Low Complexity Modeにおいては、それぞれの候補モードに関して、予測処理を行う必要があるが、復号画像までは必要ないため、符号化処理まで行う必要はない。このため、High Complexity Modeより低い演算量での実現が可能である。
(スライス符号化部の構成例)
図8は、スライス符号化部25の構成例を示すブロック図である。
図8のスライス符号化部25は、バッファ111、演算部112、直交変換部113、量子化部114、符号化部115、蓄積バッファ116、逆量子化部117、逆直交変換部118、および加算部119を有する。また、スライス符号化部25は、フィルタ120、フレームメモリ121、イントラ予測部122、インター予測部123、予測画像選択部124、およびレート制御部125を有する。
符号化対象として入力されたフレーム単位の画像が図示せぬA/D変換部によりA/D変換され、変換後のデジタル信号である画像が、バッファ111に出力される。
バッファ111は、フレーム単位の画像を一旦記憶し、演算部112、イントラ予測部122、およびインター予測部123に供給する。
演算部112は、バッファ111から供給される画像から、予測画像選択部124から供給される予測画像を減算することにより符号化を行う。演算部112は、その結果得られる画像を、残差情報(差分)として直交変換部113に出力する。なお、予測画像選択部124から予測画像が供給されない場合、演算部112は、バッファ111から読み出された画像をそのまま残差情報として直交変換部113に出力する。
直交変換部113は、TU単位で、演算部112からの残差情報に対して直交変換処理を行う。直交変換部113は、直交変換処理後の直交変換処理結果を量子化部114に供給する。
量子化部114は、直交変換部113から供給される直交変換処理結果を量子化する。量子化部114は、量子化の結果得られる量子化値を符号化部115に供給する。
符号化部115は、最適イントラ予測モードを示す情報(以下、イントラ予測モード情報という)をイントラ予測部122から取得する。また、符号化部115は、最適インター予測モードを示す情報(以下、インター予測モード情報という)、動きベクトル、参照画像を特定する情報などをインター予測部123から取得する。また、符号化部115は、フィルタ120からオフセットフィルタに関するオフセットフィルタ情報を取得する。
符号化部115は、量子化部114から供給される量子化値に対して、可変長符号化や算術符号化などの可逆符号化を行う。
また、符号化部115は、イントラ予測モード情報、または、インター予測モード情報、動きベクトル、および参照画像を特定する情報、並びにオフセットフィルタ情報などを、符号化に関する符号化情報として可逆符号化する。符号化部115は、可逆符号化された符号化情報と量子化値を、符号化データとして蓄積バッファ116に供給し、蓄積させる。
なお、可逆符号化された符号化情報は、可逆符号化された量子化値のヘッダ情報(例えばスライスヘッダ)とされてもよい。
蓄積バッファ116は、符号化部115から供給される符号化データを、一時的に記憶する。また、蓄積バッファ116は、記憶している符号化データを、符号化ストリームとして、図6のユーザデータ挿入部26に供給する。
また、量子化部114より出力された量子化値は、逆量子化部117にも入力される。逆量子化部117は、量子化値を逆量子化する。逆量子化部117は、逆量化の結果得られる直交変換処理結果を逆直交変換部118に供給する。
逆直交変換部118は、TU単位で、逆量子化部117から供給される直交変換処理結果に対して逆直交変換処理を行う。逆直交変換の方式としては、例えば、IDCT(逆離散コサイン変換)とIDST(逆離散サイン変換)がある。逆直交変換部118は、逆直交変換処理の結果得られる残差情報を加算部119に供給する。
加算部119は、逆直交変換部118から供給される残差情報と、予測画像選択部124から供給される予測画像を加算し、復号を行う。加算部119は、復号された画像をイントラ予測部122とフィルタ120に供給する。
フィルタ120は、加算部119から供給される復号された画像に対して、フィルタ処理を行う。具体的には、フィルタ120は、デブロックフィルタ処理と適応オフセットフィルタ(SAO(Sample adaptive offset))処理を順に行う。フィルタ120は、フィルタ処理後の符号化済みのピクチャをフレームメモリ121に供給する。また、フィルタ120は、行われた適応オフセットフィルタ処理の種類とオフセットを示す情報を、オフセットフィルタ情報として符号化部115に供給する。
フレームメモリ121は、フィルタ120から供給される画像を蓄積する。一方、フレームメモリ121に蓄積されたフィルタ処理が行われた画像は、参照画像としてインター予測部123に出力される。
イントラ予測部122は、PU単位で、加算部119からの周辺画像を用いて、候補となる全てのイントラ予測モードのイントラ予測処理を行う。イントラ予測部122は、コスト関数値が最小となるイントラ予測モードを、最適イントラ予測モードに決定する。
イントラ予測部122は、最適イントラ予測モードで生成された予測画像、および、対応するコスト関数値を、予測画像選択部124に供給する。イントラ予測部122は、予測画像選択部124から最適イントラ予測モードで生成された予測画像の選択が通知された場合、イントラ予測モード情報を符号化部115に供給する。なお、イントラ予測モードとはPUのサイズ、予測方向などを表すモードである。
インター予測部123は、インター予測モードの動き予測・補償処理を行う。具体的には、インター予測部123は、バッファ111から供給される画像と、フレームメモリ121から読み出される参照画像に基づいて、インター予測モードの動きベクトルをPU単位で検出する。そして、インター予測部123は、その動きベクトルに基づいてPU単位で参照画像に補償処理を施し、予測画像を生成する。
このとき、インター予測部123は、バッファ111から供給される画像と予測画像とに基づいて、すべてのインター予測モードに対してコスト関数値を算出し、コスト関数値が最小となるインター予測モードを最適インター予測モードに決定する。そして、インター予測部123は、最適インター予測モードのコスト関数値と、対応する予測画像を予測画像選択部124に供給する。また、インター予測部123は、予測画像選択部124から最適インター予測モードで生成された予測画像の選択が通知された場合、インター予測モード情報、対応する動きベクトル、参照画像を特定する情報などを符号化部115に出力する。なお、インター予測モードとは、PUのサイズなどを表すモードである。
予測画像選択部124は、イントラ予測部122およびインター予測部123から供給されるコスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちの、対応するコスト関数値が小さい方を、最適予測モードに決定する。そして、予測画像選択部124は、最適予測モードの予測画像を、演算部112および加算部119に供給する。また、予測画像選択部124は、最適予測モードの予測画像の選択をイントラ予測部122またはインター予測部123に通知する。
レート制御部125は、蓄積バッファ116に蓄積された符号化データに基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部114の量子化動作のレートを制御する。
(符号化装置の動作)
次に、図9のフローチャートを参照して、符号化装置11の符号化処理について説明する。
ステップS11において、取り込み部21は、図示せぬ前段から原画像を取り込む。取り込み部21は、取り込まれた原画像を、リオーダ部22に出力する。ステップS12において、リオーダ部22は、M値に応じたリオーダを行い、リオーダ後の原画像とリオーダの情報を、シンタクス符号化部24に出力する。また、リオーダ部22は、リオーダの情報を、間引き情報生成部23に供給する。
ステップS13において、間引き情報生成部23は、リオーダにより確定された参照関係に基づいて、間引き可否情報を含むuserdataを生成する。間引き情報生成部23は、生成された間引き可否情報を含むuserdataを、ユーザデータ挿入部26に供給する。
ステップS14において、シンタクス符号化部24は、上位シンタクス、例えば、SPS(Sequence Parameter Set),PPS(Picture Parameter Set),SEIの符号化を行い、符号化された上位シンタクスと原画像を、スライス符号化部25に出力する。
ステップS15において、スライス符号化部25は、原画像のスライスデータを、例えば、HEVCにより符号化し、符号化ストリームを生成する。なお、このスライスデータの符号化処理の詳細は、図10を参照して後述される。ステップS15によりスライスデータが符号化されるので、スライス符号化部25は、符号化された上位シンタクスとスライスデータ(符号化ストリーム)とをユーザデータ挿入部26に出力する。
ステップS16において、ユーザデータ挿入部26は、符号化された上位シンタクスのSEIに、間引き可否情報を含むuserdataを挿入する。その後、符号化された上位シンタクスとスライスデータを、動画像データとして伝送部27に出力する。伝送部27は、動画像データを、復号装置12へ送信する。
なお、図9の例において、間引き可否情報の生成と、userdataの挿入は、それぞれ、ステップS13およびS16であるが、リオーダによる参照関係の確定後であればどのタイミングに行われてもよい。符号化によるbit発生量には依存しないので、挿入処理自体はいつでも可能である。
次に、図10のフローチャートを参照して、図9のステップS15におけるスライスデータの符号化処理について説明する。
符号化対象として入力されたフレーム単位の画像が図示せぬA/D変換部によりA/D変換され、変換後のデジタル信号である画像が、バッファ111に出力される。
ステップS101において、バッファ111は、フレーム単位の画像を一旦記憶し、演算部112、イントラ予測部122、およびインター予測部123に供給する。
ステップS102において、イントラ予測部122およびインター予測部123は、それぞれ予測処理を行う。すなわち、イントラ予測部122は、PU単位で、すべてのイントラ予測モードのイントラ予測処理を行う。すなわち、イントラ予測部122は、演算部119からの画像と、イントラ予測処理の結果生成される予測画像とに基づいて、すべてのイントラ予測モードに対してコスト関数値を算出する。そして、イントラ予測部122は、コスト関数値が最小となるイントラ予測モードを、最適イントラ予測モードに決定する。イントラ予測部122は、最適イントラ予測モードで生成された予測画像、および、対応するコスト関数値を、予測画像選択部124に供給する。
インター予測部123は、PU単位で、すべてのインター予測モードの動き予測・補償処理を行う。また、インター予測部123は、バッファ111から供給される画像と予測画像とに基づいて、すべてのインター予測モードに対してコスト関数値を算出し、コスト関数値が最小となるインター予測モードを最適インター予測モードに決定する。そして、インター予測部123は、最適インター予測モードのコスト関数値と、対応する予測画像を予測画像選択部124に供給する。
予測画像選択部124は、イントラ予測部122およびインター予測部123から供給されるコスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちのコスト関数値が最小となる方を、最適予測モードに決定する。そして、予測画像選択部124は、最適予測モードの予測画像を、演算部112および加算部119に供給する。
なお、最適予測モードが最適インター予測モードであると判定された場合、予測画像選択部124は、最適インター予測モードで生成された予測画像の選択をインター予測部123に通知する。そして、インター予測部123は、インター予測モード情報、動きベクトル、および参照画像を特定する情報を符号化部115に供給する。一方、最適予測モードが最適インター予測モードではないと判定された場合、即ち最適予測モードが最適イントラ予測モードである場合、予測画像選択部124は、最適イントラ予測モードで生成された予測画像の選択をイントラ予測部122に通知する。そして、イントラ予測部122は、イントラ予測モード情報を符号化部115に供給する。
ステップS103において、演算部112は、バッファ111から供給される画像から、予測画像選択部124から供給される予測画像を減算することにより符号化を行う。演算部112は、その結果得られる画像を、残差情報として直交変換部113に出力する。
ステップS104において、直交変換部113は、TU単位で、残差情報に対して直交変換処理を行う。直交変換部113は、直交変換処理後の直交変換処理結果を量子化部114に供給する。
ステップS105において、量子化部114は、直交変換部113から供給される直交変換処理結果を量子化する。量子化部114は、量子化の結果得られる量子化値を符号化部115と逆量子化部117に供給する。
ステップS106において、逆量子化部117は、量子化部114からの量子化値に対して逆量子化を行う。逆量子化部117は、逆量化の結果得られる直交変換処理結果を逆直交変換部118に供給する。
ステップS107において、逆直交変換部118は、TU単位で、逆量子化部117から供給される直交変換処理結果に対して逆直交変換処理を行う。逆直交変換部118は、逆直交変換処理の結果得られる残差情報を加算部119に供給する。
ステップS108において、加算部119は、逆直交変換部118から供給される残差情報と、予測画像選択部124から供給される予測画像を加算し、復号を行う。加算部119は、復号された画像をフィルタ120とイントラ予測部122に供給する。
ステップS109において、フィルタ120は、加算部119から供給される復号された画像に対して、デブロッキングフィルタ処理を行う。
ステップS110において、フィルタ120は、デブロッキングフィルタ後の画像に対して、適応オフセットフィルタ処理を行う。フィルタ120は、その結果得られる画像をフレームメモリ121に供給する。また、フィルタ120は、LCUごとに、オフセットフィルタ情報を符号化部115に供給する。
フレームメモリ121は、フィルタ120から供給される画像を蓄積する。フレームメモリ121に蓄積されたフィルタ処理が行われた画像は、参照画像としてインター予測部123に出力される。
ステップS111において、符号化部115は、符号化を行う。すなわち、符号化部115は、量子化部114から供給される量子化値を符号化し、符号化データを生成する。なお、また、符号化部115は、イントラ予測モード情報、または、インター予測モード情報、動きベクトル、および参照画像を特定する情報、並びにオフセットフィルタ情報なども、符号化情報として符号化する。
ステップS112において、蓄積バッファ116は、符号化部115から供給される符号化データを、一時的に蓄積する。また、蓄積バッファ116は、記憶している符号化データを、符号化ストリームとして、図6のユーザデータ挿入部26に供給する。
ステップS113において、レート制御部125は、蓄積バッファ116に蓄積された符号化データに基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部114の量子化動作のレートを制御する。
(符号化装置の構成例)
図11は、符号化装置11の他の構成例を示すブロック図である。
図11の符号化装置11は、取り込み部21、リオーダ部22、間引き情報生成部23、シンタクス符号化部24、スライス符号化部25、ユーザデータ挿入部26、および伝送部27を備える点は、図6の符号化装置11と共通している。
図11の符号化装置11は、GOP(Group Of Picture)構造決定部151が追加された点が図6の符号化装置11と異なっている。
すなわち、取り込み部21は、取り込んだ原画像を、GOP構造決定部151に出力する。GOP構造決定部151は、リオーダのためのGOP構造を確定し、確定したGOP構造の情報と原画像を、リオーダ部22に供給する。また、GOP構造決定部151は、確定したGOP構造の情報を、間引き情報生成部23に供給する。
リオーダ部22は、表示の順番のフレームの画像を、GOP構造決定部151により確定されたGOP構造とM値に応じて、符号化のための順番に並べ替える。リオーダ部22は、リオーダ後の原画像とリオーダの情報を、シンタクス符号化部24に出力する。
間引き情報生成部23は、GOP構造決定部151により確定されたGOP構造に基づいて、間引き可否情報を生成する。すなわち、間引き情報生成部23は、間引き可否情報を含むuserdataを生成し、生成された間引き可否情報を含むuserdataを、ユーザデータ挿入部26に供給する。
(符号化装置の動作)
次に、図12のフローチャートを参照して、図11の符号化装置11の符号化処理について説明する。
ステップS151において、取り込み部21は、図示せぬ前段から原画像を取り込む。取り込み部21は、取り込まれた原画像を、GOP構造決定部151に出力する。ステップS152において、リオーダのためのGOP構造を確定し、確定したGOP構造の情報と原画像を、リオーダ部22に供給する。また、GOP構造決定部151は、確定したGOP構造の情報を、間引き情報生成部23に供給する。
ステップS153において、間引き情報生成部23は、GOP構造決定部151により確定されたGOP構造に基づいて、間引き可否情報を生成する。すなわち、間引き情報生成部23は、間引き可否情報を含むuserdataを生成し、生成された間引き可否情報を含むuserdataを、ユーザデータ挿入部26に供給する。
ステップS154において、間引き情報生成部23は、GOP構造決定部151により確定されたGOP構造に基づいて、間引き可否情報を生成する。すなわち、間引き情報生成部23は、間引き可否情報を含むuserdataを生成し、生成された間引き可否情報を含むuserdataを、ユーザデータ挿入部26に供給する。
なお、以降のステップS155乃至S157の処理は、上述した図9のステップS14乃至S16の処理と基本的に同様な処理であるので、その説明は省略される。
図12の例の場合も、間引き可否情報の生成と、userdataの挿入は、それぞれ、ステップS13およびS16であるが、リオーダによる参照関係の確定後、より詳細には、リオーダのためのGOP構造確定後であればどのタイミングに行われてもよい。符号化によるbit発生量には依存しないので、挿入処理自体はいつでも可能である。
(復号装置の構成例)
図13は、復号装置12の構成例を示すブロック図である。
復号装置12は、受け取り部201、シーケンス復号部202、ピクチャ復号部203、間引き情報判定部204、およびスライス復号部205を含むように構成されている。
受け取り部201は、例えば、符号化装置11からの動画像データを受け取り、受け取られた動画像データを、シーケンス復号部202に供給する。シーケンス復号部202は、動画像データのシーケンス毎のパラメータ(例えば、SPS)を復号し、復号されたシーケンス毎のパラメータと動画像データとを、ピクチャ復号部203に供給する。
ピクチャ復号部203は、動画像データのピクチャ毎のパラメータ(例えば、PPS(Picture Parameter Set),SEI)を復号し、復号されたピクチャ毎のパラメータとシーケンス毎のパラメータと動画像データとをスライス復号部205に供給する。その際、ピクチャ復号部203は、SEIにおいて、userdataがあって、そのuserdataに、間引き可否情報があるか否かを判定する。ピクチャ復号部203は、間引き可否情報があると判定した場合、その間引き可否情報を取得し、間引き情報判定部204に供給する。
間引き情報判定部204は、間引き可否情報を参照して、処理対象のAUが、間引き対象であるか否かを判定する。
処理対象のAUが間引き対象ではないと判定された場合、間引き情報判定部204は、スライス復号部205を制御し、対応するスライスデータの復号を行わせる。処理対象のAUが間引き対象であると判定された場合、間引き情報判定部204は、次のピクチャの処理に移行させる。すなわち、間引き対象のピクチャは、復号が禁止される。
SEIにおいて、userdataがない、または、userdataに間引き可否情報がないと判定された場合、ピクチャ復号部203は、スライス復号部205に対して、対応するスライスデータの復号を行わせる。
スライス復号部205は、間引き情報判定部204の制御のもと、ピクチャ復号部203からの動画像データを復号し、復号の結果得られる表示データを、後段の例えば、LCDなどの表示装置に出力させる。
(スライス復号部の構成例)
図14は、図13のスライス復号部205の構成例を示すブロック図である。
図14のスライス復号部205は、蓄積バッファ211、復号部212、逆量子化部213、逆直交変換部214、加算部215、フィルタ216、および画面並べ替えバッファ217を有する。また、スライス復号部205は、フレームメモリ218、イントラ予測部219、インター予測部220、および予測画像選択部221を有する。
スライス復号部205の蓄積バッファ211は、図13のピクチャ復号部203から動画像データを受け取り、蓄積する。蓄積バッファ211は、蓄積されている動画像データを復号部212に供給する。
復号部212は、蓄積バッファ211からの動画像データに対して、可変長復号や、算術復号等の可逆復号を施すことで、量子化値と符号化情報を得る。復号部212は、量子化値を逆量子化部213に供給する。
また、復号部212は、符号化情報としてのイントラ予測モード情報などをイントラ予測部219に供給する。復号部212は、動きベクトル、インター予測モード情報、参照画像を特定する情報などをインター予測部220に供給する。
さらに、復号部212は、符号化情報としてのイントラ予測モード情報またはインター予測モード情報を予測画像選択部221に供給する。復号部212は、符号化情報としてのオフセットフィルタ情報をフィルタ216に供給する。
逆量子化部213、逆直交変換部214、加算部215、フィルタ216、フレームメモリ218、イントラ予測部219、およびインター予測部220は、図18の逆量子化部117、逆直交変換部118、加算部119、フィルタ120、フレームメモリ121、イントラ予測部122、およびインター予測部123とそれぞれ同様の処理を行い、これにより、画像が復号される。
具体的には、逆量子化部213は、図8の逆量子化部117と同様に構成される。逆量子化部213は、TU単位で、復号部212からの量子化値を逆量子化する。逆量子化部213は、その結果得られる直交変換処理結果を逆直交変換部214に供給する。
逆直交変換部214は、図8の逆直交変換部118と同様に構成される。逆直交変換部214は、逆量子化部213から供給される直交変換処理結果に対して逆直交変換処理を行う。逆直交変換部214は、逆直交変換処理の結果得られる残差情報を加算部215に供給する。
加算部215は、逆直交変換部214から供給される残差情報と、予測画像選択部221から供給される予測画像を加算することにより、復号を行う。加算部215は、復号された画像をフィルタ216とイントラ予測部219に供給する。
フィルタ216は、加算部215から供給される画像に対して適応デブロックフィルタ処理を行う。フィルタ216は、その結果得られる画像に対して、LCUごとに、復号部212からのオフセットフィルタ情報が表すオフセットを用いて、オフセットフィルタ情報が表す種類の適応オフセットフィルタ処理を行う。フィルタ216は、適応オフセットフィルタ処理後の画像を、フレームメモリ218および画面並べ替えバッファ217に供給する。
画面並べ替えバッファ217は、フィルタ216から供給される画像をフレーム単位で記憶する。画面並べ替えバッファ217は、記憶した符号化のための順番のフレーム単位の画像を、元の表示の順番に並び替え、例えば、必要に応じて、フレーム単位の画像をD/A変換を行い、後段に出力する。
フレームメモリ218は、フィルタ216から供給される画像を蓄積する。フレームメモリ218に蓄積されたフィルタ処理が行われた画像は、参照画像として、インター予測部220に供給される。
イントラ予測部219は、加算部215から読み出された周辺画像を用いて、復号部212から供給されるイントラ予測モード情報が示す最適イントラ予測モードのイントラ予測処理を行う。イントラ予測部219は、その結果生成される予測画像を予測画像選択部221に供給する。
インター予測部220は、フレームメモリ218から、復号部212から供給される参照画像を特定する情報により特定される参照画像を読み出す。インター予測部220は、復号部212から供給される動きベクトルと参照画像を用いて、復号部212から供給されるインター予測モード情報が示す最適インター予測モードの動き補償処理を行う。インター予測部220は、その結果生成される予測画像を予測画像選択部221に供給する。
予測画像選択部221は、復号部212からイントラ予測モード情報が供給された場合、イントラ予測部219から供給される予測画像を加算部215に供給する。一方、復号部212からインター予測モード情報が供給された場合、予測画像選択部221は、インター予測部220から供給される予測画像を加算部215に供給する。
(復号装置の動作)
次に、図15のフローチャートを参照して、復号装置12の復号処理について説明する。
受け取り部201は、例えば、符号化装置11からの動画像データを受け取り、受け取られた動画像データを、シーケンス復号部202に供給する。
ステップS201において、シーケンス復号部202は、動画像データのシーケンス毎のパラメータ(例えば、SPS)を復号し、復号されたシーケンス毎のパラメータと動画像データとを、ピクチャ復号部203に供給する。
ステップS202において、ピクチャ復号部203は、動画像データのピクチャ毎のパラメータ(例えば、PPS(Picture Parameter Set),SEI)を復号し、復号されたピクチャ毎のパラメータとシーケンス毎のパラメータと動画像データとをスライス復号部205に供給する。
ステップS203において、ピクチャ復号部203は、SEIにおいて、userdataがあり、間引き可否情報を含むか否かを判定する。ステップS203において、userdataがあり、間引き可否情報を含むと判定された場合、処理は、ステップS204に進む。ピクチャ復号部203は、その間引き可否情報を取得し、間引き情報判定部204に供給する。
ステップS204において、間引き情報判定部204は、間引き可否情報を参照して、現在処理中のAUが間引き対象であるか否かを判定する。ステップS204において、間引き対象であると判定された場合、処理は、ステップS202に戻り、次のピクチャの処理となる。すなわち、間引き対象であると判定されたスライスは、復号が禁止される。
ステップS204において、間引き対象ではないと判定された場合、処理は、ステップS205に進む。また、ステップS203において、userdataがない、または、userdataがあっても、間引き可否情報を含まないと判定された場合、処理は、ステップS205に進む。
ステップS205において、スライス復号部205は、間引き情報判定部204の制御のもと、ピクチャ復号部203からの動画像データを復号する。なお、この復号処理の詳細は、次の図16を参照して後述される。ステップS205による復号の結果得られる表示データは、後段の例えば、LCDなどの表示装置に出力される。
次に、図16のフローチャートを参照して、図15のステップS205のスライスデータの復号について説明する。
ステップS221において、スライス復号部205の蓄積バッファ211(図14)は、図13のピクチャ復号部203からフレーム単位の符号化データを受け取り、蓄積する。蓄積バッファ211は、蓄積されている符号化データを復号部212に供給する。
ステップS222において、復号部212は、蓄積バッファ211からの符号化データを復号し、量子化値と符号化情報を得る。復号部212は、量子化値を逆量子化部213に供給する。
また、復号部212は、符号化情報としてのイントラ予測モード情報などをイントラ予測部219に供給する。復号部212は、動きベクトル、インター予測モード情報、参照画像を特定する情報などをインター予測部220に供給する。
さらに、復号部212は、符号化情報としてのイントラ予測モード情報またはインター予測モード情報を予測画像選択部221に供給する。復号部212は、符号化情報としてのオフセットフィルタ情報をフィルタ216に供給する。
ステップS223において、逆量子化部213は、復号部212から供給される量子化値を逆量子化する。逆量子化部213は、逆量子化の結果得られる直交変換処理結果を逆直交変換部214に供給する。
ステップS224において、逆直交変換部214は、逆量子化部213からの直交変換処理結果に対して逆直交変換処理を行う。
ステップS225において、イントラ予測部219またはインター予測部220は、予測画像を生成する。すなわち、復号部212からインター予測モード情報が供給されたと判定された場合、インター予測部220は、復号部212から供給される参照画像特定情報に基づいて参照画像を読み出し、動きベクトルと参照画像を用いて、インター予測モード情報が示す最適インター予測モードの動き補償処理を行い、予測画像を生成する。インター予測部220は、その結果生成される予測画像を、予測画像選択部221を介して加算部215に供給し、処理をステップS226に進める。
一方、イントラ予測モード情報がイントラ予測部219に供給された場合、イントラ予測部219は、加算部215からの周辺画像を用いて、イントラ予測モード情報が示すイントラ予測モードのイントラ予測処理を行う。イントラ予測部219は、イントラ予測処理の結果生成される予測画像を、予測画像選択部221を介して加算部215に供給し、処理をステップS226に進める。
ステップS226において、加算部215は、逆直交変換部214から供給される残差情報と、予測画像選択部221から供給される予測画像を加算することにより、復号を行う。加算部215は、復号された画像をフィルタ216とイントラ予測部219に供給する。
ステップS227において、フィルタ216は、加算部215から供給される画像に対してデブロッキングフィルタ処理を行い、その結果得られる画像に対して、復号部212から供給されるオフセットフィルタ情報に基づいて、LCUごとに適応オフセットフィルタ処理を行う。フィルタ216は、適応オフセットフィルタ処理後の画像を、フレームメモリ218および画面並べ替えバッファ217に供給する。
ステップS228において、フレームメモリ218は、加算部215から供給される画像と、フィルタ216から供給される画像を蓄積する。フレームメモリ218に蓄積されたフィルタ処理が行われた画像は、参照画像として、スイッチ142を介してインター予測部220に供給される。
ステップS227において、画面並べ替えバッファ217は、フィルタ216から供給される画像をフレーム単位で記憶し、記憶した符号化のための順番のフレーム単位の画像を、元の表示の順番に並び替え、フレーム単位の画像をD/A変換し、後段の例えば、LCDに出力する。
以上のように、本技術においては、符号化側で、userdataに、間引き可否情報を挿入するようにしたので、復号側で、復号する前に間引き対象であるかどうかを知ることができ、動画像データの復号を最小限で済ませることができる。この結果、他の処理を行うことができるので、パフォーマンスを向上させることができる。
なお、本技術は、符号化時にuserdataに間引きに関する情報を挿入するものである。通常の動画像データに対しては、上述したが、これに加えて、マルチビュー符号化の場合は、ペアのAUの間引き可否情報の挿入を行い、階層符号化の場合には、上位階層のAUの間引き情報の挿入を行うことで、さまざまなストリームに対して、その効果を実現することができる。マルチビュー符号化や階層符号化の場合には、上述した16bitよりも大きな情報量が必要になる。
また、上記説明においては、間引き可否情報をuserdataに挿入する例を説明したが、userdataに限らず、AUの復号前に間引きをするかどうかを判断できる場所であれば、どこでもよい。
<2.第2の実施の形態>
(本技術の概要)
次に、すでに符号化されている動画像データに対し、復号する順序を工夫することで、動画像データの復号を最小限で済ませる例について説明する。
すなわち、図17に示されるように、AUは、SPS,PPS,スライスデータの順に構成されている。そこで、DPB枚分のAUのSPS乃至スライスヘッダまでをスライス本体よりも先行して復号し、POC(Picture Order Count)値(時間情報)を算出し、表示順を確定させることで、スライス本体の復号を行うことなく、間引き対象か否かの判定を先行して行う。これにより、その後は、間引き対象ではないスライスのみの復号を行うだけでよく、動画像データの復号を最小限で済ませることができる。
(復号装置の構成例)
図18は、復号装置12の構成例を示すブロック図である。
図18の復号装置12は、受け取り部201、スライス復号部205を備える点が、図13の復号装置12と共通している。
図18の復号装置12は、シーケンス復号部202およびピクチャ復号部203が、シンタクス復号部251およびスライスヘッダ復号部252に入れ替わった点、間引き情報判定部204が、間引き情報判定部254に入れ替わった点、並びに、表示順確定部253が追加された点が、図13の復号装置12と異なっている。
すなわち、受け取り部201は、例えば、符号化装置11からの動画像データを受け取り、受け取られた動画像データを、シンタクス復号部251に供給する。シーケンス復号部251は、動画像データの上位シンタクスのパラメータ(例えば、SPS,PPS,SEIなど)を復号し、復号された上位シンタクスのパラメータと動画像データとを、スライスヘッダ復号部252に供給する。
スライスヘッダ復号部252は、動画像データのスライスヘッダ(例えば、SPS,PPS,SEI)を復号し、復号された上位シンタクスのパラメータと、復号されたスライスヘッダと、動画像データとを表示順確定部253およびスライス復号部205に供給する。
表示順確定部253は、スライスヘッダにあるPOC値がMaxDPB分揃うまで待機しており、POC値がMaxDPB分揃ったと判定された場合、MaxDPB分のPOC値を昇順に並べ替えることで、表示順を確定する。表示順確定部253は、確定された表示順を、間引き情報判定部254に供給する。
間引き情報判定部254は、先頭のAUから順に、指定された間引き数から当該AUが間引き対象であるか否かの判定を行う。間引き情報判定部254は、間引きの対象であれば、スライス復号部205に対して復号を禁止し、次のAUの間引き判定を行う。一方、間引きの対象でなければ、間引き情報判定部254は、スライス復号部205に対してスライスの復号を行わせる。
スライス復号部205は、間引き情報判定部254の制御のもと、スライスヘッダ復号部252からの動画像データを復号し、復号の結果得られる表示データを、後段の例えば、LCDなどの表示装置に出力させる。
なお、1AU分のスライス復号した後には、スライスヘッダ復号部252においては、スライスヘッダの復号を行っていない次のAUのスライスヘッダの復号を行うことで、常にMaxDPB分のPOC値が計算される。また、先行して復号したシンタクス情報は、スライスの復号の際に利用する場合があるので、例えば、スライス復号部205に保持される。
(復号装置の動作)
次に、図19のフローチャートを参照して、図18の復号装置12による復号処理について説明する。
受け取り部201は、例えば、符号化装置11からの動画像データを受け取り、受け取られた動画像データを、シンタクス復号部251に供給する。シンタクス復号部251は、ステップS251において、動画像データの上位シンタクスのパラメータ(例えば、SPS,PPS,SEIなど)を復号し、復号された上位シンタクスのパラメータと動画像データとを、スライスヘッダ復号部252に供給する。
スライスヘッダ復号部252は、ステップS252において、動画像データのスライスヘッダ(例えば、SPS,PPS,SEI)を復号し、復号された上位シンタクスのパラメータと、復号されたスライスヘッダと、動画像データとをスライスヘッダ復号部252および表示順確定部253に供給する。
表示順確定部253は、ステップS253において、スライスヘッダにあるPOC値がMaxDPB分揃ったか否かを判定する。ステップS253において、POC値がMaxDPB分揃ったと判定された場合、処理は、ステップS254に進み、表示順確定部253は、MaxDPB分のPOC値を昇順に並べ替えることで、表示順を確定する。ステップS253において、POC値がMaxDPB分揃っていないと判定された場合、処理は、ステップS251に進み、それ以降の処理が繰り返される。
表示順確定部253は、確定された表示順を、間引き情報判定部254に供給する。
間引き情報判定部254は、先頭のAUから順に、指定された間引き数から当該AUが間引き対象であるか否かの判定を行う。間引き情報判定部254は、ステップS255において、間引き判定対象が残っているか否かを判定する。
ステップS255において、間引き判定対象が残っていないと判定された場合、処理は、ステップS251に戻り、それ以降の処理が繰り返される。
ステップS255において、間引き判定対象が残っていると判定された場合、処理は、ステップS256に進む。間引き情報判定部254は、ステップS256において、先頭のAUから順に、指定された間引き数から当該AUが間引き対象であるか否かを判定する。
ステップS256において、当該AUが間引き対象であると判定された場合、スライス復号部205に対して復号が禁止され、ステップS255に戻り、次のAUに対してそれ以降の処理が繰り返される。
ステップS256において、当該AUが間引き対象ではないと判定された場合、処理は、ステップS257に進む。ステップS257において、間引き情報判定部254は、スライス復号部205に対してスライスの復号を行わせる。ステップS257のスライス復号処理は、図16を参照して上述したスライス復号処理と基本的に同様であるので、その説明は省略される。
スライス復号部205は、間引き情報判定部254の制御のもと、スライスヘッダ復号部252からの動画像データを復号し、復号の結果得られる表示データを、後段の例えば、LCDなどの表示装置に出力させる。
本技術は、AUすべてを復号することなく、間引くために必要なシンタクスまでを、十分な枚数分先行して復号することで、間引き対象か否かの判定をスライスデータ本体よりも先行して行うことにより、復号処理の大部分を占めるスライス本体のデータの復号は必要な場合のみに抑えることができるというものである。
このため、マルチビュー符号化の場合には、view_idなどの情報を、階層符号化の場合には、dependency_idなどの情報を追加で判断材料として用いることで、さまざまなストリームに対してその効果を実現することができる。
第1の実施の形態の場合と比較し、第2の実施の形態の場合は、ある程度のシンタクスの復号の必要があるが、再生時の処理の大部分を占めるのは、スライスヘッダより後のデータ(スライス)であるため、第2の実施の形態の場合でも十分に効果がある。
なお、第1の実施の形態による再生ができなかった場合に、第2の実施の形態を行うようにすることも可能である。例えば、復号装置において、第1の実施の形態で上述した間引き可否情報が動画像データから取得できた場合、第1の実施の形態の判定処理が行われる、第1の実施の形態で上述した間引き可否情報が動画像データから取得できなかった場合に、第2の実施の形態で上述したように、スライスヘッダのみをMaxDPB分のPOC値により表示順を確定し、間引き対象を判定していくようにすることもできる。
以上の本技術によれば、サムネイル再生や早送り再生、逆早送り再生を行う場合に、本来復号する必要がなかったAUを復号しなくてすむようになる。
これにより、パフォーマンスの向上、遅延の減少、使用メモリの削減を実現することができる。
動画像の解像度やデータそのものが爆発的に大きくなっている近年、それらの効果は、飛躍的に高まると考えられる。
以上においては、符号化方式としてHEVCに準じた方式を用いるようにした。ただし、本技術はこれに限らず、AVCやMPEG、その他の符号化方式/復号方式を適用することができる。
<3.第3の実施の形態>
(多視点画像符号化・復号システムへの適用)
上述した一連の処理は、多視点画像符号化・復号システムに適用することができる。図20は、多視点画像符号化方式の一例を示す。
図20に示されるように、多視点画像は、複数の視点(ビュー(view))の画像を含む。この多視点画像の複数のビューは、他のビューの情報を利用せずに自身のビューの画像のみを用いて符号化・復号を行うベースビューと、他のビューの情報を利用して符号化・復号を行うノンベースビューとによりなる。ノンベースビューの符号化・復号は、ベースビューの情報を利用するようにしても良いし、他のノンベースビューの情報を利用するようにしてもよい。
図20の例のような多視点画像を符号化・復号する場合、多視点画像は、視点毎に符号化される。そして、そのようにして得られた符号化データを復号する場合、各視点の符号化データは、それぞれ(すなわち視点毎に)復号される。このような各視点の符号化・復号に対して、以上の各実施の形態において説明した方法を適用してもよい。このようにすることにより、特殊再生を行う際のパフォーマンスを向上させることができる。つまり、多視点画像の場合も同様に、特殊再生を行う際のパフォーマンスを向上させることができる。
(多視点画像符号化・復号システム)
図21は、上述した多視点画像符号化・復号を行う多視点画像符号化・復号システムの、多視点画像符号化装置を示す図である。図21に示されるように、多視点画像符号化装置600は、符号化部601、符号化部602、および多重化部603を有する。
符号化部601は、ベースビュー画像を符号化し、ベースビュー画像符号化ストリームを生成する。符号化部602は、ノンベースビュー画像を符号化し、ノンベースビュー画像符号化ストリームを生成する。多重化部603は、符号化部601において生成されたベースビュー画像符号化ストリームと、符号化部602において生成されたノンベースビュー画像符号化ストリームとを多重化し、多視点画像符号化ストリームを生成する。
図22は、上述した多視点画像復号を行う多視点画像復号装置を示す図である。図22に示されるように、多視点画像復号装置610は、逆多重化部611、復号部612、および復号部613を有する。
逆多重化部611は、ベースビュー画像符号化ストリームとノンベースビュー画像符号化ストリームとが多重化された多視点画像符号化ストリームを逆多重化し、ベースビュー画像符号化ストリームと、ノンベースビュー画像符号化ストリームとを抽出する。復号部612は、逆多重化部611により抽出されたベースビュー画像符号化ストリームを復号し、ベースビュー画像を得る。復号部613は、逆多重化部611により抽出されたノンベースビュー画像符号化ストリームを復号し、ノンベースビュー画像を得る。
例えば、このような多視点画像符号化・復号システムにおいて、多視点画像符号化装置600の符号化部601および符号化部602として、以上の各実施の形態において説明した符号化装置11を適用してもよい。このようにすることにより、多視点画像の符号化においても、以上の各実施の形態において説明した方法を適用することができる。すなわち、特殊再生を行う際のパフォーマンスを向上させることができる。また例えば、多視点画像復号装置610の復号部612および復号部613として、以上の各実施の形態において説明した復号装置12を適用してもよい。このようにすることにより、多視点画像の符号化データの復号においても、以上の各実施の形態において説明した方法を適用することができる。すなわち、特殊再生を行う際のパフォーマンスを向上させることができる。
<4.第4の実施の形態>
(階層画像符号化・復号システムへの適用)
また、上述した一連の処理は、階層画像符号化(スケーラブル符号化)・復号システムに適用することができる。図23は、階層画像符号化方式の一例を示す。
階層画像符号化(スケーラブル符号化)は、画像データを、所定のパラメータについてスケーラビリティ(scalability)機能を有するように、画像を複数レイヤ化(階層化)し、レイヤ毎に符号化するものである。階層画像復号は、その階層画像符号化(スケーラブル復号)は、その階層画像符号化に対応する復号である。
図23に示されるように、画像の階層化においては、スケーラビリティ機能を有する所定のパラメータを基準として1の画像が複数の画像(レイヤ)に分割される。つまり、階層化された画像(階層画像)は、その所定のパラメータの値が互いに異なる複数の階層(レイヤ)の画像を含む。この階層画像の複数のレイヤは、他のレイヤの画像を利用せずに自身のレイヤの画像のみを用いて符号化・復号を行うベースレイヤと、他のレイヤの画像を利用して符号化・復号を行うノンベースレイヤ(エンハンスメントレイヤとも称する)とによりなる。ノンベースレイヤは、ベースレイヤの画像を利用するようにしても良いし、他のノンベースレイヤの画像を利用するようにしてもよい。
一般的に、ノンベースレイヤは、冗長性が低減されるように、自身の画像と、他のレイヤの画像との差分画像のデータ(差分データ)により構成される。例えば、1の画像をベースレイヤとノンベースレイヤ(エンハンスメントレイヤとも称する)に2階層化した場合、ベースレイヤのデータのみで元の画像よりも低品質な画像が得られ、ベースレイヤのデータとノンベースレイヤのデータを合成することで、元の画像(すなわち高品質な画像)が得られる。
このように画像を階層化することにより、状況に応じて多様な品質の画像を容易に得ることができる。例えば携帯電話のような、処理能力の低い端末に対しては、ベースレイヤ(base layer)のみの画像圧縮情報を伝送し、空間時間解像度の低い、或いは、画質の良くない動画像を再生し、テレビやパーソナルコンピュータのような、処理能力の高い端末に対しては、ベースレイヤ(base layer)に加えて、エンハンスメントレイヤ(enhancement layer)の画像圧縮情報を伝送し、空間時間解像度の高い、或いは、画質の高い動画像を再生するといったように、トランスコード処理を行うことなく、端末やネットワークの能力に応じた画像圧縮情報を、サーバから送信することが可能となる。
図23の例のような階層画像を符号化・復号する場合、階層画像は、レイヤ毎に符号化される。そして、そのようにして得られた符号化データを復号する場合、各レイヤの符号化データは、それぞれ(すなわちレイヤ毎に)復号される。このような各レイヤの符号化・復号に対して、以上の各実施の形態において説明した方法を適用してもよい。このようにすることにより、特殊再生を行う際のパフォーマンスを向上させることができる。つまり、階層画像の場合も同様に、特殊再生を行う際のパフォーマンスを向上させることができる。
(スケーラブルなパラメータ)
このような階層画像符号化・階層画像復号(スケーラブル符号化・スケーラブル復号)において、スケーラビリティ(scalability)機能を有するパラメータは、任意である。例えば、空間解像度をそのパラメータとしてもよい(spatial scalability)。このスペーシャルスケーラビリティ(spatial scalability)の場合、レイヤ毎に画像の解像度が異なる。
また、このようなスケーラビリティ性を持たせるパラメータとして、他には、例えば、時間解像度を適用しても良い(temporal scalability)。このテンポラルスケーラビリティ(temporal scalability)の場合、レイヤ毎にフレームレートが異なる。
さらに、このようなスケーラビリティ性を持たせるパラメータとして、例えば、信号雑音比(SNR(Signal to Noise ratio))を適用しても良い(SNR scalability)。このSNRスケーラビリティ(SNR scalability)の場合、レイヤ毎にSN比が異なる。
スケーラビリティ性を持たせるパラメータは、上述した例以外であっても、もちろんよい。例えば、ベースレイヤ(base layer)が8ビット(bit)画像よりなり、これにエンハンスメントレイヤ(enhancement layer)を加えることにより、10ビット(bit)画像が得られるビット深度スケーラビリティ(bit-depth scalability)がある。
また、ベースレイヤ(base layer)が4:2:0フォーマットのコンポーネント画像よりなり、これにエンハンスメントレイヤ(enhancement layer)を加えることにより、4:2:2フォーマットのコンポーネント画像が得られるクロマスケーラビリティ(chroma scalability)がある。
図24は、上述した階層画像符号化・復号を行う階層画像符号化・復号システムの、階層画像符号化装置を示す図である。図24に示されるように、階層画像符号化装置620は、符号化部621、符号化部622、および多重化部623を有する。
符号化部621は、ベースレイヤ画像を符号化し、ベースレイヤ画像符号化ストリームを生成する。符号化部622は、ノンベースレイヤ画像を符号化し、ノンベースレイヤ画像符号化ストリームを生成する。多重化部623は、符号化部621において生成されたベースレイヤ画像符号化ストリームと、符号化部622において生成されたノンベースレイヤ画像符号化ストリームとを多重化し、階層画像符号化ストリームを生成する。
図25は、上述した階層画像復号を行う階層画像復号装置を示す図である。図25に示されるように、階層画像復号装置630は、逆多重化部631、復号部632、および復号部633を有する。
逆多重化部631は、ベースレイヤ画像符号化ストリームとノンベースレイヤ画像符号化ストリームとが多重化された階層画像符号化ストリームを逆多重化し、ベースレイヤ画像符号化ストリームと、ノンベースレイヤ画像符号化ストリームとを抽出する。復号部632は、逆多重化部631により抽出されたベースレイヤ画像符号化ストリームを復号し、ベースレイヤ画像を得る。復号部633は、逆多重化部631により抽出されたノンベースレイヤ画像符号化ストリームを復号し、ノンベースレイヤ画像を得る。
例えば、このような階層画像符号化・復号システムにおいて、階層画像符号化装置620の符号化部621および符号化部622として、以上の各実施の形態において説明した符号化装置11を適用してもよい。このようにすることにより、階層画像の符号化においても、以上の各実施の形態において説明した方法を適用することができる。すなわち、特殊再生を行う際のパフォーマンスを向上させることができる。また例えば、階層画像復号装置630の復号部632および復号部633として、以上の各実施の形態において説明した復号装置12を適用してもよい。このようにすることにより、階層画像の符号化データの復号においても、以上の各実施の形態において説明した方法を適用することができる。すなわち、特殊再生を行う際のパフォーマンスを向上させることができる。
<5.第5の実施の形態>
(コンピュータ)
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
図26は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
図26に示されるコンピュータ800において、CPU(Central Processing Unit)801、ROM(Read Only Memory)802、RAM(Random Access Memory)803は、バス804を介して相互に接続されている。
バス804にはまた、入出力インタフェース810も接続されている。入出力インタフェース810には、入力部811、出力部812、記憶部813、通信部814、およびドライブ815が接続されている。
入力部811は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部812は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部813は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部814は、例えば、ネットワークインタフェースよりなる。ドライブ815は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア821を駆動する。
以上のように構成されるコンピュータでは、CPU801が、例えば、記憶部813に記憶されているプログラムを、入出力インタフェース810およびバス804を介して、RAM803にロードして実行することにより、上述した一連の処理が行われる。RAM803にはまた、CPU801が各種の処理を実行する上において必要なデータなども適宜記憶される。
コンピュータ(CPU801)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア821に記録して適用することができる。その場合、プログラムは、リムーバブルメディア821をドライブ815に装着することにより、入出力インタフェース810を介して、記憶部813にインストールすることができる。
また、このプログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部814で受信し、記憶部813にインストールすることができる。
その他、このプログラムは、ROM802や記憶部813に、あらかじめインストールしておくこともできる。
<6.第6の実施の形態>
(本技術の応用)
上述した実施形態に係る符号化装置11や復号装置12は、例えば、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機や受信機、または、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置や、これら記憶媒体から画像を再生する再生装置などの、様々な電子機器に応用され得る。以下、4つの応用例について説明する。
(第1の応用例:テレビジョン受像機)
図27は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース(I/F)部909、制御部910、ユーザインタフェース(I/F)部911、及びバス912を備える。
チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。
デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
外部インタフェース部909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース部909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース部909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。
制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
ユーザインタフェース部911は、制御部910と接続される。ユーザインタフェース部911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース部909及び制御部910を相互に接続する。
このように構成されたテレビジョン装置900において、デコーダ904が、上述した復号装置12の機能を有するようにしてもよい。つまり、デコーダ904が、符号化データを、以上の各実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、テレビジョン装置900は、特殊再生を行う際のパフォーマンスを向上させることができる。
また、このように構成されたテレビジョン装置900において、映像信号処理部905が、例えば、デコーダ904から供給される画像データを符号化し、得られた符号化データを、外部インタフェース部909を介してテレビジョン装置900の外部に出力させることができるようにしてもよい。そして、その映像信号処理部905が、上述した符号化装置11の機能を有するようにしてもよい。つまり、映像信号処理部905が、デコーダ904から供給される画像データを、以上の各実施の形態において説明した方法で符号化するようにしてもよい。このようにすることにより、テレビジョン装置900は、特殊再生を行う際のパフォーマンスを向上させることができる。
(第2の応用例:携帯電話機)
図28は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929に供給し、その記憶媒体に書き込ませる。
記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Universal Serial Bus)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929に供給し、その記憶媒体に書き込ませる。
さらに、画像表示モードにおいて、記録再生部929は、記憶媒体に記録されている符号化ストリームを読み出して画像処理部927へ出力する。画像処理部927は、記録再生部929から入力される符号化ストリームを復号し、画像データを表示部930に供給し、その画像を表示させる。
また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
このように構成された携帯電話機920において、例えば画像処理部927が、上述した符号化装置11の機能を有するようにしてもよい。つまり、画像処理部927が、画像データを、以上の各実施の形態において説明した方法で符号化するようにしてもよい。このようにすることにより、携帯電話機920は、特殊再生を行う際のパフォーマンスを向上させることができる。
また、このように構成された携帯電話機920において、例えば画像処理部927が、上述した復号装置12の機能を有するようにしてもよい。つまり、画像処理部927が、符号化データを、以上の各実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、携帯電話機920は、特殊再生を行う際のパフォーマンスを向上させることができる。
(第3の応用例:記録再生装置)
図29は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データおよび映像データを復号する。
記録再生装置940は、チューナ941、外部インタフェース(I/F)部942、エンコーダ943、HDD(Hard Disk Drive)部944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)部948、制御部949、およびユーザインタフェース(I/F)部950を備える。
チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送部としての役割を有する。
外部インタフェース部942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース部942は、例えば、IEEE(Institute of Electrical and Electronic Engineers)1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース部942を介して受信される映像データおよび音声データは、エンコーダ943へ入力される。即ち、外部インタフェース部942は、記録再生装置940における伝送部としての役割を有する。
エンコーダ943は、外部インタフェース部942から入力される映像データおよび音声データが符号化されていない場合に、映像データおよび音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
HDD部944は、映像および音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD部944は、映像および音声の再生時に、これらデータをハードディスクから読み出す。
ディスクドライブ945は、装着されている記録媒体へのデータの記録および読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVD(Digital Versatile Disc)ディスク(DVD-Video、DVD-RAM(DVD - Random Access Memory)、DVD-R(DVD - Recordable)、DVD-RW(DVD - Rewritable)、DVD+R(DVD + Recordable)、DVD+RW(DVD + Rewritable)等)又はBlu-ray(登録商標)ディスクなどであってよい。
セレクタ946は、映像および音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD部948へ出力する。また、デコーダ947は、生成した音声データを外部のスピーカへ出力する。
OSD部948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD部948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
ユーザインタフェース部950は、制御部949と接続される。ユーザインタフェース部950は、例えば、ユーザが記録再生装置940を操作するためのボタンおよびスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
このように構成された記録再生装置940において、例えばエンコーダ943が、上述した符号化装置11の機能を有するようにしてもよい。つまり、エンコーダ943が、画像データを、以上の各実施の形態において説明方法で符号化するようにしてもよい。このようにすることにより、記録再生装置940は、特殊再生を行う際のパフォーマンスを向上させることができる。
また、このように構成された記録再生装置940において、例えばデコーダ947が、上述した復号装置12の機能を有するようにしてもよい。つまり、デコーダ947が、符号化データを、以上の各実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、記録再生装置940は、特殊再生を行う際のパフォーマンスを向上させることができる。
(第4の応用例:撮像装置)
図30は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース(I/F)部966、メモリ部967、メディアドライブ968、OSD部969、制御部970、ユーザインタフェース(I/F)部971、およびバス972を備える。
光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース部971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース部966、メモリ部967、メディアドライブ968、OSD部969、および制御部970を相互に接続する。
光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース部966またはメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース部966またはメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD部969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
OSD部969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
外部インタフェース部966は、例えばUSB入出力端子として構成される。外部インタフェース部966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース部966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース部966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース部966は、撮像装置960における伝送部としての役割を有する。
メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部971から入力される操作信号に応じて、撮像装置960の動作を制御する。
ユーザインタフェース部971は、制御部970と接続される。ユーザインタフェース部971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース部971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
このように構成された撮像装置960において、例えば画像処理部964が、上述した符号化装置11の機能を有するようにしてもよい。つまり、画像処理部964が、画像データを、以上の各実施の形態において説明した方法で符号化するようにしてもよい。このようにすることにより、撮像装置960は、特殊再生を行う際のパフォーマンスを向上させることができる。
また、このように構成された撮像装置960において、例えば画像処理部964が、上述した復号装置12の機能を有するようにしてもよい。つまり、画像処理部964が、符号化データを、以上の各実施の形態において説明した方法で復号するようにしてもよい。このようにすることにより、撮像装置960は、特殊再生を行う際のパフォーマンスを向上させることができる。
<7.第7の実施の形態>
(その他の応用例)
なお、本技術は、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択して使用する、例えばMPEG DASH等のようなHTTPストリーミングにも適用することができる。つまり、このような複数の符号化データ間で、符号化や復号に関する情報を共有することもできる。
また、以上においては、本技術を適用する装置やシステム等の例を説明したが、本技術は、これに限らず、このような装置またはシステムを構成する装置に搭載するあらゆる構成、例えば、システムLSI(Large Scale Integration)等としてのプロセッサ、複数のプロセッサ等を用いるモジュール、複数のモジュール等を用いるユニット、ユニットにさらにその他の機能を付加したセット等(すなわち、装置の一部の構成)として実施することもできる。
(ビデオセット)
本技術をセットとして実施する場合の例について、図31を参照して説明する。図31は、本技術を適用したビデオセットの概略的な構成の一例を示している。
近年、電子機器の多機能化が進んでおり、その開発や製造において、その一部の構成を販売や提供等として実施する場合、1機能を有する構成として実施を行う場合だけでなく、関連する機能を有する複数の構成を組み合わせ、複数の機能を有する1セットとして実施を行う場合も多く見られるようになってきた。
図31に示されるビデオセット1300は、このような多機能化された構成であり、画像の符号化や復号(いずれか一方でもよいし、両方でも良い)に関する機能を有するデバイスに、その機能に関連するその他の機能を有するデバイスを組み合わせたものである。
図31に示されるように、ビデオセット1300は、ビデオモジュール1311、外部メモリ1312、パワーマネージメントモジュール1313、およびフロントエンドモジュール1314等のモジュール群と、コネクティビティ1321、カメラ1322、およびセンサ1323等の関連する機能を有するデバイスとを有する。
モジュールは、互いに関連するいくつかの部品的機能をまとめ、まとまりのある機能を持った部品としたものである。具体的な物理的構成は任意であるが、例えば、それぞれ機能を有する複数のプロセッサ、抵抗やコンデンサ等の電子回路素子、その他のデバイス等を配線基板等に配置して一体化したものが考えられる。また、モジュールに他のモジュールやプロセッサ等を組み合わせて新たなモジュールとすることも考えられる。
図31の例の場合、ビデオモジュール1311は、画像処理に関する機能を有する構成を組み合わせたものであり、アプリケーションプロセッサ、ビデオプロセッサ、ブロードバンドモデム1333、およびRFモジュール1334を有する。
プロセッサは、所定の機能を有する構成をSoC(System On a Chip)により半導体チップに集積したものであり、例えばシステムLSI(Large Scale Integration)等と称されるものもある。この所定の機能を有する構成は、論理回路(ハードウエア構成)であってもよいし、CPU、ROM、RAM等と、それらを用いて実行されるプログラム(ソフトウエア構成)であってもよいし、その両方を組み合わせたものであってもよい。例えば、プロセッサが、論理回路とCPU、ROM、RAM等とを有し、機能の一部を論理回路(ハードウエア構成)により実現し、その他の機能をCPUにおいて実行されるプログラム(ソフトウエア構成)により実現するようにしてもよい。
図31のアプリケーションプロセッサ1331は、画像処理に関するアプリケーションを実行するプロセッサである。このアプリケーションプロセッサ1331において実行されるアプリケーションは、所定の機能を実現するために、演算処理を行うだけでなく、例えばビデオプロセッサ1332等、ビデオモジュール1311内外の構成を必要に応じて制御することもできる。
ビデオプロセッサ1332は、画像の符号化・復号(その一方若しくは両方)に関する機能を有するプロセッサである。
ブロードバンドモデム1333は、インターネットや公衆電話回線網等の広帯域の回線を介して行われる有線若しくは無線(またはその両方)の広帯域通信により送信するデータ(デジタル信号)をデジタル変調する等してアナログ信号に変換したり、その広帯域通信により受信したアナログ信号を復調してデータ(デジタル信号)に変換したりする。ブロードバンドモデム1333は、例えば、ビデオプロセッサ1332が処理する画像データ、画像データが符号化されたストリーム、アプリケーションプログラム、設定データ等、任意の情報を処理する。
RFモジュール1334は、アンテナを介して送受信されるRF(Radio Frequency)信号に対して、周波数変換、変復調、増幅、フィルタ処理等を行うモジュールである。例えば、RFモジュール1334は、ブロードバンドモデム1333により生成されたベースバンド信号に対して周波数変換等を行ってRF信号を生成する。また、例えば、RFモジュール1334は、フロントエンドモジュール1314を介して受信されたRF信号に対して周波数変換等を行ってベースバンド信号を生成する。
なお、図31において点線1341に示されるように、アプリケーションプロセッサ1331とビデオプロセッサ1332を、一体化し、1つのプロセッサとして構成されるようにしてもよい。
外部メモリ1312は、ビデオモジュール1311の外部に設けられた、ビデオモジュール1311により利用される記憶デバイスを有するモジュールである。この外部メモリ1312の記憶デバイスは、どのような物理構成により実現するようにしてもよいが、一般的にフレーム単位の画像データのような大容量のデータの格納に利用されることが多いので、例えばDRAM(Dynamic Random Access Memory)のような比較的安価で大容量の半導体メモリにより実現するのが望ましい。
パワーマネージメントモジュール1313は、ビデオモジュール1311(ビデオモジュール1311内の各構成)への電力供給を管理し、制御する。
フロントエンドモジュール1314は、RFモジュール1334に対してフロントエンド機能(アンテナ側の送受信端の回路)を提供するモジュールである。図31に示されるように、フロントエンドモジュール1314は、例えば、アンテナ部1351、フィルタ1352、および増幅部1353を有する。
アンテナ部1351は、無線信号を送受信するアンテナおよびその周辺の構成を有する。アンテナ部1351は、増幅部1353から供給される信号を無線信号として送信し、受信した無線信号を電気信号(RF信号)としてフィルタ1352に供給する。フィルタ1352は、アンテナ部1351を介して受信されたRF信号に対してフィルタ処理等を行い、処理後のRF信号をRFモジュール1334に供給する。増幅部1353は、RFモジュール1334から供給されるRF信号を増幅し、アンテナ部1351に供給する。
コネクティビティ1321は、外部との接続に関する機能を有するモジュールである。コネクティビティ1321の物理構成は、任意である。例えば、コネクティビティ1321は、ブロードバンドモデム1333が対応する通信規格以外の通信機能を有する構成や、外部入出力端子等を有する。
例えば、コネクティビティ1321が、Bluetooth(登録商標)、IEEE 802.11(例えばWi-Fi(Wireless Fidelity、登録商標))、NFC(Near Field Communication)、IrDA(InfraRed Data Association)等の無線通信規格に準拠する通信機能を有するモジュールや、その規格に準拠した信号を送受信するアンテナ等を有するようにしてもよい。また、例えば、コネクティビティ1321が、USB(Universal Serial Bus)、HDMI(登録商標)(High-Definition Multimedia Interface)等の有線通信規格に準拠する通信機能を有するモジュールや、その規格に準拠した端子を有するようにしてもよい。さらに、例えば、コネクティビティ1321が、アナログ入出力端子等のその他のデータ(信号)伝送機能等を有するようにしてもよい。
なお、コネクティビティ1321が、データ(信号)の伝送先のデバイスを含むようにしてもよい。例えば、コネクティビティ1321が、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等の記録媒体に対してデータの読み出しや書き込みを行うドライブ(リムーバブルメディアのドライブだけでなく、ハードディスク、SSD(Solid State Drive)、NAS(Network Attached Storage)等も含む)を有するようにしてもよい。また、コネクティビティ1321が、画像や音声の出力デバイス(モニタやスピーカ等)を有するようにしてもよい。
カメラ1322は、被写体を撮像し、被写体の画像データを得る機能を有するモジュールである。カメラ1322の撮像により得られた画像データは、例えば、ビデオプロセッサ1332に供給されて符号化される。
センサ1323は、例えば、音声センサ、超音波センサ、光センサ、照度センサ、赤外線センサ、イメージセンサ、回転センサ、角度センサ、角速度センサ、速度センサ、加速度センサ、傾斜センサ、磁気識別センサ、衝撃センサ、温度センサ等、任意のセンサ機能を有するモジュールである。センサ1323により検出されたデータは、例えば、アプリケーションプロセッサ1331に供給されてアプリケーション等により利用される。
以上においてモジュールとして説明した構成をプロセッサとして実現するようにしてもよいし、逆にプロセッサとして説明した構成をモジュールとして実現するようにしてもよい。
以上のような構成のビデオセット1300において、後述するようにビデオプロセッサ1332に本技術を適用することができる。したがって、ビデオセット1300は、本技術を適用したセットとして実施することができる。
<ビデオプロセッサの構成例>
図32は、本技術を適用したビデオプロセッサ1332(図31)の概略的な構成の一例を示している。
この例の場合、ビデオプロセッサ1332は、ビデオ信号およびオーディオ信号の入力を受けてこれらを所定の方式で符号化する機能と、符号化されたビデオデータおよびオーディオデータを復号し、ビデオ信号およびオーディオ信号を再生出力する機能とを有する。
図32に示されるように、ビデオプロセッサ1332は、ビデオ入力処理部1401、第1画像拡大縮小部1402、第2画像拡大縮小部1403、ビデオ出力処理部1404、フレームメモリ1405、およびメモリ制御部1406を有する。また、ビデオプロセッサ1332は、エンコード・デコードエンジン1407、ビデオES(Elementary Stream)バッファ1408Aおよび1408B、並びに、オーディオESバッファ1409Aおよび1409Bを有する。さらに、ビデオプロセッサ1332は、オーディオエンコーダ1410、オーディオデコーダ1411、多重化部(MUX(Multiplexer))1412、逆多重化部(DMUX(Demultiplexer))1413、およびストリームバッファ1414を有する。
ビデオ入力処理部1401は、例えばコネクティビティ1321(図31)等から入力されたビデオ信号を取得し、デジタル画像データに変換する。第1画像拡大縮小部1402は、画像データに対してフォーマット変換や画像の拡大縮小処理等を行う。第2画像拡大縮小部1403は、画像データに対して、ビデオ出力処理部1404を介して出力する先でのフォーマットに応じて画像の拡大縮小処理を行ったり、第1画像拡大縮小部1402と同様のフォーマット変換や画像の拡大縮小処理等を行ったりする。ビデオ出力処理部1404は、画像データに対して、フォーマット変換やアナログ信号への変換等を行って、再生されたビデオ信号として例えばコネクティビティ1321等に出力する。
フレームメモリ1405は、ビデオ入力処理部1401、第1画像拡大縮小部1402、第2画像拡大縮小部1403、ビデオ出力処理部1404、およびエンコード・デコードエンジン1407によって共用される画像データ用のメモリである。フレームメモリ1405は、例えばDRAM等の半導体メモリとして実現される。
メモリ制御部1406は、エンコード・デコードエンジン1407からの同期信号を受けて、アクセス管理テーブル1406Aに書き込まれたフレームメモリ1405へのアクセススケジュールに従ってフレームメモリ1405に対する書き込み・読み出しのアクセスを制御する。アクセス管理テーブル1406Aは、エンコード・デコードエンジン1407、第1画像拡大縮小部1402、第2画像拡大縮小部1403等で実行される処理に応じて、メモリ制御部1406により更新される。
エンコード・デコードエンジン1407は、画像データのエンコード処理、並びに、画像データが符号化されたデータであるビデオストリームのデコード処理を行う。例えば、エンコード・デコードエンジン1407は、フレームメモリ1405から読み出した画像データを符号化し、ビデオストリームとしてビデオESバッファ1408Aに順次書き込む。また、例えば、ビデオESバッファ1408Bからビデオストリームを順次読み出して復号し、画像データとしてフレームメモリ1405に順次書き込む。エンコード・デコードエンジン1407は、これらの符号化や復号において、フレームメモリ1405を作業領域として使用する。また、エンコード・デコードエンジン1407は、例えばマクロブロック毎の処理を開始するタイミングで、メモリ制御部1406に対して同期信号を出力する。
ビデオESバッファ1408Aは、エンコード・デコードエンジン1407によって生成されたビデオストリームをバッファリングして、多重化部(MUX)1412に供給する。ビデオESバッファ1408Bは、逆多重化部(DMUX)1413から供給されたビデオストリームをバッファリングして、エンコード・デコードエンジン1407に供給する。
オーディオESバッファ1409Aは、オーディオエンコーダ1410によって生成されたオーディオストリームをバッファリングして、多重化部(MUX)1412に供給する。オーディオESバッファ1409Bは、逆多重化部(DMUX)1413から供給されたオーディオストリームをバッファリングして、オーディオデコーダ1411に供給する。
オーディオエンコーダ1410は、例えばコネクティビティ1321等から入力されたオーディオ信号を例えばデジタル変換し、例えばMPEGオーディオ方式やAC3(AudioCode number 3)方式等の所定の方式で符号化する。オーディオエンコーダ1410は、オーディオ信号が符号化されたデータであるオーディオストリームをオーディオESバッファ1409Aに順次書き込む。オーディオデコーダ1411は、オーディオESバッファ1409Bから供給されたオーディオストリームを復号し、例えばアナログ信号への変換等を行って、再生されたオーディオ信号として例えばコネクティビティ1321等に供給する。
多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化する。この多重化の方法(すなわち、多重化により生成されるビットストリームのフォーマット)は任意である。また、この多重化の際に、多重化部(MUX)1412は、所定のヘッダ情報等をビットストリームに付加することもできる。つまり、多重化部(MUX)1412は、多重化によりストリームのフォーマットを変換することができる。例えば、多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化することにより、転送用のフォーマットのビットストリームであるトランスポートストリームに変換する。また、例えば、多重化部(MUX)1412は、ビデオストリームとオーディオストリームとを多重化することにより、記録用のファイルフォーマットのデータ(ファイルデータ)に変換する。
逆多重化部(DMUX)1413は、多重化部(MUX)1412による多重化に対応する方法で、ビデオストリームとオーディオストリームとが多重化されたビットストリームを逆多重化する。つまり、逆多重化部(DMUX)1413は、ストリームバッファ1414から読み出されたビットストリームからビデオストリームとオーディオストリームとを抽出する(ビデオストリームとオーディオストリームとを分離する)。つまり、逆多重化部(DMUX)1413は、逆多重化によりストリームのフォーマットを変換(多重化部(MUX)1412による変換の逆変換)することができる。例えば、逆多重化部(DMUX)1413は、例えばコネクティビティ1321やブロードバンドモデム1333等から供給されたトランスポートストリームを、ストリームバッファ1414を介して取得し、逆多重化することにより、ビデオストリームとオーディオストリームとに変換することができる。また、例えば、逆多重化部(DMUX)1413は、例えばコネクティビティ1321により各種記録媒体から読み出されたファイルデータを、ストリームバッファ1414を介して取得し、逆多重化することにより、ビデオストリームとオーディオストリームとに変換することができる。
ストリームバッファ1414は、ビットストリームをバッファリングする。例えば、ストリームバッファ1414は、多重化部(MUX)1412から供給されたトランスポートストリームをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、例えばコネクティビティ1321やブロードバンドモデム1333等に供給する。
また、例えば、ストリームバッファ1414は、多重化部(MUX)1412から供給されたファイルデータをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、例えばコネクティビティ1321等に供給し、各種記録媒体に記録させる。
さらに、ストリームバッファ1414は、例えばコネクティビティ1321やブロードバンドモデム1333等を介して取得したトランスポートストリームをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、逆多重化部(DMUX)1413に供給する。
また、ストリームバッファ1414は、例えばコネクティビティ1321等において各種記録媒体から読み出されたファイルデータをバッファリングし、所定のタイミングにおいて、若しくは外部からの要求等に基づいて、逆多重化部(DMUX)1413に供給する。
次に、このような構成のビデオプロセッサ1332の動作の例について説明する。例えば、コネクティビティ1321等からビデオプロセッサ1332に入力されたビデオ信号は、ビデオ入力処理部1401において4:2:2Y/Cb/Cr方式等の所定の方式のデジタル画像データに変換され、フレームメモリ1405に順次書き込まれる。このデジタル画像データは、第1画像拡大縮小部1402または第2画像拡大縮小部1403に読み出されて、4:2:0Y/Cb/Cr方式等の所定の方式へのフォーマット変換および拡大縮小処理が行われ、再びフレームメモリ1405に書き込まれる。この画像データは、エンコード・デコードエンジン1407によって符号化され、ビデオストリームとしてビデオESバッファ1408Aに書き込まれる。
また、コネクティビティ1321等からビデオプロセッサ1332に入力されたオーディオ信号は、オーディオエンコーダ1410によって符号化され、オーディオストリームとして、オーディオESバッファ1409Aに書き込まれる。
ビデオESバッファ1408Aのビデオストリームと、オーディオESバッファ1409Aのオーディオストリームは、多重化部(MUX)1412に読み出されて多重化され、トランスポートストリーム若しくはファイルデータ等に変換される。多重化部(MUX)1412により生成されたトランスポートストリームは、ストリームバッファ1414にバッファされた後、例えばコネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークに出力される。また、多重化部(MUX)1412により生成されたファイルデータは、ストリームバッファ1414にバッファされた後、例えばコネクティビティ1321等に出力され、各種記録媒体に記録される。
また、例えばコネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークからビデオプロセッサ1332に入力されたトランスポートストリームは、ストリームバッファ1414にバッファされた後、逆多重化部(DMUX)1413により逆多重化される。また、例えばコネクティビティ1321等において各種記録媒体から読み出され、ビデオプロセッサ1332に入力されたファイルデータは、ストリームバッファ1414にバッファされた後、逆多重化部(DMUX)1413により逆多重化される。つまり、ビデオプロセッサ1332に入力されたトランスポートストリームまたはファイルデータは、逆多重化部(DMUX)1413によりビデオストリームとオーディオストリームとに分離される。
オーディオストリームは、オーディオESバッファ1409Bを介してオーディオデコーダ1411に供給され、復号されてオーディオ信号が再生される。また、ビデオストリームは、ビデオESバッファ1408Bに書き込まれた後、エンコード・デコードエンジン1407により順次読み出されて復号されてフレームメモリ1405に書き込まれる。復号された画像データは、第2画像拡大縮小部1403によって拡大縮小処理されて、フレームメモリ1405に書き込まれる。そして、復号された画像データは、ビデオ出力処理部1404に読み出されて、4:2:2Y/Cb/Cr方式等の所定の方式にフォーマット変換され、さらにアナログ信号に変換されて、ビデオ信号が再生出力される。
このように構成されるビデオプロセッサ1332に本技術を適用する場合、エンコード・デコードエンジン1407に、上述した各実施形態に係る本技術を適用すればよい。つまり、例えば、エンコード・デコードエンジン1407が、上述した符号化装置11の機能若しくは復号装置12の機能またはその両方を有するようにしてもよい。このようにすることにより、ビデオプロセッサ1332は、図1乃至図19を参照して上述した各実施の形態と同様の効果を得ることができる。
なお、エンコード・デコードエンジン1407において、本技術(すなわち、符号化装置11の機能若しくは復号装置12の機能またはその両方)は、論理回路等のハードウエアにより実現するようにしてもよいし、組み込みプログラム等のソフトウエアにより実現するようにしてもよいし、それらの両方により実現するようにしてもよい。
<ビデオプロセッサの他の構成例>
図33は、本技術を適用したビデオプロセッサ1332の概略的な構成の他の例を示している。図33の例の場合、ビデオプロセッサ1332は、ビデオデータを所定の方式で符号化・復号する機能を有する。
より具体的には、図33に示されるように、ビデオプロセッサ1332は、制御部1511、ディスプレイインタフェース1512、ディスプレイエンジン1513、画像処理エンジン1514、および内部メモリ1515を有する。また、ビデオプロセッサ1332は、コーデックエンジン1516、メモリインタフェース1517、多重化・逆多重化部(MUX DMUX)1518、ネットワークインタフェース1519、およびビデオインタフェース1520を有する。
制御部1511は、ディスプレイインタフェース1512、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516等、ビデオプロセッサ1332内の各処理部の動作を制御する。
図33に示されるように、制御部1511は、例えば、メインCPU1531、サブCPU1532、およびシステムコントローラ1533を有する。メインCPU1531は、ビデオプロセッサ1332内の各処理部の動作を制御するためのプログラム等を実行する。メインCPU1531は、そのプログラム等に従って制御信号を生成し、各処理部に供給する(つまり、各処理部の動作を制御する)。サブCPU1532は、メインCPU1531の補助的な役割を果たす。例えば、サブCPU1532は、メインCPU1531が実行するプログラム等の子プロセスやサブルーチン等を実行する。システムコントローラ1533は、メインCPU1531およびサブCPU1532が実行するプログラムを指定する等、メインCPU1531およびサブCPU1532の動作を制御する。
ディスプレイインタフェース1512は、制御部1511の制御の下、画像データを例えばコネクティビティ1321等に出力する。例えば、ディスプレイインタフェース1512は、デジタルデータの画像データをアナログ信号に変換し、再生されたビデオ信号として、またはデジタルデータの画像データのまま、コネクティビティ1321のモニタ装置等に出力する。
ディスプレイエンジン1513は、制御部1511の制御の下、画像データに対して、その画像を表示させるモニタ装置等のハードウエアスペックに合わせるように、フォーマット変換、サイズ変換、色域変換等の各種変換処理を行う。
画像処理エンジン1514は、制御部1511の制御の下、画像データに対して、例えば画質改善のためのフィルタ処理等、所定の画像処理を施す。
内部メモリ1515は、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516により共用される、ビデオプロセッサ1332の内部に設けられたメモリである。内部メモリ1515は、例えば、ディスプレイエンジン1513、画像処理エンジン1514、およびコーデックエンジン1516の間で行われるデータの授受に利用される。例えば、内部メモリ1515は、ディスプレイエンジン1513、画像処理エンジン1514、またはコーデックエンジン1516から供給されるデータを格納し、必要に応じて(例えば、要求に応じて)、そのデータを、ディスプレイエンジン1513、画像処理エンジン1514、またはコーデックエンジン1516に供給する。この内部メモリ1515は、どのような記憶デバイスにより実現するようにしてもよいが、一般的にブロック単位の画像データやパラメータ等といった小容量のデータの格納に利用することが多いので、例えばSRAM(Static Random Access Memory)のような比較的(例えば外部メモリ1312と比較して)小容量だが応答速度が高速な半導体メモリにより実現するのが望ましい。
コーデックエンジン1516は、画像データの符号化や復号に関する処理を行う。このコーデックエンジン1516が対応する符号化・復号の方式は任意であり、その数は1つであってもよいし、複数であってもよい。例えば、コーデックエンジン1516は、複数の符号化・復号方式のコーデック機能を備え、その中から選択されたもので画像データの符号化若しくは符号化データの復号を行うようにしてもよい。
図33に示される例において、コーデックエンジン1516は、コーデックに関する処理の機能ブロックとして、例えば、MPEG-2 Video1541、AVC/H.2641542、HEVC/H.2651543、HEVC/H.265(Scalable)1544、HEVC/H.265(Multi-view)1545、およびMPEG-DASH1551を有する。
MPEG-2 Video1541は、画像データをMPEG-2方式で符号化したり復号したりする機能ブロックである。AVC/H.2641542は、画像データをAVC方式で符号化したり復号したりする機能ブロックである。HEVC/H.2651543は、画像データをHEVC方式で符号化したり復号したりする機能ブロックである。HEVC/H.265(Scalable)1544は、画像データをHEVC方式でスケーラブル符号化したりスケーラブル復号したりする機能ブロックである。HEVC/H.265(Multi-view)1545は、画像データをHEVC方式で多視点符号化したり多視点復号したりする機能ブロックである。
MPEG-DASH1551は、画像データをMPEG-DASH(MPEG-Dynamic Adaptive Streaming over HTTP)方式で送受信する機能ブロックである。MPEG-DASHは、HTTP(HyperText Transfer Protocol)を使ってビデオのストリーミングを行う技術であり、予め用意された解像度等が互いに異なる複数の符号化データの中から適切なものをセグメント単位で選択し伝送することを特徴の1つとする。MPEG-DASH1551は、規格に準拠するストリームの生成やそのストリームの伝送制御等を行い、画像データの符号化・復号については、上述したMPEG-2 Video1541乃至HEVC/H.265(Multi-view)1545を利用する。
メモリインタフェース1517は、外部メモリ1312用のインタフェースである。画像処理エンジン1514やコーデックエンジン1516から供給されるデータは、メモリインタフェース1517を介して外部メモリ1312に供給される。また、外部メモリ1312から読み出されたデータは、メモリインタフェース1517を介してビデオプロセッサ1332(画像処理エンジン1514若しくはコーデックエンジン1516)に供給される。
多重化・逆多重化部(MUX DMUX)1518は、符号化データのビットストリーム、画像データ、ビデオ信号等、画像に関する各種データの多重化や逆多重化を行う。この多重化・逆多重化の方法は任意である。例えば、多重化の際に、多重化・逆多重化部(MUX DMUX)1518は、複数のデータを1つにまとめるだけでなく、所定のヘッダ情報等をそのデータに付加することもできる。また、逆多重化の際に、多重化・逆多重化部(MUX DMUX)1518は、1つのデータを複数に分割するだけでなく、分割した各データに所定のヘッダ情報等を付加することもできる。つまり、多重化・逆多重化部(MUX DMUX)1518は、多重化・逆多重化によりデータのフォーマットを変換することができる。例えば、多重化・逆多重化部(MUX DMUX)1518は、ビットストリームを多重化することにより、転送用のフォーマットのビットストリームであるトランスポートストリームや、記録用のファイルフォーマットのデータ(ファイルデータ)に変換することができる。もちろん、逆多重化によりその逆変換も可能である。
ネットワークインタフェース1519は、例えばブロードバンドモデム1333やコネクティビティ1321等向けのインタフェースである。ビデオインタフェース1520は、例えばコネクティビティ1321やカメラ1322等向けのインタフェースである。
次に、このようなビデオプロセッサ1332の動作の例について説明する。例えば、コネクティビティ1321やブロードバンドモデム1333等を介して外部ネットワークからトランスポートストリームを受信すると、そのトランスポートストリームは、ネットワークインタフェース1519を介して多重化・逆多重化部(MUX DMUX)1518に供給されて逆多重化され、コーデックエンジン1516により復号される。コーデックエンジン1516の復号により得られた画像データは、例えば、画像処理エンジン1514により所定の画像処理が施され、ディスプレイエンジン1513により所定の変換が行われ、ディスプレイインタフェース1512を介して例えばコネクティビティ1321等に供給され、その画像がモニタに表示される。また、例えば、コーデックエンジン1516の復号により得られた画像データは、コーデックエンジン1516により再符号化され、多重化・逆多重化部(MUX DMUX)1518により多重化されてファイルデータに変換され、ビデオインタフェース1520を介して例えばコネクティビティ1321等に出力され、各種記録媒体に記録される。
さらに、例えば、コネクティビティ1321等により図示せぬ記録媒体から読み出された、画像データが符号化された符号化データのファイルデータは、ビデオインタフェース1520を介して多重化・逆多重化部(MUX DMUX)1518に供給されて逆多重化され、コーデックエンジン1516により復号される。コーデックエンジン1516の復号により得られた画像データは、画像処理エンジン1514により所定の画像処理が施され、ディスプレイエンジン1513により所定の変換が行われ、ディスプレイインタフェース1512を介して例えばコネクティビティ1321等に供給され、その画像がモニタに表示される。また、例えば、コーデックエンジン1516の復号により得られた画像データは、コーデックエンジン1516により再符号化され、多重化・逆多重化部(MUX DMUX)1518により多重化されてトランスポートストリームに変換され、ネットワークインタフェース1519を介して例えばコネクティビティ1321やブロードバンドモデム1333等に供給され図示せぬ他の装置に伝送される。
なお、ビデオプロセッサ1332内の各処理部の間での画像データやその他のデータの授受は、例えば、内部メモリ1515や外部メモリ1312を利用して行われる。また、パワーマネージメントモジュール1313は、例えば制御部1511への電力供給を制御する。
このように構成されるビデオプロセッサ1332に本技術を適用する場合、コーデックエンジン1516に、上述した各実施形態に係る本技術を適用すればよい。つまり、例えば、コーデックエンジン1516が、上述した符号化装置11の機能若しくは復号装置12の機能またはその両方を有するようにすればよい。このようにすることにより、ビデオプロセッサ1332は、図1乃至図19を参照して上述した各実施の形態と同様の効果を得ることができる。
なお、コーデックエンジン1516において、本技術(すなわち、符号化装置11の機能)は、論理回路等のハードウエアにより実現するようにしてもよいし、組み込みプログラム等のソフトウエアにより実現するようにしてもよいし、それらの両方により実現するようにしてもよい。
以上にビデオプロセッサ1332の構成を2例示したが、ビデオプロセッサ1332の構成は任意であり、上述した2例以外のものであってもよい。また、このビデオプロセッサ1332は、1つの半導体チップとして構成されるようにしてもよいが、複数の半導体チップとして構成されるようにしてもよい。例えば、複数の半導体を積層する3次元積層LSIとしてもよい。また、複数のLSIにより実現されるようにしてもよい。
<装置への適用例>
ビデオセット1300は、画像データを処理する各種装置に組み込むことができる。例えば、ビデオセット1300は、テレビジョン装置900(図27)、携帯電話機920(図28)、記録再生装置940(図29)、撮像装置960(図30)等に組み込むことができる。ビデオセット1300を組み込むことにより、その装置は、図1乃至図19を参照して上述した各実施の形態と同様の効果を得ることができる。
なお、上述したビデオセット1300の各構成の一部であっても、ビデオプロセッサ1332を含むものであれば、本技術を適用した構成として実施することができる。例えば、ビデオプロセッサ1332のみを本技術を適用したビデオプロセッサとして実施することができる。また、例えば、上述したように点線1341により示されるプロセッサやビデオモジュール1311等を、本技術を適用したプロセッサやモジュール等として実施することができる。さらに、例えば、ビデオモジュール1311、外部メモリ1312、パワーマネージメントモジュール1313、およびフロントエンドモジュール1314を組み合わせ、本技術を適用したビデオユニット1361として実施することもできる。いずれの構成の場合であっても、図1乃至図19を参照して上述した各実施の形態と同様の効果を得ることができる。
つまり、ビデオプロセッサ1332を含むものであればどのような構成であっても、ビデオセット1300の場合と同様に、画像データを処理する各種装置に組み込むことができる。例えば、ビデオプロセッサ1332、点線1341により示されるプロセッサ、ビデオモジュール1311、または、ビデオユニット1361を、テレビジョン装置900(図27)、携帯電話機920(図28)、記録再生装置940(図29)、撮像装置960(図36)等に組み込むことができる。そして、本技術を適用したいずれかの構成を組み込むことにより、その装置は、ビデオセット1300の場合と同様に、図1乃至図19を参照して上述した各実施の形態と同様の効果を得ることができる。
<その他>
なお、本明細書では、各種情報が、符号化データ(ビットストリーム)に多重化されて、符号化側から復号側へ伝送される例について説明したが、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化データに多重化されることなく、符号化データと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、例えば、符号化データに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、この符号化データ(画像)に関連付けられた情報は、符号化データ(画像)とは別の伝送路上で伝送されるようにしてもよい。また、この符号化データ(画像)に関連付けられた情報は、符号化データ(画像)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されるようにしてもよい。さらに、画像とその画像に対応する情報とが、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられるようにしてもよい。
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
また、例えば、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
また、例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、例えば、上述したプログラムは、任意の装置において実行することができる。その場合、その装置が、必要な機能(機能ブロック等)を有し、必要な情報を得ることができるようにすればよい。
また、例えば、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
なお、コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。
なお、本明細書において複数説明した本技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術を、他の実施の形態において説明した本技術と組み合わせて実施することもできる。また、上述した任意の本技術を、上述していない他の技術と併用して実施することもできる。
なお、本技術は以下のような構成も取ることができる。
(1) 符号化ストリームから、特殊再生を行う際の間引きに関する情報である間引き情報に基づいて、前記符号化ストリームを構成するスライスが間引き対象であるか否かを判定する間引き判定部と、
前記間引き判定部によりスライスが間引き対象であると判定された場合、前記スライスの復号を禁止する復号部と
を備える画像処理装置。
(2) 前記間引き情報は、前記符号化ストリームのuserdataに含まれている
前記(1)に記載の画像処理装置。
(3) 前記間引き情報は、前記符号化ストリームのSEI(Supplemental Enhancement Information)のuserdataに含まれている
前記(1)または(2)に記載の画像処理装置。
(4) 前記間引き情報は、前記符号化ストリームの生成時にuserdataに挿入されている
前記(1)乃至(3)のいずれかに記載の画像処理装置。
(5) 前記符号化ストリームを構成するスライスデータのうちスライスヘッダを復号するヘッダ復号部と、
前記ヘッダ復号部により復号された所定数のスライスヘッダから取得される時間情報に基づいて表示順を確定する表示順確定部と
をさらに備え、
前記間引き判定部は、前記表示順確定部により確定された表示順に基づいて、前記スライスデータが間引き対象であるか否かを判定する
前記(1)乃至(4)のいずれかに記載の画像処理装置。
(6) 画像処理装置が、
符号化ストリームから、特殊再生を行う際の間引きに関する情報である間引き情報に基づいて、前記符号化ストリームを構成するスライスが間引き対象であるか否かを判定し、前記スライスが間引き対象であると判定された場合、前記スライスの復号を禁止する
画像処理方法。
(7) 特殊再生を行う際の間引きに関する情報である間引き情報を生成する間引き情報生成部と、
画像データを符号化し、符号化ストリームを生成する符号化部と、
前記間引き情報生成部により生成された間引き情報を、前記符号化部により生成された符号化ストリームに挿入する間引き情報挿入部と
を備える画像処理装置。
(8) 前記情報挿入部は、前記符号化ストリームのuserdataに、前記間引き情報生成部により生成された間引き情報を挿入する
前記(7)に記載の画像処理装置。
(9) 前記情報挿入部は、前記符号化ストリームのSEI(Supplemental Enhancement Information)のuserdataに、前記間引き情報生成部により生成された間引き情報を挿入する
前記(7)または(8)に記載の画像処理装置。
(10) 前記間引き情報生成部は、GOP(Group Of Picture)構造に基づいて、前記間引き情報を生成する
前記(7)乃至(9)のいずれかに記載の画像処理装置。
(11) 画像処理装置が、
特殊再生を行う際の間引きに関する情報である間引き情報を生成し、
画像データを符号化し、符号化ストリームを生成し、
生成された間引き情報を、生成された符号化ストリームに挿入する
画像処理方法。
(12) 符号化ストリームを構成するスライスデータのうちスライスヘッダを復号するヘッダ復号部と、
前記ヘッダ復号部により復号された所定数のスライスヘッダから取得される時間情報に基づいて表示順を確定する表示順確定部と、
前記表示順確定部により確定された表示順に基づいて、前記スライスデータが、特殊再生を行う際の間引き対象であるか否かを判定する間引き判定部と、
前記間引き判定部によりスライスデータが間引き対象であると判定された場合、前記スライスデータの復号を禁止する復号部と
を備える画像処理装置。
(13) 前記時間情報は、POC(Picture Order Count)情報である
前記(12)に記載の画像処理装置。
(14) 画像処理装置が、
符号化ストリームを構成するスライスデータのうちスライスヘッダを復号し、
復号された所定数のスライスヘッダから取得される時間情報に基づいて表示順を確定し、
確定された表示順に基づいて、前記スライスデータが、特殊再生を行う際の間引き対象であるか否かを判定し、
前記スライスデータが間引き対象であると判定された場合、前記スライスデータの復号を禁止する
画像処理方法。