[go: up one dir, main page]

JP7767355B2 - 情報処理装置制御方法、およびプログラム - Google Patents

情報処理装置制御方法、およびプログラム

Info

Publication number
JP7767355B2
JP7767355B2 JP2023056851A JP2023056851A JP7767355B2 JP 7767355 B2 JP7767355 B2 JP 7767355B2 JP 2023056851 A JP2023056851 A JP 2023056851A JP 2023056851 A JP2023056851 A JP 2023056851A JP 7767355 B2 JP7767355 B2 JP 7767355B2
Authority
JP
Japan
Prior art keywords
camera
virtual
generating
path
camera path
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.)
Active
Application number
JP2023056851A
Other languages
English (en)
Other versions
JP2024143908A (ja
Inventor
葉 村上
奨平 岩本
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 JP2023056851A priority Critical patent/JP7767355B2/ja
Priority to CN202410314943.5A priority patent/CN118741070A/zh
Priority to EP24165085.2A priority patent/EP4451667A1/en
Priority to US18/620,186 priority patent/US20240331307A1/en
Publication of JP2024143908A publication Critical patent/JP2024143908A/ja
Application granted granted Critical
Publication of JP7767355B2 publication Critical patent/JP7767355B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/282Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/296Synchronisation thereof; Control thereof
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • Remote Sensing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computing Systems (AREA)
  • Studio Devices (AREA)
  • Processing Or Creating Images (AREA)
  • Television Signal Processing For Recording (AREA)

Description

本開示は、仮想視点画像におけるカメラパスを生成する情報処理装置に関する。
近年、異なる位置に配置された複数のカメラにより被写体を撮影して得られた複数画像から、ユーザが指定した仮想視点からの見えを表す画像を生成することができる画像処理システムがある。以下、ユーザが指定した仮想視点からの見えを表す画像を仮想視点画像という。このような画像処理システムは、人物などの撮影対象の形状を推定して被写体モデルを作成し、視点を任意に変更可能な仮想視点画像を生成する。仮想視点画像では、仮想カメラの位置や方向を変化させながら連続で仮想視点画像を生成することで、仮想視点画像を生成することも可能である。
このような仮想視点画像は、特に競技スポーツの中継放送(いわゆるスポーツ中継)等において、より臨場感の高い映像表現のために使用されている。スポーツ中継では、試合中の印象的なシーンのリプレイとして、仮想視点画像によるクリップ映像を生成することがある。仮想視点画像を用いたクリップ映像を生成するためのカメラパスを生成する手法の一つに、キーフレーム方式がある。これは、ユーザが任意の時刻・位置・姿勢の仮想カメラパラメータをキーフレームとして複数登録し、それらを予め決められた方法で補間することでカメラパスを生成するという手法である。
特許文献1では、指定したキーフレーム間をスプライン補間により補間してカメラパスを生成することが記載されている。
特開2007-25979号公報
しかしながら、特許文献1の手法では、プリセット位置に移動する場合に、冗長なカメラパスを生成してしまうことがある。
本開示では、適切なカメラパスを生成することを目的とする。
情報処理装置は、ユーザ操作を取得する取得手段と、複数の撮像装置によって撮影された複数の画像から生成される仮想視点画像における仮想カメラの位置及び姿勢を、前記取得手段によって取得したユーザ操作によって設定する設定手段と、複数の仮想カメラの位置および姿勢からカメラパスを生成する生成手段とを有し、前記生成手段は、前記設定手段によって設定された複数の仮想カメラの位置および姿勢を用いてカメラパスを生成する場合と、現在の仮想カメラの位置および姿勢、並びに仮想カメラのプリセット位置および姿勢を用いてカメラパスを生成する場合とで、カメラパスを生成する手順を異ならせ、前記生成手段は、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成する場合よりも、前記プリセット位置を用いてカメラパスを生成する場合のほうが経路が短くなるようにカメラパスを生成する
本発明によれば、適切なカメラパスを生成できる。
2点間の仮想カメラを補間する例を示す図 画像処理システム20の全体構成を説明する図 本発明の第1の実施形態における図2に記載の情報処理装置203について説明する図 情報処理装置203のハードウェア構成について説明する図 本発明の第1の実施形態における情報処理装置203の機能構成例を示す図 情報処理装置203の操縦モードとその状態遷移について説明する図 仮想カメラのキーフレームとその補間について説明する図 プリセット位置へ移動する仮想カメラの経路について説明する図 第1の実施形態におけるクリップ映像用のカメラパスを生成する処理フローを示す図 第1の実施形態におけるクリップ映像を再生する処理フローを示す図 第1の実施形態におけるプリセット移動ボタンを押下したときの処理フローを示す図 第1の実施形態におけるプリセットへ移動する処理フローを示す図 第2の実施形態における図2に記載の情報処理装置203のGUI308について説明する図 第2の実施形態における情報処理装置203の機能構成例を示す図 第2の実施形態におけるクリップ映像用のカメラパスを生成する処理フローを示す図 第2の実施形態におけるプリセット移動ボタンを押下したときの処理フローを示す図
[第1の実施形態]
第1の実施形態について詳細に説明する。本実施形態では、画像処理システムは、仮想視点画像におけるキーフレーム間の補間手順と、仮想視点の現在位置から仮想カメラのプリセット位置への補間手順が予め決まっており、決められた補間手順に従ってカメラパスを生成する。
ここで、仮想視点とは、仮想空間の三次元空間上におけるユーザにより指定される視点である。また、以下の説明においては、説明の便宜のため、仮想視点の位置に仮想的に配置されるカメラ(仮想カメラ)を使用して説明を行う。すなわち、仮想視点の位置及び仮想視点からの視線方向は、それぞれ、仮想カメラの位置及び姿勢に対応する。また、仮想視点からの視界(視野)は、仮想カメラの画角に対応する。この仮想視点はユーザが自由に(任意に)指定可能である。
また、本実施形態における仮想視点画像は、ユーザが自由に(任意に)指定した視点に対応する映像に限定されず、例えば複数の候補からユーザが選択した視点に対応する画像なども仮想視点画像に含まれる。また、本実施形態では仮想視点の指定がユーザ操作により行われる場合を中心に説明するが、仮想視点の指定が画像解析の結果等に基づいて自動で行われてもよい。また、本実施形態では仮想視点画像が動画である場合を中心に説明する。仮想視点画像は、仮想カメラにより撮像される映像であるといえる。
本実施形態における画像処理システムは、例えば放送カメラ等、実際に撮像を行うための撮像装置(以降、実カメラという)の撮像映像(以降、実カメラ映像ともいう)と、仮想視点に対応する仮想視点画像とを切り替えて出力する機能を有する。
図2は、仮想視点画像を生成する画像処理システム20の全体構成を説明する図である。画像処理システム20は、撮影システム201、画像処理装置202、情報処理装置203から構成される。
撮影システム201は、複数のデジタルカメラ(撮像装置)を、撮影領域を取り囲むように(周囲に)それぞれ異なる位置に設置し、時刻同期して撮影する。多視点から同期撮影した複数画像を、画像処理装置202に送信する。この時、送信される複数画像は、例えばLANケーブル等の通信媒体を介して伝送される。また、撮影領域は、仮想視点画像を制作するための撮影が行われる撮影スタジオや、スポーツ競技が行われる競技場や演技が行われる舞台などである。
画像処理装置202は、複数カメラから同期撮影した複数画像を元に、被写体の三次元形状データを生成する。三次元形状データの生成は、例えばVisual Hull手法が用いられる。この処理の結果、被写体の3次元形状を表現した3D点群(3次元座標を持つ点の集合)が得られる。なお、撮影画像から被写体の3次元形状を導出する方法はこれに限らない。この三次元形状データと、指定した背景モデルから、仮想カメラに対応した仮想視点画像を生成する。背景モデルは、例えば撮影システム201が有する物理カメラ群が設置されている競技場などの、CG(Computer Graphics)モデルである。この背景モデルは、予め作成されて画像処理装置202内に保存されている(例えば、後述する図4のROM403に保存されている)。また、仮想視点画像の生成方式としては、例えばモデルベースレンダリング(Model-Based Rendering:MBR)を用いることができる。この処理により、仮想カメラの位置・方向から見た三次元形状データの画像を生成できる。なお、仮想視点画像の生成方法はこれに限らない。仮想カメラの位置や方向などの情報は、後述する情報処理装置203が決定するカメラパラメータによって表現される。なお、本実施形態では、画像処理装置202が被写体の三次元形状データの生成および仮想視点画像の生成の両方を行うが、それぞれのデータの生成は複数の画像処理装置で分担されてもよい。
図3は情報処理装置203の例を説明する図である。情報処理装置203には、仮想カメラを制御するためのジョイスティック301aおよび301bが接続されている。ユーザは、ジョイスティック301aおよびジョイスティック301bを操作することによって仮想カメラの視点を表すカメラパスを設定(決定)する。本実施形態では、ジョイスティック301aの複数の操作部材には、仮想空間における三次元座標での仮想カメラの位置を示すパラメータ(x、y、z)を制御するためのコマンドが割り当てられている。また、ジョイスティック301bの複数の操作部材には、仮想空間における仮想カメラの姿勢を表すパン、チルト、ロール方向のパラメータ(Pan、Tilt、Roll)を制御するためのコマンドが割り当てられている。
また、情報処理装置203には、キーボード302が接続されている。キーボード302のそれぞれのキーには、仮想視点画像を生成するためのコマンドが割り当てられている。例えば、キー303にはキーフレームを登録するためのコマンド、キー304には登録したキーフレームからクリップ映像用のカメラパスを生成するためのコマンドが割り当てられている。また、キー305にはプリセットを登録するためのコマンド、キー306にはクリップ映像の再生をキャンセルするコマンドが割り当てられている。
なお、情報処理装置203に格納されている仮想視点画像を生成するためのアプリケーションは、コマンドをジョイスティック301a、ジョイスティック301b、およびキーボード302のうち、任意の操作部材に任意のコマンドを割り当てる機能を有する。ユーザは、その機能を用いて任意のコマンドを任意の操作部材に設定することができる。
さらに、本実施形態では、情報処理装置203は2つ以上の表示部が接続されている。本実施形態では、情報処理装置203は、画像処理装置202で生成された仮想視点画像を画像処理装置202から取得し、表示部307に表示する。また、情報処理装置203は、仮想視点画像のクリップ映像を生成するためのカメラパスや仮想カメラのパラメータ(プリセットなど)等の情報を表示するGUI308を表示部309に表示する。GUI308は、仮想視点画像を生成するためのアプリケーションのGUIに相当する。
図3(b)を用いて、表示部309に表示されるGUI308の詳細について説明する。GUI308には、クリップリスト310、キーフレームリスト311、プリセットリスト312が含まれる。
最初に、キーフレームの登録・クリップ映像の生成・再生時のGUI308上での操作方法について説明する。ユーザは、仮想視点画像の任意の時刻(タイムコード)において、仮想カメラの位置および姿勢を設定し、キー303を押下する。情報処理装置203は、その操作を受けて、キーフレームリスト311にキーフレームID、仮想カメラのカメラパラメータおよびタイムコードの情報を持つキーフレームが追加する。キーフレームIDは、ユーザに追加された順に連番で付与される。ただし、ユーザはキーフレームIDの順番を任意に変更できる。キーフレームリスト311にキーフレームが1つ以上設定された状態で、ユーザがキー304を押下すると、情報処理装置203は、キーフレームリスト311に含まれるキーフレームからカメラパスを生成する。本実施形態では、情報処理装置203は、を、キーフレームIDの順番に、仮想カメラのカメラパラメータを用いて仮想カメラの位置・姿勢を補間することで、カメラパスを生成する。この生成されたカメラパスはクリップリスト310に、生成されるたびに追加される。例えばユーザがクリップリスト310の任意のカメラパスをクリックする(選択する)ことで、クリックしたカメラパスを適応した仮想視点画像(クリップ映像)が表示部307に表示される。
次に、GUI308での、プリセットの登録方法およびプリセットの適用方法について説明する。まずプリセットの登録方法について説明する。ユーザが任意の位置および姿勢に仮想カメラを設定し、キー305を押下すると、プリセットリスト312にプリセットID、および仮想カメラのカメラパラメータの情報を持つプリセットが追加される。このこれによって、ユーザは所定の位置・姿勢の仮想カメラの配置を情報処理装置203に記録できる。次にプリセットの適用方法について説明する。ユーザがプリセットリスト312の任意のプリセットをクリックする(選択する)ことで、仮想カメラの現在の状態(位置・姿勢)からプリセットの状態に遷移する。本実施形態では、情報処理装置203は、仮想カメラの現在の状態(位置・姿勢)からプリセットの状態に遷移するためのカメラパスを生成し、そのカメラパスに従って仮想カメラの位置・姿勢を変更する(仮想カメラを移動する)。
なお、情報処理装置203は、キーボード302の任意のキーにプリセットを割り当てることができる。この場合、例えば、ユーザが仮想カメラのプリセット位置が割り当てられたキーを押下したときに、情報処理装置203は、押下されたキーと対応するプリセットへ仮想カメラを移動させる。
そして、情報処理装置203は、ユーザの操作によって選択された仮想カメラのカメラパスを画像処理装置202へ送信する。画像処理装置202は、情報処理装置203から受信したカメラパスに基づいて仮想視点画像を生成する。
ここで、カメラパス生成における、2点のキーフレーム間の補間の例について、図1に示す。図1では、開始点と終了点におけるカメラパラメータのうちの一つの値pについて補完する方法を示している。ユーザが開始点における時刻およびパラメータをそれぞれt1・p1、終了点における時刻およびパラメータをそれぞれt2・p2と設定した時、t1からt2の間に値pは図1のグラフのように補間される。このように補間される仮想カメラのパラメータは、位置座標(x、y、z)、姿勢(Pan、Tilt、Roll)、拡大率Zoomなどがある。
この時登録されるキーフレームは、Pan、Tilt、Rollなどの姿勢を表すパラメータにおいて、値の上限・下限を無制限にすることで、少ないキーフレームで所望のカメラパスを生成できることがある。例えば、注視点を任意の位置に設定し、注視点方向を向いたまま2回転するカメラパスを生成する場合を考える。回転角の上限・下限を無制限にする場合、開始点のパラメータ0°、終了点のパラメータ720°の2点を設定するだけで生成できる。一方で、最小値0°、最大値359°に定められている場合、360°以上の回転角を設定できないため、3点以上のキーフレームを打つ必要がある。本実施形態では、値の上限・下限を無制限にされたキーフレームを用いてカメラパスが生成される。以下、キーフレームを用いたカメラパスの生成方法をキーフレーム方式とも記載する。
他方で、ほかの用途でカメラパスを生成する場合、上記のキーフレーム方式によるクリップ映像用のカメラパスを生成するときと同様の補間手順を用いると、ユーザにとって望まないカメラパスになる場合がある。例えば、仮想カメラを現在位置からあらかじめ登録された位置・姿勢(プリセット位置)に移動する場合などが考えられる。例えば、リアルタイムでの野球の試合の中継放送でのユースケースがある。中継放送では、フィールド上のマウンドからの視点や、キャッチャーの位置からの視点などは臨場感ある映像を得やすい。リアルタイムでの中継放送では、頻繁にそれらの視点の切り替えが求められるので、プリセット位置を複数登録しておき、仮想カメラの位置を所望のプリセット位置に切り替える機能が求められる。ここで、仮想カメラを現在位置からプリセット位置に遷移させるとき、一瞬で切り替えてしまうと、仮想カメラを操作しているユーザでも切り替わった位置が所望のプリセット位置かどうかの判別に時間を要する恐れがある。そのため、仮想カメラを現在位置からプリセット位置まで移動するカメラパスを生成し、移動させる様子を表示するなどの工夫が必要である。しかし、上記のキーフレーム補間と同様の方法で現在位置とプリセットの間を補間してカメラパスを生成すると、不必要に回転してしまうなど、冗長なカメラパスを生成してしまうことがある。そのため、現在位置からプリセット位置まで移動するカメラパスを生成する際には、位置関係を考慮してカメラパスを生成する必要がある。
図4は、本実施形態に係る、仮想視点画像のカメラパスを生成・編集することが可能な情報処理装置203のハードウェア構成の一例を示す図である。情報処理装置203は、CPU401、RAM402、ROM403、入出力デバイス部404で構成される。なお、仮想視点画像では、視聴者やカメラオペレータ等のユーザが自由に仮想カメラの位置及び姿勢を操作することができる。また仮想視点画像は、動画であっても、静止画であっても良い。
CPU401は、RAM402をワークメモリとして、ROM403に格納されたプログラムを実行し、情報処理装置203の各構成部を統括的に制御するプロセッサである。これにより、CPU401が、各種プログラムを実行することで、後述の図2に示す各処理部の機能が実現される。
RAM402は、ROM403から読みだされたコンピュータプログラムや計算の途中結果などを一時的に記憶する。
ROM403は、変更を必要としないコンピュータプログラムやデータを保持する。またROM403は、前述のキーフレーム法の補間方法などのカメラパラメータを補間する上で必要なデータや補間方法を決定する上で必要なデータなどを格納する。
入出力デバイス部404は、仮想カメラを制御するための複数のコントローラと、仮想カメラの状態などを表示する複数の表示部を有する。複数のコントローラは、キーボードやマウスといったユーザが入力操作を行うための一般的なデバイスの他、仮想カメラを操縦するためのジョイスティック、つまみ、ジョグダイヤル等を含む。表示部は、ユーザに必要な情報を表示するための1又は複数の表示デバイス(以下、「モニタ」と表記)である。
図5は、第1の実施形態における情報処理装置203の機能構成の一例を示すブロック図である。情報処理装置203は、ユーザ操作により仮想カメラのカメラパスを生成し、仮想視点画像生成装置に送信する。
情報処理装置203が搭載する各機能について順に説明する。
操作情報取得部501は、ユーザによるジョイスティック301に対する操作を毎フレーム取得し、操作量に応じた仮想カメラの位置・姿勢といったパラメータに変換する。このパラメータはフレームごとの仮想カメラパラメータの変化量を表している。また操作情報取得部501は、キーボード302やGUI308へのユーザ操作(入力)があった場合、その操作に応じた入力信号を操縦モード決定部502、キーフレーム保持部504、クリップ作成部505、仮想カメラパラメータ算出部511へ送信する。
操縦モード決定部502は複数の操縦モードをユーザの操作に応じて切り替える。操縦モードには、手動操縦モード、クリップ再生モード、およびプリセット移動モードがある。手動操縦モードでは、情報処理装置203は、ユーザによるジョイスティック301への操作に応じて仮想カメラを移動する。クリップ再生モードでは、情報処理装置203は、クリップ映像用に生成されたカメラパスを用いて生成された仮想視点画像を再生する。この仮想視点画像は外部の仮想視点画像生成装置(不図示)によって生成される。プリセット移動モードでは、情報処理装置203は、仮想カメラの位置をプリセット位置に移動する。ここで、プリセット移動モードでは、情報処理装置203は、仮想カメラの位置をプリセット位置に移動するためのカメラパスを生成し、そのカメラパスを用いて生成された仮想視点画像を表示部で再生する。
操縦モード保持部503は現在の操縦モードを保持(記録)する記録部である。保持されている操縦モードは、操縦モード決定部502からの切り替え信号が入力された場合に更新される。また、操縦モード保持部503は、現在保持している操縦モードを操縦モード決定部502へ送信する。
ここで図6に、3つの操縦モードの状態遷移図を示す。本実施形態では、通常は手動操縦モードであり、ユーザによって仮想カメラの操作が行われる。ユーザによってクリップリスト310のカメラパスがクリックされた場合、操縦モード決定部502は操縦モードをクリップ再生モードへ切り替える。そして、操縦モード保持部503および仮想カメラパラメータ算出部511に、モードを切り替えたことを通知する信号を送信する。また、ユーザによってプリセットリスト312上の任意のプリセットがクリックされた場合、操縦モードをプリセット移動モードへ切り替え、操縦モード保持部503および仮想カメラパラメータ算出部511に、モードを切り替えたことを通知する信号を送信する。操縦モードがプリセット移動モードの時にプリセットへの移動が終わると、操縦モード決定部502は仮想カメラパラメータ算出部511から手動操縦モードに切り替えるための信号を受信し、手動操縦モードに切り替える。
キーフレーム保持部504はユーザによるキーボード302のキー303への入力があったときに、操作情報取得部501からキーフレームを登録するための入力信号を受け取る。なお、キー303にはキーフレームを登録するためのコマンドが割り当てられている。キーフレーム保持部504は、入力信号を受け取ると、仮想カメラパラメータ算出部511から現在の仮想カメラのパラメータを取得し、キーフレームとして保持する。ここで、キーフレーム保持部504は複数のキーフレームを保持することができる。各キーフレームは、それぞれ整数値であるキーフレームID、仮想カメラの位置・姿勢などの外部パラメータ、光学中心、焦点距離などの内部パラメータ、タイムコード等の時刻情報をパラメータとして保持する。キーフレームIDは、キーフレーム保持部がキーフレームを取得したときに各キーフレームに順番に割り当てられる。なおキーフレームIDは、ユーザによって変更可能なパラメータである。保持されたキーフレームは、ユーザによるキーボード302のキー304への入力があった時に、クリップ作成部505へ出力し、その後キーフレームをクリアする。なお、キー304には登録したキーフレームからクリップ映像用のカメラパスを生成するためのコマンドが割り当てられている。
クリップ作成部505はユーザによるキーボード302のキー304への入力があったときに、操作情報取得部501から入力信号を受け取る。クリップ作成部505は、入力信号を受け取ると、キーフレーム保持部504に保持されている複数のキーフレームを取得し、キーフレーム間を補間してカメラパスを生成する。
図7(a),(b)は仮想カメラの位置座標のうちのx座標についてキーフレーム間を補間する方法の一例を説明するための図である。図7(a)ではタイムコードt1~t4において、それぞれの仮想カメラの位置・姿勢が仮想カメラ701~704のように設定されたている。図7(a)のグラフは各時刻t1~t4における仮想カメラのx座標を示している。クリップ作成部505は、図7(b)に示すように、仮想カメラの移動軌跡が滑らかになるような補間方法を用いて、仮想カメラ701~704の間を補間するようにカメラパス705を生成する。図7(b)のグラフは、生成されたカメラパス705のx座標の時刻t1~t4の間における遷移を表す。ここで、補間方法は、例えばスプライン補間がある。クリップ作成部505は、仮想カメラの位置座標のy座標、z座標、姿勢情報であるPan、Tilt、Rollなどに対しても同様に補間する。
クリップ保持部506は、クリップ作成部505によって生成されたクリップ映像用のカメラパスを保持する。また、クリップ保持部506は、ユーザによってクリップリスト310の任意のカメラパスがクリックされた(選択された)場合、操作情報取得部501から受信した入力信号に応じて、選択されたカメラパスを仮想カメラパラメータ算出部511へ送信する。
プリセット保持部507は、ユーザによるキーボード302のキー305への入力があった場合に、仮想カメラパラメータ算出部511から仮想カメラのカメラパラメータを取得し、仮想カメラのプリセット位置として保持する。なお、キー305にはプリセットを登録するためのコマンドが割り当てられている。
プリセット移動時間保持部508は、仮想カメラ位置からプリセットまでの移動時間を保持する。移動時間は、あらかじめユーザがキーボード302等を用いて登録(入力)する。このプリセット移動時間は、クリップ映像を生成するときの時間とは異なる移動時間である。
プリセット移動残り時間保持部509は、プリセットまで移動する残り時間を保持する。プリセット移動残り時間保持部509は、ユーザによってGUI308のプリセットリスト312のプリセットがクリックされた(選択された)時に、プリセット移動時間を保持する。その後、プリセット移動残り時間保持部509は、仮想視点画像が1フレーム再生されるごとに保持する残り時間も1フレーム分減らす。プリセット移動残り時間保持部509は、残り時間を毎フレーム仮想カメラパラメータ算出部511へ送信する。
仮想カメラパラメータ保持部510は、仮想カメラパラメータ算出部511によって算出された仮想カメラパラメータを取得し、保持している。また、仮想カメラパラメータ保持部510は、現在のタイムコードにおいて保持している仮想カメラパラメータを仮想カメラパラメータ算出部511へ送信する。その後、仮想カメラパラメータ算出部511によって算出された次フレームの仮想カメラパラメータを取得して、保持する仮想カメラパラメータを更新する。
仮想カメラパラメータ算出部511は、操縦モードが更新された時に操縦モード決定部502から信号を受信し、操縦モードに合わせた手法で仮想カメラパラメータを算出(計算)する。以下、それぞれの操縦モードにおける仮想カメラパラメータの算出方法について述べる。
手動操縦モードでは、仮想カメラパラメータ算出部511は操作情報取得部501から仮想カメラパラメータの変化量と、仮想カメラパラメータ保持部510から取得したカメラパラメータを加算し、次のフレームの仮想カメラパラメータを算出する。
クリップ再生モードでは、仮想カメラパラメータ算出部511は操作情報取得部501からユーザによって選択されたクリップ情報を取得し、クリップ保持部506から該当するカメラパスを取得する。ここで取得されるカメラパスは、上述したキーフレーム方式によって生成されたカメラパスである。
プリセット移動モードでは、仮想カメラパラメータ算出部511は現在の仮想カメラの位置・姿勢からプリセットまでの経路を示すカメラパスを算出する。具体的には、フレームレートが60fpsである場合、仮想カメラパラメータ算出部511は以下の数式1を用いて計算を行う。
[数式1]
dp=(p_pre-p(t))/f(t)
p(t-1)=p(t)+dp
f(t-1)=f(t)-1
ここで、tは残り時間保持部509から取得された、仮想カメラが現在位置からプリセットまで移動するまでにかかる時間(残り時間)である。本実施形態では、tは例えば、HH:MM:SS:FFの形式で表される。p(t)は残り時間tにおける仮想カメラパラメータ保持部510から取得した現在時刻の仮想カメラパラメータである。p_preはプリセット保持部507から取得したプリセット位置の仮想カメラパラメータである。f(t)は残り時間tにおける残りのフレーム数である。f(t)の初期値は、残り時間tの初期値を秒数に変換したものに対しフレームレートを乗算して求められる。dpは1フレームあたりの仮想カメラパラメータの変化量である。したがってdpは正負のどちらの値もとりうる。この時、t=0になった時点で仮想カメラパラメータ算出部511は操縦モード決定部502へ手動操縦モードに切り替えるための信号を送信する。なお、フレームレートが59.94fpsなどの非整数である場合、仮想カメラパラメータ算出部511は、上記式に対しドロップフレームも考慮して計算を行う。
また、プリセット移動モード時において、仮想カメラパラメータ算出部511は、プリセット保持部507からプリセットの仮想カメラパラメータ、仮想カメラパラメータ保持部510から仮想カメラパラメータを取得する。そして、2点間の経路が最短になるよう、仮想カメラの姿勢パラメータを補正する。
仮想カメラの姿勢パラメータの補正方法について、図8を用いて説明する。例えば、図8の仮想カメラ位置801の位置からプリセット位置802の位置に移動させるカメラパスを生成することを考える。仮想カメラ位置801、プリセット位置802の、注視点803方向を向きながら回転する場合におけるPanの値を、それぞれ0°、270°とする。この時、キーフレーム間の補間と同様の手法で仮想カメラ位置801、プリセット位置802の間の経路を補間すると、Panの値は0°から270°まで単調増加するため、仮想カメラのカメラパスは経路804になる。しかし、本実施形態では、プリセット位置はリアルタイムの映像において仮想カメラを所望の位置まで素早く移動するために使用されるものである。すなわち、経路804に示されるカメラパスは仮想カメラ位置801からプリセット位置802まで遠回りをしてしまうカメラパスであり、適切なカメラパスではない。仮想カメラ位置801からプリセット位置802までのカメラパスは経路805のほうが望ましい。そこで、仮想カメラパラメータ算出部511は、現在の仮想カメラ位置801の位置・姿勢を固定したまま、仮想カメラの姿勢をあらわすパラメータであるPan、Tilt、Rollの値を補正する。具体的には、現在の仮想カメラの位置とプリセット位置でのPan、Tilt、Rollの値のいずれかの差分の絶対値が180°より大きい場合、仮想カメラパラメータ算出部511は、当該の値について補正を行う。例えば、仮想カメラパラメータ算出部511は、プリセット位置との差分が180°より大きいパラメータについて、現在の仮想カメラ位置の姿勢パラメータを補正し、差分の絶対値を180°以下にする。具体的には、仮想カメラパラメータ算出部511は、当該パラメータについて、現在の仮想カメラ位置の値がプリセット位置の値より180°より大きい場合は、差が180°以下になるように現在のカメラパスの位置の値から360°の整数倍の値を減算する。逆に、仮想カメラパラメータ算出部511は、当該パラメータについて、現在の仮想カメラの位置の値がプリセット位置の値より180°以上小さい場合は、差が180°以下になるように現在のカメラパスの位置の値に360°の整数倍の値を加算する。このように、仮想カメラパラメータ算出部511は、補正を加えるパラメータに対し、360°の倍数を加算または減算することで、仮想カメラの位置および姿勢を変えずに、仮想カメラの姿勢パラメータを補正できる。加えて、上記のように差分を180°以下にすることで、遠回りをしない経路をとるカメラパスが生成されるようになる。
仮想カメラパラメータ算出部511は補正上記の処理を行ったカメラパラメータを、仮想カメラパラメータ提供部512へ送信する。
仮想カメラパラメータ提供部512は仮想カメラパラメータ算出部511から毎フレームカメラパラメータを取得し、仮想視点画像生成装置へ送信する。
タイムコード保持部513はタイムコード算出部514から現在のタイムコードを取得し、保持する。
タイムコード算出部514は毎フレームタイムコードをタイムコード保持部513から取得し、更新してタイムコード保持部513およびタイムコード提供部515へ送信する。
タイムコード提供部515はタイムコード算出部514からタイムコードを取得し、仮想視点画像生成装置へ送信する。
ディスプレイ516は、仮想視点画像生成装置によって生成された仮想視点画像を表示するディスプレイである。ディスプレイ516は、例えば、液晶ディスプレイや有機ELディスプレイ等である。
なお、情報処理装置203は、画像処理装置202とは、不図示の通信部を用いて通信を行う。通信部は例えば、イーサネット等の有線通信規格やWi-Fi(登録商標)等の無線通信規格に従って通信を行う。
次に、図9を用いて、本実施形態においてクリップ映像用のカメラパスを生成するための処理フローについて説明する。本フローチャートは、例えば、キーボード302のキー304がユーザによって押下されたことをトリガに開始される。なお、キー304には登録したキーフレームからクリップ映像用のカメラパスを生成するためのコマンドが割り当てられている。
ステップS901において、操作情報取得部501は、クリップ作成部505にカメラパスを生成するための信号を送信する。
ステップS902において、クリップ作成部505は、操作情報取得部501からカメラパスを生成するための信号を受信し、キーフレーム保持部504からキーフレームを取得する。クリップ作成部505は、各々のキーフレームID順にキーフレーム間を補間することでカメラパスを生成する。
ステップS903において、クリップ保持部506は、クリップ作成部505からカメラパスを取得し、取得したカメラパスをクリップリスト310に追加する。
ステップS904において、キーフレーム保持部504は、生成したカメラパスがクリップリスト310に追加されたことに応じて、保持しているキーフレーム(キーフレームリスト)をクリアする。
次に、図10を用いて、本実施形態においてクリップ映像を再生するための処理フローについて説明する。本フローチャートは、例えば、ユーザがGUI308上のクリップリスト310から任意のカメラパスをクリックしたことに応じて開始される。なお、このユーザが任意のカメラパスをクリックする操作は、クリップ映像を再生するための操作である。
ステップS1001において、操作情報取得部501は、操縦モードをクリップ再生モードに切り替えるための信号を操縦モード決定部502へ送信する。
ステップS1002において、操縦モード決定部502は、操作情報取得部501から信号を受信し、操縦モードをクリップ再生モードに切り替える。操縦モード決定部502は、クリップ再生モードに切り替えたことを通知する信号を操縦モード保持部503、および仮想カメラパラメータ算出部511へ送信する。
ステップS1003において、仮想カメラパラメータ算出部511は、操作情報取得部501からユーザによって選択されたクリップ情報を取得し、クリップ保持部506から該当するカメラパスを取得する。仮想カメラパラメータ算出部511は、取得したカメラパスを仮想カメラパラメータ提供部512へ送信する。
ステップS1004において、カメラパスを受信した仮想カメラパラメータ提供部512は、仮想視点画像生成装置へカメラパスを送信する。また、タイムコード提供部515は、タイムコードをタイムコード算出部514から取得し、仮想視点画像生成装置へ送信する。ここで、仮想視点画像生成装置において、仮想視点画像が生成される。ここで、情報処理装置203は、カメラパスおよびタイムコードは通信部を介して送信する。
ステップS1005において、ディスプレイ516は、仮想視点画像生成装置から取得した仮想視点画像を表示する。この表示された仮想視点画像はクリップ映像に相当する。ここで、情報処理装置203は、仮想視点画像を通信部を介して取得(受信)する。
次に、図11を用いて、本実施形態においてユーザがGUI308上のプリセットリスト312上の任意のプリセット位置を選択(押下)したときの処理フローについて説明する。本フローチャートの処理は、ユーザが任意のプリセット位置を選択したことに応じて開始される。
ステップS1101において、操作情報取得部501は、操縦モードをプリセット移動モードに切り替えるための信号を操縦モード決定部502へ送信する。
ステップS1102において、操縦モード決定部502は、操作情報取得部501から操縦モードをプリセット移動モードに切り替えるための信号を受信した時に、操縦モード保持部503から現在の操縦モードの情報を取得する。現在の操縦モードがクリップ再生モードの場合、S1103以後の処理は行われない。現在の操縦モードが手動操縦モードまたはプリセット移動モードの場合、操縦モード決定部502は、ステップS1103の処理を行う。
ステップS1103において、操縦モードが手動操縦モードの場合、操縦モード決定部502は、操縦モードをプリセット移動モードに切り替える。操縦モードがプリセット移動モードの場合、操縦モード決定部502は、操縦モードをプリセット移動モードのまま維持する。操縦モード決定部502は、プリセット移動モードに切り替えたことを通知する信号を操縦モード決定部502、および仮想カメラパラメータ算出部511へ送信する。
ステップS1104において、仮想カメラパラメータ算出部511は、操縦モード決定部502からプリセット移動モードに切り替えたことを通知する信号を受信する。そして、仮想カメラパラメータ算出部511は、ユーザによって選択されたプリセット位置のカメラパラメータをプリセット保持部507から取得する。また、仮想カメラパラメータ算出部511は、現在のカメラパラメータを仮想カメラパラメータ保持部510から取得する。仮想カメラパラメータ算出部511は、取得したそれぞれの姿勢に係るパラメータ(Pan,Tilt,Roll)について差分の絶対値を計算し、180°より大きいかどうか判断する。フローチャートでは、当該パラメータについて、現在の仮想カメラ位置の値を現在姿勢、プリセット位置の値をプリセット姿勢と記載する。
ステップS1105において、ステップS1104で差分の絶対値が180°より大きいパラメータがある場合、仮想カメラパラメータ算出部511は、当該パラメータのそれぞれについてプリセット位置の値と現在の仮想カメラ位置の値を比較する。当該パラメータについて、現在の仮想カメラ位置の値がプリセット位置の値よりも大きい場合、ステップS1106の処理が実行される。当該パラメータについて、現在の仮想カメラ位置の値がプリセット位置の値以下である場合、ステップS1106の処理が実行される。
ステップS1106において、仮想カメラパラメータ算出部511は、当該パラメータについて、現在の仮想カメラ位置の値を360°減算し、仮想カメラパラメータ保持部510が保持する仮想カメラ位置の値に代入する。
ステップS1107において、仮想カメラパラメータ算出部511は、当該パラメータについて、現在の仮想カメラ位置の値を360°加算し、仮想カメラパラメータ保持部510が保持する仮想カメラ位置の値に代入する。
以上のステップS1104~S1107の処理は、Pan,Tilt,Rollのそれぞれのパラメータについて、仮想カメラパラメータ保持部510が保持する値とプリセットの値との差分が180°以下になるまで繰り返し行われる。これにより、Pan,Tilt,Rollのそれぞれのパラメータについて、カメラパス位置の値から360°の整数倍の値が加減算される。
ステップS1108において、プリセット移動残り時間保持部509は、プリセット移動時間保持部508からプリセット移動時間を取得し、プリセットまで移動する残り時間として設定する。
以上のステップS1101からステップS1108までの処理が、現在の仮想カメラをプリセットの状態まで遷移させる前に行われる処理である。
図12のフローチャートを用いて、仮想カメラをプリセットの状態まで遷移させる処理フローについて説明する。本フローチャートに示す処理は図11に示すフローチャートに続いて実行される。なお以下の処理は毎フレーム実行される。
ステップS1201において、操縦モード決定部502は、操縦モード保持部503から現在の操縦モードの情報を取得する。操縦モードがクリップ再生モードもしくは手動操縦モードである場合、以下の処理を行わず次フレームの処理に進む。操縦モードがプリセット移動モードの場合、ステップS1202の処理が実行される。
ステップS1202において、仮想カメラパラメータ算出部511は、プリセット位置のカメラパラメータ、現在の仮想カメラ位置のカメラパラメータ、および移動残り時間を取得し、1フレームにおける移動量を計算する。
ステップS1203において、仮想カメラパラメータ算出部511は、仮想カメラパラメータ保持部510から現在の仮想カメラ位置のカメラパラメータを取得し、移動量を加算した新しいカメラパラメータ位置を仮想カメラパラメータ保持部510へ送信する。
ステップS1204において、プリセット移動残り時間保持部509は、移動の残り時間を1フレーム分減算し、保持するプリセット移動残り時間を更新する。
ステップS1205において、仮想カメラパラメータ算出部511は、プリセット移動残り時間保持部509からプリセット移動残り時間を取得する。プリセット移動残り時間が0の場合ステップS1206の処理が実行される。プリセット移動残り時間が0ではない場合、次のフレームの処理が実行される。
ステップS1206において、仮想カメラパラメータ算出部511が取得したプリセット移動残り時間が0の場合、仮想カメラパラメータ算出部511は、操縦モードを手動操縦モードに切り替えるための信号を操縦モード決定部502へ送信する。信号を受信した操縦モード決定部502は、操縦モードを手動操縦モードに切り替える。操縦モード決定部502は、操縦モードを手動操縦モードに切り替えた後、現在の操縦モード(手動操縦モード)を操縦モード保持部503に送信する。
以上の処理フローを毎フレーム行い、仮想カメラの位置をプリセット位置に遷移させる。
本実施例では、クリップ映像用のカメラパスを生成するときとプリセットまで移動するときとで補間手順(カメラパスの生成方法)を変える事例を示した。すなわち、プリセット位置への移動では、2点間の姿勢パラメータの差分を180°以下にするようにカメラパラメータ補正処理を加えることにより、カメラパスが冗長にならず、より短い経路が生成される。
[第2の実施形態]
次に、本発明を実施するための第2の実施形態について詳細に説明する。
第1の実施形態では、図8に示すように、リアルタイム映像において、情報処理装置203は経路がより短くなるように現在の仮想カメラ位置801からプリセット位置802へ移動するために、パラメータを補正する処理を行った。しかし、ユーザにとって、カメラパスについて、単に短い経路を通るのではなく、ある領域を映しながら移動したいという状況がある。例えば、注視点803にいる被写体の領域806に表示したいものがあった場合、経路805を通る仮想カメラからは見えないため、経路804のほうがユーザにとって好ましいことがある。
また、逆に、クリップ映像を生成するときにおいて、通常通りの補間手順ではなくプリセットへ移動する場合のような短い経路のほうが好ましい場面もある。
そこで、第2の実施形態では、キーフレーム間の補間手順および現在位置とプリセットの間の補間手順をユーザが選択できるようになっており、選択された補間方法に従ってカメラパスを自動生成する。
図13に第2の実施形態におけるGUIの例を示す。なお、図13において、図3のGUIの機能と同一の機能を行うものについては、同一の符号を付与して表すものとし、第1の実施形態との相違点のみを説明する。
クリップリスト310のそれぞれのカメラパス、およびプリセットリスト312のそれぞれのプリセット位置には、経路を最短にするためのパラメータ補正を行うかどうかを示すボタン1301、ボタン1302が割り当てられている。ユーザはボタン1301もしくはボタン1302をクリックすることで、パラメータ補正のON/OFFを切り替えられる。パラメータ補正がONの場合、情報処理装置203は、第1の実施形態と同様に、パラメータPan、Tilt、Rollの値がプリセットと現在の仮想カメラとで180°以下になるように現在の仮想カメラのパラメータを補正する処理を行う。そして、情報処理装置203は、補正されたパラメータを用いてカメラパス生成を行う。パラメータ補正がOFFの場合、情報処理装置203は、パラメータの補正は行わず、カメラパス生成を行う。
図14に、第2の実施形態における情報処理装置203の機能構成を示すブロック図を示す。情報処理装置203は、ユーザによって選択された方法で仮想カメラのカメラパスを生成し、仮想視点画像生成装置に送信する。なお、図14において、図5の情報処理装置の機能と同一の機能を行うものについては、同一の符号を付与して表すものとし、第1の実施形態との相違点のみを説明する。
操作情報取得部501は、ユーザによってGUI308上のボタン1301への入力情報を取得したときに、パラメータ補正のON/OFFを切り替えるための信号を補間切り替え決定部1401および仮想カメラパラメータ算出部511へ送信する。
補間切り替え決定部1401は、操作情報取得部501からパラメータ補正のON/OFFを切り替える信号を受信する。その後、補間切り替え決定部1401は、パラメータ補正のON/OFFを切り替えて、切り替え後の設定を補間切り替え保持部1402に送信する。また、補間切り替え決定部1401は、補間切り替え保持部1402から現在のON/OFF情報を取得し、仮想カメラパラメータ算出部511へ送信する。
補間切り替え保持部1402は、補間切り替え決定部1401にON/OFF情報を送信する。また、補間切り替え保持部1402は、補間切り替え決定部1401によってON/OFFが変更されると、その情報を補間切り替え決定部1401から取得して、保持する。
仮想カメラパラメータ算出部511は、操作情報取得部501からパラメータ補正のON/OFFを切り替えるための信号を受信すると、補間切り替え決定部1401からパラメータ補正のON/OFFの情報を取得する。仮想カメラパラメータ算出部511は、パラメータ補正ONの情報を取得した場合、第1の実施形態にて説明したように、キーフレーム間もしくは現在の仮想カメラパラメータからプリセットまでが最短で補間されるよう、仮想カメラの姿勢パラメータを補正する。仮想カメラパラメータ算出部511は、パラメータ補正OFFの情報を取得した場合、姿勢パラメータは補正せずに、キーフレーム間もしくは現在の仮想視点からプリセットまでの経路を補間する。
次に、図15を用いて、本実施形態においてクリップ映像用のカメラパスを生成するための処理フローについて説明する。なお、図15において、図9の処理フローと同一の機能を行うものについては、同一の符号を付与して表すものとし、第1の実施形態との相違点のみを説明する。
ステップS1501において、補間切り替え決定部1401が補間切り替え保持部1402から現在のパラメータ補正設定のON/OFF情報を取得し、クリップ作成部505へ送信する。パラメータ補正設定がONの場合、ステップS1502の処理が実行される。パラメータ補正設定がOFFの場合、ステップS902の処理が実行される。
ステップS1502において、クリップ作成部505がキーフレーム保持部504からキーフレームの一覧を取得する。フレームID順にキーフレームのPan,Tilt,Rollそれぞれの値を次のフレームIDのキーフレームの値との差分をとる。
ステップS1503において、クリップ作成部505が処理対象のキーフレームとその次のキーフレームのPan,Tilt,Rollそれぞれの値の差の絶対値が180°より大きい場合、それぞれのパラメータについてどちらの値のほうが大きいか確認する。値の絶対値の差が180°以下の場合は、次のフレームの処理に進む。
ステップS1504において、Pan,Tilt,Rollそれぞれの値について、処理対象のキーフレームのほうが大きい場合、クリップ作成部505が処理対象のキーフレーム以前のすべてのキーフレームの値を360°減算する。
S1505において、Pan,Tilt,Rollそれぞれの値について、処理対象のキーフレームのほうが大きい場合、クリップ作成部505が処理対象のキーフレーム以前のすべてのキーフレームの値を360°加算する。
以上のステップS1502~S1505の処理は、Pan,Tilt,Rollのそれぞれのパラメータについて、2つのキーフレームの値の差分が180°以下になるまで繰り返し行われる。これにより、Pan,Tilt,Rollのそれぞれのパラメータについて、処理対象のキーフレームの値から360°の整数倍の値が加減算される。
次に、図16を用いて、本実施形態においてユーザがGUI308上のプリセットリスト312上の任意のプリセットを押下したときの処理フローについて説明する。なお、図16において、図11の処理フローと同一の機能を行うものについては、同一の符号を付与して表すものとし、第1の実施形態との相違点のみを説明する。
ステップS1601において、補間切り替え決定部1401が補間切り替え保持部1402から現在のパラメータ補正設定のON/OFF情報を取得し、仮想カメラパラメータ算出部511へ送信する。パラメータ補正設定がONの場合、ステップS1104の処理が実行される。パラメータ補正設定がOFFの場合、ステップS1108の処理が実行される。
以上、本実施形態では、GUI308上のすべてのクリップ映像用のカメラパスおよびプリセットについて、仮想カメラのパラメータ補正を行うか否かを選択できるボタンを設け、ユーザによる選択によって異なる補間手順でカメラパスを生成できるようにした。これにより、例えばユーザがキーフレーム間の経路が最短になるように補間したいとき、または例えばプリセット位置までの移動で最短でない経路を通りたいときでもユーザの所望のカメラパスが自動生成される。
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
なお、上記実施形態において、AとBの少なくとも1つとは、Aのみでもよいし、Bのみでもよいし、AとBでもよい。
本実施形態の開示は、以下の構成および方法を含む。
(構成1)
複数の撮像装置を被写体の周囲に配置して撮影し、撮影された複数の画像から仮想視点画像を生成する画像処理システムにおける情報処理装置であって、
ユーザ操作を取得する取得手段と、
前記仮想視点画像における仮想カメラの位置を保持する保持手段と、
前記保持手段に保持された複数の仮想カメラの位置からカメラパスを生成する生成手段とを有し、
前記保持手段は、前記仮想視点画像を生成するための仮想カメラの位置と、仮想カメラを所定の位置に変更するためのプリセット位置とを保持し、
前記生成手段は、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成する場合と、前記プリセット位置を用いてカメラパスを生成する場合とで、カメラパスを生成する手順を異ならせる
ことを特徴とする情報処理装置。
(構成2)
前記生成手段は、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成する場合よりも、前記プリセット位置を用いてカメラパスを生成する場合のほうが経路が短くなるようにカメラパスを生成することを特徴とする構成1に記載の情報処理装置。
(構成3)
前記保持手段は、仮想カメラの位置とともにID、時刻情報および仮想カメラの姿勢情報に係る情報を保持することを特徴とする構成1または2に記載の情報処理装置。
(構成4)
前記生成手段は、前記IDの順番に仮想カメラの位置を補間してカメラパスを生成することを特徴とする構成3に記載の情報処理装置。
(構成5)
前記保持手段は、前記プリセット位置を用いてカメラパスを生成するための、前記時刻情報とは異なる移動時間をさらに保持し、
前記生成手段は、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成する場合、前記仮想視点画像を生成するための仮想カメラの位置とともに記録されている時刻情報に基づいてカメラパスを生成し、前記プリセット位置を用いてカメラパスを生成する場合、前記移動時間に基づいてカメラパスを生成する
ことを特徴とする構成3または4に記載の情報処理装置。
(構成6)
前記生成手段は、前記プリセット位置を用いてカメラパスを生成する場合、前記プリセット位置に基づいて、仮想カメラの位置を補正することを特徴とする構成1から5のいずれか1項に記載の情報処理装置。
(構成7)
前記ユーザ操作に応じて、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成するための操縦モードと前記プリセット位置を用いてカメラパスを生成するための操縦モードとを切り替える切り替え手段をさらに有することを特徴とする構成1から6のいずれか1項に記載の情報処理装置。
(構成8)
複数の撮像装置を被写体の周囲に配置して撮影し、撮影された複数の画像から仮想視点画像を生成する画像処理システムにおける情報処理装置であって、
ユーザ操作を取得する取得手段と、
前記仮想視点画像における仮想カメラの位置とともにID、時刻情報および仮想カメラの姿勢情報に係る情報を保持し、また、前記時刻情報とは異なる移動時間を保持する保持手段と、
前記保持手段に保持された複数の仮想カメラの位置からカメラパスを生成する生成手段と、
前記生成手段が前記仮想視点画像を生成するための仮想カメラの位置とともに記録されている時刻情報に基づいてカメラパスを生成するモードと、前記移動時間を用いてカメラパスを生成するモードとを切り替える切り替え手段とを有する
ことを特徴とする情報処理装置。
(方法1)
複数の撮像装置を被写体の周囲に配置して撮影し、撮影された複数の画像から仮想視点画像を生成する画像処理システムにおける情報処理装置の制御方法であって、
ユーザ操作を取得する取得工程と、
前記仮想視点画像における仮想カメラの位置を保持する保持工程と、
保持された複数の仮想カメラの位置からカメラパスを生成する生成工程とを有し、
前記保持工程では、前記仮想視点画像を生成するための仮想カメラの位置と、仮想カメラを所定の位置に変更するためのプリセット位置とを保持し、
前記生成工程では、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成する場合と、前記プリセット位置を用いてカメラパスを生成する場合とで、カメラパスを生成する手順を異ならせる
ことを特徴とする制御方法。
(方法2)
複数の撮像装置を被写体の周囲に配置して撮影し、撮影された複数の画像から仮想視点画像を生成する画像処理システムにおける情報処理装置の制御方法であって、
ユーザ操作を取得する取得工程と、
前記仮想視点画像における仮想カメラの位置とともにID、時刻情報および仮想カメラの姿勢情報に係る情報を保持し、また、前記時刻情報とは異なる移動時間を保持する保持工程と、
保持された複数の仮想カメラの位置からカメラパスを生成する生成工程と、
前記仮想視点画像を生成するための仮想カメラの位置とともに記録されている時刻情報に基づいてカメラパスを生成するモードと、前記移動時間を用いてカメラパスを生成するモードとを切り替える切り替え工程とを有する
ことを特徴とする制御方法。

Claims (11)

  1. ユーザ操作を取得する取得手段と、
    複数の撮像装置によって撮影された複数の画像から生成される仮想視点画像における仮想カメラの位置および姿勢を、前記取得手段によって取得したユーザ操作によって設定する設定手段と、
    複数の仮想カメラの位置および姿勢からカメラパスを生成する生成手段とを有し、
    前記生成手段は、前記設定手段によって設定された複数の仮想カメラの位置および姿勢を用いてカメラパスを生成する場合と、現在の仮想カメラの位置および姿勢、並びに仮想カメラのプリセット位置および姿勢を用いてカメラパスを生成する場合とで、カメラパスを生成する手順を異ならせ、
    前記生成手段は、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成する場合よりも、前記プリセット位置を用いてカメラパスを生成する場合のほうが経路が短くなるようにカメラパスを生成する
    ことを特徴とする情報処理装置。
  2. 仮想カメラの位置とともにID、時刻情報および仮想カメラの姿勢情報に係る情報を保持する保持手段をさらに有することを特徴とする請求項1に記載の情報処理装置。
  3. 前記生成手段は、前記IDの順番に仮想カメラの位置を補間してカメラパスを生成することを特徴とする請求項2に記載の情報処理装置。
  4. 前記保持手段は、前記プリセット位置を用いてカメラパスを生成するための、前記時刻情報とは異なる移動時間をさらに保持し、
    前記生成手段は、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成する場合、前記仮想視点画像を生成するための仮想カメラの位置とともに記録されている時刻情報に基づいてカメラパスを生成し、前記プリセット位置を用いてカメラパスを生成する場合、前記移動時間に基づいてカメラパスを生成する
    ことを特徴とする請求項2に記載の情報処理装置。
  5. 前記生成手段は、前記プリセット位置を用いてカメラパスを生成する場合、前記プリセット位置に基づいて、仮想カメラの位置を補正することを特徴とする請求項1に記載の情報処理装置。
  6. 前記ユーザ操作に応じて、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成するための操縦モードと前記プリセット位置を用いてカメラパスを生成するための操縦モードとを切り替える切り替え手段をさらに有することを特徴とする請求項1に記載の情報処理装置。
  7. ユーザ操作を取得する取得手段と、
    複数の撮像装置によって撮影された複数の画像から生成される仮想視点画像における仮想カメラの位置とともにID、時刻情報および仮想カメラの姿勢情報に係る情報を保持し、また、前記時刻情報とは異なる移動時間を保持する保持手段と、
    前記保持手段に保持された複数の仮想カメラの位置からカメラパスを生成する生成手段と、
    前記生成手段が前記仮想視点画像を生成するための仮想カメラの位置とともに記録されている時刻情報に基づいてカメラパスを生成するモードと、前記移動時間を用いてカメラパスを生成するモードとを、前記取得手段によって取得したユーザ操作に応じて切り替える切り替え手段とを有する
    ことを特徴とする情報処理装置。
  8. ユーザ操作を取得する取得工程と、
    複数の撮像装置によって撮影された複数の画像から生成される仮想視点画像における仮想カメラの位置および姿勢を、前記取得工程によって取得したユーザ操作によって設定する設定工程と、
    複数の仮想カメラの位置および姿勢からカメラパスを生成する生成工程とを有し、
    前記生成工程では、前記設定工程によって設定された複数の仮想カメラの位置および姿勢を用いてカメラパスを生成する場合と、現在の仮想カメラの位置および姿勢、並びに仮想カメラのプリセット位置および姿勢を用いてカメラパスを生成する場合とで、カメラパスを生成する手順を異ならせ、
    前記生成工程では、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成する場合よりも、前記プリセット位置を用いてカメラパスを生成する場合のほうが経路が短くなるようにカメラパスを生成する
    ことを特徴とする情報処理装置の制御方法。
  9. ユーザ操作を取得する取得工程と、
    複数の撮像装置によって撮影された複数の画像から生成される仮想視点画像における仮想カメラの位置および姿勢を、前記取得工程によって取得したユーザ操作によって設定する設定工程と、
    複数の仮想カメラの位置および姿勢からカメラパスを生成する生成工程とを有し、
    前記生成工程では、前記設定工程によって設定された複数の仮想カメラの位置および姿勢を用いてカメラパスを生成する場合と、現在の仮想カメラの位置および姿勢、並びに仮想カメラのプリセット位置および姿勢を用いてカメラパスを生成する場合とで、カメラパスを生成する手順を異ならせ、
    前記生成工程では、前記仮想視点画像を生成するための仮想カメラの位置を用いてカメラパスを生成する場合よりも、前記プリセット位置を用いてカメラパスを生成する場合のほうが経路が短くなるようにカメラパスを生成する
    制御方法を情報処理装置に実行させるためのプログラム。
  10. ユーザ操作を取得する取得工程と、
    複数の撮像装置によって撮影された複数の画像から生成される仮想視点画像における仮想カメラの位置とともにID、時刻情報および仮想カメラの姿勢情報に係る情報を保持し、また、前記時刻情報とは異なる移動時間を保持する保持工程と、
    保持された複数の仮想カメラの位置からカメラパスを生成する生成工程と、
    前記仮想視点画像を生成するための仮想カメラの位置とともに記録されている時刻情報に基づいてカメラパスを生成するモードと、前記移動時間を用いてカメラパスを生成するモードとを、前記取得工程によって取得したユーザ操作に応じて切り替える切り替え工程とを有する
    ことを特徴とする情報処理装置の制御方法。
  11. 複数の撮像装置を被写体の周囲に配置して撮影し、撮影された複数の画像から仮想視点画像を生成する画像処理システムにおける情報処理装置に、
    ユーザ操作を取得する取得工程と、
    複数の撮像装置によって撮影された複数の画像から生成される仮想視点画像における仮想カメラの位置とともにID、時刻情報および仮想カメラの姿勢情報に係る情報を保持し、また、前記時刻情報とは異なる移動時間を保持する保持工程と、
    保持された複数の仮想カメラの位置からカメラパスを生成する生成工程と、
    前記仮想視点画像を生成するための仮想カメラの位置とともに記録されている時刻情報に基づいてカメラパスを生成するモードと、前記移動時間を用いてカメラパスを生成するモードとを、前記取得工程によって取得したユーザ操作に応じて切り替える切り替え工程と
    を情報処理装置に実行させるためのプログラム。
JP2023056851A 2023-03-31 2023-03-31 情報処理装置制御方法、およびプログラム Active JP7767355B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2023056851A JP7767355B2 (ja) 2023-03-31 2023-03-31 情報処理装置制御方法、およびプログラム
CN202410314943.5A CN118741070A (zh) 2023-03-31 2024-03-19 用于虚拟视点图像的信息处理装置、控制方法和记录介质
EP24165085.2A EP4451667A1 (en) 2023-03-31 2024-03-21 Information processing apparatus for virtual viewpoint images, control method, and program for the same
US18/620,186 US20240331307A1 (en) 2023-03-31 2024-03-28 Information processing apparatus for virtual viewpoint images, control method, and program for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2023056851A JP7767355B2 (ja) 2023-03-31 2023-03-31 情報処理装置制御方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2024143908A JP2024143908A (ja) 2024-10-11
JP7767355B2 true JP7767355B2 (ja) 2025-11-11

Family

ID=90417403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023056851A Active JP7767355B2 (ja) 2023-03-31 2023-03-31 情報処理装置制御方法、およびプログラム

Country Status (4)

Country Link
US (1) US20240331307A1 (ja)
EP (1) EP4451667A1 (ja)
JP (1) JP7767355B2 (ja)
CN (1) CN118741070A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4443273A1 (en) * 2023-03-31 2024-10-09 Canon Kabushiki Kaisha Display control apparatus, display control method, and program

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018092491A (ja) 2016-12-06 2018-06-14 キヤノン株式会社 情報処理装置、その制御方法、およびプログラム
JP2022060815A (ja) 2020-10-05 2022-04-15 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007025979A (ja) 2005-07-14 2007-02-01 Nippon Telegr & Teleph Corp <Ntt> 動画像編集システム、動画像編集方法、動画像編集プログラム及び記録媒体
US10750153B2 (en) * 2014-09-22 2020-08-18 Samsung Electronics Company, Ltd. Camera system for three-dimensional video
JP2022014358A (ja) * 2020-07-06 2022-01-19 キヤノン株式会社 情報処理装置、情報処理装置の制御方法およびプログラム
JP7599891B2 (ja) * 2020-10-05 2024-12-16 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018092491A (ja) 2016-12-06 2018-06-14 キヤノン株式会社 情報処理装置、その制御方法、およびプログラム
JP2022060815A (ja) 2020-10-05 2022-04-15 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム

Also Published As

Publication number Publication date
EP4451667A1 (en) 2024-10-23
JP2024143908A (ja) 2024-10-11
CN118741070A (zh) 2024-10-01
US20240331307A1 (en) 2024-10-03

Similar Documents

Publication Publication Date Title
KR101655078B1 (ko) 움직이는 사진 생성 방법 및 장치
JP7254464B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
US20180150989A1 (en) Information processing apparatus, method of processing information, and storage medium
JP7458889B2 (ja) 画像表示装置、制御方法、およびプログラム
JP6787394B2 (ja) 情報処理装置、情報処理方法、プログラム
JP7170441B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2022188095A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2020140285A (ja) 情報処理装置、情報処理装置の制御方法、及び、プログラム
JP5393237B2 (ja) 画像表示装置及びその制御方法、並びにプログラム及び記憶媒体
JP7277184B2 (ja) 情報処理装置、情報処理方法ならびにプログラム。
JP7767355B2 (ja) 情報処理装置制御方法、およびプログラム
JP7716232B2 (ja) 画像処理装置およびその制御方法、プログラム
JP4439373B2 (ja) 多視点カメラ映像表現システム、装置及びプログラム
JP7514346B2 (ja) 画像処理装置及び方法、プログラム
JP2021197082A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP2022043539A (ja) 画像処理装置、画像処理システム、画像処理方法、及びプログラム
JP7791226B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP5646033B2 (ja) 画像表示装置および画像表示方法
JP7403956B2 (ja) 情報処理装置、制御方法、及びプログラム
CN117768766A (zh) 拍摄方法、视频处理方法和拍摄设备
JP2025018896A (ja) 画像処理装置、画像処理方法、およびプログラム
JP2022171435A (ja) 情報処理装置及びその制御方法、プログラム
KR20170082116A (ko) 움직이는 사진 생성 방법 및 장치

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20231213

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240528

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250401

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250624

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250820

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: 20250930

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20251029

R150 Certificate of patent or registration of utility model

Ref document number: 7767355

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150