JP2020119335A - Program, camera work data generation method, and electronic apparatus - Google Patents
Program, camera work data generation method, and electronic apparatus Download PDFInfo
- Publication number
- JP2020119335A JP2020119335A JP2019010523A JP2019010523A JP2020119335A JP 2020119335 A JP2020119335 A JP 2020119335A JP 2019010523 A JP2019010523 A JP 2019010523A JP 2019010523 A JP2019010523 A JP 2019010523A JP 2020119335 A JP2020119335 A JP 2020119335A
- Authority
- JP
- Japan
- Prior art keywords
- recording
- camera
- virtual
- work data
- camera work
- 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.)
- Pending
Links
Images
Abstract
Description
本発明は、コンピュータに、仮想3次元空間を撮影する仮想カメラを制御させるためのプログラム等に関する。 The present invention relates to a program and the like for causing a computer to control a virtual camera that captures a virtual three-dimensional space.
拡張現実(AR:Augmented Reality)の技術は、さまざまな分野で利用されている。例えば、特許文献1には、現実空間におけるユーザ端末の位置と、仮想3次元空間における仮想カメラの位置とを対応づけ、当該仮想カメラで仮想3次元空間内に配置されているオブジェクト(例えば、ゲームに登場するキャラクタなど)を撮影した画像と、ユーザ端末に搭載されているカメラで撮影した現実空間の画像とを重畳表示させる技術や、ユーザの操作入力に基づいて、重畳表示させた画像を記録することができる技術が開示されている。
Augmented Reality (AR) technology is used in various fields. For example, in
特許文献1の技術を用いると、ユーザはあたかも現実空間の中に仮想のキャラクタがそこに存在しているかのような静止画像を作る楽しみが得られる。しかし、ユーザは自らがビデオカメラを手に持って撮影したかのような拡張現実の動画を得ることはできなかった。
By using the technique of
高性能なパーソナルコンピュータなどを利用して、3DCG(3-Dimensional Computer Graphics)ソフトを用いれば、拡張現実の動画も作成することは可能ではある。しかしその場合、できあがった拡張現実の動画のカメラワークは、実に滑らかで、あたかも映像のプロが高機能なジンバルを用いて撮影したかのような動画になる。そこには、ユーザ自らがビデオカメラを手に持って撮影したときに生まれるリアルな手ぶれ感がない。そのため「ユーザ自らが作った」と言う手作り感や、「ユーザが撮影した」と言うリアリティは薄く、いかにも「CGソフトで作りました」と言うどこか作り物めいた感じを拭えなかった。同じ事をプロフェッショナルな映像作家の立場から見れば、映像表現の演出上、ユーザ自らがビデオカメラを手に持って撮影したかのような印象を与えるリアリティを追求した拡張現実の動画を作らねばならないケースでは、手ぶれ感のないスムーズすぎるカメラワークでは、要求される演出を実現できないことになる。 By using 3DCG (3-Dimensional Computer Graphics) software using a high-performance personal computer, it is possible to create an augmented reality moving image. In that case, however, the resulting augmented reality video camera work is very smooth, as if the video professional was shooting with a high-performance gimbal. There is no real camera shake that occurs when the user himself holds the video camera and shoots. Therefore, the handmade feeling of "made by the user" and the reality of "photographed by the user" were thin, and I couldn't wipe out the feeling of something made of "CG software". From the perspective of a professional filmmaker, the same thing must be done to create an augmented reality movie that pursues the reality that gives the impression that the user himself/herself has taken a video camera in order to produce a video expression. In the case, if the camerawork is too smooth without camera shake, the required performance cannot be realized.
こうした問題は、拡張現実画像の動画作成に限らず、仮想現実(VR:Virtual Reality)の動画作成においても同様に言える。 Such a problem is not limited to the creation of a moving image of augmented reality images, and can be similarly applied to the creation of a virtual reality (VR) moving image.
本発明は、ユーザ自らがビデオカメラを手に持って撮影したかのような印象を与えるリアリティのある拡張現実や仮想現実の動画を作成するための新たな技術の提供を課題として考案されたものである。 The present invention has been devised as a subject to provide a new technique for creating a realistic augmented reality or virtual reality moving image that gives the impression that the user himself/herself has taken a video camera and photographed it. Is.
上記した課題を解決するための第1の発明は、携帯型のコンピュータを、仮想3次元空間を設定する仮想空間設定手段(例えば、図2の制御基板1550、図14の端末処理部200、カメラワーク記録管理部210、仮想空間設定制御部212、図16のステップS12)、
前記コンピュータの現実空間における位置および姿勢に基づいて、前記仮想3次元空間を撮影する仮想カメラの位置および姿勢を制御する仮想カメラ制御手段(例えば、図2の制御基板1550、図14の端末処理部200、カメラワーク記録管理部210、仮想カメラ制御部214、図16のステップS12)、
前記仮想カメラ制御手段によって連続的に制御された前記仮想3次元空間中の前記仮想カメラの位置および姿勢を再現可能なカメラワークデータを記録するカメラワークデータ生成手段(例えば、図2の制御基板1550、図5のカメラワークデータ550、図14の端末処理部200、カメラワーク記録管理部210、カメラワークデータ生成部220、端末記憶部500、図16のステップS18)、として機能させ、
前記カメラワークデータ生成手段は、
所与の記録再開指示に応じて記録を開始した際の前記仮想カメラの位置および姿勢を、所与の記録停止指示による停止前のカメラワークデータの所与の中断タイミングにおける前記仮想カメラの位置および姿勢に適合させることで、前記記録再開指示後のカメラワークデータを、前記停止前のカメラワークデータの前記中断タイミング以降に引き続くカメラワークデータとして記録する中断再開制御手段(例えば、図2の制御基板1550、図14の端末処理部200、カメラワーク記録管理部210、中断再開制御部222、図17のステップS42、図18のステップS80)、を有する、プログラムである。
A first aspect of the present invention for solving the above-mentioned problem is to provide a portable computer with a virtual space setting means for setting a virtual three-dimensional space (for example,
Virtual camera control means for controlling the position and orientation of the virtual camera that captures the virtual three-dimensional space based on the position and orientation of the computer in the physical space (for example,
A camera work data generation unit that records camera work data capable of reproducing the position and orientation of the virtual camera in the virtual three-dimensional space continuously controlled by the virtual camera control unit (for example, the
The camera work data generation means,
The position and orientation of the virtual camera at the time of starting recording in response to a given recording restart instruction are defined as the position of the virtual camera at a given interruption timing of the camera work data before the stop by the given recording stop instruction and An interruption/resumption control unit (for example, the control board in FIG. 2) that records the camera work data after the recording resumption instruction as camera work data that continues after the interruption timing of the camera work data before the stop by adapting to the posture. 1550, the
第1の発明によれば、コンピュータは、当該コンピュータの位置や姿勢に連動する仮想カメラで撮影した仮想空間画像を生成しつつ、仮想カメラの位置や姿勢を再現できるカメラワークデータを生成・記録する。つまり、ユーザが、仮想空間画像をファインダー画像のように見ながらコンピュータをあたかも携帯型ビデオカメラのようにして、位置を変え、姿勢を変える動画撮影のカメラワークを行えば、そのカメラワークのデータがコンピュータに記録される。 According to the first aspect of the present invention, the computer generates and records camera work data capable of reproducing the position and orientation of the virtual camera while generating the virtual space image captured by the virtual camera linked to the position and orientation of the computer. .. In other words, if a user looks at a virtual space image like a viewfinder image and uses the computer as if it were a portable video camera, he or she changes the position and changes the posture. Recorded on the computer.
当然、このカメラワークデータを元に再現される仮想カメラの移動軌跡には、実際にユーザが手に持って撮影したことで生じたリアルな「ゆらぎ」が含まれている。従って、コンピュータに記録されたカメラワークデータを、3DCGソフトで用いれば、「ユーザ自らがビデオカメラを手に持って撮影した」リアリティのある拡張現実や仮想現実の画像の動画を作成できる。 Naturally, the movement locus of the virtual camera reproduced based on the camera work data includes a real “fluctuation” caused by the user actually holding and photographing. Therefore, if the camera work data recorded in the computer is used by the 3DCG software, it is possible to create a realistic moving image of an augmented reality image or a virtual reality image "a user himself/herself took a video camera and took a picture".
加えて、カメラワークデータの記録は、中断と再開が可能である。よって、ユーザがカメラワークの記録の一時停止と再開を任意に行うことが可能になるので、思い通りのカメラワークデータを記録し易くなる。例えば、カメラワークデータの記録中に、ユーザの体勢が苦しくなってしまい、思い描いているカメラワークを継続出来なくなったとしても、記録を一時停止させ、体勢を直してからカメラワークデータの記録を再開することができる。 In addition, recording camera work data can be interrupted and resumed. Therefore, the user can arbitrarily pause and resume the recording of the camera work, and it becomes easy to record the desired camera work data. For example, even if the user's posture becomes uncomfortable during the recording of camerawork data and the desired camerawork cannot be continued, the recording is temporarily stopped, the posture is corrected, and then the recording of the camerawork data is resumed. can do.
そして、記録が再開される際には、コンピュータは、記録再開指示に応じて記録を開始した際の仮想カメラの位置および姿勢を、停止指示による停止前のカメラワークデータの所与の中断タイミングにおける仮想カメラの位置および姿勢に適合させる補正を自動的に行い、記録再開指示後のカメラワークデータを、停止前のカメラワークデータの中断タイミング以降に引き続くカメラワークデータとして記録を再開することができる。言い換えると、中断時のコンピュータの位置と、再開時のコンピュータの位置とに差異があったとしても、中断前後で位置飛びが生じることのない、一繋がりのカメラワークデータを記録できる。拡張現実や仮想現実の動画を作成するための新たな技術を提供することができる。 Then, when the recording is restarted, the computer determines the position and the posture of the virtual camera when the recording is started in response to the recording restart instruction at the given interruption timing of the camera work data before the stop by the stop instruction. It is possible to automatically perform the correction adapted to the position and orientation of the virtual camera, and restart the recording of the camera work data after the recording restart instruction as the camera work data that continues after the interruption timing of the camera work data before the stop. In other words, even if there is a difference between the position of the computer at the time of interruption and the position of the computer at the time of restart, it is possible to record a series of camera work data that does not cause a position jump before and after the interruption. It is possible to provide a new technology for creating a video of augmented reality or virtual reality.
第2の発明は、前記カメラワークデータ生成手段が、現実空間に設定された所与の位置を基準とした前記コンピュータの相対位置および相対姿勢を時系列に記録したデータ、或いは、前記仮想カメラの位置および姿勢を時系列に記録したデータを少なくとも含むデータの記録を制御する、第1の発明プログラムである。 A second aspect of the present invention is data in which the camera work data generation means records in time series the relative position and relative attitude of the computer with respect to a given position set in the physical space, or the virtual camera It is a first invention program for controlling recording of data including at least data in which position and orientation are recorded in time series.
第2の発明によれば、カメラワークデータとして、現実空間に設定された所与の位置を基準としたコンピュータの相対位置および相対姿勢を時系列に記録したデータ、或いは、仮想カメラの位置および姿勢を時系列に記録したデータを少なくとも含むデータを記録できる。 According to the second invention, as the camera work data, data in which the relative position and the relative attitude of the computer with respect to the given position set in the physical space are recorded in time series, or the position and the attitude of the virtual camera are recorded. It is possible to record data including at least data recorded in time series.
第3の発明は、前記中断再開制御手段が、前記記録再開指示に応じて記録を開始した際の前記仮想カメラの位置および姿勢を、前記停止前のカメラワークデータの前記中断タイミングにおける前記仮想カメラの位置および姿勢に適合させるための変換関数を生成する変換関数生成手段(例えば、図2の制御基板1550、図14の端末処理部200、カメラワーク記録管理部210、変換関数生成部224、図15の変換関数データ590、図17のステップS56〜ステップS58)、を有し、前記変換関数を用いて前記記録再開指示後のカメラワークデータを記録し、または、前記変換関数を時系列に記憶する、第1又は第2の発明のプログラムである。
In a third aspect of the invention, the position and orientation of the virtual camera when the interruption/resumption control unit starts recording in response to the recording restart instruction is the virtual camera at the interruption timing of the camera work data before the stop. Conversion function generating means for generating a conversion function for adapting to the position and orientation of the camera (for example, the
第3の発明によれば、変換関数を用いて記録再開指示後のカメラワークデータを記録可能となり、記録の停止前のカメラワークデータと、記録の再開後のカメラワークデータとが一連のデータとして記録されるので、データ管理が容易になる。また、変換関数をカメラワークデータと対応付けて時系列に記憶することで、記録後にカメラワークデータを補正したり、カメラワークデータに基づく仮想空間画像の生成を行う段階で適合に関する補正処理を行うことが可能になる。 According to the third aspect, the camera work data after the recording restart instruction can be recorded using the conversion function, and the camera work data before the recording is stopped and the camera work data after the recording is restarted are a series of data. Since it is recorded, data management becomes easy. In addition, by storing the conversion function in time series in association with the camera work data, the camera work data is corrected after recording, and a correction process regarding conformity is performed at the stage of generating a virtual space image based on the camera work data. It will be possible.
第4の発明は、前記中断再開制御手段が、前記記録再開指示後のカメラワークデータへの前記変換関数の適用効果を時間経過に応じて徐々に低減させる、第3の発明のプログラムである。 A fourth invention is the program according to the third invention, wherein the interruption/resumption control means gradually reduces the application effect of the conversion function to the camera work data after the recording restart instruction, as time elapses.
第4の発明によれば、変換関数の効果を徐々に低減させることができる。 According to the fourth aspect, the effect of the conversion function can be gradually reduced.
第5の発明は、前記計測データが、前記仮想3次元空間を撮影する際の不適な変化をしたことを示す所与の不適変化条件を満たしたことを検出し、当該検出に応じて前記記録停止指示を与える不適変化時自動停止手段(例えば、図2の制御基板1550、図14の端末処理部200、カメラワーク記録管理部210、不適変化自動停止部234、図17のステップS32)、
前記不適変化時自動停止手段による記録の停止をユーザに通知する通知制御手段(例えば、図2の制御基板1550、図14の端末処理部200、カメラワーク記録管理部210、通知制御部236、図17のステップS41)、
として前記コンピュータを機能させるための第1〜第4の何れかの発明のプログラムである。
5th invention detects that the said measurement data satisfy|filled the given improper change conditions which show that the improper change at the time of image|photographing the said virtual three-dimensional space, and recorded the said recording according to the said detection. Improper change automatic stop means for giving a stop instruction (for example,
Notification control means for notifying the user of the stop of the recording by the automatic stop means at the time of improper change (for example, the
Is a program of any one of the first to fourth inventions for causing the computer to function as.
第5の発明によれば、コンピュータの位置や姿勢が、撮影に適さない変化を起こした場合に、自動的に記録を停止し、その旨をユーザに通知することができる。よって、例えば、コンピュータを携帯しているユーザが躓いて大きなブレが生じた場合や、コンピュータを周囲の何かにぶつけて大きなブレが生じた場合には、ユーザ自らが記録を停止させなくとも、自動的に記録が停止されるので便利である。 According to the fifth aspect, when the position or orientation of the computer changes unsuitable for photographing, recording can be automatically stopped and the user can be notified of that fact. Therefore, for example, if a user carrying a computer stumbles and a large blur occurs, or if the computer hits something in the vicinity to cause a large blur, the user does not have to stop the recording. This is convenient because recording is automatically stopped.
第6の発明は、前記中断タイミングの候補タイミングを自動選択し、当該候補タイミングにおける前記仮想カメラの位置および姿勢で撮影された前記仮想3次元空間の画像をユーザに提示する制御を行う候補タイミング提示手段(例えば、図2の制御基板1550、図14の端末処理部200、カメラワーク記録管理部210、候補タイミング提示部242、図17のステップS46〜ステップS50)、として前記コンピュータを機能させるための第1〜第5の何れかの発明のプログラムである。
A sixth invention is to present a candidate timing for performing control to automatically select a candidate timing of the interruption timing and present a user with an image of the virtual three-dimensional space photographed at the position and orientation of the virtual camera at the candidate timing. For operating the computer as means (for example,
第6の発明によれば、ユーザに中断タイミングとして適当な候補を提示できる。よって、ユーザは自ら中断タイミングを探す手間が省ける。 According to the sixth aspect, it is possible to present the user with an appropriate candidate as the interruption timing. Therefore, the user can save the trouble of searching for the interruption timing by himself.
第7の発明は、前記記録再開指示に応じて記録の開始を行う際に、前記計測データに基づく前記仮想カメラの位置および姿勢と、前記停止前のカメラワークデータに基づく前記中断タイミングでの前記仮想カメラの位置および姿勢との差が、所与のズレ条件を満たす場合に、ユーザに警告を行う警告制御手段、として前記コンピュータを機能させるための第1〜第6の何れかの発明のプログラムである。 A seventh aspect of the present invention, when recording is started in response to the recording restart instruction, the position and orientation of the virtual camera based on the measurement data and the interruption timing based on the camera work data before the stop. The program according to any one of the first to sixth inventions for causing the computer to function as warning control means for warning the user when the difference between the position and the posture of the virtual camera satisfies a given deviation condition. Is.
第7の発明によれば、記録の中断と再開とを挟んで、カメラワークのズレを判定して、ユーザに警告を発することができる。 According to the seventh aspect of the invention, it is possible to determine the deviation of the camera work and issue a warning to the user with the interruption and the resumption of the recording sandwiched.
第8の発明は、携帯型のコンピュータが実行するカメラワークデータ生成方法であって、
仮想3次元空間を設定する仮想空間設定ステップ(例えば、図16のステップS12)と、
実空間における携帯型コンピュータの位置および姿勢を計測した計測データを取得する計測データ取得ステップ(例えば、図16のステップS10)と、
取得した計測データに基づいて、前記仮想3次元空間を撮影する仮想カメラの位置および姿勢を連続的に制御する仮想カメラ制御ステップ(例えば、図16のステップS12)と、
連続的に制御された前記仮想3次元空間中の前記仮想カメラの位置および姿勢を再現可能なカメラワークデータを記録するカメラワークデータ生成ステップ(例えば、図16のステップS18〜ステップS22)と、
を含み、
前記カメラワークデータ生成ステップは、
所与の記録再開指示に応じて記録を開始した際の前記仮想カメラの位置および姿勢を、所与の記録停止指示による停止前のカメラワークデータの所与の中断タイミングにおける前記仮想カメラの位置および姿勢に適合させることで、前記記録再開指示後のカメラワークデータを、前記停止前のカメラワークデータの前記中断タイミング以降に引き続くカメラワークデータとして記録するステップを含む、
カメラワークデータ生成方法である。
An eighth invention is a camera work data generation method executed by a portable computer,
A virtual space setting step of setting a virtual three-dimensional space (for example, step S12 of FIG. 16),
A measurement data acquisition step of acquiring measurement data obtained by measuring the position and orientation of the portable computer in the real space (for example, step S10 of FIG. 16),
A virtual camera control step (for example, step S12 in FIG. 16) that continuously controls the position and orientation of the virtual camera that captures the virtual three-dimensional space based on the acquired measurement data,
A camera work data generation step of recording camera work data capable of reproducing the position and orientation of the virtual camera in the continuously controlled virtual three-dimensional space (for example, step S18 to step S22 in FIG. 16),
Including
The camerawork data generation step,
The position and orientation of the virtual camera at the time of starting recording in response to a given recording restart instruction are defined as the position of the virtual camera at a given interruption timing of the camera work data before the stop by the given recording stop instruction and By adapting to the posture, the step of recording the camera work data after the recording restart instruction is recorded as camera work data that continues after the interruption timing of the camera work data before the stop,
This is a camera work data generation method.
第8の発明によれば、第1の発明と同様の効果を得ることができる。 According to the eighth invention, the same effect as that of the first invention can be obtained.
第9の発明は、携帯型の電子機器であって、仮想3次元空間を設定する仮想空間設定手段と、前記電子機器の実空間における位置および姿勢に基づいて、前記仮想3次元空間を撮影する仮想カメラの位置および姿勢を制御する仮想カメラ制御手段と、前記仮想カメラ制御手段によって連続的に制御された前記仮想3次元空間中の前記仮想カメラの位置および姿勢を再現可能なカメラワークデータを記録するカメラワークデータ生成手段と、を備え、前記カメラワークデータ生成手段は、所与の記録再開指示に応じて記録を開始した際の前記仮想カメラの位置および姿勢を、所与の記録停止指示による停止前のカメラワークデータの所与の中断タイミングにおける前記仮想カメラの位置および姿勢に適合させることで、前記記録再開指示後のカメラワークデータを、前記停止前のカメラワークデータの前記中断タイミング以降に引き続くカメラワークデータとして記録する手段、を有する、電子機器である。 A ninth aspect of the present invention is a portable electronic device that captures the virtual three-dimensional space based on a virtual space setting unit that sets a virtual three-dimensional space and the position and orientation of the electronic device in the real space. Virtual camera control means for controlling the position and orientation of the virtual camera, and camera work data capable of reproducing the position and orientation of the virtual camera in the virtual three-dimensional space continuously controlled by the virtual camera control means are recorded. And a camera work data generation unit that performs the camera work data generation unit that determines the position and orientation of the virtual camera when recording is started in response to a given recording restart instruction according to a given recording stop instruction. By adapting the position and the posture of the virtual camera at a given interruption timing of the camera work data before the stop, the camera work data after the recording restart instruction is made after the interruption timing of the camera work data before the stop. An electronic device having means for recording as subsequent camera work data.
第9の発明によれば、第1の発明と同様の効果が得られる電子機器を実現できる。 According to the ninth aspect, it is possible to realize an electronic device that achieves the same effects as the first aspect.
以下、本発明の実施形態の一例を説明するが、本発明を適用可能な形態が以下の実施形態に限られないことは勿論である。 Hereinafter, an example of the embodiment of the present invention will be described, but it goes without saying that the mode to which the present invention is applicable is not limited to the following embodiment.
〔第1実施形態〕
図1は、動画生成システムの構成例を示す図である。動画生成システム1000は、拡張現実の動画を作成するサービスを提供するコンピュータシステムであって、ネットワーク9を介して相互にデータ通信が可能に接続されたサーバシステム1100と、ユーザ端末1500とを含む。
[First Embodiment]
FIG. 1 is a diagram illustrating a configuration example of a moving image generation system. The moving
ネットワーク9は、データ通信が可能な通信路を意味する。すなわち、ネットワーク9とは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLAN(Local Area Network)の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。 The network 9 means a communication path capable of data communication. That is, the network 9 includes a dedicated line (dedicated cable) for direct connection, a LAN (Local Area Network) such as Ethernet (registered trademark), a communication network such as a telephone communication network, a cable network, and the Internet. The communication method may be wired or wireless.
サーバシステム1100は、例えば、キーボード1106と、タッチパネル1108と、ストレージ1140とを有し、本体装置には制御基板1150を搭載する。
The
制御基板1150には、CPU(Central Processing Unit)1151やGPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1152、通信装置1153が搭載されている。なお、制御基板1150の一部又は全部は、ASIC(Application Specific Integrated Circuit)や、FPGA(Field-Programmable Gate Array)、SoC(System on a Chip)により実現するとしてもよい。
On the
そして、サーバシステム1100は、制御基板1150が所定のプログラムおよびデータに基づいて演算処理することにより、ユーザ端末1500で作成・記録されたカメラワークデータ(詳細後述)に基づいて拡張現実の画像(拡張現実画像)を生成し、拡張現実画像の動画データをユーザに提供する機能を実現する。
Then, in the
なお、図1では、ユーザ端末1500を1台のみ描いているが、実際のシステム運用においては、同時に複数のユーザ端末1500がサーバシステム1100にアクセス可能な構成であってもよい。
Although only one
また、サーバシステム1100を、1台のサーバ装置であるかのように描いているが、複数の装置で実現する構成であってもよい。例えば、サーバシステム1100は各機能を分担する複数のブレードサーバを搭載して相互に内部バスを介してデータ通信可能に接続した構成であってもよい。また、サーバシステム1100を構成するハードウェアの設置場所は問わない。離れた場所に設置された独立した複数のサーバを、ネットワーク9を介してデータ通信させることで、全体としてサーバシステム1100として機能させる構成であってもよい。
Further, although the
ユーザ端末1500は、ユーザ2が、拡張現実画像の生成のためのデータ取得に使用するコンピュータシステムであって、ネットワーク9を介してサーバシステム1100にアクセスできる電子装置(電子機器)である。本実施形態のユーザ端末1500は、いわゆるスマートフォンと呼ばれる装置であるが、手持ち可能な携帯型のコンピュータシステムであれば、携帯型ゲーム装置や、タブレット型コンピュータ、などでもよい。
The
図2は、本実施形態におけるユーザ端末1500の構成例を示す正面図である。
ユーザ端末1500は、方向入力キー1502と、ボタンスイッチ1504と、画像表示デバイス兼接触位置入力デバイスとして機能するタッチパネル1506と、スピーカ1510と、内蔵バッテリー1509と、マイク1512と、カメラ1520と、制御基板1550と、コンピュータ読み出し可能な記憶媒体であるメモリカード1540からデータを読み書きできるメモリカード読取装置1542と、を備える。その他、図示されていない電源ボタン、音量調節ボタン等が設けられている。また、システム利用対価の支払いが可能なICカード型のクレジットカードやプリペイドカードに対して非接触にデータの読み書きが行えるICカード読取装置などを設けるとしてもよい。
FIG. 2 is a front view showing a configuration example of the
The
カメラ1520は、ズーム倍率を変更可能なイメージセンサーユニットである。すなわち、カメラ1520は、CCD(Charge Coupled Device)などのイメージセンサ、ズーム機構、オートフォーカス機構、イメージセンサで撮影された信号から映像データを生成するLSI、などの各種デジタル動画撮影を可能とする構成要素を含む。
The
制御基板1550は、CPU1551やGPU,DSPなどの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1552、ネットワーク9に接続する携帯電話基地局や無線LAN基地局などと無線通信するための無線通信モジュール1553、測位モジュール1555、3軸加速度センサ1556、3軸ジャイロ1557、インターフェース回路1558、などを搭載する。
The
測位モジュール1555は、ユーザ端末1500の位置を取得する。本実施形態では既存の測位システムを利用して現実空間における位置座標を取得することができる。すなわち、測位モジュール1555は、測位システムから提供される信号を受信して所定周期で(例えば、1秒毎に)測位情報を出力することで、ユーザ端末1500における測位機能を提供する。本実施形態では、測位システムとしてGPS(Global Positioning System)を利用する。よって測位モジュール1555は、既存の「GPSモジュール」や「GPS受信器」等を利用することができる。「測位情報」には、測位日時(例えば、協定世界時であるUTC:Coordinated Universal Time)、位置座標(緯度・経度・高度)、方位などが含まれる。利用する測位システムはGPSに限らず適宜選択可能である。例えば、測位モジュール1555は、携帯電話の無線基地局やWi−Fiネットワークの無線基地局などと無線接続する通信機と、方位センサとの構成で置き換えることができる。すなわち、接続中の無線基地局について予め測位されている位置情報を取得して、これをユーザ端末1500の現実空間における位置座標とするとしてもよい。
The
インターフェース回路1558には、タッチパネル1506のドライバ回路、方向入力キー1502およびボタンスイッチ1504からの信号を受信する回路、スピーカ1510へ音声信号を出力する出力アンプ回路、マイク1512で集音した音声の信号を生成する入力信号生成回路、カメラ1520で撮影された画像の画像データを入力する回路、メモリカード読取装置1542への信号入出力回路、などが含まれている。
The
制御基板1550に搭載されているこれらの要素は、バス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。なお、制御基板1550の一部又は全部をASICやFPGA、SoCにて構成してもよい。そして、制御基板1550は、ユーザ端末としての機能を実現させるためのプログラムや各種データをICメモリ1552に記憶する。
These elements mounted on the
なお、本実施形態では、ユーザ端末1500はプログラムや各種設定データをサーバシステム1100からダウンロードする構成としているが、別途入手したメモリカード1540などの記憶媒体から読み出す構成としてもよい。
In the present embodiment, the
図3は、ユーザ端末1500における拡張現実を用いた被写体の表示制御に関して説明するための図である。
ユーザ端末1500は、拡張現実を用いて、タッチパネル1506に被写体を表示させることができる。すなわち、現実空間にはARマーカ5が設置されており、ユーザ2は、このARマーカ5を撮影するようにユーザ端末1500の位置・姿勢と、カメラ1520のズームを調整する。カメラ1520で撮影された画像内のARマーカ5は画像認識処理されて、ユーザ端末1500とARマーカ5との相対位置や相対姿勢の算出処理に用いられる。ARマーカ5との相対位置や相対姿勢は、ユーザ端末1500の位置や姿勢の計測データとなる。
FIG. 3 is a diagram for explaining display control of a subject using augmented reality in the
The
ユーザ端末1500は、算出された相対位置や相対姿勢と、3軸加速度センサ1556や3軸ジャイロ1557を用いて得られるユーザ端末1500の加速度および姿勢の計測データとから、カメラ1520の位置変化と姿勢変化とを常時取得することができる。また、カメラ1520のズーム操作により撮影画角(ズーム倍率とも言われる)の情報も周期的に取得することができる。以降では、相対位置や、相対姿勢、位置変化、姿勢変化、撮影画角と言ったいわゆる撮影条件を記述するパラメータ値、およびこれらを求めるための元になるARマーカ5の大きさや向き、姿勢データや加速度データ、ズーム制御値、センサの計測値などを総括して「実撮影条件」と呼ぶこととする。
The
実撮影条件を取得する一方、ユーザ端末1500は、仮想3次元空間に、被写体オブジェクト4を配置してその動作を制御することができる。本実施形態では、被写体オブジェクト4は、人の形態を模した仮想キャラクタであり、カメラ1520で撮影された撮影画像に基づくAR(Augmented Reality)キャラクタである。ユーザ端末1500は、予め用意された所与の楽曲データと、当該楽曲データの楽曲と同期するモーションを実現するための所定のモーションデータと、を用いて、被写体オブジェクト4が楽曲を歌いながら踊るように動作制御する。
While acquiring the actual shooting condition, the
仮想3次元空間には、カメラ1520の実撮影条件のパラメータ値に連動し、その撮影位置・撮影姿勢・撮影画角が制御される仮想カメラC1が配置される。ユーザ端末1500は、仮想カメラC1で撮影した仮想3次元空間の画像すなわち仮想空間画像90を生成して、これを現実空間の画像(現実空間画像92)に重畳表示させる。タッチパネル1506に、拡張現実の画像(拡張現実画像94)を、ライブ画像30(カメラ1520のファインダー画像に相当)として表示させる。
In the virtual three-dimensional space, a virtual camera C1 that is linked to the parameter value of the actual shooting condition of the
ユーザ2は、ユーザ端末1500へ所定の記録開始操作を入力してから、タッチパネル1506に表示される画像をファインダー画像に見立てて、被写体オブジェクト4が楽曲を歌いながら踊る様子を見ながら、携帯型ビデオカメラで撮影する要領で撮影操作する。撮影操作には、ユーザ端末1500を現実空間で移動させ、時に姿勢を変え、時にズーム倍率を変える操作が含まれる。つまり、カメラワークをつける操作である。
The
図4に示すように、ユーザ端末1500を使ってカメラワークをつけると、それにより生じる移動軌跡L1は、人が携帯型ビデオカメラを手に持って撮影したときに生じる手ブレ等に相当する「ゆらぎ」を含む。
As shown in FIG. 4, when camera work is applied using the
そして、ユーザ端末1500は、ユーザ2による所定の記録開始操作の入力を検出すると、例えば、図5に示すようなカメラワークデータ550の記録を開始する。
カメラワークデータ550は、固有の撮影ID551と、撮影開始日時553と、撮影終了日時555と、実撮影条件データ560と、仮想撮影条件データ570と、カメラ1520で撮影されていた現実空間画像92を録画した現実画像録画データ580と、仮想空間画像90を録画した仮想空間画像録画データ582と、を含む。勿論、これら以外のデータも適宜含めることができるし、これらのうちの幾つかを適宜省略することもできる。
Then, when the
The
実撮影条件データ560は、例えば、
1)ARマーカ5に基づいて算出された相対姿勢、および/または3軸ジャイロ1557による計測データ、を時系列に格納した実カメラ姿勢データ561と、
2)ARマーカ5に基づいて算出された撮影位置変化から求められる加速度、および/または3軸加速度センサ1556による計測データ、を時系列に格納した実カメラ加速度データ563と、
3)カメラ1520のズーム倍率(撮影画角)或いはズーム倍率の制御パラメータ値を時系列に格納した実ズーム制御データ565と、
4)ARマーカ5に基づいて算出されたカメラ1520の相対位置、および/または3軸加速度センサ1556による計測データの積算から求められる撮影位置、を時系列にトレースした移動軌跡L1を記述する実移動軌跡データ567と、
を含む。
The actual
1) Real
2) Real
3) Actual
4) Actual movement describing a movement locus L1 in which a relative position of the
including.
仮想撮影条件データ570は、例えば、
1)実カメラ姿勢データ561から求められる仮想カメラC1の撮影姿勢を時系列に格納した仮想カメラ姿勢データ571と、
2)実カメラ加速度データ563から求められる仮想カメラC1に生じている加速度を時系列に格納した仮想カメラ加速度データ573と、
3)実ズーム制御データ565から求められる仮想カメラC1の撮影画角(またはズーム倍率)を時系列に格納した仮想カメラ撮影画角データ575と、
4)実移動軌跡データ567に基づいて移動軌跡L1を仮想3次空間内で再現した仮想カメラC1の移動軌跡Lcを記述する仮想カメラ移動軌跡データ577と、
を含む。
The virtual
1) Virtual
2) Virtual
3) Virtual camera shooting angle-of-
4) Virtual camera
including.
なお、実撮影条件データ560のタイムコードすなわち時間軸と、仮想撮影条件データ570のタイムコードすなわち時間軸とは、楽曲の再生や被写体オブジェクト4の動作制御のタイムコードと同期させるように対応付けて記録されるものとする。また、実撮影条件データ560と仮想撮影条件データ570は、何れか一方を省略し、必要に応じて残された側から省略された側の撮影条件データを逆算によって求める構成としてもよい。
The time code, that is, the time axis of the actual
ユーザ2が所定の記録停止操作を入力すると、ユーザ端末1500はカメラワークデータ550の記録を停止し、図6に示すように、拡張現実動画の生成に必要とされる情報やデータをサーバシステム1100へアップロードする。具体的には、例えば、被写体オブジェクト4のモデルデータ510、モーションデータ512、楽曲データ514、カメラワークデータ550、をアップロードする。勿論、これら以外のデータも適宜アップロードするとしてもよい。例えば、仮想3次元空間内に、被写体オブジェクト4が歌や踊りを披露するための舞台装置などの背景オブジェクトを用意した場合には、そのモデルデータやモーションデータなど、表示と動作を実現するためのデータも、アップロードする。勿論、これら以外のデータも適宜アップロードするとしてもよい。
When the
なお、モデルデータ510や、モーションデータ512、楽曲データ514、について予めサーバシステム1100に記録されているデータを事前にユーザ端末1500にダウンロードしてカメラワークデータ550の記録時に使用する場合は、これらのデータのアップロードは省略できる。また、モデルデータ510や、モーションデータ512、楽曲データ514は、ユーザ2の自作・他作は問わない。
When the
図7は、サーバシステム1100による拡張現実の動画の生成について説明するための図である。サーバシステム1100は、被写体オブジェクト4のモデルデータ510、モーションデータ512、楽曲データ514、カメラワークデータ550、がアップロードされると、それらのデータに基づいて、仮想3次元空間に被写体オブジェクト4や背景オブジェクトを配置し、楽曲の再生と同期させてその動作を制御する。更に、楽曲の再生と同期させて、アップロードされたカメラワークデータ550に基づいて仮想カメラC2を制御する。
FIG. 7 is a diagram for explaining generation of an augmented reality moving image by the
そして、サーバシステム1100は、仮想カメラC2で撮影された仮想3次元空間内の画像(仮想現実画像)を生成して、アップロードされたカメラワークデータ550に含まれる現実画像録画データ580に重畳表示させて、拡張現実の動画のデータ(拡張現実動画データ584)を作成する。
Then, the
こうして作成された拡張現実の動画では、人が携帯型ビデオカメラを操作したときに生じる「ゆらぎ」による画面の揺れなどが再現されており、「ユーザ自らがビデオカメラを手に持って撮影した」リアリティのある拡張現実の動画となっている。 In the augmented reality video created in this way, screen fluctuations due to "fluctuations" that occur when a person operates a portable video camera are reproduced, and "the user himself took the video camera in his hand to shoot" It is a video of augmented reality with reality.
さて、カメラワークのつけかたによっては、中断を余儀なくされるケースがあるが、本実施形態ではそうしたケースにも対応する。
例えば、図8は、中断を余儀なくされるケースの例を示す図である。ユーザ2が撮影操作を行う際、ユーザ2の背丈や被写体オブジェクト4との大きさの関係によっては、連続的に所望するカメラアングルを確保できなくなる。図8の例では、ユーザ2は、被写体オブジェクト4を正面から撮影し始め、被写体オブジェクト4の左方に回り込みつつ、仰ぎ見るような煽り撮影をしようとしている。しかし、現実世界では地面(床面)があるために、ユーザ端末1500を下げる位置には限界が生じる。当然、ユーザ2も窮屈な姿勢をよぎなくされ、身体的な限界により、望ましいアングルを安定的に得るのが難しくなる。こうしたケースでは、カメラワークデータ550の記録をそこで終了せざるを得なくなる。図中の移動軌跡L1はそうした限界内で実現可能なカメラワークの軌跡である。ユーザ2は、移動軌跡L2で撮影したいと思っても、破線部分が丁度床面の下に潜ることになり実現できなくなっている。
There are cases in which interruption is inevitable depending on how the camera work is attached, but this embodiment also accommodates such cases.
For example, FIG. 8 is a diagram illustrating an example of a case in which interruption is forced. When the
そこで、本実施形態ではカメラワークデータ550の記録の中断(一時停止)と再開とを可能にしている。
図9は、カメラワークデータ550の記録の中断(一時停止)と再開についての基本的な考え方を説明するための図である。
Therefore, in the present embodiment, the recording of the
FIG. 9 is a diagram for explaining the basic idea regarding the interruption (temporary stop) and the restart of the recording of the
ユーザ端末1500は、カメラワークデータ550の記録制御に係り、所与の記録停止指示に応じた記録の停止と、所与の記録再開指示に応じた記録の開始とを行うことでカメラワークデータ550の中断および再開を制御する。ユーザ2の立場から述べると、カメラワークの中断を余儀なくされると、ユーザ2はそのカメラワークデータ550の記録を中断させ、ユーザ端末1500の位置や姿勢を、再開時に想定しているカメラワークの始点として適当な位置と姿勢に調整し、カメラワークデータ550の記録を再開させることができる。
The
図10は、停止前のカメラワークデータ550に設定された中断タイミング以降に引き続くカメラワークデータの記録について説明するための図である。
ユーザ端末1500は、記録停止指示に応じた記録の停止と、記録再開指示に応じた記録の開始とを行うことでカメラワークデータの中断および再開を制御する。そして、中断および再開を行うにあたり、ユーザ端末1500は、中断タイミングにおける仮想カメラC1の仮想撮影条件(図5の仮想撮影条件データ570を参照)に対して、記録再開指示に応じて記録を開始した(再開した)際の仮想カメラC1の仮想撮影条件を適合させるように補正処理する。そして、停止前のカメラワークデータの中断タイミング以降に引き続くカメラワークデータを記録する。
FIG. 10 is a diagram for explaining the recording of the camera work data that continues after the interruption timing set in the
The
より具体的には、ユーザ端末1500は、再開後のカメラワークデータ550を記録するにあたり、中断前のカメラワークの移動軌跡Lc1の中断タイミングにおける仮想撮影条件と、記録再開指示に応じて記録を開始した後のカメラワークの移動軌跡Lc2の開始タイミングにおける仮想撮影条件とを、一致させるように補正処理しながら、引き続くカメラワークデータを記録する。そして、中断前のカメラワークデータ550の最後の部分について部分的な変更、削除或いは追加を施した停止前のカメラワークデータ550と、記録再開指示に応じて記録を開始した後のカメラワークデータ550(引き続くカメラワークデータ)とを接続して一連のカメラワークデータ550として記録する制御を行う。
More specifically, when recording the
補正処理の方法は、適宜設定可能である。
例えば、位置に着目すれば、本実施形態では、記録再開指示に応じて記録を開始した開始タイミングにおけるカメラワークの始点位置Psを、中断前のカメラワークの移動軌跡L1の中断タイミングにおける中断タイミング位置Peへ変更する座標関数(例えば、変換行列)を生成し、この変換行列を適用して変換する。別の補正処理の方法としては中断タイミング位置Peから移動軌跡L2の始点位置Psへの位置ズレのベクトルを求め、このベクトルの向きを逆向きとしたベクトルを位置座標に適用して補正するとしてもよい。
The method of correction processing can be set as appropriate.
For example, focusing on the position, in the present embodiment, the start point position Ps of the camera work at the start timing when recording is started in response to the recording restart instruction is defined as the interruption timing position at the interruption timing of the movement locus L1 of the camera work before the interruption. A coordinate function (for example, a conversion matrix) that changes to Pe is generated, and this conversion matrix is applied to perform conversion. As another correction processing method, a vector of the positional deviation from the interruption timing position Pe to the starting point position Ps of the movement locus L2 is obtained, and a vector in which the direction of this vector is reversed is applied to the position coordinates for correction. Good.
こうした補正処理は、撮影条件に含まれる姿勢やズームについても同様に行われる。すなわち、中断タイミングにおける姿勢を、記録再開指示に応じて記録を開始した開始タイミングにおける姿勢と一致させるように補正処理しながら、再開後のカメラワークデータ550の記録を制御する。また、中断タイミングにおけるズーム倍率(または仮想カメラの撮影画角)を、記録再開指示に応じて記録を開始した開始タイミングにおけるズーム倍率と一致させるように補正処理しながら、再開後のカメラワークデータ550の記録を制御する。
Such correction processing is similarly performed for the posture and zoom included in the shooting conditions. That is, the recording of the
こうした補正を行うことで、ユーザ2が窮屈な姿勢を余儀なくされ、身体的な限界により、望ましいアングルを安定的に得るのが難しくなるケース(図8参照)で、撮影の継目が発生することを意識することなく、撮影の中断と再開が可能になる。そして、中断時のユーザ端末1500の位置と、再開時のユーザ端末1500の位置とに差異があったとしても、中断前後で位置飛びが生じることのない、一繋がりのカメラワークデータ550を記録できる。よって、ユーザ2は、再開後、無理な姿勢をとることなく撮影操作の続きを行うことができる。
By performing such a correction, the
次に、本実施形態ではカメラワークデータ550の記録の中断と再開に係る手続きについて詳しく説明する。
図11は、カメラワークデータ550の記録の手動操作(記録停止操作)による中断について説明するための図である。ユーザ端末1500は、カメラワークデータ550の記録中、タッチパネル1506にて撮影画面W11を表示する。
Next, in the present embodiment, a procedure for suspending and resuming recording of the
FIG. 11 is a diagram for explaining interruption of recording of the
撮影画面W11には、
1)撮影中の画像を表示するモニタ表示10と、
2)タイムコード11と、
3)撮影や記録の現在の状態を示す状態通知表示12と、
4)新規の記録開始操作を入力するための記録開始操作アイコン13と、
5)カメラワークデータ550の記録を一時的に中断・停止させる記録停止操作を入力するための記録停止操作アイコン14と、
6)一時停止されていたカメラワークデータ550の記録を再び開始する記録再開操作を入力するための記録再開操作アイコン15と、
7)記録の終了に相当する記録終了操作を入力するための記録終了操作アイコン16と、
を含む。記録終了操作は、記録を停止させる第2の記録停止操作ということができる。
On the shooting screen W11,
1) A
2)
3)
4) Recording
5) A recording
6) A recording
7) A recording
including. The recording end operation can be said to be a second recording stop operation for stopping recording.
つまり、ユーザ2は、記録停止操作アイコン14と記録再開操作アイコン15とを適宜にタッチ操作で選択することで、任意のタイミングでカメラワークデータ550の記録を中断したり再開したりすることができる。
That is, the
図12は、カメラワークデータ550の記録の自動的な一時停止について説明するための図である。カメラワークデータ550の記録中、ユーザ端末1500は3軸加速度センサ1556で計測される加速度や、3軸ジャイロ1557で計測される姿勢を常時監視している。そして、ユーザ端末1500は、加速度が所定の位置不適変化条件を満たす場合と、姿勢が所定の姿勢不適変化条件を満たす場合との、何れかが満たされた場合に、自動的に記録を一時停止し、自動記録停止通知19をタッチパネル1506に表示することでユーザ2に通知する。
FIG. 12 is a diagram for explaining the automatic pause of the recording of the
ここで言う「位置不適変化条件」とは、映像表現の演出としても度を超えるような過度な画面ブレが生じたようなカメラ1520の位置変化を、3軸加速度センサ1556で計測される加速度変化の条件として記述したものである。
The “positional inappropriate change condition” mentioned here means a change in position of the
同じように、ここで言う「姿勢不適変化条件」とは、映像表現の演出としても度を超えるような過度な画面ブレが生じたようなカメラ1520の姿勢変化を3軸ジャイロ1557で計測される姿勢変化の条件として記述したものである。
Similarly, the “posture inappropriate change condition” is a posture change of the
言い換えると、これらの条件は、カメラを急激に動かし過ぎた状態、或いは、カメラが急激に動いてしまった状態、を定義するものである。ユーザ端末1500が、これらの条件に基づいて自動的な一時停止制御を行う。この結果、ユーザ2が記録停止操作アイコン14を操作することなく、ユーザ2が意図的にユーザ端末1500の位置を急激に変化させるような動作をしたり、ユーザ端末1500を急に倒すような動作をするだけでカメラワークデータ550の記録を一時停止できるため、操作性が向上する。また、ユーザ2が誤ってユーザ端末1500を落下させたり、撮影に夢中でユーザ2が躓くといったハプニングが起こった場合に、自動的に一時停止されるので、ハプニング後にも無駄な記録が続くことを防止できる。
In other words, these conditions define a state in which the camera has moved too rapidly or a state in which the camera has moved abruptly. The
図13は、一時停止で中断されたカメラワークデータ550の記録の再開に係り、記録を再開する再開タイミングの設定について説明するための図である。一時停止により記録が中断された後の撮影画面W13には、再開タイミングの操作入力を受け付けるためのシークバー20が追加表示される。これにより、ユーザ2は、シークバー20のスライダー21の位置をずらして再開タイミングを指定する操作入力ができる。ここで、中断前のプロセスである一時停止と、中断後のプロセスである再開とに分けて考えると、再開のプロセスにとっては、再開タイミングは中断タイミングと言えるものである。そこで、一時停止がなされた後、再開するプロセスにおける再開タイミングのことを、適宜、中断タイミングとも述べることとする。
FIG. 13 is a diagram for explaining the setting of the restart timing for restarting the recording regarding the restart of the recording of the
そして、シークバー20の表示と指定操作入力の受付に係り、ユーザ端末1500は、再開タイミング(中断タイミング)の候補タイミングを自動選択し、当該候補タイミングにおける仮想撮影条件(仮想カメラC1の位置や姿勢など)で撮影された仮想3次元空間の画像をユーザ2に提示する制御を行う。
Then, in response to the display of the seek
具体的には、ユーザ端末1500は、複数の候補タイミングを自動選択し、それぞれの候補タイミングに、再開位置の指定操作入力の目安となるサムネイル22(22a,22b,…)を表示する。サムネイル22は、それが指し示すシークバー20の位置におけるタイミングの仮想撮影条件(仮想カメラC1の位置や姿勢など)で撮影された仮想3次元空間の画像の縮小画像である。サムネイル22は、複数用意される。その1つは、再開タイミング(中断タイミング)の初期設定として、ユーザ端末1500が停止タイミングから所定時間遡及したタイミングを自動判別したサムネイル22aである。それ以外の1つまたは複数のサムネイル22b、22cは、記録停止指示による停止前のカメラワークデータ550の終端タイミングから所定時間間隔(Nフレーム前、Mフレーム前)で決定されたタイミングにおける拡張現実画像の縮小画像である。
Specifically, the
ここで言う「遡及」の所定時間は、位置変化不適条件や姿勢変化不適条件が満たされるような事象が起きた場合に、撮影された画像が過度にブレて使えない画像になっていると想定される時間とする。本実施形態では、不適変化条件を満たしたこと(位置変化不適条件または姿勢変化不適条件の何れかを満たしたこと)が検出される直前のタイミングとする。言い換えると、ユーザ端末1500が、ユーザ端末1500の位置の変化または姿勢の変化が所与の安定条件を満たさなくなったタイミングを自動判別して決定する。その他、「遡及」の所定時間を、直近過去に記録されたカメラワークデータ550の終端タイミングから所定時間前のタイミング(例えば、1秒間)としてもよい。この自動的な遡及によって、シークバー20の初期位置が、撮影された画像が過度にブレて使えない画像になっている直前の想定位置となるため、ユーザにとっては記録を再開するのに適当なタイミングを探す手間が省ける。
It is assumed that the predetermined time of "retrogression" referred to here is that the captured image is excessively blurred and unusable when an event that satisfies the position change inadequacy condition or the posture change inadequacy condition occurs. It is time to be done. In the present embodiment, the timing immediately before the detection that the inappropriate change condition is satisfied (either the position change inappropriate condition or the posture change inappropriate condition is satisfied) is detected. In other words, the
なお、本実施形態では、ユーザ端末1500は、カメラワークデータ550の記録とともに、モニタ表示10で表示されている(図11参照)拡張現実画像を録画している。サムネイル22は、録画された拡張現実画像から、サムネイル22(22a,22b,…)それぞれが対応するタイミングを抽出・縮小して作成する。勿論、カメラワークデータ550から、サムネイル22(22a,22b,…)それぞれが対応するタイミングの仮想撮影条件を読み出して、再度、仮想空間画像を生成し、これを縮小して用いるとしてもよい。
In the present embodiment, the
図14は、本実施形態におけるユーザ端末1500の機能構成例を示す機能ブロック図である。ユーザ端末1500は、操作入力部100と、測位部102と、加速度計測部106と、姿勢計測部108と、音声入力部110と、撮影部120と、端末処理部200と、音出力部390と、画像表示部392と、通信部394と、端末記憶部500とを備える。
FIG. 14 is a functional block diagram showing a functional configuration example of the
操作入力部100は、プレーヤによってなされた各種の操作入力に応じた操作入力信号を端末処理部200に出力する。例えば、プッシュスイッチや、ジョイスティック、タッチパッド、トラックボール、加速度センサ、ジャイロ、CCDモジュール、などによって実現できる。図2の方向入力キー1502や、ボタンスイッチ1504、タッチパネル1506、がこれに該当する。
The
測位部102は、ユーザ端末1500の位置情報を取得し端末処理部200へ出力する。図2の測位モジュール1555がこれに該当する。
The positioning unit 102 acquires the position information of the
加速度計測部106は、ユーザ端末1500に生じた加速度を計測し、端末処理部200へ出力する。図2の3軸加速度センサ1556がこれに該当する。
The acceleration measuring unit 106 measures the acceleration generated in the
姿勢計測部108は、ユーザ端末1500の姿勢変化を計測し、端末処理部200へ出力する。図2の3軸ジャイロ1557がこれに該当する。
The
音声入力部110は、ユーザが発する音声(ユーザ音声)や環境音を集音し、音声信号を端末処理部200へ出力する。図2のマイク1210がこれに該当する。
The
撮影部120は、外部の様子を撮影し、その画像データを生成して端末処理部200へ出力する。図2のカメラ1520がこれに該当する。
The
端末処理部200は、例えば、CPUやGPU等のマイクロプロセッサや、ICメモリなどの電子部品によって実現され、操作入力部100や端末記憶部500を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100からの操作入力信号、サーバシステム1100から受信した各種データに基づいて各種の演算処理を実行して、ユーザ端末1500の動作を制御する。図2の制御基板1550がこれに該当する。
The
そして、本実施形態における端末処理部200は、カメラ制御部202と、カメラワーク記録管理部210と、計時部280と、音生成部290と、画像生成部292と、通信制御部294と、を有する。
Then, the
カメラ制御部202は、操作入力部100へのユーザによるズーム操作の入力を検出して、当該ズーム操作に応じて撮影部120のズーム倍率を変更する制御を行う。
The
カメラワーク記録管理部210は、カメラワークデータ550の記録に係る各種処理を実行する。具体的には、カメラワーク記録管理部210は、仮想空間設定制御部212と、計測データ取得制御部213と、仮想カメラ制御部214と、操作指示制御部216と、カメラワークデータ生成部220と、仮想空間画像生成制御部230と、仮想空間画像記録制御部232と、不適変化自動停止部234と、通知制御部236と、中断タイミング設定部240と、候補タイミング提示部242と、警告制御部244と、を有する。勿論、これら以外の機能部も適宜含めることができる。
The camerawork
仮想空間設定制御部212は、仮想3次元空間を設定する。本実施形態では、仮想3次元空間を用意し、被写体オブジェクト4や背景オブジェクトを配置し、楽曲の再生と同期させてそれらの動作を制御することが該当する。
The virtual space
計測データ取得制御部213は、ユーザ端末1500の位置および姿勢を計測した計測データを取得する制御を行う。本実施形態では、ユーザ端末1500に具備されたカメラ1520を用いて計測データを取得する。具体的には、拡張現実技術による制御を行う。すなわち、カメラ1520が撮影している画像からARマーカ5を認識し、相対位置・相対姿勢を算出して計測データとする(図3参照)。また、測位部102、加速度計測部106、姿勢計測部108の各計測データに基づいてユーザ端末1500の位置や姿勢、位置変化や姿勢変化、移動軌跡L1を求める制御もこれに該当する。データに着目すれば、実撮影条件データ560の生成制御も該当する。
The measurement data
なお、計測データの取得は、ユーザ端末1500に具備されたカメラ1520やセンサ類を用いる計測にて実現するに限らない。例えば、通信可能な外部装置から、ユーザ端末1500の位置や姿勢の計測データを取得する構成も可能である。具体的には、ユーザ端末1500と別体の位置姿勢計測装置を用意して、当該装置に、位置や姿勢の基準となるもの(ARマーカ5など)に対するユーザ端末1500の相対位置と相対姿勢とを計測させ、計測データを逐一データ通信でユーザ端末1500に送信させるとしてもよい。その場合、当該位置姿勢計測装置による計測手法は、適宜設定可能である。例えば、赤外線ビームを照射して各部位の相対距離を計測する手法や、画像を撮影して画像解析して求める手法であってもよい。
It should be noted that the acquisition of the measurement data is not limited to being realized by the measurement using the
仮想カメラ制御部214は、仮想3次元空間を撮影する仮想カメラの位置および姿勢を、ユーザ端末1500の位置や姿勢の計測データに連動させて制御する(図3参照)。その際、仮想カメラ制御部214は、仮想カメラの撮影画角を撮影部120のズーム倍率に連動させて制御する。
The virtual
操作指示制御部216は、所定の記録停止操作によって記録停止指示を与え、所定の記録再開操作によって記録再開指示を与える制御を行う。本実施形態では、操作指示制御部216は、記録停止操作アイコン14または記録終了操作アイコン16へのタッチ操作を検出すると、記録停止指示を出力する。記録再開操作アイコン15へのタッチ操作を検出すると、記録再開指示を出力する。
The operation
カメラワークデータ生成部220は、仮想カメラ制御部214によって連続的に制御された仮想3次元空間中の仮想カメラの位置および姿勢を再現可能なカメラワークデータを生成・記録する制御を行う(図5参照)。その際、カメラワークデータ生成部220は、カメラワークデータとして、現実空間に設定された所与の位置を基準としたユーザ端末1500の相対位置および相対姿勢を時系列に記録したデータ、或いは、仮想カメラC1の位置および姿勢を時系列に記録したデータを少なくとも含むデータの記録を制御する。また、カメラワークデータ生成部220は、仮想カメラの撮影画角を再現可能なデータをカメラワークデータに含めて記録する。
The camera work
そして、カメラワークデータ生成部220は、中断再開制御部222を有する。
中断再開制御部222は、所与の記録停止指示に応じた記録の停止と、所与の記録再開指示に応じた記録の開始とを行うことでカメラワークデータの中断および再開を制御する。その際、中断再開制御部222は、記録再開指示に応じて記録を開始した際の仮想カメラの位置および姿勢を、記録停止指示による停止前のカメラワークデータの所与の中断タイミングにおける仮想カメラの位置および姿勢に適合させることで、記録再開指示後のカメラワークデータを、停止前のカメラワークデータの中断タイミング以降に引き続くカメラワークデータとして記録する。
具体的には、中断再開制御部222は、変換関数を用いて記録再開指示後のカメラワークデータを記録する。
Then, the camera work
The interruption/
Specifically, the suspension/
本実施形態では、記録停止指示には、記録停止操作アイコン14または記録終了操作アイコン16へのタッチ操作が該当する。記録再開指示には、記録再開操作アイコン15へのタッチ操作が該当する。中断された記録を再開する再開タイミング(中断タイミング)は、シークバー20を介してユーザ2が指示操作入力したタイミングである。
In the present embodiment, the recording stop instruction corresponds to a touch operation on the recording
また、中断再開制御部222は、記録再開指示に応じて記録を開始した際の仮想カメラのズーム倍率を、中断タイミングにおける仮想カメラのズーム倍率となるように制御して引き続くカメラワークデータの記録を行う。
Further, the interruption/
そして、中断再開制御部222は、停止前のカメラワークデータの中断タイミングまでのデータと、引き続くカメラワークデータとを接続して一連のカメラワークデータとして記録する。具体的には、中断再開制御部222は、記録再開指示に応じて記録を開始した際の仮想カメラの位置および姿勢を、停止前のカメラワークデータの中断タイミングにおける仮想カメラの位置および姿勢に適合させるための変換関数を生成し、当該変換関数を引き続くカメラワークデータに適用することで、一連のカメラワークデータとしての記録を行う(図10参照)。
Then, the suspension/
仮想空間画像生成制御部230は、カメラワークデータ生成部220によるカメラワークデータの記録時に、当該記録中のカメラワークデータに係る仮想カメラの位置および姿勢で撮影された仮想3次元空間の画像を生成する。生成された仮想空間画像は、カメラ1520で撮影されている現実空間の画像と重畳処理され、撮影画面W11にてライブ画像30として表示される(図3、図11参照)。
When recording the camera work data by the camera work
仮想空間画像記録制御部232は、カメラワークデータ生成部220により記録されたカメラワークデータに対応付けて、仮想空間画像生成制御部230により生成された画像を記録する制御を行う。本実施形態では、カメラワークデータ550内に仮想空間画像録画データ582として記録される(図5参照)。
The virtual space image
不適変化自動停止部234は、計測データが、仮想3次元空間を撮影する際の不適な変化をしたことを示す所与の不適変化条件を満たしたことを検出し、当該検出に応じて記録停止指示を与える(図12参照)。
The improper change
通知制御部236は、不適変化自動停止部234による記録の停止をユーザに通知する。本実施形態では、自動記録停止通知19の表示制御がこれに該当する(図12参照)。
The
中断タイミング設定部240は、一時停止後の再開時の再開タイミング(中断タイミング)を設定するための機能部であり、ユーザの操作入力に基づいてこの中断タイミングを設定する。本実施形態では、シークバー20の表示とシークバー20への指示操作入力に応じた中断タイミング(再開タイミング)の設定とがこれに該当する(図13参照)。
The suspension
候補タイミング提示部242は、中断タイミング(再開タイミング)の候補タイミングを自動選択し、当該候補タイミングにおける仮想カメラの位置および姿勢で撮影された仮想3次元空間の画像をユーザに提示する制御を行う。本実施形態では、シークバー20に添付表示されるサムネイル22の表示に係る制御がこれに該当する(図13参照)。
The candidate
また、候補タイミング提示部242は、不適変化自動停止部234により不適変化条件を満たしたことが検出される直前のタイミングを、中断タイミングの候補タイミングとして選択し、当該候補タイミングにおける仮想カメラの位置および姿勢で撮影された仮想3次元空間の画像をユーザに提示する制御を行う。本実施形態では、自動的な遡及による候補タイミングの選択と、サムネイル22aの表示制御とが、これに該当する。
In addition, the candidate
警告制御部244は、記録再開指示に応じた記録の開始を行う際に、計測データに基づく仮想カメラの位置および姿勢と、停止前のカメラワークデータに基づく中断タイミングでの仮想カメラの位置および姿勢との差が、所与のズレ条件を満たす場合に、ユーザに警告を行う制御を行う。具体的には、ズレ条件を満たす場合に、記録が中断された後の撮影画面W13にて、所定の警告表示を行う。
The
ズレ条件は、適宜設定可能である。例えば、「想定されるユーザ像の平均身長以上の位置ズレ」や「180°±5°の姿勢ズレ」などを、単独または組み合わせて定義する。前者の場合は、再開時のユーザ端末1500の位置が、再開タイミングの位置とあまりにも離れてしまっているために、再開後のカメラワークをつける操作において、物理的に移動が困難になる可能性が高いことをユーザに報せることができる。より具体的には、例えば、再生タイミングにおけるユーザ端末1500の位置が、床面に近い位置であり、ユーザ端末1500を持ち上げてユーザ2の頭の上から再開をしたとすると、それ以降はユーザ端末1500をそれ以上上方向に移動することが、身体的に難しくなり得る。例えば、踏み台やハシゴとかを使わないと届かなくなる。よって、ユーザ2に警告を与えることで、そうした事態が生じることを未然に防ぐことができる。後者の場合では、ユーザ端末1500の姿勢に関する認識が、操作が記録の中断と再開とで逆転するので、ユーザ端末1500を再開後のカメラワーク中に反転できるような持ち方をしている必要がないか、など再開後のカメラワークの再確認の機会をユーザ2に提供できる。
The shift condition can be set as appropriate. For example, “positional deviation equal to or more than the expected average height of the user image” and “posture deviation of 180°±5°” are defined individually or in combination. In the former case, the position of the
計時部280は、システムクロックを利用して現在日時や制限時間等の計時を行う。
The
音生成部290は、例えば、デジタルシグナルプロセッサ(DSP)や、音声合成ICなどのプロセッサ、音声ファイルを再生可能なオーディオコーデック等によって実現され、楽曲や効果音、各種操作音の音信号を生成し、音出力部390に出力する。
The
音出力部390は、音生成部290から入力される音信号に基づいて音出力(放音)する装置によって実現される。図2のスピーカ1510がこれに該当する。
The
画像生成部292は、各種画像データの生成および画像表示部392にそれらの画像を表示させるための画像信号の生成出力などの制御を行う。本実施形態では、仮想空間画像、拡張現実画像、を生成する。
The
画像表示部392は、画像生成部292から入力される画像信号に基づいて各種画像を表示する。例えば、フラットパネルディスプレイ、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。本実施形態では、図2のタッチパネル1506がこれに該当する。
The
通信制御部294は、データ通信に係るデータ処理を実行し、通信部394を介して外部装置とのデータのやりとりを実現する。
The
通信部394は、ネットワーク9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現され、図2の無線通信モジュール1553がこれに該当する。
The
端末記憶部500は、端末処理部200にユーザ端末1500を統合的に制御させるための諸機能を実現するためのプログラムや、各種データ等を記憶する。また、端末処理部200の作業領域として用いられ、端末処理部200が各種プログラムに従って実行した演算結果や操作入力部100から入力される入力データ等を一時的に記憶する。こうした機能は、例えば、RAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD−ROMやDVDなどの光学ディスクなどによって実現される。図2の制御基板1550が搭載するICメモリ1552やメモリカード1540がこれに該当する。オンラインストレージを利用する構成も可能である。
The
図15は、端末記憶部500が記憶するプログラムやデータの例を示す図である。端末記憶部500は、端末プログラム501と、モデルデータ510と、モーションデータ512と、楽曲データ514と、計測データ548と、カメラワークデータ550(図5参照)と、変換関数データ590と、現在日時800と、を記憶する。勿論、これら以外のプログラムやデータも適宜記憶することができる。
FIG. 15 is a diagram showing an example of programs and data stored in the
端末プログラム501は、端末処理部200に、ユーザ端末1500としての機能を実現させるためのプログラムであって、カメラ制御部202としての機能を実現させることができる。端末プログラム501は、カメラワーク記録管理プログラム502を含み、当該プログラムを端末処理部200が実行することで、カメラワーク記録管理部210としての機能が実装される。
The
モデルデータ510は、被写体オブジェクト4のモデルデータである。モーションデータ512は、被写体オブジェクト4の動作制御を実現するためのデータである。楽曲データ514は、楽曲の音及び/又は音声のデータである。これらのデータは、ユーザ自身が別途作成したり用意したデータでもよいし、サーバシステム1100にオリジナルがあって適宜ダウンロードするとしてもよい。
The
変換関数データ590は、記録再開指示に応じた記録を開始した際の仮想カメラの位置および姿勢を、停止前のカメラワークデータの中断タイミングにおける仮想カメラの位置および姿勢に適合させるための補正処理に使用する変換関数を定義するデータである。本実施形態では、変換行列のデータを格納する(図10参照)。
The
次に、本実施形態の動画生成システム1000の動作について説明する。
図16は、ユーザ端末1500における処理の流れを説明するためのフローチャートである。ここで説明する処理の流れは、ユーザ端末1500が、端末処理部200で端末プログラム501を実行することにより実現される。
Next, the operation of the moving
FIG. 16 is a flowchart for explaining the flow of processing in the
ユーザ端末1500は、先ずユーザ端末1500の位置と姿勢の計測データの取得と、カメラ1520での撮影とを開始し(ステップS10)、仮想3次元空間の設定と、被写体オブジェクト4などのオブジェクトの制御と、位置や姿勢の計測データおよびズーム操作等に基づく仮想カメラC1との連動制御と、を開始する(ステップS12)。そして、ユーザ端末1500は、撮影画面W11(図11参照)の表示を開始する(ステップS14)。
The
次に、ユーザ端末1500は、記録開始操作の入力を検出すると、記録開始指示があったと判断して(ステップS16)、カメラワークデータ550の生成・記録を開始する(ステップS18)。そして、記録終了操作の入力を検出するまで、すなわち記録終了指示があるまで(ステップS20のNO)、ユーザ端末1500は周期的に記録中断再開処理を実行する(ステップS22)。
Next, when the
図17〜図18は、記録中断再開処理の流れを説明するためのフローチャートである。図17に示すように、同処理において、ユーザ端末1500は、記録停止操作アイコン14(図11参照)へのタッチ操作の検出すなわち記録停止操作の入力を検出した場合(ステップS30のYES)、記録停止指示があったと判断して、ユーザ2の操作入力に基づいて記録が停止・中断した旨の表示制御を行う(ステップS40)。そして、ユーザ端末1500は、カメラワークデータ550の記録を停止・中断し(ステップS42)、楽曲の再生および被写体オブジェクト4の動作制御を一時停止する(ステップS44)。
17 to 18 are flowcharts for explaining the flow of the recording interruption restart processing. As shown in FIG. 17, in the same process, when the
また、ユーザ端末1500の位置や姿勢の計測結果が、位置不適変化条件を満たした場合または姿勢不適変化条件を満たした場合(ステップS32のYES)、位置または姿勢が不適当に変化したために自動的に記録が停止・中断した旨の表示制御を行う(ステップS41)。そして、記録停止指示があったと判断して、カメラワークデータ550の記録を停止し(ステップS42)、楽曲の再生および被写体オブジェクト4の動作制御を一時停止する(ステップS44)。
In addition, when the measurement result of the position or orientation of the
次に、ユーザ端末1500は、中断タイミング(記録を再開する再開タイミングに相当)の候補タイミングを自動選択し(ステップS46)、タッチパネル1506に表示されている撮影画面内にシークバー20を表示させ、中断タイミングの指示操作入力の受付を開始する(ステップS48)。そして、ユーザ端末1500は、自動選択された候補タイミングの示すシークバー20の位置に対応付けてサムネイル22を表示させる(ステップS50)。この段階では、自動的に遡及された第1の候補タイミングにスライダー21の位置は合わせて表示される。
Next, the
次に、ユーザ端末1500は、警告制御を開始する(ステップS52)。
具体的には、カメラワークデータ550から、今現在において再開タイミングとされる過去の時点におけるユーザ端末1500の位置や姿勢を読み出して、今現在のユーザ端末1500の位置や姿勢の計測値と比較して、所定のズレ条件が満たされているかを判定する。そして、満たされている場合、ユーザ端末1500は操作画面内に所定の警告表示を表示する。
Next, the
Specifically, from the
次いでユーザ端末1500は、最新の指示タイミングに基づく変換関数を生成して(ステップS56)、変換関数の逐次更新を開始する(ステップS58)。また、ユーザ端末1500は、楽曲の再生制御および被写体オブジェクト4の動作制御を、最新の指示タイミングが示すタイミングまで巻き戻す制御を開始する(ステップS60)。
Next, the
また、ステップS56〜ステップS58によって、これ以降は、ユーザ端末1500の位置・姿勢を変化させたり、カメラ1520のズーム倍率を変化させると、自動的に変換関数が更新されることになる。
Further, after step S56 to step S58, when the position/orientation of the
また、ステップS60により、これ以降は、楽曲の再生と、被写体オブジェクト4を初めとする仮想3次元空間の動作制御とは、最新の指示タイミングからいつでも再開できるように準備されることになる。
Further, by the step S60, thereafter, the reproduction of the music and the operation control of the virtual three-dimensional space including the
図18に移って、ユーザ端末1500は、記録再開操作アイコン15へのタッチを検出すると、ユーザ端末1500は、記録再開操作の入力を検出したと判断し(ステップS70のYES)、警告制御を終了する(ステップS78)。そして、ユーザ端末1500は変換関数データ590(図15参照)が示す最新の変換関数を適用してカメラワークデータ550の記録を再開し(ステップS80;図10参照)、楽曲の再生と被写体オブジェクト4の動作制御を再開する(ステップS82)。なお、カメラワークデータ550の中断タイミング以降のデータは、記録再開されたデータで上書きされる。そして、ユーザ端末1500は、記録再開の旨をユーザに通知する制御を行って(ステップS84)、記録中断再開処理を終了する。
18, when the
なお、記録中断再開処理の実行中であっても、終了操作の入力が検出されると(ステップS90のYES)、ユーザ端末1500は、処理を終了するともに、カメラワークデータ550の記録を終了する。
It should be noted that, even when the recording suspension/resumption processing is being executed, when the input of the end operation is detected (YES in step S90), the
図16に戻って、所定の終了操作の入力が検出されると(ステップS18のYES)、ユーザ端末1500は、カメラワークデータ550の記録を終了し(ステップS100)、楽曲の再生と被写体オブジェクト4の制御を終了し(ステップS102)、一連の処理を終了する。
Returning to FIG. 16, when the input of a predetermined end operation is detected (YES in step S18), the
なお、ユーザ端末1500は、記録されたカメラワークデータ550等のサーバシステム1100へのアップロードは、所定のアップロード操作の入力を検出すると実行する(図6参照)。そして、所定の拡張現実画像の生成リクエスト操作の入力を検出すると、ユーザ端末1500は、所定の生成リクエストをサーバシステム1100へ送信する。
The
サーバシステム1100は、生成リクエストを受信すると、送信元であるユーザ端末1500からアップロードされたカメラワークデータ550等を用いて、拡張現実画像の動画データを作成し、これをユーザ端末1500へ提供可能にする(図7参照)。
Upon receiving the generation request, the
このように、本実施形態によれば、ユーザ自らがビデオカメラを手に持って撮影したかのような印象を有するリアリティのある拡張現実の動画を簡単に作成できる。
加えて、カメラワークデータの記録は、中断と再開が可能である。よって、ユーザがカメラワークの記録の一時停止と再開を任意に行うことが可能になるので、思い通りのカメラワークデータを記録し易くなる。例えば、カメラワークの記録中に、体勢が苦しくなってしまい、思い描いているカメラワークを継続出来なくなったとしても、記録を一時停止することができる。そして、体勢を直してからカメラワークの記録を再開することができる。当初から記録をやり直さなくて済む。記録の一時停止をすることができるため、1カットずつ記録を進めていくといったこともできる。
As described above, according to the present embodiment, it is possible to easily create a realistic augmented reality moving image having an impression that the user himself/herself has taken a video camera and photographed it.
In addition, recording camera work data can be interrupted and resumed. Therefore, the user can arbitrarily pause and resume the recording of the camera work, and it becomes easy to record the desired camera work data. For example, even if the posture becomes uncomfortable during the recording of the camera work and the intended camera work cannot be continued, the recording can be temporarily stopped. Then, after the posture is corrected, the recording of the camera work can be resumed. You don't have to record again from the beginning. Since the recording can be paused, it is possible to advance the recording one by one.
そして、記録が再開される際には、コンピュータは、記録再開指示に応じて記録を開始した際の仮想カメラの位置および姿勢を、停止指示による停止前のカメラワークデータの所与の中断タイミングにおける仮想カメラの位置および姿勢に適合させる補正を自動的に行い、記録再開指示後のカメラワークデータを、停止前のカメラワークデータの中断タイミング以降に引き続くカメラワークデータとして記録を再開することができる。言い換えると、中断時のコンピュータの位置と、再開時のコンピュータの位置とに差異があったとしても、中断前後で位置飛びが生じることのない、一繋がりのカメラワークデータを記録できる。
本実施形態によれば、拡張現実や仮想現実の動画を作成するための新たな技術を提供することができる。
Then, when the recording is restarted, the computer determines the position and the posture of the virtual camera when the recording is started in response to the recording restart instruction at the given interruption timing of the camera work data before the stop by the stop instruction. It is possible to automatically perform the correction adapted to the position and orientation of the virtual camera, and restart the recording of the camera work data after the recording restart instruction as the camera work data that continues after the interruption timing of the camera work data before the stop. In other words, even if there is a difference between the position of the computer at the time of interruption and the position of the computer at the time of restart, it is possible to record a series of camera work data that does not cause a position jump before and after the interruption.
According to this embodiment, it is possible to provide a new technique for creating a video of augmented reality or virtual reality.
〔変形例〕
以上、本発明を適用した実施形態について説明したが、本発明を適用可能な形態は上記形態に限定されるものではなく適宜構成要素の追加・省略・変更を施すことができる。
[Modification]
Although the embodiments to which the present invention is applied have been described above, the embodiments to which the present invention can be applied are not limited to the above-described embodiments, and constituent elements can be appropriately added, omitted, or changed.
(変形例その1)
例えば、上記実施形態に、変換関数を変更する機能又は変換関数の適用効果を時間経過に応じて変更する機能を追加することもできる。
具体的には、中断再開制御部222が、引き続くカメラワークデータへの変換関数の適用効果を時間経過に応じて徐々に低減させる変換関数を変更する構成も可能である。より具体的には、例えば、仮想カメラの位置に着目すると、再開時の仮想カメラの位置から、中断タイミングにおける仮想カメラの位置へのベクトルを求め、これを変換関数とする。そして、記録の再開後は、ユーザ端末1500のARマーカ5に対する相対位置から求められる仮想カメラの仮想空間内に、このベクトルを適用して、仮想カメラ移動軌跡データ577(図5参照)を記録することとする。その一方で、中断再開制御部222は、記録の再開からの時間経過に応じて、ベクトルの大きさを「0」に向けて徐々に低下するように変更すればよい。
(Modification 1)
For example, a function of changing the conversion function or a function of changing the application effect of the conversion function according to the passage of time can be added to the above embodiment.
Specifically, the suspension/
また、変換関数の適用効果を時間経過に応じて変更する機能の例としては、変換関数は固定とする一方で、当該変換関数を適用する際に係数を乗ずる構成とし、この係数を、記録再開からの時間経過に応じて低減(例えば、係数=1から係数=0へ向けて低減)する構成も可能である。 Also, as an example of a function that changes the application effect of a conversion function over time, the conversion function is fixed while the coefficient is multiplied when the conversion function is applied, and this coefficient is restarted for recording. It is also possible to adopt a configuration in which it is reduced (for example, reduced from coefficient=1 to coefficient=0) in accordance with the passage of time from.
(変形例その2)
また、上記実施形態では、カメラワークデータ550の記録の再開は、直近過去に記録したカメラワークデータ550に中断タイミングを設定し、当該中断タイミング以降に引き続くカメラワークデータを記録する構成としたが、中断タイミングを設定する対象は、直近過去に記録したカメラワークデータ550に限らない。
(Modification 2)
Further, in the above-described embodiment, the restart of the recording of the
具体的には、例えば、上記実施形態におけるステップS44と、ステップS46との間に、過去に記録済のカメラワークデータ550の中から、中断タイミングを設定する対象とするデータの選択操作入力を受け付けるステップを追加する。そして、当該ステップ以降は、当該ステップで選択されたカメラワークデータ550を対象として、中断タイミングを設定して、引き続くカメラワークデータを記録するとしてもよい。
Specifically, for example, between step S44 and step S46 in the above-described embodiment, a selection operation input of data for which interruption timing is to be set is received from the
(変形例その3)
また、被写体オブジェクトについては、上記実施形態では被写体オブジェクト4の数を1体として図示したが、同時に複数体用いてもよい。また、被写体オブジェクト4を、人の形態を模した仮想キャラクタとしたが、これに限らない。被写体オブジェクト4は、動物でも良いし、植物、風景、などでもよい。そして、被写体オブジェクトとしたものによっては、楽曲の再生や、楽曲に同期した動作制御も適宜省略可能である。
(Modification 3)
Further, regarding the subject object, although the number of
(変形例その4)
また、上記実施形態では拡張現実(AR:Augmented Reality)の画像の動画を作成する例を示したが、仮想現実(VR:Virtual Reality)の画像の動画を作成する場合にも同様に上記実施形態を適用することができる。上記実施形態の説明の「拡張現実」を「仮想現実」に適宜読み替えれば良い。
(Modification 4)
Further, in the above-described embodiment, an example of creating a moving image of augmented reality (AR) images has been described, but the same embodiment is also applied to creating a moving image of virtual reality (VR) images. Can be applied. The “augmented reality” in the description of the above embodiment may be appropriately read as “virtual reality”.
(変形例その5)
また、上記実施形態では、ユーザ端末1500のユーザ端末1500の位置や姿勢の計測にARマーカ5を用いる構成を例示したが、マーカレス方式のAR技術を用いて位置や姿勢を計測するとしてもよい。
(Modification 5)
In the above embodiment, the
(変形例その6)
また、上記実施形態では、拡張現実画像の動画の生成をサーバシステム1100にて行う例を示したが、これをユーザ端末1500にて行う構成も可能である。
(Modification 6)
Further, in the above-described embodiment, the example in which the moving image of the augmented reality image is generated by the
(変形例その7)
また、上記実施形態では、撮影画面において表示する操作アイコンは、適宜状況に応じて選択することができる(図8、図10、図11、図12参照)。例えば、記録処理の実行状況に応じて、その時点においてユーザが操作可能なアイコンのみを表示するようにしてもよい。具体的には、記録中は、記録停止操作アイコン14と、記録終了操作アイコン16とを表示し、一時停止中は、記録停止操作アイコン14に代えて記録再開操作アイコン15を表示する。
(Modification 7)
Further, in the above embodiment, the operation icon displayed on the shooting screen can be appropriately selected according to the situation (see FIGS. 8, 10, 11, and 12). For example, only icons that can be operated by the user at that time may be displayed according to the execution status of the recording process. Specifically, the recording
また、撮影画面において操作アイコンを用いずに、各種の操作入力を受け付けるとしてもよい。例えば、タッチパネルへのタッチ軌跡を使用したジェスチャによる入力で各種の操作を指示してもよいし、ユーザ端末1500の物理ボタンによる操作入力で指示してもよいし、画面へのタッチで一時停止(記録中に画面タッチで一時停止指示)と記録再開(一時停止中に画面タッチで再開指示)を指示するようにしてもよい。
Further, various operation inputs may be accepted without using the operation icons on the shooting screen. For example, various operations may be instructed by an input by a gesture using a touch track on the touch panel, an operation may be instructed by an operation input by a physical button of the
(変形例その8)
また、上記実施形態では、変換関数データ590が示す変換関数を用いて記録再開指示後のカメラワークデー550を記録した。つまり、記録再開指示に応じて記録を開始した際の仮想カメラの位置および姿勢を、記録停止指示による停止前のカメラワークデータの所与の中断タイミングにおける仮想カメラの位置および姿勢に適合させる補正処理は、カメラワークデータ550の記録時に行われる。しかし、補正処理は、カメラワークデータ550の記録時に行わずに、サーバシステム1100で拡張現実動画データ584を生成するのにともない仮想カメラC2の制御を行う時に補正処理を行う構成も可能である。
(Modification 8)
Further, in the above embodiment, the
この場合、中断再開制御部222は、変換関数データ590をカメラワークデータ550と対応づけて時系列に記憶保存し、サーバシステム1100へカメラワークデータ550をアップロードする際に、対応付けた変換関数データ590とともにアップロードすればよい(図6参照)。すなわち、変換関数をカメラワークデータの時間軸に対応付けて時系列に記録しておいて、補正処理が必要なときに参照できるようにしてもよい。
In this case, the interruption/
(変形例その9)
また、記録の自動停止の例として、ユーザ端末1500の位置や姿勢の急激な変化を検出した場合を例示したが、それ以外の自動停止を実現することとしてもよい。
(Modification 9)
Further, as an example of the automatic stop of recording, a case has been exemplified in which a rapid change in the position or posture of the
例えば、ユーザ端末1500のOS(オペレーティングシステム)からの通知(電源低下、他のアプリからの通知、電話の着信など)があった場合に記録を一時停止してもよい。また、ユーザ端末1500がユーザ2の操作入力に基づいてスリープモードに移行した場合に一時停止してもよい。また、ユーザ端末1500が、他のアプリケーションに切替操作が入力された場合に記録を一時停止するとしてもよい。
For example, the recording may be temporarily stopped when there is a notification from the OS (operating system) of the user terminal 1500 (power down, notification from another application, incoming call, etc.). Further, when the
2…ユーザ
4…被写体オブジェクト
5…ARマーカ
10…モニタ表示
13…記録開始操作アイコン
14…記録停止操作アイコン
15…記録再開操作アイコン
16…記録終了操作アイコン
19…自動記録停止通知
20…シークバー
21…スライダー
22…サムネイル
30…ライブ画像
32…指示タイミング時仮想空間画像
34…判定結果通知
100…操作入力部
102…測位部
106…加速度計測部
108…姿勢計測部
120…撮影部
200…端末処理部
202…カメラ制御部
210…カメラワーク記録管理部
212…仮想空間設定制御部
213…計測データ取得制御部
214…仮想カメラ制御部
216…操作指示制御部
220…カメラワークデータ生成部
222…中断再開制御部
224…変換関数生成部
230…仮想空間画像生成制御部
232…仮想空間画像記録制御部
234…不適変化自動停止部
236…通知制御部
240…中断タイミング設定部
242…候補タイミング提示部
500…端末記憶部
501…端末プログラム
502…カメラワーク記録管理プログラム
550…カメラワークデータ
551…撮影ID
560…実撮影条件データ
561…実カメラ姿勢データ
563…実カメラ加速度データ
565…実ズーム制御データ
567…実移動軌跡データ
570…仮想撮影条件データ
571…仮想カメラ姿勢データ
573…仮想カメラ加速度データ
575…仮想カメラ撮影画角データ
577…仮想カメラ移動軌跡データ
580…現実画像録画データ
582…仮想空間画像録画データ
584…拡張現実動画データ
590…変換関数データ
1000…動画生成システム
1100…サーバシステム
1500…ユーザ端末
1550…制御基板
1555…測位モジュール
1556…3軸加速度センサ
1557…3軸ジャイロ
C1…仮想カメラ
C2…仮想カメラ
Pe…中断タイミング位置
Ps…始点位置
W11…撮影画面
2...
560... Real
Claims (9)
仮想3次元空間を設定する仮想空間設定手段、
前記コンピュータの現実空間における位置および姿勢に基づいて、前記仮想3次元空間を撮影する仮想カメラの位置および姿勢を制御する仮想カメラ制御手段、
前記仮想カメラ制御手段によって連続的に制御された前記仮想3次元空間中の前記仮想カメラの位置および姿勢を再現可能なカメラワークデータを記録するカメラワークデータ生成手段、
として機能させ、
前記カメラワークデータ生成手段は、
所与の記録再開指示に応じて記録を開始した際の前記仮想カメラの位置および姿勢を、所与の記録停止指示による停止前のカメラワークデータの所与の中断タイミングにおける前記仮想カメラの位置および姿勢に適合させることで、前記記録再開指示後のカメラワークデータを、前記停止前のカメラワークデータの前記中断タイミング以降に引き続くカメラワークデータとして記録する中断再開制御手段、
を有する、
プログラム。 A portable computer,
Virtual space setting means for setting a virtual three-dimensional space,
Virtual camera control means for controlling the position and orientation of the virtual camera that captures the virtual three-dimensional space based on the position and orientation of the computer in the physical space,
Camera work data generation means for recording camera work data capable of reproducing the position and orientation of the virtual camera in the virtual three-dimensional space continuously controlled by the virtual camera control means,
Function as
The camera work data generation means,
The position and orientation of the virtual camera at the time of starting recording in response to a given recording restart instruction are defined as the position of the virtual camera at a given interruption timing of the camera work data before the stop by the given recording stop instruction and An interruption/resumption control unit that records the camera work data after the recording restart instruction by adapting to the posture as camera work data that continues after the interruption timing of the camera work data before the stop,
Has,
program.
請求項1に記載のプログラム。 The camera work data generation means is data in which the relative position and relative attitude of the computer are recorded in time series with reference to a given position set in the real space, or the position and attitude of the virtual camera are time series. Control the recording of data including at least the data recorded in
The program according to claim 1.
前記記録再開指示に応じて記録を開始した際の前記仮想カメラの位置および姿勢を、前記停止前のカメラワークデータの前記中断タイミングにおける前記仮想カメラの位置および姿勢に適合させるための変換関数を生成する変換関数生成手段、
を有し、前記変換関数を用いて前記記録再開指示後のカメラワークデータを記録し、または、前記変換関数を時系列に記憶する、
請求項1又は2に記載のプログラム。 The suspension/resumption control means is
A conversion function is generated for adapting the position and orientation of the virtual camera when recording is started in response to the recording restart instruction to the position and orientation of the virtual camera at the interruption timing of the camera work data before the stop. Conversion function generating means,
And recording the camera work data after the recording restart instruction using the conversion function, or storing the conversion function in time series,
The program according to claim 1.
請求項3に記載のプログラム。 The suspension/resumption control means gradually reduces the application effect of the conversion function to the camera work data after the recording restart instruction, as time passes.
The program according to claim 3.
前記不適変化時自動停止手段による記録の停止をユーザに通知する通知制御手段、
として前記コンピュータを機能させるための請求項1〜4の何れか一項に記載のプログラム。 An improper change that detects that the measurement data satisfies a given improper change condition that indicates an improper change when capturing the virtual three-dimensional space, and gives the recording stop instruction in response to the detection. When automatic stop means,
Notification control means for notifying the user of the stop of recording by the automatic stop means at the time of inappropriate change,
The program according to claim 1, which causes the computer to function as a computer.
として前記コンピュータを機能させるための請求項1〜5の何れか一項に記載のプログラム。 Candidate timing presenting means for automatically selecting a candidate timing of the interruption timing and performing control for presenting to the user an image of the virtual three-dimensional space photographed at the position and orientation of the virtual camera at the candidate timing.
The program according to claim 1, which causes the computer to function as a computer.
として前記コンピュータを機能させるための請求項1〜6の何れか一項に記載のプログラム。 When recording is started in response to the recording restart instruction, the position and orientation of the virtual camera based on the measurement data, and the position and orientation of the virtual camera at the interruption timing based on the camera work data before the stop A warning control means for warning the user when the difference between
The program according to claim 1, which causes the computer to function as a computer.
仮想3次元空間を設定する仮想空間設定ステップと、
実空間における携帯型コンピュータの位置および姿勢を計測した計測データを取得する計測データ取得ステップと、
取得した計測データに基づいて、前記仮想3次元空間を撮影する仮想カメラの位置および姿勢を連続的に制御する仮想カメラ制御ステップと、
連続的に制御された前記仮想3次元空間中の前記仮想カメラの位置および姿勢を再現可能なカメラワークデータを記録するカメラワークデータ生成ステップと、
を含み、
前記カメラワークデータ生成ステップは、
所与の記録再開指示に応じて記録を開始した際の前記仮想カメラの位置および姿勢を、所与の記録停止指示による停止前のカメラワークデータの所与の中断タイミングにおける前記仮想カメラの位置および姿勢に適合させることで、前記記録再開指示後のカメラワークデータを、前記停止前のカメラワークデータの前記中断タイミング以降に引き続くカメラワークデータとして記録するステップを含む、
カメラワークデータ生成方法。 A camera work data generation method executed by a portable computer,
A virtual space setting step for setting a virtual three-dimensional space,
A measurement data acquisition step of acquiring measurement data obtained by measuring the position and orientation of the portable computer in the real space;
A virtual camera control step for continuously controlling the position and orientation of the virtual camera that captures the virtual three-dimensional space based on the acquired measurement data;
A camera work data generation step of recording camera work data capable of reproducing the position and orientation of the virtual camera in the continuously controlled virtual three-dimensional space;
Including
The camerawork data generation step,
The position and orientation of the virtual camera at the time of starting recording in response to a given recording restart instruction are defined as the position of the virtual camera at a given interruption timing of the camera work data before the stop by the given recording stop instruction and By adapting to the posture, the step of recording the camera work data after the recording restart instruction is recorded as camera work data that continues after the interruption timing of the camera work data before the stop,
Camera work data generation method.
仮想3次元空間を設定する仮想空間設定手段と、
前記電子機器の実空間における位置および姿勢に基づいて、前記仮想3次元空間を撮影する仮想カメラの位置および姿勢を制御する仮想カメラ制御手段と、
前記仮想カメラ制御手段によって連続的に制御された前記仮想3次元空間中の前記仮想カメラの位置および姿勢を再現可能なカメラワークデータを記録するカメラワークデータ生成手段と、
を備え、
前記カメラワークデータ生成手段は、
所与の記録再開指示に応じて記録を開始した際の前記仮想カメラの位置および姿勢を、所与の記録停止指示による停止前のカメラワークデータの所与の中断タイミングにおける前記仮想カメラの位置および姿勢に適合させることで、前記記録再開指示後のカメラワークデータを、前記停止前のカメラワークデータの前記中断タイミング以降に引き続くカメラワークデータとして記録する手段、
を有する、
電子機器。 A portable electronic device,
Virtual space setting means for setting a virtual three-dimensional space,
Virtual camera control means for controlling the position and orientation of the virtual camera that captures the virtual three-dimensional space based on the position and orientation of the electronic device in the real space;
Camera work data generation means for recording camera work data capable of reproducing the position and orientation of the virtual camera in the virtual three-dimensional space continuously controlled by the virtual camera control means;
Equipped with
The camera work data generation means,
The position and orientation of the virtual camera at the time of starting recording in response to a given recording restart instruction are defined as the position of the virtual camera at a given interruption timing of the camera work data before the stop by the given recording stop instruction and A means for recording the camera work data after the recording restart instruction by adapting the posture as camera work data that continues after the interruption timing of the camera work data before the stop,
Has,
Electronics.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019010523A JP2020119335A (en) | 2019-01-24 | 2019-01-24 | Program, camera work data generation method, and electronic apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019010523A JP2020119335A (en) | 2019-01-24 | 2019-01-24 | Program, camera work data generation method, and electronic apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020119335A true JP2020119335A (en) | 2020-08-06 |
Family
ID=71890901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019010523A Pending JP2020119335A (en) | 2019-01-24 | 2019-01-24 | Program, camera work data generation method, and electronic apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2020119335A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6959422B1 (en) * | 2020-10-22 | 2021-11-02 | ヤフー株式会社 | Transmission program, terminal device and transmission method |
WO2024057650A1 (en) * | 2022-09-13 | 2024-03-21 | キヤノン株式会社 | Electronic device |
-
2019
- 2019-01-24 JP JP2019010523A patent/JP2020119335A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6959422B1 (en) * | 2020-10-22 | 2021-11-02 | ヤフー株式会社 | Transmission program, terminal device and transmission method |
JP2022068471A (en) * | 2020-10-22 | 2022-05-10 | ヤフー株式会社 | Transmission program, terminal device and transmission method |
WO2024057650A1 (en) * | 2022-09-13 | 2024-03-21 | キヤノン株式会社 | Electronic device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107967706B (en) | Multimedia data processing method and device and computer readable storage medium | |
JP7248437B2 (en) | Programs, electronics and data recording methods | |
EP3540571B1 (en) | Method and device for editing virtual scene, and non-transitory computer-readable storage medium | |
JP7043255B2 (en) | Electronic devices and their control methods | |
JP5659304B2 (en) | Image generating apparatus and image generating method | |
JP2011091571A (en) | Moving image creation device and moving image creation method | |
JPWO2013069049A1 (en) | Image generating apparatus and image generating method | |
JPWO2013069048A1 (en) | Image generating apparatus and image generating method | |
WO2020000394A1 (en) | Time-lapse photography control method and control device, imaging system, and storage medium | |
KR102477993B1 (en) | Display control apparatus, imaging apparatus, control method, and computer readable medium | |
JP2020119335A (en) | Program, camera work data generation method, and electronic apparatus | |
US20200252579A1 (en) | Electronic apparatus recording medium, and display method | |
KR20140004224A (en) | Image processing device | |
JP2023175782A (en) | Program, electronic apparatus and server system | |
CN105763786B (en) | A kind of information processing method and electronic equipment | |
JP2023027113A (en) | Program, electronic apparatus and control method | |
JP2006318385A (en) | Image generation system, program, and information storage medium | |
JP6803111B2 (en) | Information processing equipment, information processing methods, programs | |
CN111432254B (en) | Video information display method and device | |
JP2009060338A (en) | Display device and electronic camera | |
JP2019061386A (en) | Information processing system, information processing apparatus, information processing method and program | |
EP2713371A2 (en) | Imaging device, image processing device, imaging method, image processing method, and computer program product | |
JP2016082356A (en) | Electronic apparatus and program | |
JP6657929B2 (en) | Portable device, system, control method, and program | |
WO2023275920A1 (en) | Trigger signal generation device and mobile terminal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20210630 |