(57)【特許請求の範囲】
【請求項１】
圧縮符号化されている映像データをデコードすることによって、第１の画像フレームを生成する第１のデコーダと、
三次元画像生成処理の実行時に前記映像データをデコードすることによって、前記第１の画像フレームに対応する第２の画像フレームを生成する第２のデコーダと、
前記第２の画像フレームに含まれる複数の画素に対応する複数の奥行き値を推定することによって奥行きマップを生成する奥行きマップ生成手段と、
前記奥行きマップと、前記第１の画像フレームとに基づいて、左目用画像データと右目用画像データとを生成する三次元画像生成手段と、
前記三次元画像生成処理の非実行から実行に切り替えるための実行命令を発行する発行手段と、
前記発行手段が前記実行命令を発行した場合に、前記第２のデコーダに対して前記映像データの単独で画像フレームを生成できるピクチャからのデコードを命令する切替手段と
を具備し、
前記第２のデコーダと、前記奥行きマップ生成手段として使用される複数の演算プロセッサとがプロセッサに設けられている
再生装置。
【請求項２】
前記発行手段は、前記三次元画像生成処理の実行から非実行に切り替えるための非実行命令を発行し、
前記切替手段は、前記発行手段が前記非実行命令を発行した場合に、前記奥行きマップ生成手段に対して、前記奥行きマップ生成手段によって推定された奥行きマップの前記三次元画像生成手段への出力を命令する
請求項１に記載の再生装置。
【請求項３】
前記発行手段が前記実行命令を発行した場合に、前記映像データを構成するパケットに不連続情報および実行情報を記録し、前記発行手段が前記非実行命令を発行した場合に、前記映像データを構成するパケットに不連続情報および非実行情報を記録する記録手段を更に具備し、
前記切替手段は、
前記映像データを構成するパケットに前記不連続情報が記録されているかを判定し、
前記不連続情報が記録されていると判定した場合に、前記実行情報および前記非実行情報の何れが前記パケットに記録されているかを判定し、
前記実行情報が記録されていると判定した場合に、前記第２のデコーダに対して前記映像データの単独で画像フレームを生成できるピクチャからのデコードを命令し、
前記非実行情報が記録されていると判定した場合に、前記奥行きマップ生成手段に対して、前記奥行きマップ生成手段によって推定された奥行きマップの前記三次元画像生成手段への出力を命令する
請求項２に記載の再生装置。
【請求項４】
前記発行手段が前記実行命令または前記非実行命令を発行した場合に、前記映像データを構成するパケットに不連続情報を記録する不連続情報記録手段を更に具備し、
前記切替手段は、
前記パケットに記録されている不連続情報を検出した場合に、前記発行手段が前記実行命令および前記非実行命令の何れかを発行したかを判定し、
前記発行手段が前記実行命令を発行したと判定した場合、前記第２のデコーダに対して前記映像データの単独で画像フレームを生成できるピクチャからのデコードを命令し、
前記発行手段が前記非実行命令を発行したと判定した場合、前記パケットに記録されている不連続情報を検出した場合に、前記奥行きマップ生成手段に対して、前記奥行きマップ生成手段によって推定された奥行きマップの前記三次元画像生成手段への出力を命令する
請求項２に記載の再生装置。
【請求項５】
表示装置に表示される映像信号を生成するグラフィックプロセッシングユニットを更に具備し、
前記グラフィックプロセッシングユニットによって前記第１のデコーダが実現され、
前記グラフィックプロセッシングユニットによって前記三次元画像生成手段が実現される
請求項１に記載の再生装置。
【請求項６】
前記奥行きマップ生成手段は、奥行きを推定する複数の手法を用いて前記複数の奥行き値を推定する請求項１に記載の再生装置。
【請求項７】
第１のデコーダによって、圧縮符号化されている映像データをデコードすることによって、第１の画像フレームを生成し、
三次元画像生成処理の非実行から実行に切り替えるための実行命令を発行し、
前記実行命令が発行された場合に、第２のデコーダに対して前記映像データの単独で画像フレームを生成できるピクチャからのデコードを命令し、
前記第２のデコーダによって、前記映像データをデコードすることによって、前記第１の画像フレームに対応する第２の画像フレームを生成し、
奥行きマップ生成手段によって、前記第２の画像フレームに含まれる複数の画素に対応する複数の奥行き値を推定することによって奥行きマップを生成し、
三次元画像生成手段によって、前記奥行きマップと、前記第１の画像フレームとに基づいて、左目用画像データと右目用画像データとを生成する
再生方法であって、
前記第２のデコーダと、前記奥行きマップ生成手段として使用される複数の演算プロセッサとがプロセッサに設けられている
再生方法。
【請求項８】
前記三次元画像生成処理の実行から非実行に切り替えるための非実行命令を発行し、
前記非実行命令が発行された場合に、前記奥行きマップ生成手段に対して、前記奥行きマップ生成手段によって推定された奥行きマップの前記三次元画像生成手段への出力を命令する
請求項７に記載の再生方法。
【請求項９】
圧縮符号化されている映像データを再生する処理を実行するプログラムであって、
第１のデコーダに前記映像データをデコードさせることによって、第１の画像フレームを生成する手順と、
三次元画像生成処理の非実行から実行に切り替えるための実行命令を発行する手順と、
前記実行命令が発行された場合に、第２のデコーダに対して前記映像データの単独で画像フレームを生成できるピクチャからのデコードを命令する手順と、
前記第２のデコーダに前記映像データをデコードさせることによって、前記第１の画像フレームに対応する第２の画像フレームを生成する手順と、
奥行きマップ生成手段に前記第２の画像フレームに含まれる複数の画素に対応する複数の奥行き値を推定させることによって奥行きマップを生成する手順と、
三次元画像生成手段に、前記奥行きマップと、前記第１の画像フレームとに基づいて、左目用画像データと右目用画像データとを生成させる手順と、
をコンピュータに実行させるプログラムであって、
前記第２のデコーダと、前記奥行きマップ生成手段として使用される複数の演算プロセッサとがプロセッサに設けられている
プログラム。
【請求項１０】
前記三次元画像生成処理の実行から非実行に切り替えるための非実行命令を発行する手順と、
前記非実行命令が発行された場合に、前記奥行きマップ生成手段に対して、前記奥行きマップ生成手段によって推定された奥行きマップの前記三次元画像生成手段への出力を命令する手順と
をコンピュータに実行させる請求項９に記載のプログラム。
【請求項１１】
圧縮符号化されている映像データをデコードすることによって、第１の画像フレームを生成する第１のデコーダと、
三次元画像生成処理の実行時に前記映像データをデコードすることによって、前記第１の画像フレームに対応する第２の画像フレームを生成する第２のデコーダと、
前記第２の画像フレームに含まれる複数の画素に対応する複数の奥行き値を推定することによって奥行きマップを生成する奥行きマップ生成手段と、
前記奥行きマップと、前記第１の画像フレームとに基づいて、左目用画像データと右目用画像データとを生成する三次元画像生成手段と、
前記三次元画像生成処理の非実行から実行に切り替えるための実行命令を発行する発行手段と、
前記発行手段が前記実行命令を発行した場合に、前記映像データを構成するパケットに不連続情報および実行情報を記録する記録手段と、
前記パケットに前記不連続情報および前記実行情報が記録されている場合、前記第２のデコーダに対して前記映像データの単独で画像フレームを生成できるピクチャからのデコードを命令する切替手段と
を具備する再生装置。
【請求項１２】
圧縮符号化されている映像データをデコードすることによって、第１の画像フレームを生成する第１のデコーダと、
三次元画像生成処理の実行時に前記映像データをデコードすることによって、前記第１の画像フレームに対応する第２の画像フレームを生成する第２のデコーダと、
前記第２の画像フレームに含まれる複数の画素に対応する複数の奥行き値を推定することによって奥行きマップを生成する奥行きマップ生成手段と、
前記奥行きマップと、前記第１の画像フレームとに基づいて、左目用画像データと右目用画像データとを生成する三次元画像生成手段と、
前記三次元画像生成処理の実行から非実行に切り替えるための非実行命令を発行する発行手段と、
前記発行手段が前記非実行命令を発行した場合に、前記映像データを構成するパケットに不連続情報および非実行情報を記録する記録手段と、
前記パケットに前記不連続情報および前記非実行情報が記録されている場合に、前記奥行きマップ生成手段に対して、前記奥行きマップ生成手段によって推定された奥行きマップの前記三次元画像生成手段への出力を命令する切替手段と
を具備する再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、二次元映像から三次元映像を生成する再生装置、再生方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、三次元映像を観賞するための様々な映像表示装置が提供されている。このような映像表示装置では、例えば、両眼視差に基づく左眼用映像と右眼用映像とを用いて、ユーザに三次元映像（立体映像）を知覚させる。
【０００３】
一般に、放送やネットワークを介して受信される映像コンテンツのほとんどは、二次元映像を含む映像コンテンツデータである。そのような映像コンテンツデータを用いて三次元映像を観賞するために、二次元映像を三次元映像に変換する種々の２Ｄ−３Ｄ変換技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１７７７９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
二次元映像から三次元映像を生成するためには、二次元映像内の複数の画素に対して奥行き値を推定し、奥行きマップを生成する。この奥行き値を推定する処理の演算量が多いので、奥行き値を推定する処理は、ＣＰＵやＧＰＵとは異なるプロセッサで行わせることが望まれている。奥行き値を推定する処理を実行するために、奥行き値を推定するために映像データをデコードすることによって得られる画像フレームを必要とするが、メモリとプロセッサとの間のデータの転送量を抑制するために、圧縮符号化された映像データをメモリとプロセッサとの間と異なるバスでプロセッサと接続されたデコーダに転送し、デコーダによって映像データをデコードさせることが好ましい。
【０００６】
また、奥行き値を推定する処理の負荷が高いので、三次元映像を生成する処理は、マルチメディアプロセッサとは異なる、プロセッサに行わせることが望まれている。また、三次元映像を生成する処理にも映像データをデコードすることによって得られる画像フレームが必要となるが、データの転送量を抑制するために、奥行き値の推定に用いられる画像フレームを生成するデコーダとことなるデコーダによって映像データをデコードさせることが好ましい。
【０００７】
奥行き値を演算する処理に必要な画像フレームを生成するプロセッサと、三次元映像を生成する処理を実行するために必要な画像フレームを生成するプロセッサが異なると、二次元映像の表示から三次元映像の表示へ切り替えると、なめらかに切り替えられないことがある。そのため、二次元映像の表示から三次元映像の表示へなめらかに切り替えられるようにすることが望まれている。
【０００８】
本発明の目的は、二次元映像の表示から三次元映像の表示へなめらかに切り替えることが可能な再生装置、再生方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
実施形態によれば、再生装置は、第１のデコーダと、第２のデコーダと、奥行きマップ生成手段と、三次元画像生成手段と、発行手段と、切替手段とを具備する。第１のデコーダは、圧縮符号化されている映像データをデコードすることによって、第１の画像フレームを生成する。第２のデコーダは、三次元画像生成処理の実行時に前記映像データをデコードすることによって、前記第１の画像フレームに対応する第２の画像フレームを生成する。奥行きマップ生成手段は、前記第２の画像フレームに含まれる複数の画素に対応する複数の奥行き値を推定することによって奥行きマップを生成する。三次元画像生成手段は、前記奥行きマップと、前記第１の画像フレームとに基づいて、左目用画像データと右目用画像データとを生成する。発行手段は、前記三次元画像生成処理の非実行から実行に切り替えるための実行命令を発行する。切替手段は、前記発行手段が前記実行命令を発行した場合に、前記第２のデコーダに対して前記映像データの単独で画像フレームを生成できるピクチャからのデコードを命令する。前記第２のデコーダと、前記奥行きマップ生成手段として使用される複数の演算プロセッサとがプロセッサに設けられている。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態の再生装置の構成の一例を示す斜視図。
【図２】第１の実施形態の再生装置の構成の一例を示すブロック図。
【図３】図２に示すマルチメディアプロセッサの構成の一例を示すブロック図。
【図４】第１の実施形態の再生装置によって実行される映像コンテンツ再生プログラムの機能構成の例を示すブロック図。
【図５】図４に示すコントロールパネル表示部によって表示されるコントロールパネルの一例を示す図。
【図６】図４に示す切替命令発行部によって行われる処理の手順を示すフローチャートの一例を示す図。
【図７】第１の実施形態の再生装置によって実行される二次元映像の表示と三次元映像の表示とを切り替える手順を示すフローチャート。
【図８】第２の実施形態の再生装置によって実行される映像コンテンツ再生プログラムの機能構成の例を示すブロック図。
【図９】図８に示す切替命令発行部によって行われる処理の手順を示すフローチャートの一例を示す図。
【図１０】第２の実施形態の再生装置によって実行される二次元映像の表示と三次元映像の表示とを切り替える手順を示すフローチャート。
【発明を実施するための形態】
【００１１】
（第１の実施形態）
以下、実施の形態について図面を参照して説明する。  
図１は、一実施形態に係る再生装置の外観を示す斜視図である。この電子機器は、例えばノートブックタイプのパーソナルコンピュータ１として実現される。また、この再生装置は、テレビジョン受信機、映像データを保存するためのレコーダ（例えば、ハードディスクレコーダ、ＤＶＤレコーダ）、タブレットＰＣ、スレートＰＣ、ＰＤＡ、カーナビゲーション装置、スマートフォン等として実現され得る。
【００１２】
図１に示すように、本コンピュータ１は、コンピュータ本体２と、ディスプレイユニット３とから構成される。  
ディスプレイユニット３には、三次元ディスプレイ（３Ｄディスプレイ）１５が組み込まれている。ディスプレイユニット３は、コンピュータ本体２の上面が露出される開放位置とコンピュータ本体２の上面を覆う閉塞位置との間を回動自在にコンピュータ本体２に取り付けられている。また、３Ｄディスプレイ１５は、ＬＣＤ（liquid crystal display）パネル１５Ａとレンズユニット１５Ｂとを備える。レンズユニット１５Ｂは、ＬＣＤパネル１５Ａ上にはり合わせられている。レンズユニット１５Ｂは、ＬＣＤパネル１５Ａに表示される映像に含まれる複数の画素に対応する複数の光線をそれぞれ所定の方向に射出するための複数のレンズ機構を含む。レンズユニット１５Ｂは、例えば、三次元映像表示に必要な機能を電気的にスイッチングできる液晶ＧＲＩＮ（gradient index）レンズである。
【００１３】
３Ｄディスプレイ１５は、三次元映像を表示する場合、左眼用映像と右眼用画像とを表示する。そのためユーザは、三次元映像を知覚することができる。
【００１４】
コンピュータ本体２は、薄い箱形の筐体を有しており、その上面には、キーボード２６、本コンピュータ１を電源オン／電源オフするためのパワーボタン２８、入力操作パネル２９、ポインティングデバイス２７、スピーカ１８Ａ，１８Ｂなどが配置されている。入力操作パネル２９上には、各種操作ボタンが設けられている。これらボタン群には、ＴＶ機能（視聴、録画、録画された放送番組データ／ビデオデータの再生）を制御するための操作ボタン群も含まれている。
【００１５】
コンピュータ本体２の例えば右側面には、ＴＶ放送用のアンテナ端子３０Ａが設けられている。
【００１６】
図２は、本コンピュータ１のシステム構成を示す図である。  
本コンピュータ１は、図２に示すように、ＣＰＵ１１、ノースブリッジ１２、主メモリ１３、ＧＰＵ（Graphics Processing Unit）１４、ビデオメモリ（ＶＲＡＭ）１４Ａ、３Ｄディスプレイ１５、サウスブリッジ１６、サウンドコントローラ１７、スピーカ１８Ａ，１８Ｂ、ＢＩＯＳ−ＲＯＭ１９、ＬＡＮコントローラ２０、ハードディスクドライブ（ＨＤＤ）２１、光ディスクドライブ（ＯＤＤ）２２、無線ＬＡＮコントローラ２３、ＵＳＢコントローラ２４、エンベデッドコントローラ／キーボードコントローラ（ＥＣ／ＫＢＣ）２５、キーボード（ＫＢ）２６、ポインティングデバイス２７、ＴＶチューナ３０、マルチメディアプロセッサ３１、およびメモリ３１Ａ等を備えている。
【００１７】
ＣＰＵ１１は、本コンピュータ１の動作を制御するプロセッサである。ＣＰＵ１１は、ＨＤＤ２１から主メモリ１３にロードされる、オペレーティングシステム（ＯＳ）１３Ａ、及び映像コンテンツ再生プログラム１３Ｂ等のようなアプリケーションプログラムを実行する。映像コンテンツ再生プログラム１３Ｂは、映像コンテンツデータを視聴するための機能を有するソフトウェアである。この映像コンテンツ再生プログラム１３Ｂは、ＴＶチューナ３０によって受信された放送番組データを視聴するためのライブ再生処理、受信された放送番組データをＨＤＤ２１に記録する録画処理、ＨＤＤ２１に記録された放送番組データ／ビデオデータを再生する再生処理、ネットワークを介して受信された映像コンテンツデータを再生する再生処理等を実行する。また、映像コンテンツ再生プログラム１３Ｂは、ＤＶＤのような記憶メディアやハードディスクのような記憶装置に格納された映像コンテンツデータを再生することもできる。
【００１８】
さらに、映像コンテンツ再生プログラム１３Ｂは、三次元映像を視聴するための機能を有する。映像コンテンツ再生プログラム１３Ｂは、映像コンテンツデータに含まれる二次元映像を三次元映像にリアルタイムで変換して画面（３Ｄディスプレイの画面）１５上に表示する。映像コンテンツ再生プログラム１３Ｂは、様々な映像コンテンツデータ（たとえば、放送番組データ、記憶メディアや記憶装置に格納されたビデオデータ、インターネット上のサーバから受信したビデオデータ、等）を２Ｄ−３Ｄ変換することができる。
【００１９】
三次元映像の表示には、裸眼立体視方式（例えば、インテグラルイメージング方式、レンチキュラ方式、パララックスバリア方式等）による３Ｄディスプレイ１５が用いられる。ユーザは、裸眼立体視方式による３Ｄディスプレイ１５に表示された映像を見ることにより、三次元映像を裸眼で知覚することができる。なお、裸眼立体視方式以外のアクティブシャッター方式や偏光フィルム方式を用いて三次元映像を知覚させても良い。
【００２０】
また、ＣＰＵ１１は、ＢＩＯＳ−ＲＯＭ１９に格納されたＢＩＯＳ（Basic Input/Output System）も実行する。ＢＩＯＳは、ハードウェア制御のためのプログラムである。
【００２１】
ノースブリッジ１２は、ＣＰＵ１１のローカルバスとサウスブリッジ１６との間を接続するブリッジデバイスである。ノースブリッジ１２には、主メモリ１３をアクセス制御するメモリコントローラも内蔵されている。また、ノースブリッジ１２は、ＧＰＵ１４との通信を実行する機能も有している。
【００２２】
ＧＰＵ１４は、本コンピュータ１のディスプレイモニタとして使用されるＬＣＤパネル１５Ａを制御する表示コントローラである。このＧＰＵ１４によって生成される表示信号はＬＣＤパネル１５Ａに送られる。
【００２３】
ＧＰＵ１４は、複数の演算プロセッサを有し、表示信号を生成すると同時に、複数の演算プロセッサの少なくとも一部を用いてピクセルシェーダを実行することが可能である。また、ＧＰＵ１４は、プログラミングされたピクセルシェーダを実行することができる。例えば、ピクセルシェーダによってビデオデータのＭＰＥＧ-２によって圧縮符号化された映像データをデコードする処理が行われる。また例えば、ピクセルシェーダによってデコードされた映像データと後述する奥行きマップとに基づいて左目用画像データおよび右目用画像データを生成する処理を実行する。
【００２４】
サウスブリッジ１６は、ＰＣＩ（Peripheral Component Interconnect）  Ｅｘｐｒｅｓｓ（ＰＣＩｅ）バス上及びＬＰＣ（Low Pin Count）バス上の各デバイスを制御する。また、サウスブリッジ１６は、ＨＤＤ２１及びＯＤＤ２２を制御するためのＳｅｒｉａｌ  ＡＴＡ（Advanced Technology Attachment）コントローラ、及びＢＩＯＳ−ＲＯＭ１９をアクセス制御するメモリコントローラが内蔵されている。さらに、サウスブリッジ１６は、サウンドコントローラ１７及びＬＡＮコントローラ２０との通信を実行する機能も有している。
【００２５】
また、サウスブリッジ１６は、映像コンテンツ再生プログラム１３Ｂによる要求等に応じて、レンズユニット１５Ｂが三次元映像表示と二次元映像表示のいずれか一方に設定されるように制御するための制御信号を、レンズユニット１５Ｂに出力することができる。レンズユニット１５Ｂは、サウスブリッジ１６によって出力された制御信号に応じて、例えば、液晶層内の部分の屈折率を変更することにより、三次元映像表示と二次元映像表示のいずれか一方に設定する。
【００２６】
サウンドコントローラ１７は音源デバイスであり、再生対象のオーディオデータをスピーカ１８Ａ，１８Ｂに出力する。ＬＡＮコントローラ２０は、例えばＥｔｈｅｒｎｅｔ（登録商標）規格の有線通信を実行する有線通信デバイスであり、無線ＬＡＮコントローラ２３は、例えばＩＥＥＥ  ８０２．１１規格の無線通信を実行する無線通信デバイスである。また、ＵＳＢコントローラ２４は、例えばＵＳＢ２．０規格のケーブルを介して外部機器との通信を実行する。
【００２７】
またさらに、サウスブリッジ１６には、PCI EXPRESS（ＰＣＩｅ）規格のシリアルバスなどを介してマルチメディアプロセッサ３１が接続されている。メモリ３１Ａは、マルチメディアプロセッサ３１の作業メモリとして用いられる。
【００２８】
マルチメディアプロセッサ３１は、図３に示すように、圧縮符号化されているビデオデータをデコードするために設けられたＭＰＥＧ−２デコード回路１０１、および４個の演算コア１１１Ａ〜１１１Ｄ等が１チップに搭載されている。それぞれの演算コア１１１Ａ〜１１１Ｄは、メディア処理性能が高く、性能対消費電力が高い。映像コンテンツ再生プログラム１３Ｂがコンテンツを再生する際、ＭＰＥＧ−２デコード回路１０１は映像データのデコードを行う。また、４個の演算コア１１１Ａ〜１１１Ｄは、ＭＰＥＧ−２デコード回路１０１によってデコードされた映像データの内の各画像フレームの奥行きマップを生成する処理を行う。本実施形態においては、ＣＰＵ１１とは異なる専用のプロセッサであるマルチメディアプロセッサ３１の演算コア１１１Ａ〜１１１Ｄがバックエンドプロセッサとして使用され、このマルチメディアプロセッサ３１によって奥行きマップ生成処理が実行される。よって、ＣＰＵ１１の負荷の増加を招くことなく、奥行きマップを生成する処理を実行することが出来る。
【００２９】
ＥＣ／ＫＢＣ２５は、電力管理を行うためのエンベデッドコントローラと、キーボード（ＫＢ）２６、及びポインティングデバイス２７を制御するためのキーボードコントローラとが集積された１チップマイクロコンピュータである。このＥＣ／ＫＢＣ２５は、ユーザの操作に応じて本コンピュータ１をパワーオン／パワーオフする機能を有している。
【００３０】
ＴＶチューナ３０はテレビジョン（ＴＶ）放送信号によって放送される放送番組データを受信する受信装置であり、アンテナ端子３０Ａに接続されている。このＴＶチューナ３０は、例えば、地上波デジタルＴＶ放送のようなデジタル放送番組データを受信可能なデジタルＴＶチューナとして実現されている。また、ＴＶチューナ３０は、外部機器から入力されるビデオデータをキャプチャする機能も有している。
【００３１】
図４は、映像コンテンツ再生プログラム１３Ｂの機能構成を示す。映像コンテンツ再生プログラム１３Ｂは、二次元映像から三次元映像を生成する機能を有し、二次元映像の表示と三次元映像の表示とを切り替える機能を有する。図４に示す例では、映像コンテンツ再生プログラム１３Ｂとディスプレイドライバプログラム１３Ｃとによって、三次元映像が３Ｄディスプレイ１５に表示される。二次元映像の表示と三次元映像の表示との切替は、三次元画像生成処理の実行と非実行との切り替えと言い換えることもできる。
【００３２】
映像コンテンツ再生プログラム１３Ｂは、コントロールパネル表示部２０１、切替命令発行部２０２、切替情報記録部２０３、切替判断部２０４、デコーダ２０５、および視差画像生成部２０６を備えている。映像コンテンツ再生プログラム１３Ｂは、マルチメディアプロセッサ３１に、圧縮符号化されている映像データをデコードさせる機能と、奥行きマップを生成させる機能とを有する。マルチメディアプロセッサ３１は、ＭＰＥＧ−２デコード回路１０１によって圧縮符号化されている映像データする。マルチメディアプロセッサ３１は、演算コア１１１Ａ〜１１１Ｄによって実現される奥行きマップ生成部１２１によって奥行きマップを生成する。
【００３３】
コントロールパネル表示部２０１は、図５に示すコントロールパネル３００を３Ｄディスプレイ１５に表示する。コントロールパネル３００は、二元映像の表示と三次元映像の表示との間を切り替える切替ボタン３０１を有する。
【００３４】
切替命令発行部２０２は、３Ｄディスプレイ１５に表示されている切替ボタン３０１に対するユーザの操作に応じて、２Ｄ表示切替命令（非実行命令）または３Ｄ表示切替命令（実行命令）を発行する。２Ｄ表示切替命令は三次元映像の表示から二次元映像の表示に切り替えるための命令であり、３Ｄ表示切替命令は三次元映像の表示から二次元映像の表示に切り替えるための命令である。
【００３５】
切替情報記録部２０３は、２Ｄ表示切替命令または３Ｄ表示切替命令に応じて、映像データのストリームを構成するパケット内の不連続フラグをイネーブル（不連続情報）にすると共に、当該パケットに３Ｄ表示切替情報または２Ｄ表示切替情報とを記録する。
【００３６】
切替判断部２０４には、映像データのストリームを構成するパケットが順次入力される。判定処理を行った後に、切替判断部２０４は、各パケットをデコーダ２０５およびマルチメディアプロセッサ３１の少なくともデコーダ２０５に出力する。
【００３７】
判定処理では、映像データのストリームを構成するパケットの不連続フラグがイネーブルであるかを判定する。不連続フラグがイネーブルであると判定した場合、切替判断部２０４は、３Ｄ表示切替情報および２Ｄ表示切替情報の何れが記録されているかを判定する。
【００３８】
３Ｄ表示切替情報が記録されていると判定した場合、切替判断部２０４は、映像データのストリームを構成するパケットをマルチメディアプロセッサ３１およびデコーダに出力すると共に、ＭＰＥＧ−２デコード回路１０１に、他の画像フレームと依存関係が無く単独で画像フレームを生成できるＩピクチャからデコードを開始するように命令する。
【００３９】
発明者の鋭意研究により、二次元映像の表示から三次元映像の表示になめらかに切り替わらないのは、ＭＰＥＧ−２デコード回路１０１が他のフレームに依存し、単独でデコードすることができないＢピクチャからデコードを開始した場合に起こることが判明した。切替判断部２０４は、二次元映像の表示から三次元映像の表示になめらかに切り替るために、Ｉピクチャからデコードを開始するようにＭＰＥＧ−２デコード回路１０１に命令する。
【００４０】
２Ｄ表示切替情報が記録されていると判定した場合、切替判断部２０４は、映像データのストリームを構成するパケットをデコーダのみに出力する。そして、切替判断部２０４は、マルチメディアプロセッサ３１に、メモリ３１Ａ内にバッファリングされている全ての奥行きマップの視差画像生成部への出力を命令する。
【００４１】
切替判断部２０４が行う処理の手順を図６のフローチャートを参照して説明する。  
切替判断部２０４に映像データのストリームを構成するパケットが入力されると（ステップ４０１）、切替判断部２０４は、パケット内の不連続フラグがイネーブルであるかを判定する（ステップ４０２）。不連続フラグがイネーブルではないと判定した場合（ステップ４０２のＮｏ）、前のパケットの出力先に入力されたパケットを出力する（ステップ４０８）。不連続フラグがイネーブルであると判定した場合（ステップ４０２のＹｅｓ）、切替判断部２０４は、パケット内に３Ｄ表示切替情報が記録されているかを判定する（ステップ４０３）。３Ｄ表示切替情報が記録されていると判定した場合（ステップ４０３のＹｅｓ）。切替判断部２０４は、映像データのストリームをデコーダ２０５およびマルチメディアプロセッサ３１の両方に出力する（ステップ４０４）。そして、切替判断部２０４は、マルチメディアプロセッサ３１に対してＩピクチャからデコードを始めるように命令する（ステップ４０５）。ステップ４０３において、３Ｄ表示切替情報が記録されていないと判定した場合（ステップ４０３のＮｏ）、切替判断部２０４は、映像データのストリームをデコーダ２０５のみに出力する（ステップ４０６）。そして、切替判断部２０４は、マルチメディアプロセッサ３１に対してメモリ３１Ａ内の全ての奥行きマップを視差画像生成部２０６に出力するように命令する（ステップ４０７）。
【００４２】
デコーダ２０５は、ＧＰＵ１４のデコード支援機能を用いて映像データをデコードすることによって、複数の画像フレームデータを生成する。
【００４３】
三次元映像を表示する場合、マルチメディアプロセッサ３１は、デコード回路１０１を用いて映像データをＩピクチャからデコードして、複数の画像フレームを生成する。マルチメディアプロセッサ内の奥行きマップ生成部１２１は、後述する奥行きマップを生成する。
【００４４】
奥行きマップ生成部１２１は、複数の画像フレームの内の処理対象の画像フレーム（二次元画像）を用いて、当該画像フレームに含まれる複数の画素の奥行き値（奥行き位置）を推定することによって、奥行きマップ（depth map）を生成する。奥行きマップは、処理対象の画像フレームに含まれる複数の画素に対応する複数の奥行き値を含む。奥行き値は、例えば、−１２７から１２８までの整数値である。奥行きマップ生成部１２１は、生成した奥行きマップはメモリ３１Ａのバッファ領域に格納する。通常、参照画像フレームになっている画像フレームや奥行き推定のために遅延している画像フレームの奥行きマップは、次の画像フレームが入力されるまで、出力されることは無い。
【００４５】
奥行きマップ生成部１２１は、奥行き値を推定する複数の手法を用いて画像フレームに含まれる複数の画素の奥行き値を推定する。奥行きマップ生成部１２１は、例えば、画像フレームを複数の領域に分割し、分割された領域間の前後関係（背景の領域であるか、他の領域よりも前に存在するか等）を判定することによって、画素の奥行き値を決定する。また、奥行きマップ生成部１２１は、手前の物体ほど動きが速いという基本原理から画素の奥行き値を推定する。また、奥行きマップ生成部１２１は、画像フレームから人物の顔位置を検出し、検出された顔位置を基準に人型の奥行き値を割り当てることによって、画素の奥行き値を推定する。
【００４６】
奥行きマップ生成部１２１は、生成された奥行きマップを視差画像生成部２０６に出力する。視差画像生成部２０６は、視差を算出することによって、視差マップを生成する。視差マップは、奥行きマップに含まれる複数の奥行き値に対応する複数の視差を含む。
【００４７】
三次元映像を表示する場合、視差画像生成部２０６は、出力された視差マップと、視差マップを生成した画像フレームデータに対応するデコーダ２０５によって生成された画像フレームとを用いて、左眼用映像データと右眼用映像データとを含む三次元映像データを生成する。生成された三次元画像データは、３Ｄディスプレイ１５に表示される。なお、視差画像生成部２０６は、ＧＰＵ１４に設けられた複数の演算プロセッサの一部を用いて三次元映像データを生成する処理を行う。
【００４８】
次に、図７のフローチャートを参照して、二次元映像の表示と三次元映像の表示とを切り替える手順を説明する。  
３Ｄディスプレイ１５に二次元映像が表示されている。ユーザが切替ボタン３０１を操作すると、切替命令発行部２０２が３Ｄ表示切替命令を発行する（ステップ５０１）。切替情報記録部２０３は、３Ｄ表示切替命令に応じて、映像データのストリームを構成するパケットのヘッダ内の不連続フラグをイネーブルに書き替えると共に、ヘッダ内に３Ｄ表示切替情報を記録する（ステップ５０２）。切替判断部２０４は、不連続フラグがイネーブルであるパケットを検出すると、当該パケット内に３Ｄ表示切替情報が記録されているかを判定する。切替判断部２０４は、３Ｄ表示切替情報が記録されていると判定する（ステップ５０３）。切替判断部２０４は、映像データのストリームをデコーダ２０５およびマルチメディアプロセッサ３１の両方に出力する（ステップ５０４）。そして、切替判断部２０４は、マルチメディアプロセッサ３１に対してＩピクチャからデコードを始めるように命令する（ステップ５０５）。ＭＰＥＧ−２デコード回路１０１は、入力された映像データのストリームに対しＩピクチャからデコードを開始する。デコードによって、複数の画像フレームが生成される。奥行きマップ生成部１２１が画像フレームに対して奥行きマップを生成する。視差画像生成部２０６が、奥行きマップとデコーダ２０５によって生成された画像フレームとに基づいて三次元画像データを生成し、３Ｄディスプレイ１５に三次元映像が表示される（ステップ５０６）。
【００４９】
三次元映像の表示時に、ユーザが切替ボタン３０１を操作すると、切替命令発行部２０２が２Ｄ表示切替命令を発行する（ステップ５０７）。切替情報記録部２０３は、２Ｄ表示切替命令に応じて、映像データのストリームを構成するパケットのヘッダ内の不連続フラグをイネーブルに書き替えると共に、ヘッダ内に２Ｄ表示切替情報を記録する（ステップ５０８）。切替判断部２０４は、不連続フラグがイネーブルであるパケットを検出すると、当該パケット内に３Ｄ表示切替情報が記録されているかを判定する。切替判断部２０４は、３Ｄ表示切替情報が記録されていない、２Ｄ表示切替情報が記録されていると判定する（ステップ５０９）。切替判断部２０４は、映像データのストリームをデコーダ２０５のみに出力する（ステップ５１０）。そして、切替判断部２０４は、マルチメディアプロセッサ３１に対してメモリ３１Ａ内の全ての奥行きマップを視差画像生成部２０６に出力するように命令する（ステップ５１１）。視差画像生成部２０６が、全ての奥行きマップを使用して三次元画像データを生成した後、デコーダ２０５によって生成された画像フレームをそのまま出力することで、二次元映像が表示される（ステップ５１２）。
【００５０】
以上説明したように、切替判断部２０４がＭＰＥＧ−２デコード回路１０１にＩピクチャからのデコードを命令することで、二次元映像の表示から三次元映像の表示になめらかに切り替えることができる。
【００５１】
（第２の実施形態）
図８は、映像コンテンツ再生プログラム１３Ｂの第１の実施形態とは異なる機能構成を示す。
【００５２】
映像コンテンツ再生プログラム１３Ｂは、コントロールパネル表示部２０１、切替命令発行部６０２、不連続情報記録部６０３、切替判断部６０４、デコーダ２０５、および視差画像生成部２０６を備えている。
【００５３】
切替命令発行部６０２は、３Ｄディスプレイ１５に表示されている切替ボタン３０１に対するユーザの操作に応じて、２Ｄ表示切替命令または３Ｄ表示切替命令を不連続情報記録部６０３および切替判断部６０４に発行する。
【００５４】
不連続情報記録部６０３は、２Ｄ表示切替命令または３Ｄ表示切替命令に応じて、映像データのストリームを構成するパケット内の不連続フラグをイネーブルにする。
【００５５】
切替判断部６０４には、映像データのストリームを構成するパケットが順次入力される。判定処理を行った後に、切替判断部６０４は、各パケットをデコーダ２０５およびマルチメディアプロセッサ３１の少なくともデコーダ２０５に出力する。
【００５６】
判定処理では、映像データのストリームを構成するパケットの不連続フラグがイネーブルであるかを判定する。不連続フラグがイネーブルであると判定した場合、切替判断部６０４は、切替命令発行部６０２が２Ｄ表示切替命令または３Ｄ表示切替命令の何れの命令を発行したかを判定する。
【００５７】
３Ｄ表示切替命令が発行されたと判定した場合、切替判断部６０４は、映像データのストリームを構成するパケットをマルチメディアプロセッサ３１およびデコーダに出力すると共に、マルチメディアプロセッサ３１にＩピクチャからデコードを開始するように命令する。
【００５８】
２Ｄ表示切替命令が発行されたと判定した場合、切替判断部６０４は、映像データのストリームを構成するパケットをデコーダのみに出力する。そして、切替判断部６０４は、マルチメディアプロセッサ３１に、メモリ３１Ａ内にバッファリングされている全ての奥行きマップの視差画像生成部への出力を命令する。
【００５９】
切替判断部６０４が行う処理の手順を図９のフローチャートを参照して説明する。  
切替判断部６０４に映像データのストリームを構成するパケットが入力されると（ステップ７０１）、切替判断部６０４は、パケット内の不連続フラグがイネーブルであるかを判定する（ステップ７０２）。不連続フラグがイネーブルではないと判定した場合（ステップ７０２のＮｏ）、前のパケットの出力先に入力されたパケットを出力する。不連続フラグがイネーブルであると判定した場合（ステップ７０２のＹｅｓ）、切替判断部６０４は、切替命令発行部６０２が３Ｄ表示切替命令を発行したかを判定する（ステップ７０３）。３Ｄ表示切替命令を発行したと判定した場合（ステップ７０３のＹｅｓ）。切替判断部６０４は、映像データのストリームをデコーダ２０５およびマルチメディアプロセッサ３１の両方に出力する（ステップ７０４）。そして、切替判断部６０４は、マルチメディアプロセッサ３１に対してＩピクチャからデコードを始めるように命令する（ステップ７０５）。ステップ７０３において、３Ｄ表示切替情報を発行していないと判定した場合（ステップ７０３のＮｏ）、切替判断部６０４は、映像データのストリームをデコーダ２０５のみに出力する（ステップ７０６）。そして、切替判断部６０４は、マルチメディアプロセッサ３１に対してメモリ３１Ａ内の全ての奥行きマップを視差画像生成部２０６に出力するように命令する（ステップ７０７）。
【００６０】
デコーダ２０５、奥行きマップ生成部１２１、および視差画像生成部２０６の機能は第１の実施形態と同様なので説明を省略する。
【００６１】
次に、図１０のフローチャートを参照して、二次元映像の表示と三次元映像の表示とを切り替える手順を説明する。  
３Ｄディスプレイ１５に二次元映像が表示されている。ユーザが切替ボタン３０１を操作すると、切替命令発行部６０２が３Ｄ表示切替命令を発行する（ステップ８０１）。不連続情報記録部６０３は、３Ｄ表示切替命令に応じて、映像データのストリームを構成するパケットのヘッダ内の不連続フラグをイネーブルに書き替える（ステップ８０２）。切替判断部６０４は、不連続フラグがイネーブルであるパケットを検出すると、切替命令発行部６０２から出力された命令が３Ｄ表示切替命令であるかを判定する。切替判断部６０４は、３Ｄ表示切替命令が発行されたと判定する（ステップ８０３）。切替判断部６０４は、映像データのストリームをデコーダ２０５およびマルチメディアプロセッサ３１の両方に出力する（ステップ８０４）。そして、切替判断部６０４は、マルチメディアプロセッサ３１に対してＩピクチャからデコードを始めるように命令する（ステップ８０５）。ＭＰＥＧ−２デコード回路１０１は、入力された映像データのストリームに対しＩピクチャからデコードを開始する。デコードによって、複数の画像フレームが生成される。奥行きマップ生成部１２１が画像フレームに対して奥行きマップを生成する。視差画像生成部２０６が、奥行きマップとデコーダ２０５によって生成された画像フレームとに基づいて三次元画像データを生成し、３Ｄディスプレイ１５に三次元映像が表示される（ステップ８０６）。
【００６２】
三次元映像の表示時に、ユーザが切替ボタン３０１を操作すると、切替命令発行部２０２が２Ｄ表示切替命令を発行する（ステップ８０７）。不連続情報記録部６０３は、２Ｄ表示切替命令に応じて、映像データのストリームを構成するパケットのヘッダ内の不連続フラグをイネーブルにする（ステップ８０８）。切替判断部６０４は、不連続フラグがイネーブルであるパケットを検出すると、切替命令発行部６０２から出力された命令が３Ｄ表示切替命令であるかを判定する。切替判断部６０４は、３Ｄ表示切替命令が発行されていない、則ち２Ｄ表示切替命令が発行されたと判定する（ステップ８０９）。切替判断部６０４は、映像データのストリームをデコーダ２０５のみに出力する（ステップ８１０）。そして、切替判断部６０４は、マルチメディアプロセッサ３１に対してメモリ３１Ａ内の全ての奥行きマップを視差画像生成部２０６に出力するように命令する（ステップ８１１）。視差画像生成部２０６が、全ての奥行きマップを使用して三次元画像データを生成した後、デコーダ２０５によって生成された画像フレームをそのまま出力することで、二次元映像が表示される（ステップ８１２）。
【００６３】
以上説明したように、切替命令発行部６０２が切替命令を切替判断部６０４に発行し、切替判断部６０４がＭＰＥＧ−２デコード回路１０１にＩピクチャからのデコードを命令することで、二次元映像の表示から三次元映像の表示になめらかに切り替えることができる。
【００６４】
なお、本実施形態の映像再生処理の手順は全てソフトウェアによって実行することができる。このため、映像再生処理の手順を実行するプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じてこのプログラムを通常のコンピュータにインストールして実行するだけで、本実施形態と同様の効果を容易に実現することができる。
【００６５】
上記実施形態では、ＭＰＥＧ−２方式で圧縮符号化された映像データを例に説明したが、ＭＰＥＧ−１，ＭＰＥＧ−４，Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ，ＶＣ−１，ＤｉｖＸ等の方式で圧縮符号化された映像データに対しても上述した処理を実施することが可能である。
【００６６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００６７】
１３Ｂ…映像コンテンツ再生プログラム，３１…マルチメディアプロセッサ，１０１…ＭＰＥＧ−２デコード回路，１１１Ａ〜１１１Ｄ…演算コア，１２１…奥行きマップ生成部，２０１…コントロールパネル表示部，２０２…切替命令発行部，２０３…切替情報記録部，２０４…切替判断部，２０５…デコーダ，２０６…視差画像生成部，３００…コントロールパネル，３０１…切替ボタン。
【図１】
0005159911.tif 000002
【図２】
0005159911.tif 000003
【図３】
0005159911.tif 000004
【図４】
0005159911.tif 000005
【図５】
0005159911.tif 000006
【図６】
0005159911.tif 000007
【図７】
0005159911.tif 000008
【図８】
0005159911.tif 000009
【図９】
0005159911.tif 000010
【図１０】
0005159911.tif 000011