JP2019152903A - 情報処理装置およびその制御方法 - Google Patents

情報処理装置およびその制御方法 Download PDF

Info

Publication number
JP2019152903A
JP2019152903A JP2018035422A JP2018035422A JP2019152903A JP 2019152903 A JP2019152903 A JP 2019152903A JP 2018035422 A JP2018035422 A JP 2018035422A JP 2018035422 A JP2018035422 A JP 2018035422A JP 2019152903 A JP2019152903 A JP 2019152903A
Authority
JP
Japan
Prior art keywords
virtual viewpoint
virtual camera
processing apparatus
information processing
constraint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018035422A
Other languages
English (en)
Other versions
JP2019152903A5 (ja
JP7045218B2 (ja
Inventor
零 石川
Rei Ishikawa
零 石川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2018035422A priority Critical patent/JP7045218B2/ja
Priority to US16/288,436 priority patent/US11409424B2/en
Publication of JP2019152903A publication Critical patent/JP2019152903A/ja
Publication of JP2019152903A5 publication Critical patent/JP2019152903A5/ja
Application granted granted Critical
Publication of JP7045218B2 publication Critical patent/JP7045218B2/ja
Priority to US17/857,295 priority patent/US20220342538A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Studio Devices (AREA)

Abstract

【課題】仮想視点のパラメータ操作を制約下で行うか非制約下で行うかをユーザが選択できるようにする。【解決手段】複数のカメラが撮影した複数の撮影画像から仮想視点画像を生成するためのパラメータを提供する情報処理装置は、ユーザ操作を受け付ける入力部と、入力部が受け付けた第1のユーザ操作に基づいて仮想視点のパラメータを制御する制御部と、入力部が受け付けた第2のユーザ操作に基づいて仮想視点のパラメータに対する制約が有効か無効かを決定する決定部とを備える。制御部は、決定部により有効と決定された制約と、入力部が受け付けた第1のユーザ操作とに基づいて仮想視点のパラメータを更新する。【選択図】 図5

Description

本発明は、仮想視点を指定する操作を行なうための情報処理装置およびその制御方法に関する。
近年、複数のカメラを異なる位置に設置して多視点で同期撮影し、当該撮影により得られた複数視点画像を用いて、カメラ設置位置の画像だけでなく任意の視点からなる仮想視点画像を生成する技術が注目されている。複数視点画像に基づく仮想視点画像の生成及び閲覧は、複数のカメラが撮影した画像をサーバなどの画像処理部に集約し、前記画像処理部にて、仮想視点に基づくレンダリングなどの処理を施し、ユーザ端末に仮想視点画像を表示することで実現できる。仮想視点画像を用いたサービスでは、例えば、サッカーやバスケットボールの試合を撮影した映像から、映像制作者によって迫力のある視点のコンテンツを制作できる。また、コンテンツを視聴しているユーザ自身が自由に視点を移動しながら、試合観戦したりすることができるようにもなり、ユーザに高臨場感を与えることができる。
特許文献1では、コンテンツを視聴するユーザが仮想視点を移動する場合において、ユーザが視点を移動して欲しくない位置に仮想視点を移動させること、及び、向けて欲しくない方向に仮想視点を向けることができないように設定可能とする技術が示されている。仮想視点の位置や方向に対する制限は、予めコンテンツ提供者によって定められており、その内容はコンテンツに含めて提供される。
特開2007−195091号公報
特許文献1の技術は、仮想視点の位置と視点に制限をかけることを可能とする。しかし、仮想視点の位置と視点に制限をかけるか否かは予めコンテンツの提供者により設定されてしまう。すなわち、映像制作者が仮想視点の位置や視点を自由に変化させるか、それとも位置や視点に制限をかけるかを制御することはできない。
本発明は、仮想視点のパラメータ操作を制約下で行うか非制約下で行うかをユーザが選択できるようにすることを目的とする。
本発明の一態様による画像処理システムは、以下の構成を備える。すなわち、
複数のカメラが撮影した複数の撮影画像から仮想視点画像を生成するためのパラメータを提供する情報処理装置であって、
ユーザ操作を受け付ける入力手段と、
前記入力手段が受け付けた第1のユーザ操作に基づいて仮想視点のパラメータを制御する制御手段と、
前記入力手段が受け付けた第2のユーザ操作に基づいて前記仮想視点のパラメータに対する制約が有効か無効かを決定する決定手段と、を備え、
前記制御手段は、前記決定手段により有効と決定された制約と、前記入力手段が受け付けた前記第1のユーザ操作とに基づいて仮想視点のパラメータを更新する。
本発明によれば、仮想視点のパラメータ操作を制約下で行うか非制約下で行うかをユーザが選択できる。
(a)第1実施形態による画像処理システムの構成例を示すブロック図、(b)情報処理装置のハードウェア構成例を示すブロック図。 情報処理装置における入出力部を説明する図。 第1実施形態による仮想カメラのカメラパラメータを説明する図。 第1実施形態による情報処理装置の機能構成例を示したブロック図。 仮想カメラ制御部と制約決定部による処理を示すフローチャート。 (a)球面上オートパンと球面上オートチルトを説明する図、(b)平面上オートパンと平面上オートチルトを説明する図、(c)オートドリーズームを説明する図。 仮想カメラの制約を変更する処理を示すフローチャート。 (a)、(b)仮想カメラの制約の有効化と無効化を指示する方法の例を示す図。 (a)制約決定部が制約の形状と対象点を算出する処理を示す図、(b)(c)対象点が仮想カメラの後方に存在する場合の例を示す図。 仮想カメラの制約の無効化条件を算出する処理を示すフローチャート。 仮想カメラのパラメータを変更する処理を示すフローチャート。 ユーザの入力に応じて対象点を移動させる処理を示すフローチャート。 (a)対象点の位置の更新と仮想視点の移動を説明する図、(b)ユーザが仮想カメラの制約の対象点の位置を指定する手段の一例を示す図。 第2実施形態による情報処理装置の機能構成例を示すブロック図。 第2実施形態による制約と対象点を算出する処理を説明する図。 (a)第3実施形態における画像処理システムの全体構成を説明する図、(b)第3実施形態による情報処理装置の機能構成例を示すブロック図。 (a)第3実施形態による対象点の位置の更新処理を説明するフローチャート、(b)ユーザが複数の物体の中から一つの物体を指定する方法の一例を示す図。
以下、図面を参照しながら本発明の実施形態について説明する。
映像制作者は、試合のシーン、具体的には選手やボールの動きなどに応じて、そのシーンを迫力ある映像として見せるのに最適な仮想視点の位置や向きを指定する必要がある。このとき、シーンに応じて、仮想視点の位置や方向を自由に変化させたい場合と、制約に沿って位置と方向を変化させたい場合がある。制約に沿って仮想視点の位置と方向を変化させる場合には、例えば仮想視点の位置を競技場のラインに沿うように移動させる、あるいは、仮想視点が常に特定の選手を向くよう視点の方向を変化させる、といったことが考えられる。以下に説明する情報処理装置では、仮想カメラの視点の位置と方向が常に制約を満たすよう、仮想視点の位置や方向の変化を制限する制約下での操作と、仮想視点の位置や方向を自由に変化させることができる非制約下での操作が可能である。
<第1実施形態>
図1(a)は、第1実施形態による画像処理システム10の構成例を示すブロック図である。画像処理システム10は、撮影システム101、画像生成サーバ102、情報処理装置103を有する。画像処理システム10は、仮想視点画像を生成することが可能である。撮影システム101は、異なる位置に配置された複数のカメラを用いて同期撮影を行い、多視点からの複数画像を取得する。多視点からの同期撮影により得られた複数の画像は、画像生成サーバ102に送信される。画像生成サーバ102は、撮影システム101から送信された複数の画像を元に、仮想カメラから見た仮想視点画像を生成する。仮想カメラとは、撮影空間内を自由に動ける仮想的なカメラである。画像生成サーバ102は、撮影システム101が有するどのカメラとも異なる視点から見た画像、つまり仮想視点画像を生成することができる。仮想カメラの視点は、情報処理装置103が決定する仮想カメラのカメラパラメータによって表現される。
画像生成サーバ102は、受信した複数画像から順次仮想視点画像を生成すること、つまり、ライブ仮想視点画像を生成することが可能である。なお、画像処理システム10が生成できるライブ仮想視点画像は、現在時刻に対して撮影システム101および画像生成サーバ102での処理遅延を考慮した時刻において撮影システム101が撮影した撮影画像に基づく仮想視点画像である。さらに、画像生成サーバ102は、データベースを有し、撮影システム101から受信した複数の画像を記録する機能を有する。したがって、画像生成サーバ102は、記録した複数の画像から、過去の仮想視点画像、つまりリプレイ仮想視点画像を生成することが可能である。リプレイ仮想視点画像は、任意の時刻において撮影システム101が撮影した撮影画像に基づく仮想視点画像である。なお、特に断りがない限り、以降の説明に於いて画像という文言が動画と静止画の両方の概念を含むものとして説明する。すなわち、画像処理システム10は、静止画及び動画の何れについても処理可能である。
情報処理装置103は、複数のカメラが撮影した複数の撮影画像から仮想視点画像を生成するためのパラメータを提供する。すなわち、情報処理装置103は、仮想カメラを制御し、仮想カメラの視点を表すカメラパラメータを決定する。仮想カメラのカメラパラメータは、位置、姿勢、ズームを指定するための少なくともいずれか一つのパラメータを含む。仮想カメラのカメラパラメータは、時刻を指定するためのパラメータを含んでもよい。カメラパラメータにより指定される仮想カメラの位置は、3次元座標を示すものであってもよい。また、仮想カメラのカメラパラメータにより指定される位置は、X軸、Y軸、Z軸の3軸の直交座標系(世界座標系)の座標により示されてもよい。この場合、仮想カメラのカメラパラメータにより指定される位置は、座標を示すものであり、X軸、Y軸、Z軸の3軸のパラメータから構成されてもよい。なお、原点は撮影空間内の任意の位置としてもよい。
カメラパラメータにより指定される仮想カメラの姿勢は、パン、チルト、ロールの3軸とのなす角度により示されてもよい。この場合、カメラパラメータにより指定される仮想カメラの姿勢はパン、チルト、ロールの3軸のパラメータから構成されてもよい。カメラパラメータにより指定される仮想カメラのズームは、例えば、焦点距離の1軸により示され、ズームと時刻はそれぞれ1軸のパラメータである。よって、仮想カメラのカメラパラメータは少なくとも8軸のパラメータを有する。情報処理装置103はこれらの8軸を制御可能である。なお、カメラパラメータは他の要素を規定するパラメータを含んでもよいし、上述した8軸のパラメータの全てを含まなくてもよい。
情報処理装置103は、決定した仮想カメラのカメラパラメータを画像生成サーバ102へ送信する。次に、画像生成サーバ102は、受信したカメラパラメータを元に仮想視点画像を生成し、情報処理装置103へ送信する。次に、情報処理装置103は、受信した仮想視点画像をカメラビューへ表示する。なお、本実施形態のように1台の画像生成サーバ102でライブ仮想視点画像とリプレイ仮想視点画像を生成してもよいし、2台の画像生成サーバ102を用意して、ライブ仮想視点画像とリプレイ仮想視点画像を異なる装置で生成するようにしてもよい。
図1(b)は、情報処理装置103のハードウェア構成例を示すブロック図である。CPU111は、RAM112および/またはROM113に格納されているコンピュータプログラムやデータを用いて情報処理装置103の全体を制御する。RAM112は随時に読み書きが可能なメモリである。RAM112は、ROM113から読み出されたコンピュータプログラム、CPU111による計算の途中結果、通信部114を介して外部から供給されるデータ、などを一時的に記憶する。ROM113は、読み出し専用のメモリであり、例えば、変更を必要としないコンピュータプログラムやデータを保持する。通信部114は、EthernetやUSBなどの通信手段を有し、画像生成サーバ102との通信を行う。入出力部115は仮想カメラを制御するためのコントローラと、仮想カメラの状態などを表示する表示部を有する。
図2は、情報処理装置103における入出力部115を説明する図である。表示部201は、カメラビューウィンドウを表示する。カメラビューウィンドウとは、画像生成サーバ102から受信した仮想視点画像を表示するためのウィンドウである。また表示部201は、パイロットウィンドウを表示する。パイロットウィンドウは、仮想カメラを制御するためのウィンドウである。また表示部201は、リプレイウィンドウを表示する。リプレイウィンドウは、リプレイ仮想視点画像を生成及び編集するためのウィンドウである。
入出力部115は、3つのコントローラを有する。入出力部115は、これらのコントローラへのユーザからの操作に応じた、仮想カメラの制御を行うための指示を受け付ける。つまり、入出力部115は、仮想カメラの位置・姿勢などを変化させるためのユーザ操作を受け付ける。6軸コントローラ202は、仮想カメラの6軸の操作が可能なコントローラである。それぞれの軸には設定により任意の制御を割り当てることが可能である。例えば、6軸コントローラ202のジョイスティックは、仮想カメラの位置を指定するためのX軸、Y軸、Z軸の3軸の制御と、仮想カメラの姿勢を指定するためのパン、チルト、ロールの3軸の制御を行う。ズームコントローラ203は、仮想カメラのズームを制御するコントローラである。リプレイコントローラ204は、リプレイ仮想視点画像を生成するための機能を制御するコントローラである。また、リプレイコントローラ204は仮想カメラの時刻の制御も行う。
なお、図2に示す入出力部115は、一例に過ぎず、複数の表示部201を有する構成であってもよい。また、入出力部115は、2つ以下または4つ以上のコントローラを有する構成であってもよい。また、入出力部115はポインティングデバイスを備えてもよい。この場合、ユーザはポインティングデバイスを用いて、表示部201に表示されたウィンドウに含まれるGUI部品を選択することができる。また、表示部201はタッチパネルの機能を有してもよい。この場合、ユーザは表示部201をタッチすることで、表示部201に表示されたウィンドウに含まれるGUI部品を選択することができる。
図3は、本実施形態による仮想カメラのカメラパラメータを説明する図である。仮想カメラのカメラパラメータは、仮想カメラの位置を、左右方向であるX軸301、前後方向であるY軸302、上下方向であるZ軸303の3軸の直交座標系(カメラ座標系)の原点の世界座標系における座標により示す。また、カメラパラメータは、仮想カメラの姿勢を、Z軸303中心の回転であるパン306、X軸301中心の回転であるチルト304、Y軸302中心の回転であるロール305の角度により示す。
図4は、第1実施形態において、CPU111がコンピュータプログラムを実行することにより実現される機能構成例を示したブロック図である。仮想カメラ制御部401は、入出力部115から仮想カメラの制御を行うためのユーザ操作による入力を受け取ると、仮想カメラのパラメータを更新する。仮想カメラ制御部401は更新した仮想カメラのパラメータを、通信部114を介して画像生成サーバ102へ送信する。制約決定部402は、入出力部115から仮想カメラのためのユーザ操作による入力を受け取ると、仮想カメラの制約の有効と無効の切り替え、制約内容の決定を行う。仮想カメラ制御部401は、仮想カメラの制約が有効な場合、この制約を満たすように仮想カメラのパラメータを更新する。
図5は、図3に示した仮想カメラ制御部401と制約決定部402による処理の流れを示すフローチャートである。本処理は定期的に実行される。
まず仮想カメラ制御部401と制約決定部402は、入出力部115からユーザによる入力情報を受け取る(S501)。制約決定部402は、S501で受け取った入力情報が、仮想カメラの制約変更を指示するか判定する(S502)。仮想カメラの制約変更を指示すると判定された場合(S502:YES)、制約決定部402は、仮想カメラの制約を変更し(S503)、処理をS504へ進める。なお、仮想カメラの制約を変更する処理については、図7により後述する。他方、仮想カメラの制約変更の指示ではないと判定された場合(S502:NO)、処理はS504へ進む。
仮想カメラ制御部401は、S501で受け取った入力情報が、仮想カメラのパラメータ変更を指示するか判定する(S504)。仮想カメラのパラメータ変更を指示すると判定された場合(S504:YES)、制約決定部402は、仮想カメラの制約が有効であるか判定する(S505)。仮想カメラの制約が有効であると判定された場合(S505:YES)、仮想カメラ制御部401は、S501で受け取った 入力情報と、有効である仮想カメラの制約とに基づいて、仮想カメラのパラメータを変更する(S507)。仮想カメラの制約を用いて仮想カメラのパラメータを変更する処理については、図11により後述する。仮想カメラの制約が無効であると判定された場合(S505:NO)、仮想カメラ制御部401は、入力情報に基づいて仮想カメラのパラメータを変更する(S506)。S504で仮想パラメータの変更の指示ではないと判定された場合、S506の処理を終えた後、または、S507の処理を終えた後、処理はS508へ進む。
制約決定部402は、仮想カメラの制約の無効化条件を算出し(S508)、無効化条件が満たされているか判定する(S509)。無効化条件が満たされていると判定された場合(S509:YES)、制約決定部402は、仮想カメラの制約を無効化する(S510)。S509で無効化条件が満たされていないと判定された場合、あるいは、S510で仮想カメラの制約を無効化した後、本処理を終える。無効化条件の算出の処理(S508)については、図10のフローチャートにより後述する。
次に、仮想カメラに対する制約について説明する。図6は、第1実施形態における仮想カメラの制約を説明する図である。制約決定部402は5つの仮想カメラの制約を備えている。すなわち、「球面上オートパン」「球面上オートチルト」「平面上オートパン」「平面上オートチルト」「オートドリーズーム」の5つである。
まず、図6(a)により球面上オートパンと球面上オートチルトについて説明する。これらの制約は3次元空間内の仮想球面601を使用する。これらの制約が有効になると、仮想カメラの位置603は仮想球面601の面上に制限される。また仮想カメラの方向(姿勢)は、常に仮想球面601の中心である対象点602を通る方向を向くよう制限される。球面上オートパンは、仮想カメラのX軸方向の移動に対して上記の制約を適用し、仮想カメラを仮想球面601の面上の経路604に沿って移動する。球面上オートチルトは、仮想カメラのZ軸方向の移動に対して上記の制約を適用し、仮想カメラを仮想球面601の面上の経路605に沿って移動する。
次に、図6(b)を用いて平面上オートパンと平面上オートチルトについて説明する。これらの制約は3次元空間上に存在する仮想平面606を使用する。これらの制約が有効になると、仮想カメラの位置608は仮想平面606の面上に制限される。また仮想カメラの方向(姿勢)は、常に対象点607を通る方向を向くよう制限される。なお、対象点607については図9により後述する。平面上オートパンは、仮想カメラのX軸の移動に対して上記の制約を適用する。経路609はX軸の移動を示す。平面上オートチルトは、仮想カメラのZ軸の移動に対して上記の制約を適用する。経路610はZ軸の移動を示す。
次に、図6(c)を用いて、オートドリーズームについて説明する。ドリーズームとは、被写体との距離を変化させながら、同時にズームイン、ズームアウトを行い、映像内の被写体の大きさを同一に保つ撮影手法である。オートドリーズームは、仮想カメラの位置611とドリーズーム対象点612との距離が変化したとき、仮想カメラのズームを変化させ、対象点にある被写体の大きさを同一に保つ制約である。画角613は、距離が変化する前(位置611に仮想カメラが有る場合)のズーム値によって示される画角を示す。位置614は、距離が変化した後の仮想カメラの位置を示す。画角615は距離が変化した後のズーム値が示す画角である。画角615を示すズーム値は、オートドリーズームの制約に基づいて自動的に決定される。
図7は、仮想カメラの制約を変更する処理(図5のS503)の詳細を示すフローチャートである。
制約決定部402は、入出力部115からの入力情報が、上述した5つの制約(球面上オートパン、球面上オートチルト、平面上オートパン、平面上オートチルト、オートドリーズーム)のうちいずれを有効にする入力であるかを判定する(S701)。制約の有効/無効の切り替えを行うための入出力部115の構成については、図8により後述する。有効にする入力と判定された場合(S701:YES)、制約決定部402は、仮想カメラ制約の形状と対象点を算出する(S702)。制約決定部402は、形状と対象点の算出に成功したか判定する(S703)。算出に失敗したと判定された場合(S703:NO)、制約決定部402は、RAM112に記録されている形状と対象点を消去する(S704)。その後、処理はS708へ進む。一方、算出に成功したと判定された場合(S703:YES)、制約決定部402は、算出された形状と対象点をRAM112に記録する(S705)。そして、制約決定部402は、入力情報によって指定された制約と同時に成り立たない制約を無効化する(S706)。例えば、球面上オートチルトを有効化する指示があったときに平面上オートパンあるいは平面上オートチルトが有効であった場合、平面上オートパンおよび平面上オートチルトは無効化される。制約決定部402は、入力情報によって指定された制約を有効化し(S707)、処理をS708へ進める。なお、対象点の算出については、図9により後述する。
次に、制約決定部402は、入出力部115からの入力情報が、上述した5つの制約のうちいずれかを無効にする入力であるか否かを判定する(S708)。無効にする入力であると判定された場合(S708:YES)、制約決定部402は、RAM112に記録されている形状と対象点を消去し(S709)、指定された制約を無効にする(S710)。
S706の処理(競合する制約を無効化する処理)について詳細を説明する。本実施形態においては、球面上オートパンまたは球面上オートチルトの有効化が指示された場合、平面上オートパンと平面上オートチルトの両方が無効化される。また平面上オートパンまたは平面上オートチルトの有効化が指示された場合、球面上オートパンと球面上オートチルトの両方が無効化される。
図8(a)は、仮想カメラの制約の有効化と無効化を指示する方法の一例を示す図である。6軸コントローラ202は、仮想カメラのパラメータ変更と、仮想カメラの制約の有効化と無効化を指示する機能を有する。6軸コントローラ202は、6個のボタン(810、811、820、821、830)と、2個の3軸ジョイスティック(814a、814b)を有する。6軸コントローラ202は6軸の制御が可能である。以下、本実施形態による6軸コントローラ202の各部と機能について説明する。
3軸ジョイスティック814aにX、Y、Zの3軸の制御が割り当てられ、もう一つの3軸ジョイスティック814bにパン、チルト、ロールの3軸の制御が割り当てられている。3軸ジョイスティック814aにおいて、左右への倒しにはX軸方向への移動が、前後への倒しにはZ軸方向への移動が割り当てられ、スティックの軸のひねりにはY軸方向への移動が割り当てられている。また、3軸ジョイスティック814bにおいて、左右への倒しにはパンが、前後への倒しにはチルト、スティックの軸のひねりにはロールが割り当てられている。ボタン810には球面上オートパンの有効と無効の切り替えが割り当てられている。ボタン811には球面上オートチルトの有効と無効の切り替えが割り当てられている。ボタン820には平面上オートパンの有効と無効の切り替えが割り当てられている。ボタン821には平面上オートチルトの有効と無効の切り替えが割り当てられている。ボタン830にはオートドリーズームの有効と無効の切り替えが割り当てられている。
図8(b)は、仮想カメラの制約の有効化と無効化を指示する方法の別な一例を示す図である。ウィンドウ851は、表示部201に表示され、仮想カメラの制約の有効と無効を指定する機能を有する。入出力部115がポインティングデバイスやタッチパネルを備える場合、ユーザはそれらを用いてウィンドウ851に表示されたGUI部品852から856を選択することができる。ここで、GUI部品852は球面上オートパンの有効と無効を切り替える機能を持つ。GUI部品853は球面上オートチルトの有効と無効を切り替える機能を持つ。GUI部品854は平面上オートパンの有効と無効を切り替える機能を持つ。GUI部品855は平面上オートチルトの有効と無効を切り替える機能を持つ。GUI部品856はオートドリーズームの有効と無効を切り替える機能を持つ。
図9(a)は、S702における、制約決定部402が制約の形状と対象点を算出する処理の詳細を示す図である。図9(a)では、仮想カメラの位置と姿勢、及び地表面を真横から見た状態を示す。図9(a)において、901は仮想カメラの位置を示している。902は仮想カメラが向く方向、つまり仮想カメラの光軸を示している。903は地表面を表している。地表面903から特定の高さにあり、地表面と平行な面904を定義し、仮想カメラの光軸902と面904が交わった位置を対象点905とする。なお、面904の地表面903からの高さは事前に決定されていても良いし、ユーザが設定できるようにしても良い。
S701で有効化された制約が球面上オートパンまたは球面上オートチルトの場合、仮想球面601は、対象点905と仮想カメラの位置901との距離を半径とし、対象点905を中心とする球により規定される。制約の形状はこの半径の値とする。また、S701で有効化された制約が平面上オートパンまたは平面上オートチルトの場合、仮想平面606は、仮想カメラの位置901を通る平面907とする。このとき、仮想カメラの位置901から面904への垂線の足を点908とすると、平面907は、点908から対象点905へのベクトルと垂直になる平面である。制約の形状はこの平面を表す式とする。対象点905が仮想カメラから見て前方(撮影方向側)に存在する場合は、対象点の算出に成功したと判定される。他方、対象点905が仮想カメラから見て後方に存在する、あるいは仮想カメラの光軸902と面904が並行で交わらない場合は、対象点の算出に失敗したと判定される。
図10は、S508が示す、仮想カメラの制約の無効化条件を算出する処理の詳細を示すフローチャートである。制約決定部402は、仮想カメラの制約の形状と対象点を算出する(S1001)。この処理はS702が示す処理と同様である。制約決定部402は、S1001で算出された対象点が、仮想カメラの後方(撮影方向の逆方向の側)に存在するか判定する(S1002)。対象点が仮想カメラの後方に存在すると判定された場合(S1002:YES)、仮想カメラの制約の無効化条件をTrueに設定する(S1008)。対象点が仮想カメラの後方に存在する場合の一例を、図9の(b)と(c)に示す。図9(b)では、仮想カメラの位置901が面904の高さより低く、かつ仮想カメラの姿勢が地表面903を向いているため、対象点905が仮想カメラの後方に位置している。図9(c)では、仮想カメラの位置901が面904の高さより高く、かつ仮想カメラの姿勢が地表面903を向いていないため、対象点905が仮想カメラの後方に位置している。
制約決定部402は、S1001で算出された対象点と仮想カメラとの距離が、閾値d0以上であるか判定する(S1003)。閾値d0以上であると判定された場合(S1003:YES)、制約決定部402は、仮想カメラの制約の無効化条件をTrueに設定する(S1008)。d0は、例えばスタジアムの横幅の長さを取る。例えば仮想カメラが常に特定の選手やボールを向くよう制御したい場合、対象点までの距離が一定以上大きな値、例えばスタジアムの横幅を超えることはない。よって対象点までの距離がスタジアムの横幅を超える場合は、制約決定部402は、仮想カメラの制約を無効化する。
制約決定部402は、現在の仮想カメラの焦点距離が閾値f0以下であるか判定する(S1004)。閾値f0以下であると判定された場合(S1004:YES)、制約決定部402は、仮想カメラの制約の無効化条件をTrueに設定する(S1008)。例えば、オートドリーズームの制約が有効である場合、仮想カメラが対象点に近づくほど焦点距離が短くなり、その結果、画角が広角になる。画角が広角になると画像の周辺部が歪むため、視聴に耐えない映像となる可能性がある。よって焦点距離が一定以下の場合は、制約決定部402は、仮想カメラの制約を無効化する。
制約決定部402は、現在の仮想カメラの位置が特定範囲の外に存在するか判定する(S1005)。特定範囲の外に存在する場合(S1005:YES)、制約決定部402は、仮想カメラの制約の無効化条件をTrueに設定する(S1008)。特定範囲は、例えば地表面より高い位置にある空間を取る。したがって、ユーザ操作により仮想カメラの位置が地表に到達した場合には、仮想カメラの位置が特定範囲の外となるため、制約決定部402は、仮想カメラの制約を無効化する。また、制約決定部402は、入出力部115からの入力がない状態で一定時間が経過したか判定する(S1006)。一定時間が経過したと判定された場合(S1006:YES)、仮想カメラの制約の無効化条件をTrueに設定する(S1008)。
制約決定部402は、S1008で仮想カメラの制約の無効化条件をTrueに設定した後、仮想カメラの制約の形状と対象点をRAM112から消去する(S1010)。他方、制約決定部402は、S1002からS1006までの全ての条件が満たされない場合、仮想カメラの制約の無効化条件をFalseに設定する(S1007)。そして、制約決定部402は、S1001で算出した仮想カメラの制約の形状と対象点をRAM112に記録する(S1009)。こうして、制約を有効化した時点における仮想視点の位置と方向の少なくともいずれかに基づいて、有効化した制約の内容が決定される。
図11は、図5のS507で実行される、入出力部115からの入力と 仮想カメラの制約に基づいて仮想カメラのパラメータを変更する処理の詳細を示すフローチャートである。本処理は、仮想カメラ制御部401が入出力部115から取得した、仮想カメラの各軸の変更を指示する入力(例えば、3軸ジョイスティック814a、814bへの操作)に対して実行される。
仮想カメラ制御部401は、仮想カメラ制約の形状と対象点の情報がRAM112に記録されているかを判定する(S1101)。記録されている場合(S1101:YES)、処理はS1102以降へ進み、設定されている制約下で仮想カメラのカメラパラメータが制御される。球面上オートパンが有効であり、かつ、入出力部115からの入力がX軸の入力であると判定された場合(S1102:YES)、仮想カメラ制御部401は仮想カメラの位置と姿勢を更新する(S1104)。具体的には、まず、制約決定部402は、入力を元に仮想カメラの位置を更新し、更新した位置と仮想球面601の対象点602とを結ぶ直線を引き、その直線と、仮想球面601が交わる点を新しい仮想カメラの位置とする。そして、制約決定部402は、仮想カメラの光軸が仮想球面601の対象点602を通るよう、仮想カメラの姿勢を更新する。球面上オートチルトが有効であり、かつ、入出力部115からの入力がZ軸の入力であると判定された場合(S1103:YES)、仮想カメラ制御部401は仮想カメラの位置と姿勢を球面上オートチルトの制約下で更新する(S1104)。S1104の処理(球面上オートチルトの制約下での仮想カメラの位置および姿勢の更新)の詳細は上述の球面上オートパンの制約下での仮想カメラの位置および姿勢の更新と同様である。
S1102とS1103においてNOと判定された場合、処理はステップS1105以降へ進む。平面上オートパンが有効であり、かつ、入出力部115からの入力がX軸の入力であると判定された場合(S1105:YES)、仮想カメラ制御部401は平面上オートパンの制約下で仮想カメラの位置と姿勢を更新する(S1107)。具体的には、制約決定部402は、入力を元に仮想カメラの位置を更新し、更新した位置と仮想平面の対象点607とを結ぶ直線を引き、その直線と、仮想平面606が交わる点を新しい仮想カメラの位置とする。また、制約決定部402は、仮想カメラの光軸が仮想平面の対象点607を通るよう、仮想カメラの姿勢を更新する。平面上オートチルトが有効であり、かつ、入出力部115からの入力がZ軸の入力であると判定された場合(S1106:Yes)、仮想カメラ制御部401は仮想カメラの位置と姿勢を更新する(S1107)。S1107の処理(平面上オートチルトの制約下での仮想カメラの位置および姿勢の更新)の詳細は上述の平面上オートパンの制約下での仮想カメラの位置および姿勢の更新と同様である。
仮想カメラ制御部401は、オートドリーズームが有効であり、かつ、入出力部115からの入力がY軸の入力であるか判定する(S1108)。判定結果がYESの場合(S1108:Yes)、仮想カメラ制御部401は、仮想カメラのズームを更新する(S1109)。具体的には、制約決定部402は、Y軸の入力を元に仮想カメラの位置を更新し、変更後の位置に応じてズーム値を更新する。ズーム値の更新は、例えば以下のように行われ得る。更新前の仮想カメラの位置611とドリーズーム対象点612の距離をd、更新後の仮想カメラの位置614とドリーズーム対象点612の距離をd'、仮想カメラのズームを表す焦点距離の値をfとする。このとき、制約決定部402は、以下の数1により算出されるf'の値を、新しい仮想カメラのズームの値とする。
Figure 2019152903
仮想カメラの制約と対象点がRAM112に記録されていない場合(S1101:NO)、または仮想カメラの制約と入力情報が上記S1102〜S1108のいずれの条件も満たさない場合、処理はS1110へ進む。この場合、仮想カメラ制御部401は、入力情報に基づいて仮想カメラの位置と姿勢を更新する(S1110)。
S1110の処理について説明する。S1110が示す処理は、仮想カメラの制約に関連がない入力があった場合、その入力に基づいて仮想カメラの制約の形状と対象点を変化させる。例えば球面上オートパンの制約に関連がある入力はX軸の入力である。球面上オートパンの制約が有効で、かつY軸を変更する入力があった場合、S1110で、仮想カメラのY軸の値が変化する。そしてS1001で、制約の形状と対象点が再び算出される。この結果、球面上オートパンの制約に使われる球面906の半径が変化する。この変化した半径は、S1009でRAM112に記録される。
なお、オートドリーズームの結果、焦点距離が一定値以下になる場合、仮想カメラ制御部401は、そのようなY値の変更を無視する。例えば、Y値の値が増えて対象点を超えてしまった場合、焦点距離は負の値になるため、このような変更は無視される。また焦点距離を短くし画角を広角にするほど画像の周辺部は歪む。したがって、仮想カメラ制御部401は、焦点距離を一定値以下にする変更を無視するようにしてもよい。また、オートパンとオートチルトの一方が有効で他方が無効である場合に、無効な制約に関連する軸の入力を無視するようにしてもよい。例えば、球面上オートパンが有効で球面上オートチルトが無効になっている場合に、Z軸の入力を無視するようにしてもよい。
図12は、ユーザの入力に応じて仮想カメラの制約の対象点を移動させる処理の例を示すフローチャートである。例えばスポーツ選手などの被写体が移動するシーンでは、移動する被写体に合わせて仮想カメラの制約の対象点を移動することで、仮想カメラ画像の中央に被写体を映し続けることができる。このような状況において本処理は有効である。本処理は一定時間おきに実行される。
制約決定部402は、入出力部115から入力情報を取得する(S1201)。制約決定部402は、S1201で取得した入力情報が、対象点の位置を指定するか判定する(S1202)。対象点の位置を指定すると判定された場合(S1202:YES)、制約決定部402は、入力情報に基づいてRAM112に記録された対象点の位置を更新する(S1203)。仮想カメラ制御部401は、S1203で更新された新たな対象点の位置p1と、更新される前の対象点の位置p0を元に、仮想カメラのパラメータを更新する(S1204)。
図13(a)は、S1203による対象点の位置の更新処理を説明する図である。対象点1301は更新前の対象点の位置p0を、対象点1302は移動後の対象点の位置p1を示す。また、位置1303は更新前の仮想カメラの位置を示し、位置1304は、S1204によって更新された仮想カメラの位置を示す。仮想カメラ制御部401は、仮想カメラの位置1303に、対象点の位置p0から位置p1までの位置の変化量を加えることで新たな仮想カメラの位置1304を算出し、この値で仮想カメラの位置を更新する。S1203で、平面上オートパン、平面上オートチルト、及びオートドリーズームが有効である場合、仮想カメラがp1を向くよう仮想カメラの姿勢を変更する。この場合、仮想カメラの位置は1303が示す位置のまま変更しない。
図13(b)は、ユーザが仮想カメラの制約の対象点の位置を指定する手段の一例を示す図である。1311は表示部201に表示される仮想視点画像である。マーカー1312は、仮想視点画像1311において現在の対象点の位置を示す。カーソル1313は、入出力部115が備えるポインティングデバイスによって操作される。ユーザはポインティングデバイスを用いてカーソル1313を操作し、マーカー1312を仮想視点画像1311内の別な位置へドラッグアンドドロップすることで、その位置を新たな対象点として指定することができる。
このとき、制約決定部402は、仮想カメラの位置と、ユーザが選択した任意の位置を結ぶ直線lを求める。この直線lは、仮想カメラの位置と、仮想カメラから見て以下の位置にある点を通る直線である。
Figure 2019152903
ここで、Xはユーザが選択した仮想視点画像1311中のX座標の値、Yはユーザが選択した仮想視点画像中のY座標の値である。fx、fy、px、pyは、仮想カメラをピンホールカメラモデルで表した場合の内部パラメータであり、fx、fyは、仮想カメラの焦点距離、px、pyは、仮想カメラが備えるレンズの光学的な中心である。直線lと、面904が交わった位置を対象点905とする。
なお、図12が示す処理によってユーザが仮想カメラの制約の対象点を指定する場合、仮想カメラ制御部401は、S1110、S1001、S1009が示す処理を実行しないようにしてもよい。これらの処理は、仮想カメラの制約に関連がない入力があった場合、仮想カメラの制約の形状と対象点を変化させる。例えば球面上オートパンの制約が有効であり、かつY軸を変更する入力があった場合、仮想カメラの制約である球面906の半径を変化させる。これらの処理も、図12が示す処理も、入力に基づいて対象点を変更する機能を有する。そのため、図12が示す処理が実行される場合、これらの処理を実行しないようにしてもよい。
なお、図13(b)において、マーカー1312はドラッグアンドドロップの操作により移動したが、その他の操作で移動してもよい。例えば仮想視点画像1311内にカーソル1313を合わせ、クリックする操作で移動してもよい。また、入出力部115がタッチパネルを備える場合、ユーザはタッチパネルを触れることでマーカー1312を移動させてもよい。
なお、第1実施形態では、ユーザは入出力部115を介して仮想カメラのパラメータを制御することができるが、仮想視点の位置と姿勢を制御可能として、仮想視点のパラメータを制御するようにしてもよい。この場合、仮想カメラ制御部401は、仮想視点制御を行う構成となり、制約決定部402は、仮想視点の制約を決定する構成となる。なお、この場合、ズームを制御できないため、オートドリーズームの制約を使用することはできないが、その他の制約は使用可能である。また、仮想視点の位置や方向の変化が制限された状態で入出力部115が仮想カメラパラメータの変更の指示を受け付けた場合、制約に従わない仮想カメラのパラメータの変更を無視または制約に従った仮想カメラのパラメータの変更に修正してもよい。
以上のように、第1実施形態によれば、映像制作者は、仮想視点の位置や方向に対する制約を制御することができ、仮想視点の位置や方向の自由な制御と、仮想視点の位置や方向の変化が制限された状態での制御の両方を行うことができる。その結果、映像制作者は、試合のシーンに応じて適切な方法で仮想視点を制御することができる。
<第2実施形態>
第1実施形態では、図9が示す通り、仮想カメラの光軸902と面904の交点を仮想カメラの制約における対象点905とした。しかし、この面904の最適な高さは状況に応じて異なる。例えば被写体が2mの高さに位置する場合、面904の高さは2mであることが望ましいが、被写体が高さ50cmの高さに位置する場合、面904の高さは50cmであることが望ましい。もし被写体が人物である場合、その人物が大人か子供か、あるいは立っているか屈んでいるかで高さは容易に変わりうる。第1実施形態では、常に同じ高さを用いるか、あるいはユーザが手動で面904の高さを設定する構成を示した。手動による面904の高さの変更はユーザの操作負荷を高める。第2実施形態では、仮想カメラから見た被写体の距離情報を用いて対象点の位置を算出する。
図14は、第2実施形態による情報処理装置103の機能構成例を示すブロック図である。第1実施形態と同様、図14に示される各機能は、例えばCPU111が、所定のコンピュータプログラムを実行することにより実現され得る。情報処理装置103は、仮想カメラ制御部401、制約決定部402に加えて、距離情報取得部1401を有する。距離情報取得部1401は、通信部114を通じて、画像生成サーバ102から距離情報を取得する。
第2実施形態において、画像生成サーバ102は、多視点から同期撮影した複数の画像を元に被写体の三次元形状を復元する。画像生成サーバ102は、仮想カメラの画像を生成する際、この三次元形状と仮想カメラのカメラパラメータを元に、仮想カメラに映る被写体と仮想カメラ間の距離を算出する。以下、この距離情報は、仮想カメラのカメラパラメータと同じカメラパラメータを用いて作成された距離画像であるとする。距離情報取得部1401は、通信部114を通じて、この距離画像を画像生成サーバ102から取得する。そして、制約決定部402は、距離情報取得部1401が取得した距離画像を元に対象点の位置を算出する。
図15は、第2実施形態において、制約決定部402が制約の形状と対象点を算出する処理を示す図である。本処理は、例えば、S702において実行される。図15は、真横から見た仮想カメラの位置と姿勢、及び対象点を示す。制約決定部402は、距離情報取得部1401から取得した距離画像を用いて、仮想カメラの位置901から、仮想カメラの画像中心に映る被写体までの距離を算出する。次に、仮想カメラの位置901から、仮想カメラの光軸902に沿ってこの算出された距離だけ進んだ位置にある点941を求める。制約決定部402は、有効化された制約に応じて、点941を、仮想球面601の対象点602、仮想平面606の対象点607、ドリーズーム対象点612として用いる。
なお、第2実施形態では、三次元形状から被写体の距離を算出する処理を画像生成サーバ102が実施しているが、これに限られるものではない。例えば、距離情報取得部1401が、三次元形状、あるいは同期撮影した複数の画像に基づいて被写体の距離を算出してもよい。
<第3実施形態>
第1実施形態では、図12〜図13で説明したように、ユーザがカメラパラメータの制約に用いる対象点の位置を移動させることを可能としている。これは、例えば仮想カメラ画像の中央に移動する選手を映しながら、仮想カメラの位置を制御したい場合に有効である。しかし、この場合、ユーザは、仮想カメラの位置を手動で制御すると同時に、選手の移動に合わせて対象点の位置を手動で制御する必要がある。シーンに合わせて、仮想カメラと対象点の2つの位置を同時に移動させる操作は負荷が高い。第3実施形態では、選手など物体の位置を検出する手段を用いて、制約に用いられる対象点を自動的に決定する。ユーザは対象点の位置を制御する必要がなくなるため、操作負荷が軽くなる。
図16(a)は、第3実施形態における画像処理システム10の全体構成を説明する図である。物体検出システム1601は、撮影システム101が多視点から同期撮影した複数画像に含まれる物体、例えばスポーツ選手やボールの位置を検出し、その結果を情報処理装置103に送信する。なお、物体検出システム1601は、例えば、画像生成サーバ102に内蔵されていてもよい。
図16(b)は、第3実施形態による情報処理装置103の機能構成例を示すブロック図である。第1実施形態と同様、図16(b)に示される各機能は、例えばCPU111が、所定のコンピュータプログラムを実行することにより実現され得る。第3実施形態の情報処理装置103は、仮想カメラ制御部401と制約決定部402に加えて、物***置取得部1621を有する。物***置取得部1621は、通信部114を通じて、物体検出システム1601から物体の位置情報を取得する。制約決定部402は、物***置取得部1621が物体検出システム1601から取得した物体の位置情報を、仮想カメラの制約における対象点の位置として用いる。
図17(a)は、第3実施形態による対象点の位置の更新処理を説明するフローチャートである。本処理は定期的に実行される。
物***置取得部1621は、物体検出システム1601から物体の位置情報を取得する(S1701)。制約決定部402は、物***置取得部1621が取得した物体の位置情報を、仮想カメラの制約における対象点の位置として用いる(S1702)。複数の物体が存在する場合は、ユーザによる入出力部115からの入力に基づいて、対象点の位置として用いる物体が決定される。そして、制約決定部402は、対象点の移動量に基づいて仮想カメラのカメラパラメータ(位置、姿勢など)を更新する。なお、対象点の移動に応じた仮想カメラのカメラパラメータの変更処理は、例えば第1実施形態(図12のS1204)で説明した処理を用いることができる。
図17(b)は、ユーザが複数の物体の中から一つの物体を指定する方法の一例を示す図である。ウィンドウ1710は、表示部201に表示され、対象点として用いる物体を指定する機能を有する。入出力部115がポインティングデバイスやタッチパネルを備える場合、ユーザはそれらを用いてウィンドウ1710に表示されたGUI部品1711を選択することができる。GUI部品1711は、複数の物体から一つを選択する機能を持つ。制約決定部402は、GUI部品1711によって選択された物体の位置を対象点の位置として用いる。
以下、物体検出システム1601が物体の位置を検出する方法の一例を説明する。物体検出システム1601は、事前に登録された物体の情報を元に、撮影システム101が撮影した画像にその物体が含まれているかを判定する。含まれている場合、物体の画像内の位置を検出し、その結果を用いて、物体の空間内の位置を検出する。事前に登録される物体の情報として、人物や物体の三次元形状、人物の顔情報、物体表面の模様の情報を用いる。
なお、位置検出方法の別な例として、物体検出システム1601は、他の情報に基づいて画像中に含まれる物体の位置を検出してもよい。例えば、事前に物体にマーカーが貼られている前提で、撮影画像に映ったマーカーを認識して物体の位置を検知してもよい。なお、物体検出システム1601は、撮影システム101が撮影した画像を使用せず、別な手段で物体の位置を検知してもよい。例えば、物体にGPUなどのセンサを埋め込み、そのセンサから得られた情報を用いて物体の位置を検知してもよい。またレーザーなど別な手段で遠隔から物体の位置を検知してもよい。
以上、本発明をその好適と考えられる実施の形態について上述してきたが、本発明はこれらの特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。また、上述の実施形態の一部を適宜組み合わせてもよい。また、上述の実施形態によれば、仮想視点のパラメータ操作を制約下で行うか非制約下で行うかをユーザが選択できる。また、上述の実施形態によれば、仮想カメラパラメータの設定に不慣れなユーザであっても、煩雑な仮想カメラパラメータの設定を容易に行うことができる。例えば、仮想カメラに対する制約を設けることで、球面上オートパン、球面上オートチルト、平面上オートパン、平面上オートチルト、オートドリーズームなどの煩雑な仮想カメラパラメータの設定を容易に行うことができる。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
10:画像処理システム、101:撮影システム、102:仮想視点画像生成サーバ、111:CPU、112:RAM、113:ROM、114:通信部、115:入出力部、201:表示部、202:6軸コントローラ、203:ズームコントローラ、204:リプレイコントローラ

Claims (18)

  1. 複数のカメラが撮影した複数の撮影画像から仮想視点画像を生成するためのパラメータを提供する情報処理装置であって、
    ユーザ操作を受け付ける入力手段と、
    前記入力手段が受け付けた第1のユーザ操作に基づいて仮想視点のパラメータを制御する制御手段と、
    前記入力手段が受け付けた第2のユーザ操作に基づいて前記仮想視点のパラメータに対する制約が有効か無効かを決定する決定手段と、を備え、
    前記制御手段は、前記決定手段により有効と決定された制約と、前記入力手段が受け付けた前記第1のユーザ操作とに基づいて仮想視点のパラメータを更新することを特徴とする情報処理装置。
  2. 前記決定手段は、前記第2のユーザ操作に基づいて、複数の前記制約のうち一つの制約を有効化または無効化することを特徴とする請求項1に記載の情報処理装置。
  3. 前記決定手段は、前記第2のユーザ操作に応じて制約を有効化した時点における前記仮想視点の位置と方向の少なくともいずれかに基づいて、前記有効化した制約の内容を決定することを特徴とする請求項2に記載の情報処理装置。
  4. 前記制約は、前記仮想視点の位置を球面の面上に制限することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記決定手段は、前記球面を、前記仮想視点の位置または仮想視点の位置と方向に基づいて決定することを特徴とする請求項4に記載の情報処理装置。
  6. 前記制約は、前記仮想視点の位置を平面の面上に制限することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  7. 前記決定手段は、前記平面を、前記仮想視点の位置または仮想視点の位置と方向に基づいて決定することを特徴とする請求項6に記載の情報処理装置。
  8. 前記制約は、前記仮想視点の方向が特定の点を通るよう制限することを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 前記決定手段は、前記特定の点の位置を、前記仮想視点の位置と方向に基づいて決定することを特徴とする請求項8に記載の情報処理装置。
  10. 前記決定手段は、前記特定の点の位置を、前記入力手段からのユーザ操作の入力に基づいて決定することを特徴とする請求項8または9に記載の情報処理装置。
  11. 前記制御手段は、前記仮想視点の方向の制限に用いられる前記特定の点の位置が変化した場合、その変化量に基づいて前記仮想視点のパラメータを更新する、ことを特徴とする請求項8乃至10のいずれか1項に記載の情報処理装置。
  12. 前記仮想視点画像に映る被写体と前記仮想視点との距離を取得する第1の取得手段をさらに備え、
    前記決定手段は、前記制約を、前記第1の取得手段が取得した前記距離に基づいて決定することを特徴とする請求項1乃至11のいずれか1項に記載の情報処理装置。
  13. 物体の位置を取得する第2の取得手段をさらに備え、
    前記決定手段は、前記制約を、前記第2の取得手段により取得された前記物体の位置に基づいて決定する、ことを特徴とする請求項1乃至12のいずれか1項に記載の情報処理装置。
  14. 前記決定手段は、前記仮想視点の方向の制限に用いられる特定の点の位置を、前記第2の取得手段が取得する前記物体の位置に基づいて決定する、ことを特徴とする請求項13に記載の情報処理装置。
  15. 前記第2の取得手段は、複数の物体の位置を取得し、
    前記決定手段は、前記入力手段からのユーザ操作の入力に基づいて前記複数の物体から一つの物体を選択し、選択した前記物体の前記第2の取得手段が取得した位置に基づいて前記仮想視点のパラメータに対する前記制約を決定することを特徴とする請求項13または14に記載の情報処理装置。
  16. 前記制御手段により制御された前記仮想視点のパラメータを用いて、前記複数のカメラが撮影した複数の撮影画像から仮想視点画像を生成する生成手段をさらに備えることを特徴とする請求項1乃至15のいずれか1項に記載の情報処理装置。
  17. 複数のカメラが撮影した複数の撮影画像から仮想視点画像を生成するためのパラメータを提供する情報処理装置の制御方法であって、
    入力手段で受け付けた第1のユーザ操作に基づいて仮想視点のパラメータを制御する制御工程と、
    前記入力手段で受け付けた第2のユーザ操作に基づいて前記仮想視点のパラメータに対する制約が有効か無効かを決定する決定工程と、を備え、
    前記制御工程では、前記決定工程で有効と決定された制約と、前記入力手段が受け付けた前記第1のユーザ操作とに基づいて仮想視点のパラメータを更新することを特徴とする情報処理装置の制御方法。
  18. コンピュータを、請求項1乃至16のいずれか1項に記載された情報処理装置の各手段として機能させるためのプログラム。
JP2018035422A 2018-02-28 2018-02-28 情報処理装置および情報処理方法、プログラム Active JP7045218B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018035422A JP7045218B2 (ja) 2018-02-28 2018-02-28 情報処理装置および情報処理方法、プログラム
US16/288,436 US11409424B2 (en) 2018-02-28 2019-02-28 Information processing apparatus, control method, and storage medium for controlling a virtual viewpoint of a virtual viewpoint image
US17/857,295 US20220342538A1 (en) 2018-02-28 2022-07-05 Information processing apparatus, control method, and storage medium for controlling a virtual viewpoint of a virtual viewpoint image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018035422A JP7045218B2 (ja) 2018-02-28 2018-02-28 情報処理装置および情報処理方法、プログラム

Publications (3)

Publication Number Publication Date
JP2019152903A true JP2019152903A (ja) 2019-09-12
JP2019152903A5 JP2019152903A5 (ja) 2021-04-15
JP7045218B2 JP7045218B2 (ja) 2022-03-31

Family

ID=67685807

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018035422A Active JP7045218B2 (ja) 2018-02-28 2018-02-28 情報処理装置および情報処理方法、プログラム

Country Status (2)

Country Link
US (2) US11409424B2 (ja)
JP (1) JP7045218B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021048459A (ja) * 2019-09-17 2021-03-25 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP2021056767A (ja) * 2019-09-30 2021-04-08 キヤノン株式会社 画像生成システム、画像処理装置、情報処理装置、画像生成方法、及びプログラム
JPWO2021152758A1 (ja) * 2020-01-30 2021-08-05

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10891780B2 (en) * 2013-11-27 2021-01-12 Google Llc Methods and systems for viewing a three-dimensional (3D) virtual object
JP7254464B2 (ja) * 2018-08-28 2023-04-10 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
US11204677B2 (en) * 2018-10-22 2021-12-21 Acclarent, Inc. Method for real time update of fly-through camera placement
CN110785993A (zh) * 2018-11-30 2020-02-11 深圳市大疆创新科技有限公司 拍摄设备的控制方法、装置、设备及存储介质
JP7418101B2 (ja) * 2019-07-26 2024-01-19 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
CN110611767B (zh) * 2019-09-25 2021-08-10 北京迈格威科技有限公司 图像处理方法、装置和电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007195091A (ja) * 2006-01-23 2007-08-02 Sharp Corp 合成映像生成システム
JP2010061545A (ja) * 2008-09-05 2010-03-18 Nintendo Co Ltd 画像処理プログラムおよび画像処理装置
JP2015114716A (ja) * 2013-12-09 2015-06-22 シャープ株式会社 画像データ再生装置および画像データ生成装置
JP2015187797A (ja) * 2014-03-27 2015-10-29 シャープ株式会社 画像データ生成装置および画像データ再生装置
JP2017191492A (ja) * 2016-04-14 2017-10-19 キヤノン株式会社 情報処理装置、情報処理方法および映像生成システム

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748194A (en) * 1996-05-08 1998-05-05 Live Picture, Inc. Rendering perspective views of a scene using a scanline-coherent look-up table
US6769131B1 (en) * 1999-11-18 2004-07-27 Canon Kabushiki Kaisha Image processing apparatus and method, image distribution system and storage medium
US20020190991A1 (en) * 2001-05-16 2002-12-19 Daniel Efran 3-D instant replay system and method
US7909696B2 (en) * 2001-08-09 2011-03-22 Igt Game interaction in 3-D gaming environments
EP1557038A4 (en) * 2002-10-30 2009-05-13 Nds Ltd INTERACTIVE DIFFUSION SYSTEM
US7589732B2 (en) * 2002-11-05 2009-09-15 Autodesk, Inc. System and method of integrated spatial and temporal navigation
US8270767B2 (en) * 2008-04-16 2012-09-18 Johnson Controls Technology Company Systems and methods for providing immersive displays of video camera information from a plurality of cameras
KR101665034B1 (ko) * 2008-08-22 2016-10-24 구글 인코포레이티드 이동 장치 상의 삼차원 환경에서의 네비게이션
JP5141984B2 (ja) * 2009-05-11 2013-02-13 ソニー株式会社 情報処理装置および方法
US8705892B2 (en) * 2010-10-26 2014-04-22 3Ditize Sl Generating three-dimensional virtual tours from two-dimensional images
US9497388B2 (en) * 2010-12-17 2016-11-15 Pelco, Inc. Zooming factor computation
US20120236158A1 (en) * 2011-01-23 2012-09-20 Electronic Arts Inc. Virtual directors' camera
US8860726B2 (en) * 2011-04-12 2014-10-14 Autodesk, Inc. Transform manipulator control
EP2600316A1 (en) * 2011-11-29 2013-06-05 Inria Institut National de Recherche en Informatique et en Automatique Method, system and software program for shooting and editing a film comprising at least one image of a 3D computer-generated animation
JP2013167481A (ja) * 2012-02-14 2013-08-29 Olympus Corp 画像処理装置およびプログラム
US9329750B2 (en) * 2013-09-10 2016-05-03 Google Inc. Three-dimensional tilt and pan navigation using a single gesture
EP2860699A1 (en) * 2013-10-11 2015-04-15 Telefonaktiebolaget L M Ericsson (Publ) Technique for view synthesis
JP6754992B2 (ja) * 2016-04-22 2020-09-16 パナソニックIpマネジメント株式会社 三次元再構成方法
US20180032128A1 (en) * 2016-07-26 2018-02-01 MISTEMS Innovation and Services Ltd. Cognitive Navigation and Manipulation (CogiNav) Method
US20180139374A1 (en) * 2016-11-14 2018-05-17 Hai Yu Smart and connected object view presentation system and apparatus
JP2018085571A (ja) * 2016-11-21 2018-05-31 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP6539253B2 (ja) * 2016-12-06 2019-07-03 キヤノン株式会社 情報処理装置、その制御方法、およびプログラム
JP6878014B2 (ja) * 2017-01-13 2021-05-26 キヤノン株式会社 画像処理装置及びその方法、プログラム、画像処理システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007195091A (ja) * 2006-01-23 2007-08-02 Sharp Corp 合成映像生成システム
JP2010061545A (ja) * 2008-09-05 2010-03-18 Nintendo Co Ltd 画像処理プログラムおよび画像処理装置
JP2015114716A (ja) * 2013-12-09 2015-06-22 シャープ株式会社 画像データ再生装置および画像データ生成装置
JP2015187797A (ja) * 2014-03-27 2015-10-29 シャープ株式会社 画像データ生成装置および画像データ再生装置
JP2017191492A (ja) * 2016-04-14 2017-10-19 キヤノン株式会社 情報処理装置、情報処理方法および映像生成システム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021048459A (ja) * 2019-09-17 2021-03-25 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP2021056767A (ja) * 2019-09-30 2021-04-08 キヤノン株式会社 画像生成システム、画像処理装置、情報処理装置、画像生成方法、及びプログラム
JP7458731B2 (ja) 2019-09-30 2024-04-01 キヤノン株式会社 画像生成システム、画像処理装置、情報処理装置、画像生成方法、及びプログラム
JPWO2021152758A1 (ja) * 2020-01-30 2021-08-05
JP7054287B2 (ja) 2020-01-30 2022-04-13 Amatelus株式会社 映像配信装置、映像配信システム、映像配信方法、及びプログラム
JP2022075940A (ja) * 2020-01-30 2022-05-18 Amatelus株式会社 映像配信装置、映像配信システム、映像配信方法、及びプログラム
JP7365076B2 (ja) 2020-01-30 2023-10-19 Amatelus株式会社 映像配信装置、映像配信システム、映像配信方法、及びプログラム

Also Published As

Publication number Publication date
US20190265876A1 (en) 2019-08-29
US11409424B2 (en) 2022-08-09
JP7045218B2 (ja) 2022-03-31
US20220342538A1 (en) 2022-10-27

Similar Documents

Publication Publication Date Title
JP7045218B2 (ja) 情報処理装置および情報処理方法、プログラム
US11663785B2 (en) Augmented and virtual reality
JP6539253B2 (ja) 情報処理装置、その制御方法、およびプログラム
JP3311830B2 (ja) 3次元動画作成装置
KR100869447B1 (ko) 3차원 모델링 없이 이미지 처리에 의해 타겟을 지시하는 장치 및 방법
CN104364712A (zh) 用于捕获全景图像的方法和装置
JP2019519020A (ja) 視野周辺の視覚的背光
KR20180059765A (ko) 정보 처리 장치, 정보 처리 방법 및 프로그램
JP7060778B2 (ja) 情報処理システム、情報処理システムの制御方法及びプログラム
US11558598B2 (en) Control apparatus and control method for same
CN108377361B (zh) 一种监控视频的显示控制方法及装置
CN112640472A (zh) 信息处理设备、信息处理方法和程序
JPH11259685A (ja) 3次元cg実写映像融合装置
JP6450226B2 (ja) カメラ制御装置及びそのプログラム
Lee et al. Tunnelslice: Freehand subspace acquisition using an egocentric tunnel for wearable augmented reality
WO2021033575A1 (ja) 情報処理装置および方法、並びに、プログラム
KR20180045668A (ko) 터치 유저 인터페이스를 이용한 카메라의 이동경로와 이동시간의 동기화를 위한 사용자 단말장치 및 컴퓨터 구현 방법
JP2023054186A (ja) 情報処理装置、情報処理方法、及びプログラム
JP7039216B2 (ja) 情報処理装置及びその方法、プログラム
KR101743888B1 (ko) 터치 유저 인터페이스를 이용한 카메라의 이동경로와 이동시간의 동기화를 위한 사용자 단말장치 및 컴퓨터 구현 방법
JP7341674B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2022182836A (ja) 映像処理装置及びその制御方法及びプログラム
JP2022012900A (ja) 情報処理装置、表示方法、及び、プログラム
JP6899715B2 (ja) 図面作成システム、図面作成方法及びプログラム
TWI610565B (zh) 立體影像物件互動方法、系統與立體互動影片後製方法

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210301

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210301

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211022

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211216

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220318

R151 Written notification of patent or utility model registration

Ref document number: 7045218

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151