(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-26
(45)【発行日】2024-10-04
(54)【発明の名称】撮影装置、画像処理装置、撮影装置の制御方法、画像処理装置の制御方法、撮影システム
(51)【国際特許分類】
H04N 23/60 20230101AFI20240927BHJP
G03B 17/00 20210101ALI20240927BHJP
G03B 17/18 20210101ALI20240927BHJP
H04N 23/63 20230101ALI20240927BHJP
【FI】
H04N23/60
G03B17/00 Q
G03B17/18
H04N23/60 500
H04N23/63 300
(21)【出願番号】P 2020123913
(22)【出願日】2020-07-20
【審査請求日】2023-07-19
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】樋口 州吾
【審査官】彦田 克文
(56)【参考文献】
【文献】特開2002-314851(JP,A)
【文献】特開2002-247441(JP,A)
【文献】特開2011-199750(JP,A)
【文献】国際公開第2019/021375(WO,A1)
【文献】特開2015-153035(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 23/60
H04N 23/63
G03B 17/00
G03B 17/18
(57)【特許請求の範囲】
【請求項1】
撮影装置であって、
前記撮影装置の三次元位置および三次元姿勢と
、被写体を取り囲むように配置された複数のカメラが撮影した撮影画像から推定される被写体の三次元位置とに基づいて、前記撮影装置による撮影画像を基準とする座標系における該被写体の二次元位置を求める取得手段と、
前記二次元位置が前記撮影装置の画角の範囲外であれば、該二次元位置を該撮影装置の画角の範囲内に収めるための操作に必要な情報を求め、該求めた情報に基づく表示を行う表示制御手段と
を備えることを特徴とする撮影装置。
【請求項2】
前記表示制御手段は、前記二次元位置が前記撮影装置の画角の範囲外であれば、該二次元位置を該撮影装置の画角の範囲内に収めるための前記撮影装置の移動量および移動方向を求め、該求めた移動量および移動方向に基づく表示を行うことを特徴とする請求項1に記載の撮影装置。
【請求項3】
前記表示制御手段は、前記座標系の原点と前記二次元位置とを通る直線と、前記撮影装置の画角の範囲の端部と、の交点を求め、該交点から該二次元位置に向かうベクトルを求め、該求めたベクトルの長さおよび方向をそれぞれ、前記移動量および前記移動方向として求めることを特徴とする請求項2に記載の撮影装置。
【請求項4】
前記表示制御手段は、前記撮影画像を表示する表示領域を囲む周囲の領域に、前記移動量および前記移動方向に基づく表示を行うことを特徴とする請求項2または3に記載の撮影装置。
【請求項5】
前記取得手段は、
前記複数のカメラによる撮影画像に基づいて被写体の三次元位置を推定する外部の装置から、該被写体の三次元位置を取得することを特徴とする請求項1ないし4の何れか1項に記載の撮影装置。
【請求項6】
撮影装置の三次元位置および三次元姿勢と
、被写体を取り囲むように配置された複数のカメラが撮影した撮影画像から推定される被写体の三次元位置とに基づいて、該撮影装置による撮影画像を基準とする座標系における該被写体の二次元位置を求める取得手段と、
前記二次元位置が前記撮影装置の画角の範囲外であれば、該二次元位置を該撮影装置の画角の範囲内に収めるための操作に必要な情報を求め、該求めた情報を前記撮影装置に対して送信する送信手段と
を備えることを特徴とする画像処理装置。
【請求項7】
前記取得手段は、前記複数のカメラによる撮影画像に基づいて前記被写体の三次元形状モデルを生成し、該三次元形状モデルを用いて、仮想の視点からの空間の映像を生成することを特徴とする請求項6に記載の画像処理装置。
【請求項8】
更に、
前記取得手段が求めた前記被写体の二次元位置に基づいて、該被写体の二次元の移動ベクトルを求める手段を備え、
前記送信手段は、前記情報に加え、前記移動ベクトルの情報を前記撮影装置に対して送信することを特徴とする請求項6
または7に記載の画像処理装置。
【請求項9】
撮影装置の制御方法であって、
前記撮影装置の取得手段が、前記撮影装置の三次元位置および三次元姿勢と
、被写体を取り囲むように配置された複数のカメラが撮影した撮影画像から推定される被写体の三次元位置とに基づいて、前記撮影装置による撮影画像を基準とする座標系における該被写体の二次元位置を求める取得工程と、
前記撮影装置の表示制御手段が、前記二次元位置が前記撮影装置の画角の範囲外であれば、該二次元位置を該撮影装置の画角の範囲内に収めるための操作に必要な情報を求め、該求めた情報に基づく表示を行う表示制御工程と
を備えることを特徴とする撮影装置の制御方法。
【請求項10】
画像処理装置の制御方法であって、
前記画像処理装置の取得手段が、撮影装置の三次元位置および三次元姿勢と
、被写体を取り囲むように配置された複数のカメラが撮影した撮影画像から推定される被写体の三次元位置とに基づいて、該撮影装置による撮影画像を基準とする座標系における該被写体の二次元位置を求める取得工程と、
前記画像処理装置の送信手段が、前記二次元位置が前記撮影装置の画角の範囲外であれば、該二次元位置を該撮影装置の画角の範囲内に収めるための操作に必要な情報を求め、該求めた情報を前記撮影装置に対して送信する送信工程と
を備えることを特徴とする画像処理装置の制御方法。
【請求項11】
撮影装置と、画像処理装置と、を有する撮影システムであって、
前記画像処理装置は、
前記撮影装置の三次元位置および三次元姿勢と
、被写体を取り囲むように配置された複数のカメラが撮影した撮影画像から推定される被写体の三次元位置とに基づいて、該撮影装置による撮影画像を基準とする座標系における該被写体の二次元位置を求める取得手段と、
前記二次元位置が前記撮影装置の画角の範囲外であれば、該二次元位置を該撮影装置の画角の範囲内に収めるための操作に必要な情報を求め、該求めた情報を前記撮影装置に対して送信する送信手段と
を備え、
前記撮影装置は、
前記送信手段が送信した情報を受信する受信手段と、
前記受信手段が受信した情報に基づく表示を行う表示制御手段と
を備えることを特徴とする撮影システム。
【請求項12】
撮影装置と、画像処理装置と、を有する撮影システムであって、
前記撮影装置は、
前記撮影装置の三次元位置および三次元姿勢と被写体の三次元位置とに基づいて、前記撮影装置による撮影画像を基準とする座標系における該被写体の二次元位置を求める取得手段と、
前記二次元位置が前記撮影装置の画角の範囲外であれば、該二次元位置を該撮影装置の画角の範囲内に収めるための操作に必要な情報を求め、該求めた情報に基づく表示を行う表示制御手段と
を備え、
前記画像処理装置は、
複数のカメラによる撮影画像に基づいて被写体の三次元位置を推定する推定手段と、
前記推定手段が推定した前記被写体の三次元位置を前記撮影装置に対して送信する手段と
を備えることを特徴とする撮影システム。
【請求項13】
コンピュータを、請求項1ないし5の何れか1項に記載の撮影装置の各手段として機能させるためのコンピュータプログラム。
【請求項14】
コンピュータを、請求項6ないし
8の何れか1項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、被写体の表示のための技術に関するものである。
【背景技術】
【0002】
近年、被写体や被写体が存在する空間を取り囲むように複数のカメラを配置した多視点撮影システムを用いて、本来はカメラが存在しない視点から見た映像を生成する仮想視点映像生成技術が注目されている。仮想視点映像生成技術は、多視点撮影システムで撮影された映像から、被写体の位置や三次元形状モデルを推定し、仮想視点から見た映像を再構築する技術である。
【0003】
また従来から、注目する被写体が遠く離れている場合は、ミラーレスや一眼レフなどのカメラに焦点距離の長いレンズを装着して撮影する、いわゆる望遠撮影が一般的に行われている。しかしながら、望遠撮影においては、注目する被写体を画角内に捉え続けることが難しく、また画角外にいる注目被写体を見つけることが難しい。そのため、画角外の注目被写体の位置を知らせる技術が知られている。例えば、特許文献1では、注目被写体が画角外に出たときの位置情報を画面に表示することにより、被写体を見つけ易くしている。また、特許文献2では、被写体にGPSなどの位置検出センサを装着させ、検出した位置情報を画面に表示することにより、被写体を見失わないようにしている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2005-341449号公報
【文献】特開2009-224900号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1では、画角外に出たあとの被写体の動きを予測できないため、被写体の動きが速い場合や画角外に出てからの時間が長い場合は、注目被写体を見つけることが難しくなる。また、特許文献2では、現在のカメラ姿勢と被写体の位置との関係が分かりにくいため、カメラをどのように動かせば被写体を画角内に捉えることができるのかわからない。
【0006】
本発明では、被写体が撮影装置の画角の範囲外に位置している場合に、該被写体を該撮影装置の画角の範囲内に収めるための操作に必要な情報をユーザに通知するための技術を提供する。
【課題を解決するための手段】
【0007】
本発明の一様態は、撮影装置であって、
前記撮影装置の三次元位置および三次元姿勢と、被写体を取り囲むように配置された複数のカメラが撮影した撮影画像から推定される被写体の三次元位置とに基づいて、前記撮影装置による撮影画像を基準とする座標系における該被写体の二次元位置を求める取得手段と、
前記二次元位置が前記撮影装置の画角の範囲外であれば、該二次元位置を該撮影装置の画角の範囲内に収めるための操作に必要な情報を求め、該求めた情報に基づく表示を行う表示制御手段と
を備えることを特徴とする。
【発明の効果】
【0008】
本発明の構成によれば、被写体が撮影装置の画角の範囲外に位置している場合に、該被写体を該撮影装置の画角の範囲内に収めるための操作に必要な情報をユーザに通知することができる。
【図面の簡単な説明】
【0009】
【
図2】撮影システムのハードウェア構成例を示すブロック図。
【
図3】撮影装置110および画像処理装置109のそれぞれの機能構成例を示すブロック図。
【
図4】撮影装置110および画像処理装置109によって行われる処理のフローチャート。
【
図5】世界座標系とカメラ座標系と画像座標系との関係を示す図。
【
図6】画像座標系における被写体111の二次元位置の一例を示す図。
【
図7】(a)は通知情報の表示例を示す図、(b)はベクトルの長さ(移動量)に応じたアイコン703のサイズや色の組合せの一例を示す図。
【
図8】撮影装置110および画像処理装置109のそれぞれの機能構成例を示すブロック図。
【
図9】撮影装置110および画像処理装置109によって行われる処理のフローチャート。
【
図10】撮影装置110および画像処理装置109によって行われる処理のフローチャート。
【
図11】被写体111の移動ベクトルの一例を示す図。
【
図12】(a)は通知情報の表示例を示す図、(b)はテーブルの構成例を示す図。
【発明を実施するための形態】
【0010】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0011】
[第1の実施形態]
本実施形態に係る撮影システムは、被写体が存在する空間を撮影するべく該空間を取り囲むように複数のカメラを配置した多視点撮影システムと、該被写体を撮影するための撮影装置と、を有する。本実施形態に係る撮影システムの構成例について、
図1を用いて説明する。
【0012】
本実施形態に係る多視点撮影システムでは、被写体111が存在するサッカーコートを取り囲むようにカメラ101~108が配置されており、カメラ101~108は画像処理装置109と有線および/または無線のネットワークを介して接続されている。カメラ101~108は、画像処理装置109からの指示に基づいて撮影を開始し、撮影した画像(撮影画像)は上記のネットワークを介して画像処理装置109に送信される。そして画像処理装置109は、カメラ101~108から受信した撮影画像から、従来の仮想視点映像生成技術に基づき、被写体111の位置や三次元形状モデルを推定し、仮想視点から見た映像(仮想視点映像)を生成する。画像処理装置109は、該生成した映像を自身の表示画面に表示してもよいし、ネットワークを介して外部の装置に対して送信してもよいし、該生成した映像の出力先は特定の出力先に限らない。画像処理装置109は、このような動作を行うコンピュータ装置であり、PC(パーソナルコンピュータ)、スマートフォン、タブレット端末装置などのコンピュータ装置である。
【0013】
撮影装置110は、一眼レフやミラーレスなどのカメラであり、有線および/または無線のネットワークを介して画像処理装置109と接続されている。撮影装置110は、撮影した画像(撮影画像)を該ネットワークを介して画像処理装置109に対して送信する。画像処理装置109は、撮影装置110から受信した撮影画像及び上記の仮想視点映像生成技術で得られる被写体111の三次元位置姿勢に基づき、被写体111を該撮影装置110の画角内に収めるための操作に必要な情報を生成して撮影装置110に送信する。撮影装置110は、画像処理装置109から送信された情報に基づく表示を行うことで、被写体111を撮影装置110の画角内に収めるための操作に必要な情報をユーザに通知することができる。
【0014】
なお、
図1は、撮影システムにおいて、以下の説明で参照する主要な構成を示したものであり、撮影システムは
図1に示した構成に加えて、さらなる装置を含んでも構わない。例えば撮影システムは、データ通信を中継する装置や、カメラ101~108により撮影された撮影画像群や生成した仮想視点映像を格納するためのサーバ装置、等の装置を含んでもよい。
【0015】
次に、本実施形態に係る撮影システムのハードウェア構成例について、
図2のブロック図を用いて説明する。
図2では、カメラ101~108、撮影装置110、画像処理装置109、は何れもLANに接続されているものとしているが、それぞれの装置間をつなぐネットワークの形態には様々な形態があり、特定の形態に限らない。
【0016】
先ず、撮影装置110のハードウェア構成例について説明する。CPU201は、メインメモリ202に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりCPU201は、撮影装置110全体の動作制御を行うとともに、撮影装置110が行うものとして説明する各種の処理を実行もしくは制御する。
【0017】
メインメモリ202は、記憶部203からロードされたコンピュータプログラムやデータ、通信部207により外部から受信したデータ、撮影部206が撮影した撮影画像、等を格納するためのエリアを有する。さらにメインメモリ202は、CPU201が各種の処理を実行する際に用いるワークエリアを有する。このようにメインメモリ202は、各種のエリアを適宜提供することができる。
【0018】
記憶部203には、OS(オペレーティングシステム)や、撮影装置110が行うものとして説明する各種の処理をCPU201に実行もしくは制御させるためのコンピュータプログラムやデータ、などが保存されている。記憶部203に保存されているコンピュータプログラムやデータは、CPU201による制御に従って適宜メインメモリ202にロードされ、CPU201による処理対象となる。記憶部203には、例えば、シリコンディスク等の不揮発性メモリを適用することができる。
【0019】
操作部204は、ボタン、モードダイヤル、スイッチ、レバー、タッチパネル画面などを含むユーザインターフェースであり、ユーザが操作することで各種の指示をCPU201に対して入力することができる。
【0020】
表示部205は、液晶画面、タッチパネル画面などの画面を有し、CPU201による処理結果を画像や文字などでもって表示する。なお、表示部205がタッチパネル画面を有する場合には、ユーザが該タッチパネル画面を操作することで入力した操作入力はCPU201に通知される。
【0021】
撮影部206は、静止画像や動画像を撮影可能な構成を有し、例えば、光学系、シャッター、撮像センサ等を有する。撮影部206は、CPU201からの指示に応じて、フォーカスを合わせる、シャッターを開く/閉じる、絞りを調節する等の、光学系や撮像センサの制御を行う。
【0022】
通信部207は、イーサネットやIEEE802.11等の通信規格に準拠したデバイスであり、撮影装置110は通信部207により外部装置とのデータ通信を行うことができる。CPU201、メインメモリ202、記憶部203、操作部204、表示部205、撮影部206、通信部207は何れもバス208に接続されている。
【0023】
次に、画像処理装置109のハードウェア構成例について説明する。CPU209は、メインメモリ210に格納されているコンピュータプログラムやデータを用いて各種の処理を実行する。これによりCPU209は、画像処理装置109全体の動作制御を行うとともに、画像処理装置109が行うものとして説明する各種の処理を実行もしくは制御する。
【0024】
メインメモリ210は、記憶部211からロードされたコンピュータプログラムやデータ、通信部212により外部から受信したデータ、などを格納するためのエリアを有する。さらにメインメモリ210は、CPU209が各種の処理を実行する際に用いるワークエリアを有する。このようにメインメモリ210は、各種のエリアを適宜提供することができる。
【0025】
記憶部211には、OS、画像処理装置109が行うものとして説明する各種の処理をCPU209に実行もしくは制御させるためのコンピュータプログラムやデータ、などが保存されている。記憶部211に保存されているコンピュータプログラムやデータは、CPU209による制御に従って適宜メインメモリ210にロードされ、CPU209による処理対象となる。
【0026】
通信部212は、外部装置とのデータ通信を行うためのデバイスであり、画像処理装置109は通信部212により外部装置とのデータ通信を行うことができる。例えば、画像処理装置109は通信部212により、カメラ101~108に対し、撮影の開始や停止、シャッタースピードや絞り等の変更、等の指示を送信したり、カメラ101~108から撮影画像を受信したりすることができる。また例えば、画像処理装置109は通信部212により、撮影装置110との間のデータ通信を行うことができる。
【0027】
画像処理装置109(CPU209)は、仮想視点映像を生成するためのコンピュータプログラムを実行する。これにより画像処理装置109は、カメラ101~108が同時刻に撮影した撮影画像から、被写体111の三次元位置および三次元姿勢や被写体111の三次元形状モデルを推定する。そして画像処理装置109は、これらの推定結果を用いて、本来はカメラが存在しない仮想の視点からみた空間の画像をレンダリングして生成する。被写体111の三次元形状モデルは、予めキャリブレーションされたカメラ群の位置姿勢を基に、画像間でマッチングする特徴点の座標値から推定することができる。三次元形状モデル推定手法として、MVS(Multi View Stereo)やVH(Visual Hull)等が知られている。CPU209、メインメモリ210、記憶部211、通信部212は何れもバス213に接続されている。
【0028】
撮影装置110および画像処理装置109のそれぞれの機能構成例を
図3のブロック図に示す。
図3に示した機能構成例を有する撮影装置110および画像処理装置109によって行われる処理について、
図4のフローチャートに従って説明する。なお、以下では
図3に示した機能部を処理の主体として説明する。しかし、実際には、撮影装置110の機能部の機能をCPU201に実現させるためのコンピュータプログラムをCPU201が実行することで、撮影装置110の機能部の機能を実現させる。また、画像処理装置109の機能部の機能をCPU209に実現させるためのコンピュータプログラムをCPU209が実行することで、画像処理装置109の機能部の機能を実現させる。なお、
図3に示した機能部はハードウェアで実装しても構わない。
【0029】
ステップS401では、撮影装置110の取得部301は、撮影部206によって撮影された撮影画像を取得する。該撮影画像は静止画像であってもよいし、動画像における各フレームの画像であってもよい。
【0030】
ステップS402では、撮影装置110の送信部302は、ステップS401で取得部301が取得した撮影画像を画像処理装置109に対して送信する。ステップS403では、画像処理装置109の受信部303は、ステップS402で撮影装置110の送信部302が送信した撮影画像を受信する。
【0031】
ステップS404では、画像処理装置109の推定部304は、ステップS403で画像処理装置109の受信部303が受信した撮影画像に基づいて、世界座標系における撮影装置110の位置姿勢(三次元位置および三次元姿勢)を推定する。世界座標系は、実空間における1点を原点とし、該原点で互いに直交する3軸をそれぞれx軸、y軸、z軸とする直交座標系である。本実施形態では一例として、世界座標系は、
図1に示したサッカーコートのセンターサークルの中心位置を原点とし、該サッカーコートの長手の辺に沿う軸をy軸、該サッカーコートの短手の辺に沿う軸をx軸、該サッカーコートの面に垂直な方向に沿う軸をz軸、とする直交座標系であるものとする。また以下では、撮影装置110の三次元位置を原点とし、該撮影装置110の三次元姿勢における三成分に対応する軸をそれぞれx軸、y軸、z軸とする直交座標系(撮影装置110の位置姿勢を基準とする直交座標系)をカメラ座標系と称する。また、撮影装置110による撮影画像の中心位置を原点とし、該撮影画像の水平方向をx軸、該撮影画像の垂直方向をy軸、とする直交座標系を画像座標系と称する。
【0032】
世界座標系とカメラ座標系と画像座標系との関係を
図5に示す。Owは世界座標系の原点、Xw,Yw,Zwはそれぞれ世界座標系におけるx軸、y軸、z軸を示す。Ocはカメラ座標系の原点、Xc,Yc,Zcはそれぞれカメラ座標系におけるx軸、y軸、z軸を示す。Oiは画像座標系の原点、Xi,Yiはそれぞれ画像座標系におけるx軸、y軸を示す。ここで、世界座標系における三次元位置Pw=(Xw,Yw,Zw)をカメラ座標系における三次元位置Pc=(Xc,Yc,Zc)に変換する式は以下のように表される。
【0033】
【0034】
Rは各軸周りの回転行列の合成であり、Tは並進行列である。また、カメラ座標系における三次元位置Pcを、ピンホールカメラモデルに従い、画像座標系における二次元位置Pi=(Xi,Yi)に変換する式は以下のように表される。
【0035】
【0036】
ここで、λは画像のスケール係数、fは焦点距離、(sx,sy)はそれぞれ、x軸方向の画素の大きさ、y軸方向の画素の大きさ、を示す。また、(xco,yco)は画像主点位置、ksは画像平面におけるx軸に対するyの傾きを表すせん断係数である。
【0037】
行列[R T]は、撮影装置110の世界座標系における三次元位置および三次元姿勢を表す外部パラメータ、行列Aは撮影装置110の射影特性を表す内部パラメータと呼ばれ、撮影装置110の位置姿勢の推定は、行列[R T]を推定することである。
【0038】
撮影装置110の世界座標系における位置姿勢の推定は、いわゆるPnP(Perspective n-Point)問題を解くことにより求めることができる。PnP問題は、複数の三次元点と二次元点の対応および撮影装置110の内部パラメータを既知として、撮影装置110の外部パラメータを推定する問題である。数学的には、既知の対応点が6組以上あれば、外部パラメータを求めることができる。位置姿勢推定手法としてRANSAC(RANdom SAmple Consensus)等が知られている。
【0039】
このように、本実施形態では、撮影画像中の特徴点の二次元位置と、該特徴点の既知の三次元位置と、上記の内部パラメータと、に基づいて撮影装置110の世界座標系における位置姿勢を推定する。このような、撮影装置110による撮影画像から該撮影装置110の位置姿勢を推定するための技術は周知の技術であるため、これに係る詳細な説明は省略する。なお、撮影装置110の位置姿勢を取得するための方法は特定の方法に限らない。例えば、撮影装置110の位置姿勢をジャイロセンサやGPSセンサ、光学式センサや超音波式センサなどのセンサを用いて取得するようにしてもよいし、センサと撮影画像とを併用して撮影装置110の位置姿勢を取得してもよい。
【0040】
ステップS405では、画像処理装置109の取得部305は、被写体111の世界座標系における三次元位置を取得する。例えば、撮影装置110は自身が撮影した撮影画像を表示部205に表示して、該撮影画像中の被写体のうち以降の処理の対象となる対象被写体を選択させる。ユーザは表示部205の画面上で対象被写体をタッチしたり操作部204を操作して対象被写体を選択するなどして、対象被写体の選択操作を行う。そして撮影装置110は、この選択された対象被写体を特定するための情報を画像処理装置109に送信する。また例えば、多視点撮影システムにユーザの情報を登録しておき、撮影装置110と対象被写体(選手)を管理できるようにしてもよい。ユーザは携帯端末等から多視点撮影システムにログインし、対象被写体を随時指示できるようにしてもよい。また、対象被写体は複数であってもよい。以下では、対象被写体として被写体111が指定されているケースについて説明する。
【0041】
上記の如く画像処理装置109は、仮想視点映像を生成するためのコンピュータプログラムを実行しており、これにより、カメラ101~108が同時刻に撮影した撮影画像から、世界座標系における被写体111の三次元位置および三次元姿勢を推定している。よって、ステップS405では、取得部305は、この推定された被写体111の世界座標系における三次元位置を取得する。
【0042】
ステップS406では、画像処理装置109の算出部306は上記の式(1)および式(2)を用いて、ステップS405で取得した被写体111の世界座標系における三次元位置から、画像座標系における被写体111の二次元位置を求める。そして算出部306は、画像座標系における被写体111の二次元位置が撮影装置110の画角の範囲外であれば、該二次元位置を該撮影装置110の画角の範囲内に収めるための操作に必要な情報を生成する。
【0043】
画像座標系における被写体111の二次元位置の一例を
図6に示す。参照番号601は、ステップS406で求めた被写体111の二次元位置、参照番号602は撮影装置110の画角の範囲を示している。撮影装置110の画角の範囲は、上記の内部パラメータから算出可能である。
【0044】
図6に示す如く、取得した二次元位置601は、撮影装置110の画角の範囲602に収まっておらず、よってこのような範囲602の画角で撮影した撮影画像には被写体111は含まれていないことになる。本実施形態では、このようなケースの場合、撮影装置110をどの方向にどの程度向ければ画角の範囲内に被写体111が含まれるのかをユーザに通知する。そのために、算出部306は、画像座標系の原点から二次元位置601に向かう直線と、画角の範囲602の端部と、の交点Epを求め、該交点Epから二次元位置601に向かうベクトル603を求める。このベクトル603の方向が、二次元位置601を撮影装置110の画角の範囲602内に収めるために必要な撮影装置110の移動方向となる。また、このベクトル603の長さが、二次元位置601を撮影装置110の画角の範囲602内に収めるために必要な撮影装置110の移動量となる。
【0045】
ステップS407では、画像処理装置109の送信部307は、ステップS406で画像処理装置109の算出部306が求めたベクトルの情報(ベクトル情報)を、撮影装置110に対して送信する。ステップS408では、撮影装置110の受信部308は、ステップS407で画像処理装置109の送信部307が送信したベクトル情報を受信する。
【0046】
ステップS409では、撮影装置110の表示制御部309は、ステップS408で撮影装置110の受信部308が受信したベクトル情報に基づいて、ステップS406で求めた被写体111の二次元位置を撮影装置110の画角の範囲内に収めるために必要な該撮影装置110の移動量および移動方向をユーザに通知するための通知情報を表示部205に表示させる。
【0047】
表示部205における通知情報の表示例を
図7(a)に示す。表示部205の表示画面701には撮影画像700が表示されており、該撮影画像701の表示領域を囲む周囲の領域702は、撮影画像700外(つまり撮影装置110の画角の範囲外)に被写体111の二次元位置が存在する場合に、被写体111の二次元位置を撮影装置110の画角の範囲内に収めるために必要な該撮影装置110の移動量および移動方向をユーザに通知するためのアイコン703を表示するための領域である。アイコン703は、撮影画像700の中心位置から上記のベクトルの方向に延長した直線上の位置であって領域702内の位置に配置される。
図7(a)では、撮影画像700の中心位置からアイコン703の位置に向かう直線の延長上に、被写体111の二次元位置が存在することを、該アイコン703によってユーザに通知している。つまり、このアイコン703を見たユーザは、撮影画像700の中心位置からアイコン703の位置に向かう方向が「被写体111の二次元位置を撮影装置110の画角の範囲内に収めるために必要な該撮影装置110の移動方向」であると理解することができる。
【0048】
また、アイコン703の表示形態によって、「被写体111の二次元位置を撮影装置110の画角の範囲内に収めるために必要な該撮影装置110の移動量」をユーザに通知する。例えば、上記のベクトルの長さが小さい(移動量が小さい)ほどアイコン703のサイズを大きくし、上記のベクトルの長さが大きい(移動量が大きい)ほどアイコン703のサイズを小さくしてもよい。また、上記のベクトルの長さが小さい(移動量が小さい)ほどアイコン703の明度または彩度を上げ、上記のベクトルの長さが大きい(移動量が大きい)ほどアイコン703の明度または彩度を下げるようにしても良い。また、アイコン703のサイズ、明度、彩度のうち2つ以上を上記のベクトルの長さ(移動量)に応じて変えてもよい。上記のベクトルの長さ(移動量)に応じたアイコン703のサイズや色の組合せの一例を
図7(b)に示す。
【0049】
また、アイコンはユーザが被写体ごとに変えてもよい。例えば、ユーザが対象被写体を選択する際に、対応するアイコンを選択するようにしてもよい。これにより、ユーザは、撮影装置110の画角の範囲外に複数の被写体の二次元位置が存在する場合であっても、被写体ごとに、撮影装置110の移動方向および移動量を把握することができる。
【0050】
なお、通知情報は、上記のようなアイコンに限らない。例えば、
図7(a)のアイコン703を、移動方向に向くように傾けてもよい。また、アイコンの形状も
図7(a)に示したアイコン703の形状に限らない。また、撮影装置110の移動方向や移動量、被写体の識別情報などを文字情報として表示部205に表示してもよい。
【0051】
このように本実施形態によれば、撮影装置110の画角の範囲外に位置する被写体の高精度な二次元位置を取得し、該二次元位置を撮影装置110の画角の範囲内に収めるために必要な該撮影装置110の移動量および移動方向をユーザに通知することができる。これにより、撮影装置110の画角の範囲外で被写体が移動した場合であっても、被写体を高精度に追従でき、被写体を見失うことなく画角内に捉えることができる。
【0052】
[第2の実施形態]
本実施形態を含む以下の各実施形態では、第1の実施形態との差分について説明し、以下で特に触れない限りは第1の実施形態と同様であるものとする。第1の実施形態では、画像処理装置109が撮影装置110の移動方向および移動量を求めて撮影装置110に通知する構成とした。これによれば、撮影装置110の計算性能が低い場合でも、上記の処理を実施できる。しかしながら、画像処理装置109に撮影装置110が複数接続されている場合は、画像処理装置109の計算負荷が高くなってしまう。そこで、本実施形態では、撮影装置110が自身の移動方向および移動量を求めるための構成について説明する。
【0053】
撮影装置110および画像処理装置109のそれぞれの機能構成例を
図8のブロック図に示す。
図8に示した機能構成例を有する撮影装置110および画像処理装置109によって行われる処理について、
図9のフローチャートに従って説明する。なお、以下では
図8に示した機能部を処理の主体として説明する。しかし、実際には、撮影装置110の機能部の機能をCPU201に実現させるためのコンピュータプログラムをCPU201が実行することで、撮影装置110の機能部の機能を実現させる。また、画像処理装置109の機能部の機能をCPU209に実現させるためのコンピュータプログラムをCPU209が実行することで、画像処理装置109の機能部の機能を実現させる。なお、
図8に示した機能部はハードウェアで実装しても構わない。
【0054】
ステップS401では、撮影装置110の取得部301は、撮影部206によって撮影された撮影画像を取得する。ステップS901では、画像処理装置109の送信部801は、撮影装置110による撮影画像から該撮影装置110の位置姿勢を推定する際に基準とする実空間中のオブジェクトの情報を基準点情報として、撮影装置110に対して送信する。「撮影装置110の位置姿勢を推定する際に基準とする実空間中のオブジェクト」は、実空間において位置が変化しないオブジェクト(例えば、ゴールやフラッグなどの構造物やフィールド上のラインなど)である。基準点情報は、このようなオブジェクトの色や三次元位置等を含む。
【0055】
ステップS902では、撮影装置110の受信部802は、ステップS901において画像処理装置109の送信部801により送信された基準点情報を受信する。ステップS903では、撮影装置110の推定部803は、ステップS401で取得した撮影画像と、ステップS902で受信した基準点情報と、に基づいて、世界座標系における撮影装置110の位置姿勢(三次元位置および三次元姿勢)を推定する。本ステップにおける位置姿勢の推定方法は、上記のステップS404における推定方法と同様である。
【0056】
ステップS405では、画像処理装置109の取得部305は、被写体111の世界座標系における三次元位置を取得する。ステップS904では、画像処理装置109の送信部804は、ステップS405で取得した被写体111の世界座標系における三次元位置を撮影装置110に対して送信する。
【0057】
ステップS905では、撮影装置110の受信部805は、ステップS904において画像処理装置109の送信部804が送信した、被写体111の世界座標系における三次元位置を受信する。
【0058】
ステップS906では、算出部806は、上記のステップS406と同様にして、画像座標系における被写体111の二次元位置を求める。そして算出部806は、画像座標系における被写体111の二次元位置が撮影装置110の画角の範囲外であれば、該二次元位置を該撮影装置110の画角の範囲内に収めるための操作に必要な情報を生成する。
【0059】
ステップS409では表示制御部309は、第1の実施形態と同様に、被写体111の二次元位置を撮影装置110の画角の範囲内に収めるために必要な該撮影装置110の移動量および移動方向をユーザに通知するための通知情報を表示部205に表示させる。
【0060】
このように、本実施形態によれば、画像処理装置109に撮影装置110が複数接続されている場合であっても、画像処理装置109の負荷を抑えることができ、多くの撮影装置110で処理を実施できる。
【0061】
[第3の実施形態]
第1,2の実施形態では、被写体111の二次元位置を撮影装置110の画角の範囲内に収めるために必要な該撮影装置110の移動量および移動方向をユーザに通知している。これによれば、ユーザは被写体111が画角外のどこに位置しているのか把握することができる。しかしながら、被写体111の移動速度が速い場合、被写体111を画角内に収めるべく撮影装置110の位置や姿勢を変更しても、その間に被写体111は移動しているため、該被写体111を画角内に捉えることが難しい。
【0062】
そこで、本実施形態では、被写体111の二次元位置を撮影装置110の画角の範囲内に収めるために必要な該撮影装置110の移動量および移動方向に加え、被写体111の移動速度および移動方向をユーザに通知する。撮影装置110および画像処理装置109によって行われる処理について、
図10のフローチャートに従って説明する。
【0063】
ステップS1001では、取得部305は、現在よりも所定時間前の被写体111の世界座標系における三次元位置を取得する。ステップS1001で取得する三次元位置は、仮想視点映像を生成するためのコンピュータプログラムの実行により所定時間前に推定した世界座標系における被写体111の三次元位置である。なお、この「所定時間」は、被写体111の移動速度を算出するにあたり必要な時間を設定すればよい。例えば、被写体111が人物である場合は、2~5秒程度の期間を設定すればよい。また、所定時間をより短く設定し、算出した移動速度を過去の結果と合成して移動速度を算出してもよい。
【0064】
ステップS1002では、算出部306は、上記の式(1)および式(2)を用いて上記のステップS406と同様の処理を行うことで、ステップS1001で取得した被写体111の世界座標系における三次元位置から、画像座標系における被写体111の二次元位置を求める。そして算出部306はステップS1002で求めた被写体111の所定時間前の二次元位置を始点とし、ステップS406で求めた被写体111の最新の二次元位置を終点とするベクトルを「被写体111の移動ベクトル(二次元の移動ベクトル)」として求める。移動ベクトルの方向が被写体111の移動方向、移動ベクトルの長さが被写体111の移動速度、を表している。
【0065】
図11に被写体111の移動ベクトルの一例を示す。
図11では、ステップS1002で求めた被写体111の所定時間前の二次元位置1101を始点とし、ステップS406で求めた被写体111の最新の二次元位置601を終点とするベクトル1102を「被写体111の移動ベクトル」としている。
【0066】
ステップS1003では、送信部307は、ステップS406で求めたベクトルの情報(ベクトル情報)に加え、ステップS1002で求めた被写体111の移動ベクトルの情報(移動ベクトル情報)を撮影装置110に対して送信する。ステップS1004では、受信部308は、ステップS1003で送信部307が送信したベクトル情報および移動ベクトル情報を受信する。
【0067】
ステップS1005では、表示制御部309は、ステップS1004で受信したベクトル情報に基づいて、ステップS406で求めた被写体111の二次元位置を撮影装置110の画角の範囲内に収めるために必要な該撮影装置110の移動量および移動方向をユーザに通知するための通知情報を表示部205に表示させる。さらに表示制御部309は、ステップS1004で受信した移動ベクトル情報に基づいて、被写体111の移動に関する情報をユーザに通知するための通知情報を表示部205に表示させる。
【0068】
表示部205における通知情報の表示例を
図12(a)に示す。本実施形態では、領域702には、撮影画像700外(撮影装置110の画角の範囲外)に被写体111の二次元位置が存在する場合に、上記のアイコン703に加え、上記の移動ベクトルの方向および長さに応じた移動情報アイコン1201を通知情報として表示する。
【0069】
本実施形態では、表示制御部309は、
図12(b)に示すテーブルを参照し、移動ベクトルの方向および長さに対応する移動情報アイコンを選択して表示する。より詳しくは、表示制御部309は、8方向(上、右上、右、右下、下、左下、左、左上)のうち移動ベクトルの方向に最も近い移動方向と、3種類の移動速度(歩行、走行、全速力)のうち移動ベクトルの長さに対応する移動速度に最も近い移動速度と、の組合せに対応する移動情報アイコンを選択して表示する。
【0070】
図12(b)の例では、例えば、移動ベクトルの長さが第1の値未満、つまり該被写体が停止している場合は矢印は表示しない。移動ベクトルの長さが第1の値以上かつ第2の値未満、つまり歩行速度の場合は矢先の数が一つの移動情報アイコンを表示する。移動ベクトルの長さが第2の値以上かつ第3の値未満、つまり走行速度の場合は矢先の数が二つの移動情報アイコンを表示する。移動ベクトルの長さが第3の値以上、つまり全速力速度の場合は矢先の数が三つの移動情報アイコンを表示する。
【0071】
なお、移動ベクトルに関する情報を表示するのであれば、移動情報アイコンに加えて若しくは代えて、他の情報を表示するようにしてもよい。例えば移動情報アイコンに加えて若しくは代えて、移動ベクトルの方向および長さを文字情報として表示してもよい。
【0072】
このように、本実施形態によれば、ユーザは、被写体の移動先を予測して撮影装置110の位置や向きを変更することができるため、被写体を追従して撮影することができる。
【0073】
上記の説明において使用した数値、処理タイミング、処理順、表示画面の構成、表示する情報、表示形態、処理の主体などは、具体的な説明を行うために一例として挙げたものであり、これらの一例に限定することを意図したものではない。
【0074】
また、以上説明した各実施形態の一部若しくは全部を適宜組み合わせて使用しても構わない。また、以上説明した各実施形態の一部若しくは全部を選択的に使用しても構わない。
【0075】
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0076】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【0077】
109:画像処理装置 110:撮影装置 301:取得部 302:送信部 303:受信部 304:推定部 305:取得部 306:算出部 307:送信部 308:受信部 309:表示制御部