(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-01
(45)【発行日】2024-11-12
(54)【発明の名称】画像処理装置、画像処理方法、およびプログラム
(51)【国際特許分類】
G06T 19/00 20110101AFI20241105BHJP
H04N 7/18 20060101ALI20241105BHJP
H04N 21/234 20110101ALI20241105BHJP
H04N 21/258 20110101ALI20241105BHJP
【FI】
G06T19/00 A
H04N7/18 U
H04N21/234
H04N21/258
(21)【出願番号】P 2020188220
(22)【出願日】2020-11-11
【審査請求日】2023-11-07
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100090273
【氏名又は名称】國分 孝悦
(72)【発明者】
【氏名】矢埜 智裕
【審査官】鈴木 明
(56)【参考文献】
【文献】国際公開第2019/012817(WO,A1)
【文献】特開平05-053043(JP,A)
【文献】特開2017-216667(JP,A)
【文献】特開2009-212803(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
H04N 7/18
H04N 21/234
H04N 21/258
(57)【特許請求の範囲】
【請求項1】
複数の撮影装置により撮影される被写体の視線の移動範囲に関する視線情報を取得する取得手段と、
前記複数の撮影装置が行う撮影により取得される複数の撮影画像に基づく仮想視点画像であって、前記取得手段により取得される視線情報に基づいて特定される前記被写体の視線の移動範囲を含む仮想視点画像に係る仮想視点を表す仮想視点情報を決定する決定手段と、
前記決定手段により決定された仮想視点情報を出力する出力手段と
を有することを特徴とする画像処理装置。
【請求項2】
前記取得手段は、所定の時間範囲における前記被写体の視線の移動の軌跡に基づいて、前記視線の移動範囲に関する前記視線情報を取得することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記取得手段は、所定の時間範囲ごとに得られる複数の前記視線の移動の軌跡に基づいて、前記視線の移動範囲に関する前記視線情報を取得し、
前記決定手段は、前記複数の視線の移動の軌跡に基づいて取得された前記視線情報に基づいて、前記仮想視点情報を決定することを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記取得手段は、前記所定の時間範囲の指示を取得し、前記指示に応じて前記所定の時間範囲を更新することを特徴とする請求項2または請求項3に記載の画像処理装置。
【請求項5】
前記決定手段は、第1の所定の時間範囲に対応して決定した第1の仮想視点情報と、前記第1の所定の時間範囲から前記所定の時間範囲の分だけ異なった第2の所定の時間範囲に対応して決定した第2の仮想視点情報との間で、仮想視点情報を徐々に変更することを特徴とする請求項2から請求項4のいずれか1項に記載の画像処理装置。
【請求項6】
前記決定手段は、前記第1の仮想視点情報と前記第2の仮想視点情報とをキーフレームの仮想視点情報とし、前記所定の時間範囲を、前記仮想視点画像を表示する際のフレーム数で分割した時間ごとに補完した仮想視点情報を、前記徐々に変更する仮想視点情報として決定することを特徴とする請求項5に記載の画像処理装置。
【請求項7】
前記決定手段は、前記仮想視点情報が、仮想視点の視野の広さを狭角に変化させる情報を含む場合、前記視野の広さを徐々に変化させることを特徴とする請求項5または請求項6に記載の画像処理装置。
【請求項8】
前記被写体の視線に関連する画像と、前記決定手段により決定される仮想視点情報に対応する仮想視点画像とが重畳されるように制御する制御手段を有することを特徴とする請求項1から請求項7のいずれか1項に記載の画像処理装置。
【請求項9】
前記制御手段は、前記被写体の視線に関連する画像として、前記被写体の視線の中心を表す画像が重畳されるように制御することを特徴とする請求項8に記載の画像処理装置。
【請求項10】
前記制御手段は、前記仮想視点画像に重畳された前記被写体の視線に関連する画像が、時間の経過に応じて徐々に消えるように制御することを特徴とする請求項8または請求項9に記載の画像処理装置。
【請求項11】
前記仮想視点情報は、前記仮想視点の位置を表す情報、仮想視点からの視線方向を表す情報、及び、仮想視点の視野の広さを表す情報のうち少なくともいずれかを含むことを特徴とする請求項1から請求項10のいずれか1項に記載の画像処理装置。
【請求項12】
前記視線の移動範囲は、前記被写体の視線における周辺視野の範囲を除いた有効視野の範囲に含まれることを特徴とする請求項1から請求項11のいずれか1項に記載の画像処理装置。
【請求項13】
前記被写体は、前記複数の撮影装置により撮影される選手または審判であることを特徴とする請求項1から請求項12のいずれか1項に記載の画像処理装置。
【請求項14】
前記出力手段により出力される仮想視点情報に基づいて、仮想視点画像を生成する生成手段を有することを特徴とする請求項1から請求項13のいずれか1項に記載の画像処理装置。
【請求項15】
画像処理装置が実行する画像処理方法であって、
複数の撮影装置により撮影される被写体の視線の移動範囲に関する視線情報を取得する取得工程と、
前記複数の撮影装置が行う撮影により取得される複数の撮影画像に基づく仮想視点画像であって、前記取得工程により取得される視線情報に基づいて特定される前記被写体の視線の移動範囲を含む仮想視点画像に係る仮想視点を表す仮想視点情報を決定する決定工程と、
前記決定工程により決定された仮想視点情報を出力する出力工程と、
を有することを特徴とする画像処理方法。
【請求項16】
コンピュータを、請求項1から請求項14のいずれか1項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想視点画像を生成する画像処理技術に関する。
【背景技術】
【0002】
近年、複数のカメラを異なる位置に設置して同期撮影を行い、それら異なる位置の複数のカメラから得られた複数視点画像を基に、任意の視点から観た画像、つまり仮想カメラの撮影画像に相当する仮想視点画像を生成する技術が注目されている。仮想視点画像は、複数のカメラにて撮影された複数視点画像をサーバなどの画像処理装置に集約し、当該画像処理装置において、前景背景分離、3次元形状の推定、3次元モデル生成、レンダリングなどの処理を行うことで生成される。
【0003】
そして、その仮想視点画像がユーザ端末に転送されて表示されることにより、ユーザ(視聴者)は、仮想視点画像(仮想視点映像)を観ることができる。この技術によれば、ユーザは、サッカーやバスケットボール等の試合のハイライトシーンを、例えば試合中のフィールド上など、従来では実現不可能な様々な位置や角度から観ることができ、従来の映像と比べて高い臨場感を得ることができる。さらに例えば、選手や審判の視線の情報を取得し、その視線情報をも用いて仮想視点画像を生成して表示すれば、選手や審判のスキルアップのための視線分析などが可能になる。また選手や審判の視線情報に基づく仮想視点画像によれば、ユーザ(視聴者)は、試合中に選手や審判がどのあたりをどのように見ていたかを仮想的に体験でき、その臨場感のある体験を通して、試合をより楽しめるようになる。特許文献1には、視線による操作入力を受け付け可能な機器操作装置において、手入力による注視位置の修正指示を行うことで、修正指示の各々の注視位置の誤差の平均値を視線検出に反映する技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、選手や審判の視線は、試合の状況などによって、上下や左右に、速く大きく動いていることがある。上下左右に激しく動く視線の情報を基に生成される仮想視点画像は、通常のカメラワークでは考えられないような激しい動きやブレのある画像になるため、ユーザ等が観る映像は非常に観辛いものになる。このような仮想視点画像は、映像酔いしやすくなる等、視聴用途として適さない場合があった。なお、特許文献1に開示された技術を用いたとしても、上下左右に激しく動く視線による画像の動きやブレを抑制することは困難である。
【0006】
そこで、本発明は、視聴用途としてより適した仮想視点画像を生成可能にすることを目的とする。
【課題を解決するための手段】
【0007】
本発明の画像処理装置は、複数の撮影装置により撮影される被写体の視線の移動範囲に関する視線情報を取得する取得手段と、前記複数の撮影装置が行う撮影により取得される複数の撮影画像に基づく仮想視点画像であって、前記取得手段により取得される視線情報に基づいて特定される前記被写体の視線の移動範囲を含む仮想視点画像に係る仮想視点を表す仮想視点情報を決定する決定手段と、前記決定手段により決定された仮想視点情報を出力する出力手段と、を有することを特徴とする。
【発明の効果】
【0008】
本発明によれば、視聴用途としてより適した仮想視点画像を生成可能となる。
【図面の簡単な説明】
【0009】
【
図1】画像処理装置のハードウェア構成を示す図である。
【
図2】第1実施形態に係る画像処理装置の機能ブロック図である。
【
図3】第1実施形態における仮想視点画像生成処理のフローチャートである。
【
図4】サッカーの試合の1場面を模式的に示す図である。
【
図6】仮想視点画像生成の際の仮想カメラパラメータ補完の説明図である。
【
図7】第2実施形態に係る画像処理装置の機能ブロック図である。
【
図8】第2実施形態における仮想視点画像生成処理のフローチャートである。
【
図9】視線に関するオブジェクトの表示例を示す図である。
【
図10】視線範囲のグラフィックス表示例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施形態を、添付の図面に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例にすぎず、本発明は図示された構成に限定されるものではない。また実施形態において同一の構成または処理については、同じ参照符号を付して説明する。
【0011】
<第1実施形態>
図1は本実施形態の画像処理装置100のハードウェア構成を模式的に表した図である。
画像処理装置100は、CPU101、主記憶装置102、補助記憶装置103、外部I/F104、GPU105、およびバス106を含む。これらハードウェア構成の各部は、バス106によってそれぞれ相互に通信可能に接続されている。バス106は、PCIExpress(登録商標)などの汎用的なバスによって構成されている。
【0012】
CPU101は、中央処理ユニット(Central Processing Unit)であり、各種演算や判断、画像処理の制御、データの入出力制御など、画像処理装置100における全体的な制御を行う。
主記憶装置102は、CPU101のワークエリアやデータの一時的な記憶領域として機能する記憶装置である。主記憶装置102は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などの記憶媒体を用いて実装される。
【0013】
補助記憶装置103は、各種プログラム、各種設定情報、各種画像データ、カメラパラメータ、3次元形状データ、2次元マップ等の情報を記憶する記憶装置であり、各種の記憶媒体を用いて実装される。記憶媒体は、ROM(Read Only Memory)やフラッシュメモリ等の不揮発性メモリ、HDD(Hard Disk Drive)、SSD(Solid State Drive)、テープメディア等が挙げられる。なお、これら記憶媒体は、大容量化や高速化のために複数が組み合わされてもよく、RAID(Redundant Arrays Inexpensive Disks)等、論理的に一つにまとめられていてもよい。
【0014】
外部I/F(Interface)104は、通信インターフェースと入出力インターフェースを含む。通信インターフェースは、カメラやPC(personal computer)、サーバなど外部の機器との通信に利用される。入出力インターフェースは、ジョイスティックやキーボード、マウス、タッチパネルなどのユーザによる各種操作を受け付ける外部機器との接続、外部ストレージに接続されてファイル入出力を行うために利用される。外部I/F104は、物理的なケーブルの接続端子を持つインターフェース、または無線を用いたインターフェースなどで実装される。物理的なケーブルの接続端子を持つインターフェースには、InfiniBandやEthernet、USB(Universal Serial Bus)などが挙げられる。無線を用いたインターフェースには、無線LANやBluetooth(登録商標)などが挙げられる。
【0015】
GPU105は、画像処理演算を高速に実行するためのグラフィックス処理ユニット(Graphics Processing Unit)であり、テレビなどの外部映像表示装置に対して映像信号を出力する機能を有する。また本実施形態において、GPU105が実行可能な画像処理には、仮想視点画像を生成する処理が含まれる。仮想視点画像は、異なる位置に設置された複数の撮影装置(
図1では不図示のカメラ)が同期撮影して得た複数視点画像を用い、前景背景分離、3次元形状の推定、3次元モデル生成、レンダリングなどの処理を行うことで生成される。仮想視点画像は、指定される任意の視点である仮想視点の位置及び仮想視点から視線方向に基づいて生成される画像である。また、以下では、説明の便宜のため、仮想視点に対応する仮想的なカメラ(仮想カメラ)を使用して説明を行う。すなわち、仮想カメラの位置及び仮想カメラの姿勢(撮像方向)は、それぞれ仮想視点の位置及び仮想視点からの視線方向に対応する。また、仮想カメラの位置及び姿勢を示す情報を、仮想カメラ情報と表現する。仮想カメラ情報は、仮想カメラの位置を表す情報、及び仮想カメラの姿勢を表す情報を含む。また、仮想カメラ情報は、仮想視点の視野の広さ(画角)に対応する情報を更に含んでいてもよい。すなわち、仮想視点画像は、仮想カメラ情報に基づいて生成される画像であるといえる。なお、仮想カメラ情報は、位置、姿勢及び画角の情報の少なくともいずれかを含む構成であってもよい。
なお、GPU105が実行する画像処理には、仮想視点から観た画像をレンダリングする処理の他、仮想視点画像生成に必要な形状データや色情報を生成する処理も含まれる。また、異なる位置に設置された複数のカメラによる複数視点画像のデータは、例えば外部I/F104を介して取得され、例えば補助記憶装置103に記憶されるとする。
本実施形態において、仮想カメラとは、仮想空間内の任意の視点に対応して仮想的に配置される仮想的なカメラであり、実空間内の異なる位置に配置されて複数視点画像を撮影する実カメラと区別している。仮想カメラ情報は、本実施形態のCPU101によって生成される情報であり、その詳細については後述する。
【0016】
GPU105の映像信号出力は、DVI(Digital Visual Interface)やHDMI(登録商標)、Display Port、SDI(Serial Digital Interface)等の映像端子で実装される。また、GPU105は、映像信号の出力機能を有さず、画像処理や仮想視点画像に必要な形状データや色情報などの演算のみを行う構成であってもよい。この場合、例えば外部I/F104が、映像出力機能または映像出力に必要なデータ出力機能を担当してもよい。また、GPU105は、前述した以外の例えばCPU101で行われる各種演算の一部または全部の処理を実行する機能を有していてもよい。さらにGPU105は、主記憶装置102とは異なる記憶装置を別途含んでいてもよい。
【0017】
本実施形態の画像処理装置100は、前述の
図1に示した構成に限定されず、本発明の趣旨を逸脱しない範囲であれば別のハードウェア構成により実現されてもよい。例えば補助記憶装置103は画像処理装置100の外部構成となされていてもよく、その場合の補助記憶装置は外部I/F104によって接続されていてもよい。また、主記憶装置102と補助記憶装置103は一つのハードウェアとして実現されていてもよい。またGPU105の代わりに、FPGA(Field Programmable Gate Array)やDSP(Digital Signal Processor)、画像処理LIS(大規模集積回路)等が用いられてもよい。また、画像処理装置100は1台の装置に限らず、例えば同様の構成を持つ複数の装置から構成されていてもよく、本発明の趣旨を逸脱しない範囲であれば個々の構成が異なっていてもよい。
【0018】
以下、本実施形態に係る画像処理装置100により行われる仮想視点画像の生成処理について説明する。本実施形態の画像処理装置100は、視線情報を取得する取得処理と、仮想視点情報を決定する決定処理と、仮想視点画像を生成する生成処理とを行う機能を有する。取得処理では、複数の撮影装置により撮影される被写体の視線を特定するための情報である視線情報を取得する。視線情報は、例えば、選手や審判などの被写体の視線を表す情報を含む。画像処理装置100は、視線情報に基づき、被写体の視線の移動範囲を特定することが可能である。決定処理では、複数の撮影装置が行う撮影により取得される複数の撮影画像に基づく仮想視点画像であって、取得処理で取得される視線情報に基づいて特定される被写体の視線の移動範囲を含む仮想視点画像に係る、仮想視点を表す仮想視点情報を決定する。生成処理では、決定処理により決定された仮想視点情報に基づいて、仮想視点画像を生成する。画像処理装置100は、仮想空間に設置された仮想カメラの位置や姿勢、画角等を含む仮想カメラ情報で表される仮想カメラによって仮想的に撮影された画像である仮想視点画像を、仮想空間上の人物の視線の移動範囲に関する視線情報に基づいて生成する。なお、以下の説明では、記載を簡略にするために、被写体(人物)の視線の移動範囲を、「視線範囲」と記すことにする。
【0019】
本実施形態では、例えばサッカーの試合を、異なる位置の複数の実カメラで同期撮影して得た複数視点画像を基に仮想視点画像を生成する場合において、選手や審判の視線情報を取得し、その視線情報をも用いて仮想視点画像を生成する例を挙げる。この場合、前述したように選手や審判の視線が上下左右等に速く大きく動くことで、視線情報を用いて生成した仮想視点画像は激しい動きやブレのある画像になることがある。前述した特許文献1に記載の技術の場合は、ボタン操作等の手入力で各注視位置の誤差の平均値を視線検出に反映するが、サッカーの試合等の場合はボタン操作時のような注視すべき領域はない。また選手や審判等の激しく動く視線は、注視位置に対してブレを起こしているものではなく、短い時間の間に多くの場所を注視しているものである。このため、特許文献1の技術を適用して、視線の激しい動きをブレとして補正してしまうと、選手や審判が見ていた視線の先がわからなくなってしまい、選手や審判の視界をユーザが仮想的に観るという本来の目的を実現できなくなる。なお、本実施形態におけるユーザは、例えば試合中における選手や審判の視界を仮想的に体験する視聴者だけでなく、スキルアップを目指して仮想視点画像を観る選手や審判であってもよい。
【0020】
そこで、本実施形態の画像処理装置100は、
図2に示す機能を有し、後述する
図3のフローチャートに示す処理を行うことによって、上下左右の激しい動きやブレが低減された仮想視点画像の生成を可能とする。本実施形態の画像処理装置100は、仮想空間内の人物の視線の移動範囲に関する視線情報を取得し、その視線情報を基に特定される人物の視線の移動範囲を含む仮想視点画像に係る仮想視点情報に相当する仮想カメラの仮想カメラ情報を設定する。そして、画像処理装置100は、その仮想カメラ情報が設定された仮想カメラによって撮影された画像に相当する仮想視点画像を生成する。
【0021】
図2は、第1実施形態に係る画像処理装置100の機能構成を示した機能ブロック図である。
図2に示すように、画像処理装置100は、入力部201、視線取得部202、推定部203、データ保存部204、画像生成部205、および表示部206の各機能部を有する。なお、
図2に示した各機能部および後述する
図3のフローチャートに示す処理は、例えば、
図1に示したCPU101が補助記憶装置103に記憶された本実施形態に係るプログラムに従って処理を実行することによって実現される。
【0022】
入力部201は、外部I/F104を含み、ユーザによる操作情報を取得し、その操作情報を基に、ユーザからの各種指示に関する入力を取得する。操作情報に基づくユーザ入力は、例えば、仮想視点画像コンテンツの選択、再生・停止、早送りやタイムコード指定による頭出しなどのビデオ操作、カメラの操縦操作などを挙げることができる。さらに本実施形態の場合、操作情報に基づくユーザ入力には、視線情報を用いた仮想視点画像を生成したい選手や審判などの所望の人物の選択(人物指定)、後述する視線範囲の推定が行われる時間範囲を変更する更新レートの指示などが含まれる。
【0023】
視線取得部202は、仮想空間上で仮想視点画像の生成対象となり得る人物の視線情報を取得、すなわち本実施形態の例ではサッカーフィールド上の人物(選手や審判)の視線情報を取得する。例えば、視線取得部202は、選手や審判等が試合中に身に着けていたセンサの出力情報から、あるいは複数視点画像の画像解析によって、選手や審判の視線情報を取得する。また視線情報が予め取得されて補助記憶装置103や外部メディア等に格納されている場合には、視線取得部202は、補助記憶装置103や外部I/F104に接続されたメディアやネットワーク等から視線情報を取得してもよい。なお、本実施形態において、視線取得部202は、例えば動画のフレームなどの単位時間毎に視線情報を取得する。
【0024】
推定部203は、仮想空間に設置される仮想カメラが撮影する範囲を決めるための仮想カメラ情報を設定する。本実施形態の場合、推定部203は、入力部201からユーザ入力を取得し、また視線取得部202から視線情報を取得する。推定部203は、入力部201からのユーザ入力を基に、視線情報を用いた仮想視点画像を生成する対象としてユーザが選択(指定)した選手や審判等の人物を特定する。そして推定部203は、その特定した人物について、予め設定された所定の時間範囲内(所定期間内)における視線の移動範囲(以下、視線範囲ともいう)を推定し、さらに当該人物の目線位置から推定した視線範囲を包含するような仮想カメラ情報を設定する。仮想カメラ情報とは、仮想空間を仮想的に撮影する仮想カメラにおける、カメラパラメータ(仮想カメラパラメータとする)であり、少なくとも仮想カメラの位置と姿勢と撮影方向と画角を設定するパラメータを含む。
【0025】
詳細な説明は後述するが、このときの推定部203は、ユーザ入力に応じて特定した人物について、視線取得部202がフレーム周期等の単位時間毎に取得した視線情報を基に、当該人物の視線が移動した軌跡を取得する。さらに、推定部203は、その人物の視線の軌跡のうち、所定の時間範囲内の視線の軌跡を基に、その時間範囲内における当該人物の視線の移動範囲である視線範囲を推定する。そして、推定部203は、その人物の目線位置から推定した複数の視線範囲を包含するような仮想カメラ情報(仮想カメラパラメータ)を設定する。なお、所定の時間範囲は、予め決められていてもよいし、ユーザによって任意の時間範囲に指定されてもよい。推定部203におけるこれらの処理は、
図1の構成では例えばCPU101により行われる。
【0026】
データ保存部204は、3次元モデルデータや色情報等から構成されるデータを、補助記憶装置103などに記憶している。本実施形態の場合、画像生成部205は、推定部203が視線範囲を基に設定した仮想カメラパラメータに基づいて、仮想カメラが仮想空間を撮影した画像に相当する仮想視点画像を生成する。このときの画像生成部205は、データ保存部204から3次元モデルデータや色情報等から構成されるデータを取得し、それらを基に、仮想カメラで仮想的に撮影された画像である仮想視点画像を生成する。なお、画像生成部205における仮想視点画像の生成処理は、
図1の構成では例えばGPU105により行われる。
【0027】
表示部206は、画像生成部205にて生成された仮想視点画像を、外部I/F104を介してテレビジョン受像機やパーソナルコンピュータのモニタ、タブレット端末などに表示させる。これによりユーザは、仮想視点画像を観ることができる。
【0028】
図3は、第1実施形態の画像処理装置100において、視線範囲を算出して仮想視点画像を生成する処理の流れを示すフローチャートである。以下、本フローチャートを用い、サッカーの試合を例に挙げて、画像処理装置100が例えば主審の視線に応じた仮想視点画像を生成する処理の流れを説明する。
【0029】
ステップS301において、入力部201は、ユーザの操作による入力情報から、視線範囲を推定する際の時間範囲の更新レートを取得する。そして、時間範囲の更新レートの情報は、推定部203に送られる。なお、本実施形態の場合、視線範囲を推定する際の時間範囲は、例えば1秒間に設定されているとする。
【0030】
次のステップS302において、入力部201は、ユーザの操作による入力情報から、ユーザによって指定された仮想視点画像コンテンツの再生開始時刻を取得する。この仮想視点画像コンテンツの再生開始時刻の情報は、推定部203を介して画像生成部205に送られる。例えばユーザによって仮想視点画像コンテンツの頭出しが指示された場合、画像生成部205は、仮想視点画像コンテンツの先頭時刻から再生を行う。
【0031】
次のステップS303において、入力部201は、ユーザの操作による入力情報から、視線情報を用いた仮想視点画像を生成する際に視線抽出対象として指定(選択)された人物を示す情報を取得する。この視線抽出対象人物の指定情報は、推定部203に送られる。
【0032】
ここで
図4は、サッカーの試合の1場面を模式的に表した図である。
ステップS303の視線抽出対象の指定が行われる際には、例えば
図4のような場面を映した画面が表示部206によって表示され、ユーザは、マウスやタッチパネルなどのポインティングデバイスを用いて画面上の人物を選択することができる。ここでは、ユーザによって、主審401が視線抽出対象の人物として指定されたとする。このときの主審401は、ボール405のある方向(矢印402に示す方向)を向いているものとする。なおこの例では、フィールド上の主審401が指定されたが、視線抽出対象の人物は主審に限定されるものではない。例えば選手403やゴールキーパー404などが視線抽出対象の人物として指定されてもよい。
【0033】
次のステップS304において、推定部203は、視線抽出対象の人物(
図4の例では主審401)について顔検出処理などによって、眉間の世界座標を抽出し、仮想カメラの外部パラメータとして設定する。本実施形態の場合、推定部203は、人物の眉間の世界座標を、仮想カメラの位置を表す仮想カメラパラメータとして設定する。ここでは眉間の世界座標を、仮想カメラの位置を表す仮想カメラパラメータとして設定したが、これに限らない。例えば、左右の眼球の位置を検出し、どちらかの眼球の位置、あるいは両方の眼球の位置を、仮想カメラの位置を表す仮想カメラパラメータとして設定してもよい。例えば両方の眼球の位置を用いた場合、仮想視点画像として、視差を有する2つの画像を生成することも可能になる。その他にも、例えば頭部の中心部や頭頂部付近の位置を用いてもよい。なお、仮想カメラの高さ方向の位置については、選手や審判の人物毎に特定の値(高さ)を持たせておいてもよいし、選手や審判の全てに対して同じ特定の値(高さ)を持たせておいてもよい。
【0034】
次にステップS305において、推定部203は、ステップS303で指定された人物(
図4の例では主審401)の視線情報から、ステップS301で指定された時間範囲(1秒間)内の視線の軌跡を抽出することで視線範囲を推定する。そして、推定部203は、ステップS304で求めた仮想カメラの位置において仮想的な撮影が行われる際の、当該仮想カメラの位置以外の仮想カメラ情報(仮想カメラパラメータ)を、その推定した視線範囲から求める。
【0035】
図5(a)から
図5(e)は、
図4で例示した主審401の視線範囲を推定し、その視線範囲を基に仮想カメラパラメータを求める様子を示した模式図である。
図5(a)から
図5(e)において図中の点線は、主審401の視線の中心が、時間の経過とともに移動していった軌跡を表している。
【0036】
図5(a)に示した視線の軌跡501は、主審401が、視線位置501aに向けていた視線を、時間の経過とともに図中点線で示すように移動させ、2秒後には視線位置501bに視線を置くように移した際の軌跡である。なお、紙面に図示する都合上、選手等の各人物は静止した状態で表現しているが、実際には時間の経過とともに、それぞれが任意の動きをしている。
【0037】
図5(b)は、
図5(a)に示したように主審401の視線が視線位置501aから視線位置501bまで、軌跡501で示すように移動する例において、時刻t1について主審401の視野内で推定した視線範囲を表した図である。
図5(b)に示した軌跡502は、時刻t1において取得された視線の軌跡であり、ステップS301で設定された時間範囲の1秒間に動いた視線の軌跡を示している。ここでは、時刻t1-1から時刻t1までの1秒間が視線を推定する時間範囲であり、視線位置501aは時刻t1-1における主審401の視線の中心位置を表している。また
図5(b)において、実線枠で示される視線範囲503は、視線位置501aにおける主審401の視野内で推定される視線範囲を示している。この時、主審401の視野内において視線の中心に対して推定される視線範囲503は、周辺視野と呼ばれるような範囲を除いた有効視野の範囲とし、平均的な画角に設定されるものであるとする。
【0038】
図5(c)は、前述同様にして、軌跡502に沿って有効視野の範囲が順に取得される様子を示した図である。視線範囲505aは、時間の経過によって主審401の視線の中心位置が視線位置501aから視線位置504aに移動した際に、主審401の有効視野の範囲として推定される視線範囲である。同様に、視線範囲505bは視線中心が視線位置504aから視線位置504bに移動した際に推定される視線範囲であり、視線範囲505cは視線中心が視線位置504bから視線位置504cに移動した際に推定される視線範囲である。
【0039】
このように、推定部203は、時刻t1-1から時刻tまでの1秒間の視線の軌跡に沿って順次、視線範囲を推定する。そして、推定部203は、
図5(d)に示すように、時刻t1-1から時刻tまでの1秒間に視線の軌跡に沿って推定した視線範囲ごとの有効視野の画角をすべて包含するような範囲を、時刻tにおける包含視線範囲506として取得する。
【0040】
さらに推定部203は、時刻tの包含視線範囲506に応じた画角を基に、時刻tにおける仮想カメラの位置以外の仮想カメラパラメータを推定する。なお、包含視線範囲506は、時刻t1-1から時刻tまでの時間範囲内において推定した各視線範囲が内接する形である必要はなく、各視線範囲が内側に全て含まれればどのような形であってもよい。また、仮想カメラパラメータは、一般的な映像信号のアスペクト比である縦横比が16:9や4:3となるような形状や、写真に用いられるような3:2のようなアスペクト比に対応したものであってもよい。あるいは、それらのアスペクト比において各視線範囲をすべて包含しているのであれば、包含視線範囲は、最も狭くなるようになされてもよい。
【0041】
推定部203は、
図5(d)で説明した包含視線範囲506の場合と同様に、時刻t1の後に視線を推定する時間範囲である1秒後の時刻を時刻t2とし、時刻t2-1(つまり時刻t1)から時刻t2までの1秒間における包含視線範囲を求める。
図5(e)に示した包含視線範囲507は、時刻t2-1から時刻t2の1秒間について求めた包含視線範囲を示している。そして、推定部203は、時刻t2の包含視線範囲507に応じた画角を基に、時刻t2における仮想カメラの位置以外の仮想カメラパラメータを推定する。以下同様にして、推定部203は、時間範囲が更新される毎、つまり更新レート毎に、包含視線範囲を求めて仮想カメラパラメータを設定する。
【0042】
図3のフローチャートに説明を戻す。次のステップS306において、画像生成部205は、推定部203から受信した時刻t1及び時刻t2の包含視線範囲に対応した仮想カメラパラメータを用いて、仮想視点画像をレンダリングする。そして表示部206は、その仮想視点画像を表示する。
【0043】
このとき画像生成部205が受け取る情報は、時刻t1、時刻t2という時間情報と、その時間情報に紐づけられた包含視線範囲に対応した仮想カメラパラメータとの組み合わせである。ここで、仮想視点画像は1秒間に60フレームなどで構成されるため、時刻t1と時刻t2が1秒の時間間隔を有する場合、画像生成部205は、時刻t1から時刻t2の間の仮想視点画像として、60フレーム分の画像を生成する必要がある。
【0044】
そこで画像生成部205は、時刻t1の所定の時間範囲で設定された仮想カメラ情報と、時刻t1から時間範囲の更新レートの時間分だけ異なった時刻t2の時間範囲で設定された第2の仮想カメラ情報との間で、仮想カメラ情報を徐々に変更する。例えば、画像生成部205は、第1の仮想カメラ情報と第2の仮想カメラ情報とをキーフレームの仮想カメラ情報とし、所定の時間範囲を、仮想視点画像を表示する際のフレーム数で分割した時間ごとに補完した仮想カメラ情報を取得する。本実施形態の場合、画像生成部205は、推定部203から得た時刻t1と時刻t2との仮想カメラパラメータをキーフレームとし、時刻t1の仮想カメラパラメータから時刻t2の仮想カメラパラメータまでの間を補完する中間データを生成する。中間データは、時刻t1の仮想カメラパラメータから時刻t2の仮想カメラパラメータまで徐々に変化するようなデータとして生成される。また本実施形態において、画像生成部205は、推定部203によって設定された仮想カメラパラメータのうち、特に画角が狭角に変化する場合には、当該画角を徐々に変化させるようにする。これにより、画像生成部205では、時刻t1から時刻t2までの1秒間において徐々に変化する仮想カメラパタメータに基づく仮想視点画像、つまり時刻t1から時刻t2の間で画像が徐々に変化する60フレーム分の仮想視点画像が生成される。
【0045】
図6(a)から
図6(d)は、前述のようにして推定部203が求めた時刻t1および時刻t2の包含視線範囲の間の各フレームについて、仮想カメラパラメータの補完を行いながら仮想視点画像が生成される様子を表した図である。なお、
図6(a)から
図6(d)の例は、紙面の都合上、1秒間を四つに分けて示しているが、実際には60フレーム分に相当する仮想視点画像が生成される。
【0046】
図6(a)は、時刻t1において仮想視点画像を生成する際の画角を示している。時刻t1では
図5(d)で示した包含視線範囲506に相当する画角601に対応した仮想視点画像が生成される。また
図6(a)には、時刻t2において仮想視点画像を生成する際の画角として、
図5(e)で求めた包含視線範囲507が、点線の画角602として合わせて示されている。
【0047】
図6(b)は、時刻t1から視線推定の時間範囲の1秒間よりも短い時間である時刻Δ1が経過した時刻t1+Δ1における画角603を表した図である。この時刻t1+Δ1は、時刻t1と時刻t2との間の時刻である。時刻t1と時刻t2との間の時刻t1+Δ1に対応した仮想カメラパラメータは推定部203において推定されないため、画像生成部205は、その時刻t1+Δ1に対応した仮想カメラパラメータを取得できない。そのため、時刻t1+Δ1に対応した仮想カメラパラメータは、時刻t1の仮想カメラパラメータと時刻t2の仮想カメラパラメータとをキーフレームとした中間データとして補完される。
【0048】
ここで、時刻t1+Δ1における画角603は、時刻t1の画角601と時刻t2の画角602との、中間の画角として設定される。本実施形態の場合、画像生成部205は、時刻t1の画角601を表す値と時刻t2の画角602を表す値との間を、仮想視点画像を生成するフレーム数で線形的に均等になるように分割する。さらに、画像生成部205は、それら分割された各画角を表す値のうち、時刻t1+Δ1に対応した値で表される画角を、当該時刻t1+Δ1における画角603する。そして画像生成部205は、その画角603に対応した仮想カメラパラメータに基づいて仮想視点画像を生成する。或いは、画像生成部205は、時刻t1の画角601と時刻t2の画角602を表す二つの値の間を、ペジエ曲線やサイン曲線を描くように、曲線的に加速または減速するような補完を用いて分割してもよい。またこれらに限定されず、時刻t1における仮想カメラパラメータと時刻t2における仮想カメラパラメータの中間の値となるように補完された仮想パラメータが取得できるのであればどのような補完方法が用いられてもよい。
【0049】
図6(c)は、時刻t1+Δ1から更に時間が経過した時刻t1+Δ2における画角604を表した図である。
図6(c)の時刻t1+Δ2では、前述同様の補完方法により、時刻t1+Δ1の画角603よりもさらに時刻t2の画角602に近づいた画角604が得られた様子が示されている。
【0050】
その後、時刻t2では、
図6(d)に示すような画角602となる。画像生成部205では、
図6(a)から
図6(d)で説明したようにして、時刻t1から時刻t2までの間で仮想カメラパラメータの補完が行われ、それら仮想パラメータを基に仮想視点画像が生成される。
【0051】
以上説明したように、第1実施形態の画像処理装置100は、所定の時間範囲ごとの視線の軌跡に基づいて推定した視線範囲から仮想カメラパラメータを求めて仮想視点画像を生成する。これにより、視線抽出対象の人物の視線に対応した仮想視点画像を生成した際に、画像が激しく動くことを抑制しながら、その人物が見ていたと推測される仮想視点画像を生成することができる。
【0052】
なお第1実施形態では、例えば時刻t1の包含視線範囲を求めるにあたり、時間範囲に応じた時刻t1以前の視線情報を基に推定しているが、これには限らず、時刻t1以降の視線情報を基に包含視線範囲を求めてもよい。また、時刻t1を含む前後の時刻、例えば前述同様に1秒間の時間範囲で推定する場合には、時刻t1の前後0.5秒ずつなど、連続する1秒間の視線情報を基に視線推定範囲を求めるのであれば、どのような方法が用いられてもよい。
【0053】
また本実施形態において、包含視線範囲に応じた画角は、視野角の中でも、さらに検出される視線の軌跡を含み、出力される映像のアスペクト比に応じた最も狭角な画角となっていてもよい。また、包含視線範囲に応じた画角は、ユーザの指定などにより、最も狭角な画角に対して一定の範囲で広げられた画角であってもよい。
【0054】
また本実施形態では、視線範囲は、周辺視野と呼ばれるような範囲を除いた、有効視野として平均的な画角に設定されるものであるとしているが、これには限定されない。例えば、視線情報に対して中心窩の視野角と考えられる角度を用いるなど、より狭角な画角を用いて、視線範囲を求めてもよい。その他にも、有効視野は、ユーザの指示により、視野角が任意に設定され、それらの視野角を含む画角となってもよく、視線の中心を含む任意の範囲が有効視野として設定されればよい。
また、本実施形態では、画像処理装置100が画像生成部205及び表示部206を有するものとして説明したが、これに限定されない。例えば、画像生成部205及び表示部206のうち少なくとも一方が、他の装置として画像処理装置100の外部に接続される構成であってもよい。また、画像生成部205及び表示部206がどちらも画像処理装置100の外部に接続される装置である場合に、画像生成部205と表示部206とが同じ装置であっても、異なる装置であってもよい。すなわち、画像処理装置100は、少なくとも、推定部203において仮想カメラパラメータを決定し、仮想視点画像を生成する処理部又は他の装置に仮想カメラパラメータを出力する処理を行う。
【0055】
<第2実施形態>
図7は、第2実施形態の画像処理装置700に係る機能構成を示した機能ブロック図である。画像処理装置700において、入力部201から表示部206までは、
図2に示した画像処理装置100の対応した機能部と同様のものであり、それらの説明は省略する。なお、第2実施形態の画像処理装置700のハードウェア構成は、
図1に示した構成と同様であるためその図示と説明も省略する。
【0056】
グラフィックス生成部701は、視線取得部202が取得した視線情報と、推定部203が推定した包含視線範囲の情報と、画像生成部205が仮想視点画像を生成した際の仮想カメラパラメータと、を取得する。グラフィックス生成部701は、それらの各情報を基に、例えば視線やその軌跡、視線抽出対象の人物が注視している注視ポイント、あるいは注視範囲等を表示するためのグラフィックスデータを生成して表示部206に送る。これにより、表示部206は、視線やその軌跡、注視ポイント、視線範囲等のグラフィックス表示を行う。
【0057】
図8は、第2実施形態の画像処理装置700において、視線範囲を算出して仮想視点画像を生成し、さらにグラフィックス表示を行う処理の流れを示したフローチャートである。
図8において、ステップS301からステップS306までの処理は
図3の対応するステップと同様の処理であるためそれらの説明は省略する。
図8のフローチャートにおいて、ステップS306の後、画像処理装置700の処理はステップ801に進む。
【0058】
ステップS801において、グラフィックス生成部701は、画像生成部205が生成した仮想視点画像の時刻と仮想カメラパラメータ、視線取得部202が取得した視線情報、および推定部203が推定した包含視線範囲の各情報を取得する。そして、グラフィックス生成部701は、それらの情報を基に、表示部206に表示するグラフィックスデータを生成する。すなわちグラフィックス生成部701は、視線抽出対象人物である例えば主審401の視線に関連する関連画像としてのオブジェクトを生成する関連画像生成処理を行う。表示部206は、画像生成部205にて生成された仮想視点画像に、グラフィックス生成部701がグラフィックスデータに基づいて生成したオブジェクトを重畳表示する。なお、本実施形態では、表示部206においてグラフィックスデータと仮想視点画像とが重畳されて表示されるものとしたが、これに限定されない。例えば、画像生成部205がグラフィックスデータと仮想視点画像とを重畳する処理を行い、表示部206は画像生成部205により生成された画像を表示する構成であってもよい。
【0059】
図9(a)から
図9(c)は、仮想視点画像900に、視線抽出対象人物である主審401の視線に関連する関連画像としてオブジェクトが重畳表示されている様子を示した模式図である。なお、
図9(a)、
図9(b)、
図9(c)は、主審401の視線に関連するオブジェクトとして、異なる形態の表示がなされた例を示している。
【0060】
図9(a)は、例えば時刻t1における包含視線範囲の仮想カメラパラメータに基づいて生成された仮想視点画像900に対し、主審401の視線の軌跡を表す軌跡オブジェクト901が重畳表示された例を示している。これにより、ユーザは、主審401について推定された包含視線範囲の中で、ある時刻にどの位置を主審401が注視していたかを俯瞰で見ながら、その注視範囲を知ることができる。なおこの時、グラフィックス生成部701は、例えばポイントオブジェクト902で示すように、仮想視点画像を生成している時刻における視線の位置(注視位置)を強調して表示してもよい。また例えば、グラフィックス生成部701は、ポイントオブジェクト902によって視線の動きを表現し、その軌跡として軌跡オブジェクト901を表示するようにしてもよい。また、グラフィックス生成部701は、軌跡オブジェクト901を、時刻の経過に伴って、時間が古い部分から順に徐々に消えるように表示してもよい。
【0061】
図9(b)は、仮想視点画像上に、主審401の視線範囲を表す枠を重畳表示した例を示している。
図9(b)の例の場合、時刻t1における主審401の視線範囲505cを表す範囲オブジェクト903が、仮想視点画像上に重畳表示されている。このように、各時刻における視線範囲が、範囲オブジェクト903として仮想視点画像上に重畳表示されることで、ユーザは、主審401の視野を俯瞰で見ながらその注視範囲を知ることができる。
【0062】
図9(c)は、仮想視点画像上に、主審401の視野範囲をPiP(Picture In Picture)表示するようにした場合の例を示している。
図9(c)では、例えば時刻t1における主審401の視線範囲(例えば
図5(b)の視線範囲503)の画像領域を仮想視点画像上からトリミングして、ウィンドウオブジェクト904として重畳表示した例を示している。このようなPiPによる重畳表示がなされることでも前述同様の効果を得ることができる。この例では仮想視点画像から視線範囲の画像領域をトリミングしたが、この例には限定されない。例えば、主審401の視線範囲の画角と同等になるような仮想カメラパラメータを推定部203が別途生成し、画像生成部205がウィンドウオブジェクト904と同様に重畳表示した仮想視点画像を生成してもよい。またウィンドウオブジェクト904は、前述の例では仮想視点画像上に重畳表示されるが、例えば、仮想視点画像を表示する表示デバイスとは異なる表示デバイスに別途表示されてもよい。
【0063】
図10(a)と
図10(b)は、仮想視点画像上において、視線範囲を表す画像領域の輝度を視線の軌跡に合わせて変化させることで、視線抽出対象人物の視線の変化をユーザに提示可能にする表示方法の例を示した模式図である。
仮想視点画像1001は、主審401の位置からの視線に対応するように作成された画像であって、一般的な人間の視野角よりも広角になるように作成された画像である。例えば、仮想視点画像1001は、画角の広い超広角レンズでの撮影を想定した画像、魚眼レンズでの撮影を想定した画像、あるいは360度カメラと呼ばれるような周囲全体を網羅する画角のレンズでの撮影を想定した画像であってもよい。
【0064】
図10(a)および
図10(b)において、軌跡1002aは時刻t1-1秒から時刻t1の間の視線の軌跡を表し、軌跡1002bは時刻t1から時刻t2の間の視線の軌跡を表している。
図10(b)の視線範囲1003aは、時刻t1において推定された視線範囲を表し、視線範囲1003bは時刻t2において推定された視線範囲を表している。なお、視線範囲1003aおよび視線範囲1003bは、前述した包含視線範囲506と同様の求め方によって決められたものである。
【0065】
ここで、現在時刻が時刻t2であるとすると、グラフィックス生成部701は、当該時刻t2において推定された視線範囲1003bの領域の輝度を、時刻t2より過去の時刻t1の視線範囲1003aの領域の輝度よりも、高い値(明るく)なるようにする。また、グラフィックス生成部701は、時刻t1の視線範囲1003aについては時間の経過とともに徐々に低い(暗い)輝度値になるようにする。輝度が低下していく時間は、現実世界の経過時間を用いてもよいし、仮想視点画像のタイムコードに基づく仮想時間の経過時間を用いてもよい。また、グラフィックス生成部701は、視線範囲1003aと視線範囲1003b以外の領域、つまり主審401の視線が向いていない領域については、さらに輝度を低く(暗く)なるようにする。
【0066】
なお、
図10(b)の例では、視線範囲1003aと視線範囲1003bは、視線の軌跡を包含する円形領域となされているが、この例には限定されず、
図5に示したような矩形領域、あるいは楕円形領域など任意の形の領域であってもよい。また、グラフィックス生成部701は、時間の経過に伴って、それら視線範囲を示す領域の輝度を変化させるだけでなく、形状をも変化させるようにしてもよい。また、グラフィックス生成部701は、視線範囲を表す一定の大きさの円形領域や矩形領域等を、視線の軌跡1002aや軌跡1002bに沿って移動させるようにしてもよい。また前述の例では、時刻t1の視線範囲1003aの輝度はその領域内で全体的に同様に暗くなる例を挙げたが、例えば視線の軌跡に応じてグラデーションとなるように輝度が変化するようにしてもよい。
図10の例の説明では、グラフィックス生成部701が視線範囲や仮想視点画像の輝度を変化させているが、それらの輝度の変更は画像生成部205が行ってもよい。
【0067】
以上説明したように、第2実施形態においては、視線、視線の軌跡、視線範囲等の人物の視線に関連する情報をグラフィックス表示してユーザに提示する。これにより第2実施形態によれば、第1実施形態と同様に視線抽出対象の人物の視線に応じた仮想視点画像が激しく画像が動くことを抑制するだけでなく、ある時刻において視線の先がどこを向いているのかをユーザにわかり易く提示すことができる。
【0068】
また第2実施形態において説明した各種のグラフィックス表示は、一部または全部が適宜組み合わされてもよい。例えば、
図10のように仮想視点画像の輝度を変更する表示を行いながら、軌跡オブジェクト901や範囲オブジェクト903、ウィンドウオブジェクト904等のグラフィックス表示などが行われてもよい。また、オブジェクトのいずれを表示するかは、ユーザの指示によって適宜切り替えられるようになされてもよい。
また、本実施形態では、画像処理装置700が画像生成部205、表示部206、及びグラフィックス生成部701を有するものとして説明したが、これに限定されない。例えば、画像生成部205、表示部206及びグラフィックス生成部701のうち少なくともいずれかが、他の装置として画像処理装置700の外部に接続される構成であってもよい。また、画像生成部205、表示部206及びグラフィックス生成部701のそれぞれが同じ装置であっても、異なる装置であってもよい。すなわち、画像処理装置700は、上述した第1実施形態における画像処理装置100と同様、少なくとも、推定部203において仮想カメラパラメータを決定し、仮想視点画像を生成する処理部又は他の装置に仮想カメラパラメータを出力する処理を行う。
【0069】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける一つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【0070】
100:画像処理装置、101:CPU、102:主記憶装置、103:補助記憶装置、104:外部I/F、105:GPU、201:入力部、202:視線取得部、203:推定部、204:データ保存部、205:画像生成部、206:表示部