(57)【要約】【課題】  エラー伝播からの早期回復が可能な多視点映像の符号化技術を提供すること。【解決手段】  符号化装置は、送信先で復号できなかったことを示す否定応答から復号できなかった符号化単位領域と、符号化単位領域を参照の起点として符号化された符号化単位領域と、をエラー符号化領域として参照マップにおいて特定し、エラー符号化領域より後の符号化単位領域を符号化する際に、エラー符号化領域からの参照ができないように、符号化単位領域間の関係を変更して参照マップを更新する解析部を有する。【選択図】  図４
2013247651.tif 000002
【特許請求の範囲】
【請求項１】
複数の視点位置で撮像手段により撮像された多視点の映像データを符号化する符号化装置であって、
前記映像データを符号化単位領域内で符号化を行うイントラモード符号化手段と、
前記映像データの符号化単位領域を符号化する際に他の符号化単位領域を参照して符号化を行うインターモード符号化手段と、
前記インターモード符号化手段により生成された予測情報を用いて、前記映像データの符号化単位領域を符号化する際に、他の符号化単位領域の参照の可否を示す符号化単位領域間の関係を定めた参照マップを生成する生成手段と、
前記イントラモード符号化手段または前記インターモード符号化手段により符号化された映像データのパケットを送信する通信手段と、
送信先で復号できなかったことを示す否定応答から復号できなかった符号化単位領域と、当該符号化単位領域を参照の起点として符号化された符号化単位領域と、をエラー符号化領域として前記参照マップにおいて特定し、前記エラー符号化領域より後の符号化単位領域を符号化する際に、当該エラー符号化領域からの参照ができないように、前記符号化単位領域間の関係を変更して前記参照マップを更新する解析手段と、
前記映像データの符号化単位領域を符号化する際に、前記参照マップを用いて他の符号化単位領域の参照が可能であるか否かを判定し、前記他の符号化単位領域の参照が可能と判定される場合、前記インターモード符号化手段を選択し、前記他の符号化単位領域の参照ができないと判定される場合、前記イントラモード符号化手段を選択する判定手段と、
を有することを特徴とする符号化装置。
【請求項２】
前記インターモード符号化手段は、
同一視点で撮像時刻の異なる他の符号化単位領域を参照して動き補償予測による符号化を行う動き補償予測符号化手段と、
同一時刻で視点の異なる他の符号化単位領域を参照して視差補償予測による符号化を行う視差補償予測符号化手段と、
を有することを特徴とする請求項１に記載の符号化装置。
【請求項３】
前記通信手段は、
符号化された前記映像データを復号する送信先の装置からパケットを受信するパケット受信手段と、
前記パケットに含まれる情報から前記送信先の装置との間の通信状態を解析する通信状態解析手段と、
前記解析の結果に従って、符号化された前記映像データのパケットをバッファに格納するバッファリング時間およびバッファサイズを管理する管理手段と、
前記解析の結果に従って、前記映像データのパケットを前記送信先の装置に送信する送信間隔を決定するスケジュール手段と、
前記送信間隔に従って前記映像データのパケットを前記送信先の装置に送信するパケット送信手段と、
を有し、
前記管理手段は、前記バッファから溢れた映像データのパケットの情報、または、前記送信間隔によるスキップによって送信できなかった映像データのパケットの情報を前記解析手段に入力し、
前記解析手段は、前記映像データのパケットの情報を用いて送信できなかった前記映像データの符号化単位領域と、当該符号化単位領域を参照の起点として符号化された符号化単位領域と、を送信エラー符号化領域として前記参照マップにおいて特定し、前記送信エラー符号化領域より後の符号化単位領域を符号化する際に、当該送信エラー符号化領域からの参照ができないように、前記符号化単位領域間の関係を変更して前記参照マップを更新する
ことを特徴とする請求項１または２に記載の符号化装置。
【請求項４】
前記通信手段は、更に、
前記パケット送信手段による前記映像データのパケットの送信から、前記パケット受信手段による前記否定応答のパケットの受信までの応答時間を計測する計測手段と、
前記装置において前記映像データのパケットを受信してから復号を開始するまでのバッファリング時間を前記装置から取得する取得手段と、
を有し、
前記解析手段は、前記通信状態解析手段の解析結果から算出した再送信に要する再送時間および前記応答時間の合計時間が前記バッファリング時間以下である場合に、前記映像データのパケットの再送信が可能と判定し、前記否定応答に対して前記参照マップの更新を行わない
ことを特徴とする請求項３に記載の符号化装置。
【請求項５】
前記他の符号化単位領域の参照が可能な場合として、同一視点で撮像時刻の異なる符号化単位領域および同一時刻で視点の異なる符号化単位領域を参照可能な場合、前記判定手段は、前記インターモード符号化手段を選択する
ことを特徴とする請求項１乃至４のいずれか１項に記載の符号化装置。
【請求項６】
前記他の符号化単位領域の参照が可能な場合として、同一視点で撮像時刻の異なる符号化単位領域が参照可能な場合、前記判定手段は前記動き補償予測符号化手段を選択する
ことを特徴とする請求項２に記載の符号化装置。
【請求項７】
前記他の符号化単位領域の参照が可能な場合として、同一時刻で視点の異なる符号化単位領域を参照可能な場合、前記判定手段は前記視差補償予測符号化手段を選択する
ことを特徴とする請求項２に記載の符号化装置。
【請求項８】
前記イントラモード符号化手段は、前記複数の視点位置のうち基本となる一の視点位置における映像データに対して、予め定められた周期に従って、前記符号化単位領域内での符号化を行う
ことを特徴とする請求項１に記載の符号化装置。
【請求項９】
複数の視点位置で撮像手段により撮像された多視点の映像データを符号化単位領域内で符号化を行うイントラモード符号化手段と、前記映像データの符号化単位領域を符号化する際に他の符号化単位領域を参照して符号化を行うインターモード符号化手段と、前記イントラモード符号化手段または前記インターモード符号化手段により符号化された映像データのパケットを送信する通信手段と、を有する符号化装置における符号化方法であって、
生成手段が、前記インターモード符号化手段により生成された予測情報を用いて、前記映像データの符号化単位領域を符号化する際に、他の符号化単位領域の参照の可否を示す符号化単位領域間の関係を定めた参照マップを生成する生成工程と、
解析手段が、送信先で復号できなかったことを示す否定応答から復号できなかった符号化単位領域と、当該符号化単位領域を参照の起点として符号化された符号化単位領域と、をエラー符号化領域として前記参照マップにおいて特定し、前記エラー符号化領域より後の符号化単位領域を符号化する際に、当該エラー符号化領域からの参照ができないように、前記符号化単位領域間の関係を変更して前記参照マップを更新する解析工程と、
判定手段が、前記映像データの符号化単位領域を符号化する際に、前記参照マップを用いて他の符号化単位領域の参照が可能であるか否かを判定し、前記他の符号化単位領域の参照が可能と判定される場合、前記インターモード符号化手段を選択し、前記他の符号化単位領域の参照ができないと判定される場合、前記イントラモード符号化手段を選択する判定工程と、
を有することを特徴とする符号化方法。
【請求項１０】
コンピュータを、請求項１乃至８のいずれか１項に記載された符号化装置の各手段として機能させるためのプログラム。  
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化装置、符号化方法およびプログラムに関するものである。
【背景技術】
【０００２】
多視点映像データを符号化する技術として、Ｈ．２６４／ＭＶＣ(Multi-view Video Coding)がある。Ｈ．２６４／ＭＶＣによれば、同一撮像部で撮像された他フレームを参照（動き予測）するだけでなく、他視点で撮像されたフレームも参照（視差予測）することで、映像データを効率的に圧縮することができる。
【０００３】
また、インターネット等のＩＰ(Internet Protocol)ネットワークを用いた映像伝送が普及してきている。かかる映像伝送では、音声や動画像の符号化データをリアルタイムに伝送するプロトコルであるＲＴＰ(A Transport Protocol for Real-Time Application, RFC 3550, IETF)が利用されてきている。ＲＴＰは、トランスポート層で転送速度の速いＵＤＰ(User Datagram Protocol)を使用することを想定している。ＵＤＰは、転送速度は速いが、パケットロス対策や伝送時間保証が無いため、ＵＤＰよりも上位の層で通信エラー対応をする必要がある。他フレームを参照するだけでなく、他視点で撮像されたフレームも相互に参照／被参照して符号化された映像データパケットにエラーが発生すると、エラーによる映像の乱れが時間方向及び他視点に渡って伝播する。
【０００４】
エラー伝播を防止するための方法として、周期的に画面内予測符号化されたイントラフレームを挿入するイントラリフレッシュやイントラリフレッシュを複数の視点映像に対して交互に適用する技術（例えば、特許文献１）がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２０１０−５０６５３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の技術では、イントラフレームを挿入する周期の前半でエラーが発生してしまうと、長期に渡ってエラー伝播による映像の乱れから回復できないという問題があった。
【０００７】
エラー伝播による映像の乱れから早く回復させるために周期を短くし、頻繁にイントラフレームを挿入するという方法もあるが、イントラフレームはデータ量が大きく、頻繁に挿入することで送信データ量が増加してしまう。そのため、ネットワークの輻輳による更なるパケットロスを発生させてしまうという問題もある。
【課題を解決するための手段】
【０００８】
本発明は上述した問題を解決するためになされたものであり、エラー伝播からの早期回復が可能な多視点の映像データの符号化技術の提供を目的とする。あるいは、送信データ量を削減することが可能な多視点の映像データの符号化技術の提供を目的とする。
【０００９】
上記の目的を達成する本発明の一つの側面に係る符号化装置は、複数の視点位置で撮像手段により撮像された多視点の映像データを符号化する符号化装置であって、
前記映像データを符号化単位領域内で符号化を行うイントラモード符号化手段と、
前記映像データの符号化単位領域を符号化する際に他の符号化単位領域を参照して符号化を行うインターモード符号化手段と、
前記インターモード符号化手段により生成された予測情報を用いて、前記映像データの符号化単位領域を符号化する際に、他の符号化単位領域の参照の可否を示す符号化単位領域間の関係を定めた参照マップを生成する生成手段と、
前記イントラモード符号化手段または前記インターモード符号化手段により符号化された映像データのパケットを送信する通信手段と、
送信先で復号できなかったことを示す否定応答から復号できなかった符号化単位領域と、当該符号化単位領域を参照の起点として符号化された符号化単位領域と、をエラー符号化領域として前記参照マップにおいて特定し、前記エラー符号化領域より後の符号化単位領域を符号化する際に、当該エラー符号化領域からの参照ができないように、前記符号化単位領域間の関係を変更して前記参照マップを更新する解析手段と、
前記映像データの符号化単位領域を符号化する際に、前記参照マップを用いて他の符号化単位領域の参照が可能であるか否かを判定し、前記他の符号化単位領域の参照が可能と判定される場合、前記インターモード符号化手段を選択し、前記他の符号化単位領域の参照ができないと判定される場合、前記イントラモード符号化手段を選択する判定手段と、
を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、エラー伝播からの早期回復が可能な多視点の映像データの符号化技術の提供が可能になる。あるいは、送信データ量を削減することが可能な多視点の映像データの符号化技術の提供が可能になる。
【図面の簡単な説明】
【００１１】
【図１】複数の撮像部を備えた多眼方式の撮像装置を例示する図。
【図２】多眼方式の撮像装置の内部構成を例示するブロック図。
【図３】撮像部の内部構成を例示する図。
【図４】エンコーダ部の内部構成を示す図。
【図５】参照マップの概念図。
【図６】受信装置から否定応答を受信した時の参照マップを例示する図。
【図７】否定応答による参照マップの更新例を示す図。
【図８】否定応答によるイントラフレームの挿入例を示す図。
【図９】符号化モード判定部の判定処理の流れを説明する図。
【図１０】通信モジュールの内部構成を例示する図。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、本発明の実施形態を例示的に詳しく説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【００１３】
[第１実施形態]
図１は複数の撮像部を備えた多眼方式による撮像装置を例示する図である。撮像装置１００の筐体は、カラー映像を取得（撮像）する９個の撮像部１０１〜１０９および撮影ボタン１１０を備えている。９個の撮像部のそれぞれは、縦方向および横方向に等間隔で正方格子上に配置されている。
【００１４】
ユーザが撮影ボタン１１０を押下すると、撮像部１０１〜１０９が被写体の光情報をセンサ（撮像素子）で受光し、受光した信号がＡ／Ｄ変換されて、複数のカラー映像（デジタルデータ）が同時に取得される。このような多眼方式の撮像装置により、同一の被写体を複数の異なる視点位置から撮像した複数のカラー映像を得ることができる。なお、ここでは撮像部の数を９個としたが撮像部の数は９個に限定されない。撮像装置が複数（Ｎ≧２：Ｎは整数）の撮像部を有する限りにおいて本発明は適用可能である。
【００１５】
また、図１では９個の撮像部が正方格子上に等間隔に配置される例について説明したが、撮像部の配置は任意である。例えば、放射状や直線状に配置してもよいし、それぞれの撮像部をランダムに配置してもよい。
【００１６】
図２は、多眼方式の撮像装置１００の内部構成を例示するブロック図である。中央処理装置（ＣＰＵ）２０１は、以下に述べる各部を統括的に制御する。ＲＡＭ２０２は、中央処理装置（ＣＰＵ）２０１の主メモリ、またはワークエリア等として機能する。ＲＯＭ２０３は、中央処理装置（ＣＰＵ）２０１によって実行される制御プラグラム等を格納している。バス２０４は各種データの転送経路として機能する。例えば、撮像部１０１〜１０９によって取得された複数のカラー映像（デジタルデータ）はバス２０４を介して所定の処理部に送られる。
【００１７】
操作部２０５はユーザからの指示を受け付ける。例えば、操作部２０５には、ボタンやモードダイヤルなどが含まれる。表示部２０６は撮影映像や文字の表示を行う。例えば、表示部２０６には、液晶ディスプレイが用いられる。また、表示部２０６はタッチスクリーン機能を有していても良く、その場合はタッチスクリーンを用いたユーザからの指示を操作部２０５の入力として扱うことも可能である。表示制御部２０７は、表示部２０６に表示される撮影画像や文字の表示制御を行う。
【００１８】
撮像部制御部２０８は、ＣＰＵ２０１からの指示に基づいて、例えば、フォーカスを合わせる、シャッターを開く、閉じる、絞りを調節するなど、それぞれの撮像部の動作を制御する。デジタル信号処理部２０９は、バス２０４を介して受け取ったデジタルデータに対し、ホワイトバランス処理、ガンマ処理、ノイズ低減処理などの各種処理を行う。
【００１９】
エンコーダ部２１０は、デジタルデータを特定の符号化方式に応じて変換する処理を行う。本実施形態では、符号化方式としてＨ．２６４／ＭＶＣを例に説明するが、適用可能な符号化方式はＨ．２６４／ＭＶＣに限定されるものではなく、Ｈ．２６４／ＭＶＣ以外の符号化方式でもよい。また、エンコーダ部２１０は、映像データを受信する受信装置から送られる否定応答から映像データの符号化モードや符号化時の参照方向を動的に制御する処理も行う。更に、エンコーダ部２１０は、送信データをネットワークに適したサイズ及びフォーマットでパケット化するパケッタイザ及びネットワークから受信したパケットのペイロードを取得するデパケッタイザも含む。エンコーダ部２１０の詳細については後述する。
【００２０】
外部メモリ制御部２１１は、情報処理装置（ＰＣ）やその他のメディア（例えば、ハードディスク、メモリカード、ＣＦカード、ＳＤカード、ＵＳＢメモリ）に接続するためのインタフェースである。画像処理部２１２は、撮像部１０１〜１０９で取得されたカラー映像群、或いは、デジタル信号処理部２０９から出力されるカラー映像群を利用して画像処理を行う。
【００２１】
通信モジュール２１３は、インターネットや公衆無線、ＬＡＮ（Local Area Network）との通信機能を提供する。通信モジュール２１３の通信機能により、撮像した映像データをエンコードした符号化データを外部に送信したり、外部から様々な情報を取得したりすることが可能となる。通信モジュール２１３のインタフェースは有線でも無線でも良いし、プロトコルも問わない。通信モジュール２１３については第２実施形態で詳細に説明する。
【００２２】
図３は撮像部１０１〜１０９の内部構成を例示する図である。
【００２３】
撮像部１０１〜１０９は、ズームレンズ３０１、フォーカスレンズ３０２、ぶれ補正レンズ３０３を有する。また、撮像部１０１〜１０９は、絞り３０４、シャッター３０５、光学ローパスフィルタ３０６、ｉＲカットフィルタ３０７、カラーフィルタ３０８、センサ３０９及びＡ／Ｄ変換部３１０を有する。センサ３０９は、例えば、ＣＭＯＳやＣＣＤなどのセンサである。センサ３０９で被写体の光量を検知すると、検知された光量がＡ／Ｄ変換部３１０によってデジタル値に変換され、デジタルデータとなってバス２０４に出力される。
【００２４】
図４は、エンコーダ部２１０の内部構成を示す図である。エンコーダ部２１０は、撮像部１０１〜１０９で撮像されたカラー映像（デジタルデータ）を映像データとして受け取り、映像データを符号化した符号化データを通信モジュール２１３に出力する機能を備える。本実施形態では、多視点映像データであるカラー映像を一つのエンコーダ部２１０で符号化する構成としているが、複数のエンコーダ部によって撮像部１０１〜１０９で撮像された複数のカラー映像を符号化することも可能である。また、撮像装置ごとにカラー映像（デジタルデータ）を符号化するエンコーダ部が存在していてもよい。また、多視点映像を、複数の視点位置のうち基本となる一の視点位置（基本視点）における映像と、基本視点以外の視点位置における映像とに分けて符号化するようにエンコーダ部を構成してもよい。
【００２５】
符号化モード判定部４０１は、参照マップを用いて、映像データの符号化単位領域（例えば、フレーム、スライス、またはマクロブロック内）を符号化する際に参照可能な当該映像データの他の符号化単位領域の有無を判定する。入力された映像データの符号化モードを判定する。符号化モードは、符号化対象の映像データを符号化単位領域内で符号化するイントラモードと、他の符号化単位領域を参照して符号化するインターモードに分けることができる。符号化モード判定部４０１は、符号化判定条件として、基本視点の映像データに対して周期的に符号化単位領域内符号化を行う場合、イントラモードによる符号化と判定する。または、符号化判定条件として参照マップ４１３において参照可能な映像データの他の符号化単位領域が存在しない場合、符号化モード判定部４０１はイントラモードによる符号化と判定する。この符号化判定条件に該当しない場合、符号化モード判定部４０１は、インターモードによる符号化と判定する。符号化モード判定部４０１の詳細については後述する。尚、以下のエンコーダ部２１０の内部構成の説明では、符号化単位領域の例としてフレームについて説明する。
【００２６】
符号化モード判定部４０１でイントラモードと判定された場合、画面内予測部４０２（イントラモード符号化部）は入力された映像データから、画面内予測信号を生成する。生成された画面内予測信号は減算器４１４に入力される。減算器４１４は撮像部により入力された映像データから画面内予測信号を減算した剰余データをＤＣＴ(Discrete Cosine Transform)変換・量子化部４０３に入力する。
【００２７】
ＤＣＴ変換・量子化部４０３は、減算器４１４から入力された剰余データをＤＣＴ変換および量子化し、ＤＣＴ変換および量子化したデータ（ＤＣＴ変換量子化データ）をエントロピー符号化部４０４に入力する。また、ＤＣＴ変換・量子化部４０３は、エントロピー符号化部４０４に対する入力と並行して、剰余データをＤＣＴ変換および量子化したデータ（ＤＣＴ変換量子化データ）を、逆量子化・逆ＤＣＴ変換部４０６にも入力する。
【００２８】
エントロピー符号化部４０４は、ＤＣＴ変換量子化データに対して可変長符号化処理を行い、可変長符号化されたＤＣＴ変換量子化データを多重化部４０５に入力する。可変長符号化されたＤＣＴ変換量子化データは多重化部４０５によって多重化され、ネットワークに適したサイズ及びフォーマットでパケット化される。パケット化された映像データパケットは通信モジュール２１３に入力される。
【００２９】
逆量子化・逆ＤＣＴ変換部４０６は、入力されたＤＣＴ変換量子化データを逆量子化および逆ＤＣＴ変換し、逆量子化および逆ＤＣＴ変換したデータ（逆量子化逆ＤＣＴ変換データ）を加算器４１５に入力する。加算器４１５は、逆量子化および逆ＤＣＴ変換されたデータと、画面内予測部４０２で生成された画面内予測信号とを加算してイントラフレームに復元し、復元したイントラフレームをフィルタ４０７に入力する。
【００３０】
加算器４１５によって復元されたイントラフレームは、フィルタ４０７におけるデブロッキングフィルタによりブロック歪が除去された後に、フレームメモリ４０８に保存される。
【００３１】
次に、符号化モード判定部４０１でインターモードと判定された場合におけるそれぞれのブロックの役割を説明する。符号化モード判定部４０１でインターモードと判定された場合に、撮像部から入力された映像データは、動き補償部４０９と視差補償部４１０のうち、少なくとも一つに入力される。ここで、動き補償部４０９と視差補償部４１０とは、他の符号化単位領域（例えば、フレーム、スライス、またはマクロブロック）を参照して映像データの符号化を行うインターモード符号化部を構成する。参照マップ４１３により動き補償及び視差補償のいずれも可能である場合、映像データは、動き補償部４０９および視差補償部４１０に入力される。
【００３２】
動き補償部４０９（動き補償予測符号化部）は、同一視点で撮像時刻の異なる符号化単位領域を参照して動き補償予測による符号化を行う。動き補償部４０９は参照可能なデータをフレームメモリ４０８から取得し、符号化を行う。また、視差補償部４１０（視差補償予測符号化部）は、同一時刻で視点の異なる符号化単位領域を参照して視差補償予測による符号化を行う。視差補償部４１０は参照可能なデータをフレームメモリ４０８から取得し、符号化を行う。
【００３３】
動き補償部４０９は生成した予測信号（予測情報）を参照方向選択部４１１に入力するとともに、動き補償により求めた動きベクトルをエントロピー符号化部４０４に入力する。また、視差補償部４１０は生成した予測信号（予測情報）を参照方向選択部４１１に入力するとともに、視差補償により求めた視差ベクトルをエントロピー符号化部４０４に入力する。
【００３４】
参照方向選択部４１１は、予測情報を用いて、映像データを符号化する際に他の符号化単位領域（フレーム、スライス、またはマクロブロック）の参照の可否を示す符号化単位領域間の関係を定めた参照マップ４１３を生成する。参照方向選択部４１１は、動き補償部４０９又は視差補償部４１０から入力された予測信号から参照方向を選択する。本実施形態では、差分の小さい予測信号を選択する方法を採用するが、符号化方法によっては両方の予測信号を利用することもできる。参照方向選択部４１１は、動き補償部４０９と視差補償部４１０のどちらか一方からのみ予測信号を取得した場合、取得した一方の予測信号を選択する。参照方向選択部４１１は選択した予測信号を減算器４１４に入力する。減算器４１４は、撮像部により入力された映像データから、参照方向選択部４１１により入力された予測信号を減算した剰余データを、イントラモードの場合と同様に、ＤＣＴ変換・量子化部４０３に入力する。
【００３５】
剰余データに対するＤＣＴ変換・量子化部４０３、エントロピー符号化部４０４、多重化部４０５、および逆量子化・逆ＤＣＴ変換部４０６の処理は、イントラモードの場合と同様である。
【００３６】
参照方向選択部４１１は、減算器４１４に対する予測信号の入力と並行して、加算器４１５にも予測信号を入力する。
【００３７】
加算器４１５は、逆量子化・逆ＤＣＴ変換部４０６によって逆量子化および逆ＤＣＴ変換されたデータ（逆量子化逆ＤＣＴ変換データ）と、参照方向選択部４１１から入力された予測信号とを加算してインターフレームに復元する。そして、加算器４１５は復元したインターフレームをフィルタ４０７に入力する。加算器４１５によって復元されたインターフレームは、フィルタ４０７におけるデブロッキングフィルタによりブロック歪が除去された後に、フレームメモリ４０８に保存される。
【００３８】
次に、否定応答解析部４１２について説明する。否定応答解析部４１２は、通信モジュール２１３から否定応答を取得する。否定応答とは、映像データのパケットの送信先である受信装置から何らかのエラーによって復号できなかった映像データの情報を含む応答メッセージである。復号できなかった映像データを識別するための情報には、例えば、復号できなかった符号化単位領域、例えば、フレームを識別するフレーム番号やフレーム内のスライスを識別する識別情報（スライス番号）、マクロブロックを識別する識別情報が含まれる。この復号できなかった映像データを識別するための情報は、参照マップ４１３で管理する映像データの符号化単位領域（例えば、フレーム、スライス、マクロブロック）に対応する。例えば、フレームの場合、否定応答解析部４１２は、この識別情報を用いて参照マップ４１３におけるエラー符号化単位領域の位置を特定することができる。否定応答解析部４１２は、映像データを後のタイミングで符号化する際にエラー符号化単位領域からの参照ができないように、符号化単位領域間の関係を変更するためのエラー情報を生成する。符号化単位領域間の関係には、同一視点で撮像時刻の異なる映像データの時間方向の参照（動き補償）および同一時刻で視点の異なる映像データの視差方向の参照（視差補償）が含まれる。また、符号化単位領域間の関係には、他の符号化単位領域について時間方向の参照および視差方向の参照をしない自符号化単位領域のみの参照も含まれる。
【００３９】
時間方向の参照（動き補償）、および視差方向の参照（視差補償）により符号化する場合において、エラーにより動き補償による符号化ができないとき、符号化単位領域間の関係は視差方向のみ参照可能と変更される。また、時間方向の参照（動き補償）、および視差方向の参照（視差補償）により符号化する場合において、エラーにより視差補償ができないときは、符号化単位領域間の関係は時間方向のみ参照可能と変更される。
【００４０】
あるいは、時間方向の参照、または、視差方向の参照によりインター符号化する場合に、エラーにより他の符号化単位領域を参照できないときは自符号化単位領域のみの参照によるイントラ符号化に切り替えることが含まれる。
【００４１】
否定応答解析部４１２は、復号できなかった映像データの解析により取得したエラー情報を参照マップ４１３に反映して、参照マップ４１３における符号化単位領域間の関係を変更する。
【００４２】
図５は、参照マップ４１３の概念図である。本実施形態では、符号化単位領域として、参照マップ４１３をフレーム単位で構成しているが、スライス単位、マクロブロック単位でもよい。以下の説明では、符号化単位領域としてフレームを例とする。縦軸方向は異なる視差の撮像部１０１〜１０９（視差方向の参照）を表し、横軸方向のＴ０〜Ｔ８は時間軸（時間方向の参照）を表す。本実施形態では、図１の撮像装置における９個の撮像部のうち、中央の撮像部１０５を基本視点として説明するが、他の撮像部を基本視点にしてもよい。
【００４３】
一つ一つの矩形ブロックがフレームを表し、図中の矢印は符号化における参照方向を表している。矩形ブロック中の「Ｉ」は画面内符号化のみによるイントラフレームを表す。Iフレームでは、他フレームを参照せずに自フレームのみの参照によるイントラ符号化が行われる。
【００４４】
矩形ブロック中の「Ｐ」は一方向のみの参照によって符号化したインターフレームを表す。Ｐフレームでは、同一視点で撮像時刻の異なる映像データの時間方向の参照（動き補償）、または、同一時刻で視点の異なる映像データの視差方向の参照（視差補償）が行われる。
【００４５】
そして、矩形ブロック中の「Ｂ」は二方向以上の参照によって符号化したインターフレームを表す。Ｂフレームでは、同一視点で撮像時刻の異なる映像データの時間方向の参照（動き補償）および同一時刻で視点の異なる映像データの視差方向の参照（視差補償）が行われる。
【００４６】
図５に示す符号化の参照方向はあくまでも例示的なものであり、これに限定されるものではない。また、本実施形態では、イントラフレーム（Ｉフレーム）を挿入する周期を８としているが、周期が８に限定されるものではない。ここで、冗長なイントラフレームを挿入せず、イントラフレームを周期的に挿入することにより送信データ量を削減することが可能になる。
【００４７】
図６は、符号化された映像データを復号する受信装置から否定応答を受信した時の参照マップを例示する図である。図６では、例として、時刻Ｔ２において撮像部１０９で撮像し、符号化したＢフレーム６０１の否定応答を時刻Ｔ４で受信した際の参照マップ４１３を例示している。ここで、否定応答解析部４１２は、否定応答に含まれる復号できなかった映像データの解析により、Ｂフレーム６０１（符号化単位領域）を特定する。更に、Ｂフレーム６０１（符号化単位領域）を参照の起点として符号化されたフレームを参照マップ４１３の参照方向から特定する。実線で囲まれたフレーム群６００（エラー符号化領域）がこれに該当し、これらのフレームにはエラーが伝播する可能性がある。否定応答解析部４１２は、エラー符号化領域より後の符号化単位領域を符号化する際にフレーム群６００（エラー符号化領域）からの参照ができないように、参照マップ４１３のフレーム間の参照関係を変更する。具体的には、否定応答解析部４１２は、映像データを符号化する際に参照予定のフレーム群（破線で囲まれた参照方向群６０２）を参照マップ４１３から削除する。時刻Ｔ４における撮像部１０９、１０８、１０７、１０４、１０１について、動き補償による符号化を行わずに、視差補償のみの符号化を行うように、ＢフレームをＰフレームに変更する。
【００４８】
符号化モード判定部４０１は、変更された参照マップ４１３から時刻Ｔ４における撮像部１０９、１０８、１０７、１０４、１０１について、動き補償による符号化ができないことを知り、視差補償のみの符号化に切り替える。
【００４９】
図７は、否定応答による参照マップの更新例を示す図であり、時刻Ｔ４において参照マップ４１３を更新した後の符号化の状態を示している。フレーム群７００では、時刻Ｔ４における撮像部１０９、１０８、１０７、１０４、１０１のＢフレームによる時間方向の参照が削除され、Ｐフレームの挿入による視差方向のみの参照で符号化される。
【００５０】
図８は否定応答によるイントラフレームの挿入例を示す図である。基本視点の映像データがエラーにより復号できなかった場合として、時刻Ｔ４において撮像部１０５で撮像し、符号化したＰフレーム８０１の否定応答を時刻Ｔ６で受信した際の参照マップ４１３の変更を例示するものである。
【００５１】
否定応答解析部４１２は、時刻Ｔ６において、時刻Ｔ４の基本視点の映像フレームの否定応答を受信し、否定応答に含まれる復号できなかった映像データの解析により、Ｐフレーム８０１（符号化単位領域）を特定する。更に、Ｐフレーム８０１（符号化単位領域）を参照の起点として符号化されたフレームを参照マップ４１３の参照方向から特定する。この場合、時刻Ｔ４、時刻Ｔ５のフレームの全てのフレーム群（エラー符号化領域）にエラーが伝播する可能性がある。
【００５２】
否定応答解析部４１２は、エラー符号化領域より後の符号化単位領域を符号化する際にエラー符号化領域からの参照ができないように、参照マップ４１３のフレーム間の参照関係を変更する。図８では、時刻Ｔ５までに符号化された符号化単位領域を参照しないように、時刻Ｔ６における符号化の際に映像フレーム群８０２は時間方向の参照が全て削除される。時刻Ｔ６における基本視点の映像データのフレームは動き補償および視差補償共に不可能な状態となるため、画面内予測によるイントラフレーム（Ｉフレーム）として符号化される。また、時刻Ｔ６における非基本視点の映像フレームは基本視点の映像を起点として視差方向の順に参照され、視差補償によるインターフレーム（Ｐフレーム）として符号化される。
【００５３】
イントラフレーム（Ｉフレーム）の挿入周期は、任意に設定可能である。挿入周期を８フレームに設定した場合、最後にイントラフレームが挿入されてから８フレーム後に、次のイントラフレームが挿入される（図７）。従って、時刻Ｔ６においてイントラフレーム（Ｉフレーム）を挿入した場合、次にイントラフレームが周期的に挿入されるのは時刻Ｔ１４となる（図８）。尚、本実施形態では、イントラフレーム（Ｉフレーム）を周期的に挿入する参照マップを例示したが、本発明の趣旨はこの例に限定されず、冗長なイントラフレームの挿入を制限できれば、イントラフレームを周期的に挿入しなくてもよい。
【００５４】
次に、図９を用いて、符号化モード判定部４０１における符号化モードの判定処理の流れを説明する。
【００５５】
はじめに、ステップＳ９０１において、符号化モード判定部４０１は、撮像部から入力された映像データが基本視点の映像データであるかどうかを判定する。例えば、符号化モード判定部４０１は、複数の視点位置（撮像部）のそれぞれに対して設定されている識別情報を用いて、映像データが基本視点の映像データであるか否かを判定することができる。入力された映像データが基本視点の映像データである場合（Ｓ９０１−Ｙｅｓ）、ステップＳ９０２において、符号化モード判定部４０１は、イントラフレームの挿入周期９０３とフレームインデックス（ＩＤＸ）９０４を取得する。
【００５６】
ステップＳ９０５において、フレームインデックスをインクリメントし、ステップＳ９０６において、フレームインデックスを更新する。ステップＳ９０７において、符号化モード判定部４０１は、フレームインデックスがイントラフレームの挿入周期と一致するかを判定する。フレームインデックスが挿入周期と一致する場合（Ｓ９０７−Ｙｅｓ）、ステップＳ９０８において、符号化モード判定部４０１はフレームインデックスを０に初期化する。
【００５７】
ステップＳ９０９において、符号化モード判定部４０１は、再度フレームインデックスを更新し、ステップＳ９１０において、符号化モード判定部４０１はイントラモードと判定する。
【００５８】
一方、ステップＳ９０７の判定において、フレームインデックスが挿入周期と一致しない場合（Ｓ９０７−Ｎｏ）、ステップＳ９１３において、符号化モード判定部４０１は参照マップ４１３から動き補償が可能かどうかを判定する。動き補償が可能な場合（Ｓ９１３−Ｙｅｓ）、ステップＳ９１２において、符号化モード判定部４０１はインターモードと判定する。一方、動き補償不可ならば（Ｓ９１３−Ｎｏ）、符号化モード判定部４０１はフレームインデックスを初期化（Ｓ９０８）して、再度フレームインデックスを更新する（Ｓ９０９）。そして、ステップＳ９１０において、符号化モード判定部４０１はイントラモードと判定する。
【００５９】
一方、ステップＳ９０１の判定において、撮像部から入力された映像データが非基本視点の映像データであった場合（Ｓ９０１−Ｎｏ）、符号化モード判定部４０１は視差補償が可能かどうかを判定する（Ｓ９１１）。視差補償が可能な場合（Ｓ９１１−Ｙｅｓ）、処理はステップＳ９１４に進められる。ステップＳ９１４において、符号化モード判定部４０１は動き補償が可能かどうかを判定する。動き補償が可能な場合（Ｓ９１４−Ｙｅｓ）、符号化モード判定部４０１は視差補償および動き補償によるインターモードと判定する（Ｓ９１４−Ｙｅｓ、Ｓ９１５）。
【００６０】
ステップＳ９１４の判定で、動き補償不可の場合（Ｓ９１４−Ｎｏ）、符号化モード判定部４０１は視差補償によるインターモードと判定する（Ｓ９１４−Ｎｏ、Ｓ９１２）。
【００６１】
ステップＳ９１１の判定で視差補償不可ならば（Ｓ９１１−Ｎｏ）、処理はステップＳ９１３に進められ、符号化モード判定部４０１は動き補償が可能かどうかを判定する。符号化モード判定部４０１は、動き補償が可能な場合（Ｓ９１３−Ｙｅｓ）、動き補償によるインターモードと判定する（Ｓ９１３−Ｙｅｓ、Ｓ９１２）。
【００６２】
視差補償も動き補償も不可ならば（Ｓ９１１−Ｎｏ、Ｓ９１３−Ｎｏ）、符号化モード判定部４０１は、フレームインデックスを初期化（Ｓ９０８）して、再度フレームインデックスを更新する（Ｓ９０９）。そして、ステップＳ９１０において、符号化モード判定部４０１はイントラモードと判定する。
【００６３】
本実施形態では、撮像部１０１〜１０９で撮像される画像がすべてカラー映像であることを前提に各部の構成や処理を説明した。しかし、撮像部１０１〜１０９で撮像される映像の一部、あるいは全部をモノクロ映像に変更しても構わない。その場合、撮像部の構成から図３のカラーフィルタ３０８を省略することができる。
【００６４】
また、本実施形態では、一台の撮像装置に複数の撮像部が備わっている多眼カメラであることを前提に各部の構成や処理を説明したが、本発明は、この構成に限定されるものではなく、撮像部が一つ以上の複数の撮像装置を用いてもよい。本実施形態は、撮像装置の構成により限定的に適用されるものではなく、複数の視点位置で撮像部により撮像された多視点の映像データを符号化する符号化装置に適用可能である。
【００６５】
[第２実施形態]
第１実施形態では、符号化された映像データを復号する受信装置から送られる否定応答から映像データの符号化モードや符号化時の参照方向を動的に制御（変更）する構成を説明した。
【００６６】
本実施形態では、送信装置側で送信できなかった映像データパケットの情報と受信装置から受信した否定応答パケットとを参照マップ４１３の変更に併用する構成を説明する。送信装置の通信モジュール２１３における送信バッファ溢れや通信帯域制限によるフレームスキップにより、送信装置から送信できなかった映像データパケットが存在する場合の処理について説明する。
【００６７】
図１０は、本実施形態における通信モジュール２１３の内部構成を例示する図である。図４のエンコーダ部２１０の構成要素である多重化部４０５によってパケット化された映像データパケットは送信バッファ１００１に格納される。本実施形態では送信バッファ１００１が通信モジュール２１３内に内蔵されているが、映像データパケットを格納する構成として、通信モジュール２１３の外部のＲＡＭ２０２を利用してもよい。
【００６８】
スケジュール部１００２は、通信状態解析部１００５によって解析された通信状態によって、パケットの送信間隔を決定し、送信間隔毎に映像データパケットをパケット送信部１００３に入力する。スケジュール部１００２は、通信状態によって、格納されている映像データパケットの中の全てのパケットを送信せずに、特定のフレームパケットの送信をスキップし、送信バッファ１００１から破棄することもできる。
【００６９】
パケット送信部１００３は、スケジュール部１００２から入力された映像データパケットを、ネットワーク１００７を介してして受信装置に送信する。また、パケット送信部１００３は映像データパケットだけでなく、通信状態を解析するためにＩＣＭＰ(Internet Control Message Protocol, RFC 792, IETF)のエコー要求パケットを送信可能である。更に、パケット送信部１００３は、メディア同期のためのＲＴＣＰ(RTP Control Protocol)のＳＲ(Sender Report)等を受信装置に送信可能である。
【００７０】
パケット受信部１００６は、受信装置からネットワーク１００７を経由して送られてきたパケットを受信し、復号化する。受信装置から受信するパケットは、ＲＴＣＰのＲＲ(Receiver Report)や受信装置において復号できなかった映像データの否定応答を含む。ＲＴＣＰのＲＲ(Receiver Report)には、ネットワークにおけるエラー率やジッター情報が含まれており、通信状態解析部１００５に入力され、通信状態の解析に利用される。
【００７１】
映像データの否定応答の方法として、例えば、”RTP Payload Formats to Enable Multiple Selective Retransmissions, IETF”が挙げられる。尚、否定応答の方法は上記の方法に限定されるものではなく、これ以外の方法でもよい。否定応答パケットのフォーマット等の詳細については本発明の本質的な要素ではないので省略する。パケット受信部１００６で受信された否定応答パケットは、否定応答解析部４１２に入力される。否定応答解析部４１２に入力された否定応答パケットから参照マップ４１３を変更して映像データの符号化モードや符号化時の参照方向を制御する処理は第１実施形態と同様である。
【００７２】
通信状態解析部１００５は、パケット受信部１００６から入力されたＲＴＣＰのＲＲ(Receiver Report)やＩＣＭＰのエコー応答パケットから、ネットワークのエラー率やＲＴＴ(Round Trip Time)等の情報を取得する。通信状態解析部１００５は、通信帯域を算出する等して通信状態を解析する。通信帯域の算出方法としては、例えば、ＴＦＲＣ(TCP Friendly Rate Control, RFC 3448, IETF)が挙げられる。尚、通信帯域の算出方法は上記の方法に限定されるものではなく、これ以外の方法でもよい。通信状態解析部１００５の解析結果の情報はスケジュール部１００２に渡され、パケット送信レートの計算やフレームスキップの判定に利用される。また、通信状態解析部１００５の解析結果の情報はバッファ管理部１００４に入力される。バッファ管理部１００４は、通信状態解析部１００５の解析結果の情報を用いて送信バッファ１００１のバッファリング時間やバッファサイズの管理、制御等を行う。
【００７３】
バッファ管理部１００４は、映像データパケットの送信バッファ１００１におけるバッファ溢れやスケジュール部１００２の送信間隔によるフレームスキップ等によって破棄されたパケットの情報を否定応答解析部４１２に入力する。
【００７４】
否定応答解析部４１２は、受信装置から受信する否定応答パケットだけでなく、送信装置側で送信できなかった映像データパケットの情報も利用して、参照マップ４１３を変更する。例えば、否定応答解析部４１２は、バッファ管理部１００４から入力された映像データパケットの情報に含まれるフレームの識別情報から、参照マップにおける送信エラーフレーム（送信エラー符号化領域）の位置を特定する。そして、否定応答解析部４１２は、映像データを後に符号化する際に送信エラーフレーム（送信エラー符号化領域）からの参照ができないように、フレーム間の参照関係を変更するためのエラー情報を生成する。
【００７５】
送信装置側で送信できなかった映像データパケットの情報を参照マップ４１３の変更に利用することで、受信装置におけるエラー伝播の影響と映像の乱れからの回復までの時間を縮小することができる。
【００７６】
本実施形態では、送信装置側で送信できなかった映像データパケットの情報と受信装置から受信した否定応答パケットとを参照マップ４１３の変更に併用する構成で説明した。尚、本発明は、更に、送信装置側で送信できなかった映像データパケットの情報だけで参照マップ４１３を変更する実施形態にも適用できる。
【００７７】
[第３実施形態]
本実施形態では送信装置が再送機能を有している場合について説明する。再送機能とは、受信装置からの否定応答に対して、該当する映像データパケットを送信装置から受信装置に対して再送信する機能である。
【００７８】
図１０を用いて送信装置の再送機能を説明する。図１０のパケット受信部１００６は、受信装置から否定応答パケットを受信すると、否定応答解析部４１２に入力する。否定応答解析部４１２は、予め、受信装置における受信パケットのバッファリング時間を通信モジュール２１３から取得しておく。ここでバッファリング時間とは、受信装置が映像データパケット（符号化された映像データパケット）を受信してから、復号を開始するまでの時間である。通信モジュール２１３は、バッファリング時間を受信装置から取得し、否定応答解析部４１２に入力する。
【００７９】
バッファリング時間を取得する方法として、例えば、ＲＴＳＰ(Real Time Streaming Protocol, RFC 2326, IETF)を利用する方法が挙げられる。受信装置からＲＴＳＰのＳＥＴ＿ＰＡＲＡＭＥＴＥＲメソッドを利用して送信装置に通知してもよい。また、送信装置がＧＥＴ＿ＰＡＲＡＭＥＴＥＲメソッドを利用して、送信装置から受信装置のバッファリング時間を取得しにいってもよい。また、バッファリング時間を取得する方法は、上記の方法に限定されるものではなく、ＲＴＳＰのパラメータを用いない別の方法でもよい。
【００８０】
通信モジュール２１３は、パケット送信部１００３から映像データパケットを送信し、受信装置から送信された否定応答のパケットをパケット受信部１００６で受信するまでの応答時間を計測するタイマーを備える。
【００８１】
また、否定応答解析部４１２は、通信モジュール２１３から通信状態解析部１００５で解析されたＲＴＴ(Round Trip Time)とタイマーで計測された応答時間とを取得する。否定応答解析部４１２は、取得したＲＴＴから、送信装置から受信装置に対してパケット再送信に要する再送時間を算出する。否定応答解析部４１２は、算出した時間および否定応答を受信するまでの応答時間の合計時間が受信装置のバッファリング時間以下であれば再送信可能と判定し、復号できなかった映像データパケットの再送要求を出力する。
【００８２】
否定応答解析部４１２は、再送要求として、再送信が復号の開始に間に合うと判定された映像データパケットが送信バッファ１００１に存在するかどうかをバッファ管理部１００４に問い合わせる。復号できなかった映像データパケットが送信バッファ１００１に存在する場合、バッファ管理部１００４は、送信バッファ１００１に存在する映像データパケットの再送信をスケジュール部１００２に要求する。バッファ管理部１００４からの要求によってスケジュール部１００２はパケット再送信のスケジューリングを行い、該当する映像データパケットを送信バッファ１００１からパケット送信部１００３に入力する。パケット送信部１００３は、スケジュール部１００２から入力された映像データパケットを受信装置に再送信する。
【００８３】
否定応答解析部４１２は、映像データのパケットの再送信が可能と判定した場合、否定応答に対するエラー情報の生成を行わず、参照マップ４１３の変更も行わない。この場合、多視点映像データの符号化における参照方向について制限を加えないことによって、より効率的な符号化を実現できる。
【００８４】
本実施形態の変形例として、再送信が可能と判定された場合でも、否定応答解析部４１２に対する事前の設定により、否定応答解析部４１２がエラー情報を生成し、参照マップ４１３の変更を行うようにすることも可能である。この場合、参照マップ４１３の変更により受信装置において再送された映像データパケットが復号できなかった場合のエラー伝播のリスクを軽減することが可能になる。
【００８５】
以上説明したように、上記の実施形態によれば、エラーが生じた符号化単位領域と、この符号化単位領域を参照の起点として符号化された符号化単位領域と、をエラー符号化領域として参照マップで特定する。エラー符号化領域より後の符号化単位領域を符号化する際に、エラー符号化領域からの参照ができないように、符号化単位領域間の関係を変更して参照マップを更新する。更新した参照マップに従って符号化を行うことにより、エラー伝播からの早期回復が可能になる。あるいは、更新した参照マップに従って符号化を行うことにより、冗長なイントラフレームを挿入しないように符号化することができるため、これにより送信データ量を削減することが可能になる。
【００８６】
[その他の実施形態]
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2013247651.tif 000003
【図２】
2013247651.tif 000004
【図３】
2013247651.tif 000005
【図４】
2013247651.tif 000006
【図５】
2013247651.tif 000007
【図６】
2013247651.tif 000008
【図７】
2013247651.tif 000009
【図８】
2013247651.tif 000010
【図９】
2013247651.tif 000011
【図１０】
2013247651.tif 000012