JP7492833B2 - Program, system, and method for providing content using augmented reality technology - Google Patents
Program, system, and method for providing content using augmented reality technology Download PDFInfo
- Publication number
- JP7492833B2 JP7492833B2 JP2020018837A JP2020018837A JP7492833B2 JP 7492833 B2 JP7492833 B2 JP 7492833B2 JP 2020018837 A JP2020018837 A JP 2020018837A JP 2020018837 A JP2020018837 A JP 2020018837A JP 7492833 B2 JP7492833 B2 JP 7492833B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual camera
- camera
- virtual
- real
- area
- 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
Links
- 230000003190 augmentative effect Effects 0.000 title claims description 51
- 238000000034 method Methods 0.000 title claims description 46
- 238000005516 engineering process Methods 0.000 title claims description 13
- 230000004044 response Effects 0.000 claims description 25
- 238000010586 diagram Methods 0.000 description 25
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 210000000988 bone and bone Anatomy 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Description
特許法第30条第2項適用 令和1年12月23日、https://apps.apple.com/jp/app/id1481536391 令和2年1月17日、https://play.google.com/store/apps/details?id=com.showroom.showstageApplication of
本発明は、拡張現実(AR:Augmented Reality)の技術を用いたコンテンツを提供するためのプログラム、システム、及び方法に関するものである。 The present invention relates to a program, a system, and a method for providing content using Augmented Reality (AR) technology.
従来、拡張現実技術を適用した様々なデジタルコンテンツ(以下、ARコンテンツと言うことがある。)が提供されている(例えば、下記特許文献1を参照)。こうしたコンテンツでは、スマートフォン等の装置が有するカメラによって撮影される撮影画像(現実空間の画像)に対して仮想空間の画像が重ねられた拡張現実画像が生成及び表示される。また、典型的には、仮想空間における視点に対応する仮想カメラは、現実のカメラに連動するように(現実のカメラの動きを追従するように)制御される。
Conventionally, various digital contents (hereinafter, sometimes referred to as AR contents) that apply augmented reality technology have been provided (see, for example,
しかしながら、従来のARコンテンツにおいて、現実のカメラに連動するように仮想カメラを制御するだけでは、適切な拡張現実画像が生成されない場合が考えられる。例えば、仮想空間における仮想カメラの位置によっては、当該仮想空間に含まれるキャラクタ等のオブジェクトが適切に表示されない場合が考えられる。 However, in conventional AR content, there are cases where an appropriate augmented reality image is not generated simply by controlling a virtual camera to be linked to a real camera. For example, depending on the position of the virtual camera in a virtual space, objects such as characters contained in the virtual space may not be displayed appropriately.
本発明の実施形態は、適切な拡張現実画像の生成及び表示を支援することを目的の一つとする。本発明の実施形態の他の目的は、本明細書全体を参照することにより明らかとなる。 One of the objects of the embodiments of the present invention is to support the generation and display of appropriate augmented reality images. Other objects of the embodiments of the present invention will become apparent by reference to the entire specification.
本発明の一実施形態に係るプログラムは、拡張現実技術を用いたコンテンツを提供するためのプログラムであって、1又は複数のコンピュータに、現実カメラを介した現実空間の画像を取得する処理と、前記現実カメラに連動するように、仮想空間に含まれる仮想カメラを制御する処理と、前記現実空間の画像に対して前記仮想カメラを介した前記仮想空間の画像を重ねた拡張現実画像を生成及び表示する処理と、を実行させ、前記仮想カメラを制御する処理は、前記仮想空間に含まれる所定オブジェクトに基づく所定領域外に前記仮想カメラが位置するように、前記現実カメラに対する前記仮想カメラの相対的な位置を調整することを含む。 A program according to one embodiment of the present invention is a program for providing content using augmented reality technology, which causes one or more computers to execute a process of acquiring an image of real space via a real camera, a process of controlling a virtual camera included in a virtual space so as to link with the real camera, and a process of generating and displaying an augmented reality image in which the image of the virtual space via the virtual camera is superimposed on the image of the real space, and the process of controlling the virtual camera includes adjusting the relative position of the virtual camera with respect to the real camera so that the virtual camera is positioned outside a predetermined area based on a predetermined object included in the virtual space.
本発明の一実施形態に係るシステムは、1又は複数のコンピュータプロセッサを備え、拡張現実技術を用いたコンテンツを提供するためのシステムであって、前記1又は複数のコンピュータプロセッサは、読取可能な命令の実行に応じて、現実カメラを介した現実空間の画像を取得する処理と、前記現実カメラに連動するように、仮想空間に含まれる仮想カメラを制御する処理と、前記現実空間の画像に対して前記仮想カメラを介した前記仮想空間の画像を重ねた拡張現実画像を生成及び表示する処理と、を実行し、前記仮想カメラを制御する処理は、前記仮想空間に含まれる所定オブジェクトに基づく所定領域外に前記仮想カメラが位置するように、前記現実カメラに対する前記仮想カメラの相対的な位置を調整することを含む。 A system according to one embodiment of the present invention is a system for providing content using augmented reality technology, comprising one or more computer processors, in which the one or more computer processors execute, in response to execution of readable instructions, a process of acquiring an image of real space via a real camera, a process of controlling a virtual camera included in a virtual space so as to be linked to the real camera, and a process of generating and displaying an augmented reality image in which the image of the virtual space via the virtual camera is superimposed on the image of the real space, and the process of controlling the virtual camera includes a process of adjusting the relative position of the virtual camera with respect to the real camera so that the virtual camera is positioned outside a predetermined area based on a predetermined object included in the virtual space.
本発明の一実施形態に係る方法は、1又は複数のコンピュータによって実行され、拡張現実技術を用いたコンテンツを提供するための方法であって、現実カメラを介した現実空間の画像を取得する工程と、前記現実カメラに連動するように、仮想空間に含まれる仮想カメラを制御する工程と、前記現実空間の画像に対して前記仮想カメラを介した前記仮想空間の画像を重ねた拡張現実画像を生成及び表示する工程と、を備え、前記仮想カメラを制御する工程は、前記仮想空間に含まれる所定オブジェクトに基づく所定領域外に前記仮想カメラが位置するように、前記現実カメラに対する前記仮想カメラの相対的な位置を調整することを含む。 A method according to one embodiment of the present invention is executed by one or more computers and is a method for providing content using augmented reality technology, comprising the steps of acquiring an image of real space via a real camera, controlling a virtual camera included in a virtual space so as to link with the real camera, and generating and displaying an augmented reality image in which the image of the virtual space via the virtual camera is superimposed on the image of the real space, and the step of controlling the virtual camera includes adjusting the relative position of the virtual camera with respect to the real camera so that the virtual camera is positioned outside a predetermined area based on a predetermined object included in the virtual space.
本発明の様々な実施形態は、適切な拡張現実画像の生成及び表示を支援する。 Various embodiments of the present invention assist in the generation and display of suitable augmented reality images.
以下、図面を参照しながら、本発明の実施形態について説明する。各図面において、同一の又は類似する構成要素に対しては同一の参照符号が付され得る。 Hereinafter, an embodiment of the present invention will be described with reference to the drawings. In each drawing, the same reference numerals may be used to denote the same or similar components.
図1は、本発明の一実施形態に係るコンテンツ提供端末10を含むネットワークの構成を概略的に示す構成図である。端末10は、図示するように、インターネット等の通信ネットワーク20を介してコンテンツ管理サーバ30と通信可能に接続されている。コンテンツ提供端末10は、拡張現実(AR)の技術を用いたARコンテンツを提供するための機能を有し、本発明のシステムの全部又は一部を実装する装置の一例である。
Figure 1 is a schematic diagram showing the configuration of a network including a
コンテンツ提供端末10は、一般的なコンピュータとして構成されており、図1に示すように、CPU及びGPU等を含むコンピュータプロセッサ11と、メインメモリ12と、入出力I/F13と、通信I/F14と、ストレージ(記憶装置)15と、各種センサ16とを備え、これらの各構成要素が図示しないバス等を介して電気的に接続されている。
The
コンピュータプロセッサ11は、ストレージ15等に記憶されている様々なプログラムをメインメモリ12に読み込んで、当該プログラムに含まれる各種の命令を実行する。メインメモリ12は、例えば、DRAM等によって構成される。 The computer processor 11 loads various programs stored in the storage 15 or the like into the main memory 12 and executes various instructions contained in the programs. The main memory 12 is composed of, for example, a DRAM or the like.
入出力I/F13は、例えば、タッチパネル、コントローラ等の情報入力装置、マイクロフォン等の音声入力装置、カメラ131等の画像入力装置を含む。また、入出力I/F13は、ディスプレイ等の画像出力装置(表示装置)、スピーカー等の音声出力装置を含む。 The input/output I/F 13 includes, for example, an information input device such as a touch panel or a controller, an audio input device such as a microphone, and an image input device such as a camera 131. The input/output I/F 13 also includes an image output device (display device) such as a display, and an audio output device such as a speaker.
通信I/F14は、ネットワークアダプタ等のハードウェア、各種の通信用ソフトウェア、及びこれらの組み合わせとして実装され、有線又は無線の通信を実現できるように構成されている。 The communication I/F 14 is implemented as hardware such as a network adapter, various communication software, or a combination of these, and is configured to enable wired or wireless communication.
ストレージ15は、例えば磁気ディスク又はフラッシュメモリ等によって構成される。ストレージ15は、オペレーティングシステムを含む様々なプログラム及び各種データ等を記憶する。ストレージ15が記憶するプログラムは、アプリケーションマーケット等からダウンロードされてインストールされ得る。本実施形態において、ストレージ15が記憶するプログラムは、本発明の一実施形態に係るコンテンツ提供用プログラム40を含む。コンテンツ提供用プログラム40は、コンテンツ提供端末10を、拡張現実技術を用いたARコンテンツを提供するための装置として機能させるためのプログラムである。
The storage 15 is configured, for example, by a magnetic disk or a flash memory. The storage 15 stores various programs including an operating system, various data, and the like. The programs stored in the storage 15 can be downloaded and installed from an application market, for example. In this embodiment, the programs stored in the storage 15 include a content providing program 40 according to one embodiment of the present invention. The content providing program 40 is a program for causing the
各種センサ16は、例えば、加速度センサ、ジャイロセンサ(角速度センサ)、地磁気センサ等によって構成されるモーションセンサを含む。コンテンツ提供端末10は、こうしたモーションセンサによって検知される情報に基づいて、端末10自体の様々な動きを判定することができる。
The various sensors 16 include, for example, motion sensors composed of an acceleration sensor, a gyro sensor (angular velocity sensor), a geomagnetic sensor, etc. The
コンテンツ管理サーバ30は、一般的なコンピュータとしての構成を有する。コンテンツ管理サーバ30は、コンテンツ提供端末10が提供するARコンテンツに関する様々な情報を記憶及び管理する。例えば、コンテンツ管理サーバ30は、ユーザ毎のコンテンツに関する情報、及び、コンテンツを提供するための各種データ(例えば、コンテンツ自体、及び、仮想空間のデータ等)等を管理する。コンテンツ管理サーバ30は、それぞれが一般的なコンピュータとしての構成を有する複数のサーバ装置を用いて構成され得る。
The
例えば、コンテンツ提供端末10は、コンテンツ提供用プログラム40の起動に応じて、対応するユーザのコンテンツに関する情報及び各種データ等をコンテンツ管理サーバ30から取得する。また、例えば、コンテンツ提供端末10は、コンテンツ提供用プログラム40の実行中において、各種データ等をコンテンツ管理サーバ30から取得し、及び、ユーザに対するコンテンツの提供状況(例えば、ゲームの進行状況等)等をコンテンツ管理サーバ30に対して送信する。なお、本実施形態において、コンテンツ提供端末10は、コンテンツ管理サーバ30との通信なしでARコンテンツを提供するように構成することができ、この場合、コンテンツ管理サーバ30は不要となり得る。
For example, in response to starting the content providing program 40, the
次に、本実施形態のコンテンツ提供端末10が有する機能について説明する。図1に示すように、コンテンツ提供端末10のコンピュータプロセッサ11は、メインメモリ12に読み込まれたプログラム(例えば、コンテンツ提供用プログラム40)に含まれる命令を実行することによって、画像生成表示部111、及び、コンテンツ制御部112として機能するように構成されている。
Next, the functions of the
画像生成表示部111は、コンテンツに関する画像の生成及び表示に関する様々な処理を実行するように構成されている。例えば、画像生成表示部111は、カメラ131を介した現実空間の画像を取得し、取得した現実空間の画像に対して、仮想空間に含まれる仮想カメラを介した当該仮想空間の画像を重ねた拡張現実画像を生成及び表示するように構成されている。仮想空間は、例えば、三次元の仮想空間として構成される。
The image generation and
本実施形態において、仮想空間に含まれる仮想カメラは、現実のカメラ131に連動するように制御される。例えば、画像生成表示部111は、カメラ131(端末10)の動き(位置及び傾き(姿勢)の変化等)に従って仮想空間内を動くように仮想カメラを制御する。こうした仮想カメラの制御は、現実空間と仮想空間との対応関係を確立するための制御と言うこともでき、トラッキングと呼ばれることもある。仮想カメラは、仮想空間における視点と言うこともできる。
In this embodiment, the virtual camera included in the virtual space is controlled to be linked to the real camera 131. For example, the image generation and
また、画像生成表示部111は、仮想空間に含まれる所定オブジェクトに基づく所定領域外に仮想カメラが位置するように、カメラ131に対する仮想カメラの相対的な位置を調整するように構成されている。例えば、画像生成表示部111は、カメラ131に連動する仮想カメラに対してオフセットを設定する(カメラ131の位置に対応する基準点から特定の方向へ特定の距離だけ離れた位置を仮想カメラの位置とする)ことによって、カメラ131に対する仮想カメラの相対的な位置の調整を行うように構成される。
In addition, the image generation and
コンテンツ制御部112は、コンテンツの制御に関する様々な処理を実行する。例えば、コンテンツが拡張現実技術を用いた動画(例えば、キャラクタ等の仮想的なオブジェクトが現実空間において登場するような動画等)である場合、コンテンツ制御部112は、複数の動画の中からユーザによって指定された動画をコンテンツ管理サーバ30に対して要求し、当該動画をサーバ30から受信して再生するように構成される。また、例えば、コンテンツが拡張現実技術を用いたゲームである場合、コンテンツ制御部112は、ユーザ(ゲームのプレイヤ)による操作入力に応じて当該ゲームの進行を制御するように構成される。
The content control unit 112 executes various processes related to the control of the content. For example, if the content is a video using augmented reality technology (e.g., a video in which a virtual object such as a character appears in real space), the content control unit 112 is configured to request a video specified by the user from among multiple videos to the
このように、本実施形態におけるコンテンツ提供端末10は、カメラ131を介した現実空間の画像に対して、当該カメラ131に連動する仮想カメラを介した仮想空間の画像を重ねた拡張現実画像を生成及び表示し、当該仮想空間に含まれる所定オブジェクトに基づく所定領域外に仮想カメラが位置するように、カメラ131に対する仮想カメラの相対的な位置を調整するから、こうした領域内に仮想カメラが位置することによって不適切な画像が生成及び表示されることを抑制する。つまり、コンテンツ提供端末10は、適切な拡張現実画像の生成及び表示を支援する。
In this way, the
本実施形態において、カメラ131に対する仮想カメラの相対的な位置の調整は、様々な態様で実現され得る。例えば、画像生成表示部111は、カメラ131に連動する仮想カメラの所定領域内への進入に応じて、当該所定領域外に仮想カメラが位置するように、カメラ131に対する仮想カメラの相対的な位置を調整する(例えば、仮想カメラを所定領域外に移動させる)ように構成され得る。こうした構成は、仮想カメラの所定領域内への進入に応じた当該仮想カメラの位置の調整を可能とする。
In this embodiment, the adjustment of the position of the virtual camera relative to the camera 131 can be realized in various ways. For example, the image generation and
また、画像生成表示部111は、所定領域外に仮想カメラが位置するようにカメラ131に対する仮想カメラの相対的な位置を調整した後に、当該所定領域外に仮想カメラが位置する限りにおいて、カメラ131に対する仮想カメラの相対的な位置を調整前の位置に戻すように構成され得る。例えば、画像生成表示部111は、カメラ131に連動する仮想カメラに対してオフセットを設定した後に、当該オフセットを段階的に/一時に解消する(カメラ131の位置に対応する基準点に向けて仮想カメラを段階的に/一時に移動させる)ように構成される。こうした構成は、カメラ131に対する仮想カメラの相対的な位置の調整後、当該仮想カメラを通常の位置に戻すことを可能とする。
Furthermore, the image generation and
本実施形態において、所定オブジェクトは、仮想空間に含まれる様々な種類のオブジェクトを含み、例えば、これらに限定されないが、キャラクタ、人工物(建築物等)、及び自然物(樹木等)を含む。例えば、所定オブジェクトが仮想空間内を動くキャラクタ等のオブジェクトとして構成される場合には、当該所定オブジェクトに基づく所定領域もまた仮想空間内を移動し得る。 In this embodiment, the specified object includes various types of objects contained in the virtual space, including, but not limited to, characters, man-made objects (buildings, etc.), and natural objects (trees, etc.). For example, if the specified object is configured as an object such as a character that moves within the virtual space, the specified area based on the specified object may also move within the virtual space.
本実施形態において、上記所定領域は、所定オブジェクトに基づく様々な領域を含み得る。例えば、所定領域は、当該所定オブジェクトを囲う領域を含む。当該領域は、例えば、所定オブジェクトの境界を定める境界ボックス(例えば、軸平行境界ボックス(AABB)、又は、有向境界ボックス(OBB)等)、又は、当該境界ボックスに基づく領域(境界ボックスよりも若干大きい/小さい領域)等として構成される。こうした構成は、所定オブジェクトを囲う領域内に仮想カメラが位置する(例えば、仮想カメラが所定オブジェクトにめり込む)ことによって不適切な拡張現実画像となってしまうこと(例えば、所定オブジェクトが適切に表示されないこと等)を抑制する。 In this embodiment, the specified region may include various regions based on a specified object. For example, the specified region includes a region surrounding the specified object. The region is configured, for example, as a bounding box that defines the boundary of the specified object (e.g., an axis-aligned bounding box (AABB) or an oriented bounding box (OBB)), or a region based on the bounding box (a region that is slightly larger/smaller than the bounding box). This configuration prevents the virtual camera from being positioned within the region surrounding the specified object (e.g., the virtual camera becoming embedded in the specified object), resulting in an inappropriate augmented reality image (e.g., the specified object not being displayed properly, etc.).
また、画像生成表示部111は、所定オブジェクトを囲う領域への仮想カメラの進入に応じて、カメラ131に対する仮想カメラの相対的な位置を、当該仮想カメラの視線の方向の反対の方向に移動させるように構成され得る。こうした構成は、仮想カメラの視線に対応する直線に沿って当該仮想カメラを移動させるから、仮想カメラを介した画像の変化が小さくなり、この結果、仮想カメラの移動に伴ってユーザに生じ得る違和感が低減される。
The image generation and
また、例えば、所定領域は、所定オブジェクトの所定位置よりも下側の領域を含む。例えば、所定位置は、キャラクタとして構成される所定オブジェクトの腰の位置を含む。例えば、画像生成表示部111は、所定オブジェクトの所定位置よりも下側の領域への仮想カメラの進入に応じて、カメラ131に対する仮想カメラの相対的な位置を、上方向(例えば、鉛直上方向、又は、斜め上方向等)に移動させるように構成され得る。こうした構成は、所定オブジェクトの所定位置よりも下側の領域内に仮想カメラが位置することによって不適切な拡張現実画像となってしまうこと(例えば、キャラクタの腰の位置よりも低い視点からのローアングルの画像となってしまうこと等)を抑制する。
Also, for example, the specified area includes an area below a specified position of a specified object. For example, the specified position includes the waist position of a specified object configured as a character. For example, the image generation and
また、画像生成表示部111は、所定オブジェクトの所定位置よりも下側の領域への仮想カメラの進入に応じたカメラ131に対する仮想カメラの相対的な位置の上方向への移動に伴って当該仮想カメラが所定オブジェクトを囲う領域に進入する場合に、カメラ131に対する仮想カメラの相対的な位置を水平方向に移動させるように構成され得る。こうした構成は、所定オブジェクトを囲う領域外に移動する仮想カメラが、所定オブジェクトの所定位置よりも下側の領域へ再度進入してしまうことを抑制する。
The image generation and
本実施形態において、所定オブジェクトの種類に応じて、仮想カメラの制御を変化させるようにしてもよい。例えば、画像生成表示部111は、所定オブジェクトが第1の種類のオブジェクト(例えば、ローアングルが好ましくないキャラクタ)である場合に、所定位置よりも下側の領域外に仮想カメラが位置するように当該仮想カメラの相対的な位置を調整する一方、所定オブジェクトが第2の種類のオブジェクト(例えば、ローアングルでも問題ないキャラクタ)である場合に、こうした仮想カメラの相対的な位置の調整を行わないように構成され得る。こうした構成は、所定オブジェクトの種類に応じた仮想カメラの制御を可能とし、この結果、端末10に対する負荷が軽減され得る。
In this embodiment, the control of the virtual camera may be changed depending on the type of the specified object. For example, when the specified object is a first type of object (e.g., a character for which a low angle is not desirable), the image generation and
次に、このような機能を有する本実施形態のコンテンツ提供端末10の一態様としての具体例について説明する。この例において、コンテンツ提供端末10は、仮想空間において行われるライブ・公演(コンサート、ギグ、パフォーマンス、又はショー等と呼ばれることもある。)に対応するライブ空間動画をユーザに対して提供する。当該動画は、現実空間の画像に対して仮想空間の画像が重ねられた拡張現実画像を含むように構成される。
Next, a specific example of one aspect of the
この例において、ライブ空間動画は、コンテンツ管理サーバ30から所定の日時(ライブ・公演の開催日時)に生配信される。例えば、ユーザは、予めチケットを購入したライブ空間動画を、その開催日時において、コンテンツ提供端末10を介して視聴することができる。なお、こうした動画の生配信に代えて、又は、これに加えて、予め記憶されている動画をユーザからの要求に応じて配信するようにしてもよい。
In this example, the live space video is live-streamed from the
図2は、ライブ空間動画を再生する際に、コンテンツ提供端末10によって実行される処理を例示するフロー図である。これらの処理は、ユーザによる特定の動画の再生(仮想的なライブ空間(ライブ会場)への入室)の要求に応じて実行される。端末10は、まず、図示するように、対応するライブ空間動画におけるオブジェクト情報を取得する(ステップS100)。オブジェクト情報は、ライブ空間動画における仮想空間に含まれるオブジェクトに関する情報であり、コンテンツ管理サーバ30から取得される。仮想空間に含まれるオブジェクトは、パフォーマーとしてのキャラクタ(所定オブジェクト)を含み、オブジェクト情報は、当該キャラクタの3Dモデルを含む。オブジェクトは、キャラクタ以外の様々な種類のオブジェクト(例えば、ステージ、スクリーン等の設備に対応するオブジェクト等)を含み得る。
Figure 2 is a flow diagram illustrating the processing executed by the
続いて、端末10は、カメラ131を介して入力される現実空間の画像(撮影画像)における平面を認識し(ステップS110)、認識した平面に基づいて、現実空間に対して仮想空間(オブジェクト)を配置する(ステップS120)。 Next, the terminal 10 recognizes a plane in the image (captured image) of real space input via the camera 131 (step S110), and places the virtual space (object) in the real space based on the recognized plane (step S120).
図3は、仮想空間(オブジェクト)が配置される様子を説明するための図である。図3の上側の画像45は、カメラ131を介して入力される現実空間の撮影画像であり、この例では、テーブルTBの上面が含まれている。図3の下側の画像50は、撮影画像45に対して、オブジェクトとしてのキャラクタCHが含まれる仮想空間が配置された拡張現実画像である。拡張現実画像50は、現実空間の画像に対して仮想空間の画像が重ねられているとも言える。この例では、撮影画像45におけるテーブルTBの上面が平面として認識され、拡張現実画像50では、当該テーブルTBの上面にキャラクタCHが立っている。 Figure 3 is a diagram for explaining how a virtual space (object) is arranged. Image 45 at the top of Figure 3 is a photographed image of real space input via camera 131, and in this example includes the top surface of table TB. Image 50 at the bottom of Figure 3 is an augmented reality image in which a virtual space including character CH as an object is arranged on photographed image 45. Augmented reality image 50 can also be said to be an image of virtual space superimposed on an image of real space. In this example, the top surface of table TB in photographed image 45 is recognized as a flat surface, and in augmented reality image 50, character CH is standing on the top surface of table TB.
図4は、仮想空間を説明するための図である。図示するように、この例では、右方向をX軸、上方向をY軸、及び、手前方向をZ軸とする三次元の座標系が仮想空間におけるワールド座標系として定義される。そして、ワールド座標系のXZ平面が、現実空間の撮影画像において認識された平面に対応付けられ、キャラクタCHは、当該XY平面上に配置される。また、仮想空間における視点となる仮想カメラVPが所定位置に配置され、当該仮想カメラVPの位置及び視線VLの方向は、カメラ131(端末10)の動きに連動するように制御される。こうした仮想カメラVPの制御は、カメラ131を介した撮影画像、及び、モーションセンサによって検知される情報等に基づいて行われる。なお、仮想空間において、キャラクタCH、及び、仮想カメラVP等の位置を基準としたローカル座標系も管理され得る。 FIG. 4 is a diagram for explaining the virtual space. As shown in the figure, in this example, a three-dimensional coordinate system with the right direction as the X axis, the upward direction as the Y axis, and the forward direction as the Z axis is defined as the world coordinate system in the virtual space. The XZ plane of the world coordinate system is then associated with a plane recognized in the captured image of the real space, and the character CH is placed on the XY plane. In addition, a virtual camera VP, which is the viewpoint in the virtual space, is placed at a predetermined position, and the position of the virtual camera VP and the direction of the line of sight VL are controlled so as to be linked to the movement of the camera 131 (terminal 10). Such control of the virtual camera VP is performed based on the captured image via the camera 131 and information detected by a motion sensor. In addition, a local coordinate system based on the positions of the character CH and the virtual camera VP can also be managed in the virtual space.
図2のフロー図に戻り、こうして現実空間に対して仮想空間(オブジェクト)が配置されると、次に、端末10は、ライブ空間動画を再生する(ステップS130)。当該動画の再生は、所定の終了条件が成立するまでの間、継続する(ステップS140においてNO)。動画の再生では、カメラ131を介した現実空間の画像に対して、当該カメラ131に連動する仮想カメラを介した仮想空間の画像が重ねられた拡張現実画像が繰り返し生成及び表示される。仮想空間の画像において、キャラクタは、その3Dモデルに基づいて描画され、コンテンツ管理サーバ30から受信する動きデータ(3Dモデルのアニメーション情報等)に基づいて動作する。また、動画の再生では、コンテンツ管理サーバ30から受信する音声が出力される。
Returning to the flow diagram of FIG. 2, once the virtual space (objects) have been placed in the real space in this manner, the terminal 10 then plays the live space video (step S130). Playback of the video continues until a predetermined end condition is met (NO in step S140). During video playback, an augmented reality image is repeatedly generated and displayed in which an image of the virtual space taken by a virtual camera linked to the camera 131 is overlaid on an image of the real space taken by the camera 131. In the image of the virtual space, the character is drawn based on its 3D model, and moves based on the movement data (such as animation information of the 3D model) received from the
この例では、動画の再生中において、カメラ131に連動する仮想カメラは、キャラクタに基づく所定領域外となるように制御される。図5は、動画の再生中において、コンテンツ提供端末10によって実行される処理を例示するフロー図である。これらの処理は、所定のタイミングで繰り返し実行され、例えば、生成及び表示される拡張現実画像に対応するフレーム単位で実行される。端末10は、まず、図示するように、キャラクタの腰の高さ、及び、当該キャラクタを構成する各メッシュの境界ボックスの位置を取得する(ステップS200)。
In this example, while the video is being played, the virtual camera linked to camera 131 is controlled so as to be outside a predetermined area based on the character. FIG. 5 is a flow diagram illustrating the processes executed by the
この例において、キャラクタの腰の高さは、キャラクタ情報に含まれるボーン情報に基づいて判定され、具体的には、キャラクタに含まれる複数のボーンのうち、背骨に相当するボーンの下端部の高さが、キャラクタの腰の高さ(ワールド座標系におけるY座標)として判定される。なお、本実施形態の他の例では、これに代えて、キャラクタの重心の位置が腰の位置として利用され、又は、キャラクタ毎に腰の高さが固定値として予め設定される。 In this example, the height of the character's waist is determined based on the bone information included in the character information; specifically, the height of the bottom end of the bone corresponding to the spine among the multiple bones included in the character is determined as the height of the character's waist (Y coordinate in the world coordinate system). Note that in other examples of this embodiment, instead, the position of the character's center of gravity is used as the position of the waist, or the waist height is preset as a fixed value for each character.
また、キャラクタを構成する各メッシュの境界ボックスは、この例では、軸平行境界ボックス(AABB)として定義され、キャラクタのメッシュ情報に基づいて特定される。例えば、キャラクタが、頭部に対応する第1メッシュ、及び、胴体部に対応する第2メッシュの2つのメッシュによって構成される場合には、図6に示すように、頭部を囲う第1境界ボックスBB1、及び、胴体部を囲う第2境界ボックスBB2の2つの境界ボックスが特定され、これらの境界ボックスBBの位置(ワールド座標系における座標)が取得される。 In this example, the bounding boxes of each mesh that makes up the character are defined as axis-aligned bounding boxes (AABB) and are identified based on the mesh information of the character. For example, if a character is composed of two meshes, a first mesh corresponding to the head and a second mesh corresponding to the torso, two bounding boxes are identified, a first bounding box BB1 that surrounds the head and a second bounding box BB2 that surrounds the torso, as shown in FIG. 6, and the positions (coordinates in the world coordinate system) of these bounding boxes BB are obtained.
図5のフロー図に戻り、続いて、端末10は、仮想カメラの位置及び視線の方向を取得する(ステップS210)。上述したように、仮想カメラは、カメラ131に連動するように制御され、ステップS210では、その時点における仮想カメラの位置及び視線の方向(ワールド座標系における座標及び方向ベクトル)が取得される。 Returning to the flow diagram of FIG. 5, the terminal 10 then acquires the position and line of sight direction of the virtual camera (step S210). As described above, the virtual camera is controlled to be linked to the camera 131, and in step S210, the position and line of sight direction of the virtual camera at that time (coordinates and direction vector in the world coordinate system) are acquired.
そして、端末10は、仮想カメラが、その位置を調整する必要がある位置調整要領域(所定領域)内に位置しているか否かを判定する(ステップS220)。この例において、位置調整要領域は、キャラクタの腰の高さよりも低い「ローアングル領域」、及び、キャラクタを構成する各メッシュの境界ボックスの内側に対応する「めり込み領域」の2つの領域である。仮想カメラが位置調整要領域内に位置している場合には(ステップS220においてYES)、以下に述べるように、仮想カメラの位置が調整される。 Then, the terminal 10 determines whether or not the virtual camera is located within a position adjustment required area (predetermined area) where its position needs to be adjusted (step S220). In this example, the position adjustment required areas are a "low-angle area" that is lower than the height of the character's waist, and a "sunken area" that corresponds to the inside of the bounding box of each mesh that constitutes the character. If the virtual camera is located within the position adjustment required area (YES in step S220), the position of the virtual camera is adjusted as described below.
まず、仮想カメラがローアングル領域内に位置している場合には(ステップS230においてYES)、端末10は、仮想カメラを上方向に移動させる(ステップS240)。この例では、具体的には、キャラクタの腰の高さと、仮想カメラの高さとの差分に基づいて、キャラクタの腰の高さよりも若干上の高さとなるように、仮想カメラが上方向(鉛直上方向)に移動する。なお、本実施形態の他の例では、この場合の仮想カメラの移動量は固定値とされ得る。 First, if the virtual camera is located within the low-angle area (YES in step S230), the terminal 10 moves the virtual camera upward (step S240). In this example, specifically, based on the difference between the height of the character's waist and the height of the virtual camera, the virtual camera moves upward (vertically upward) so that the height is slightly higher than the height of the character's waist. Note that in other examples of this embodiment, the amount of movement of the virtual camera in this case may be a fixed value.
図7は、仮想カメラがローアングル領域内に位置する場合の仮想カメラの制御を説明するための図である。図示するように、キャラクタCHの腰の高さhよりも高い位置にある仮想カメラVP(図7(A))が、カメラ131に連動して移動することにより、キャラクタCHの腰の高さhよりも低い位置に進入すると(図7(B))、仮想カメラVPは、カメラ131の位置に対応する基準点RPから上方向に移動し、キャラクタCHの腰の高さhよりも高い位置となる(図7(C)))。なお、カメラ131の位置に対応する基準点RPから仮想カメラVPまでの方向及び距離は、仮想カメラVPに対して設定されたオフセットとして管理される。 Figure 7 is a diagram for explaining the control of the virtual camera when it is located in a low-angle area. As shown, when the virtual camera VP (Figure 7(A)), which is located at a position higher than the waist height h of the character CH, moves in conjunction with the camera 131 and enters a position lower than the waist height h of the character CH (Figure 7(B)), the virtual camera VP moves upward from the reference point RP corresponding to the position of the camera 131 and becomes higher than the waist height h of the character CH (Figure 7(C)). Note that the direction and distance from the reference point RP corresponding to the position of the camera 131 to the virtual camera VP are managed as an offset set for the virtual camera VP.
図8は、仮想カメラVPがキャラクタCHの腰の高さhよりも高い位置にある状態(図7(A))における拡張現実画像50を例示し、図9は、キャラクタCHの腰の高さhよりも低い位置に進入した仮想カメラVPが、カメラ131の位置に対応する基準点RPから上方向に移動してキャラクタCHの腰の高さhよりも高い位置にある状態(図7(C))における拡張現実画像50を例示する。仮想カメラVPが、カメラ131の位置に対応する基準点RPから上方向に移動すると、現実空間の画像と仮想空間の画像との位置関係が上下方向にずれる。この結果、図8及び図9の拡張現実画像50において、仮想空間におけるキャラクタCHの表示は同様である一方、現実空間におけるテーブルTBの表示は、図8の拡張現実画像50のテーブルTBと比較して、図9の拡張現実画像50のテーブルTBの方が上側に位置する。このように、この例では、現実空間の画像と仮想空間の画像との位置関係に上下方向のずれが生じるものの、ローアングルのキャラクタを含む不適切な画像の生成及び表示が抑制される。 8 illustrates an example of an augmented reality image 50 in a state where the virtual camera VP is at a position higher than the waist height h of the character CH (FIG. 7(A)), and FIG. 9 illustrates an example of an augmented reality image 50 in a state where the virtual camera VP, which has entered a position lower than the waist height h of the character CH, has moved upward from the reference point RP corresponding to the position of the camera 131 to a position higher than the waist height h of the character CH (FIG. 7(C)). When the virtual camera VP moves upward from the reference point RP corresponding to the position of the camera 131, the positional relationship between the image in the real space and the image in the virtual space is shifted in the vertical direction. As a result, in the augmented reality images 50 in FIG. 8 and FIG. 9, the display of the character CH in the virtual space is the same, while the display of the table TB in the augmented reality image 50 in FIG. 9 is located higher than the table TB in the augmented reality image 50 in FIG. 8. Thus, in this example, although a vertical shift occurs in the positional relationship between the image in the real space and the image in the virtual space, the generation and display of inappropriate images including low-angle characters is suppressed.
図5のフロー図に戻り、続いて、仮想カメラがめり込み領域内に位置している場合には(ステップS250においてYES)、さらに、端末10は、ローアングル領域への進入に応じた仮想カメラの上方向への移動(ステップS240)の直後であるか否かを判定する(ステップS260)。そして、こうした仮想カメラの上方向への移動の直後でない場合には(ステップS260においてNO)、端末10は、仮想カメラを、現在の視線方向の反対方向に移動させる(ステップS270)。この例では、仮想カメラの現在の位置から、当該仮想カメラの視線方向の反対方向に向けた直線とめり込み領域(境界ボックス)との交点までの距離に基づいて、めり込み領域(境界ボックス)の若干外側の位置となるように、仮想カメラを視線方向の反対方向に移動させる。なお、本実施形態の他の例では、この場合の仮想カメラの移動量は固定値とされ得る。 Returning to the flow diagram of FIG. 5, if the virtual camera is located within the embedded region (YES in step S250), the terminal 10 further determines whether or not it is immediately after the virtual camera has moved upward in response to entering the low-angle region (step S240) (step S260). If it is not immediately after such upward movement of the virtual camera (NO in step S260), the terminal 10 moves the virtual camera in the opposite direction to the current line of sight (step S270). In this example, the virtual camera is moved in the opposite direction to the line of sight so as to be slightly outside the embedded region (boundary box) based on the distance from the current position of the virtual camera to the intersection between the straight line in the opposite direction to the virtual camera's line of sight and the embedded region (boundary box). Note that in other examples of this embodiment, the amount of movement of the virtual camera in this case may be a fixed value.
図10は、仮想カメラがめり込み領域(境界ボックス)内に位置しており、且つ、ローアングル領域への進入に応じた仮想カメラの上方向への移動の直後でない場合の仮想カメラの制御を説明するための図である。図示するように、境界ボックスBBの外側に位置する仮想カメラVP(図10(A))が、カメラ131に連動して移動することにより、境界ボックスBBの内側に進入すると(図10(B))、仮想カメラVPは、カメラ131の位置に対応する基準点RPから、視線VLの方向の反対方向に移動し、境界ボックスBBの外側の位置となる(図10(C)))。なお、上述したように、カメラ131の位置に対応する基準点RPから仮想カメラVPまでの方向及び距離は、仮想カメラVPに対して設定されたオフセットとして管理される。 Figure 10 is a diagram for explaining the control of the virtual camera when the virtual camera is located within the embedded area (boundary box) and has not just moved upward in response to entering the low-angle area. As shown in the figure, when the virtual camera VP (Figure 10 (A)) located outside the bounding box BB moves in conjunction with the camera 131 and enters the inside of the bounding box BB (Figure 10 (B)), the virtual camera VP moves from the reference point RP corresponding to the position of the camera 131 in the opposite direction to the line of sight VL, and becomes a position outside the bounding box BB (Figure 10 (C)). As described above, the direction and distance from the reference point RP corresponding to the position of the camera 131 to the virtual camera VP are managed as an offset set for the virtual camera VP.
図11は、仮想カメラVPが境界ボックスBBの外側に位置する状態(図10(A))における拡張現実画像50を例示し、図12は、境界ボックスBBの内側に進入した仮想カメラVPが、カメラ131の位置に対応する基準点RPから視線方向の反対方向に移動して境界ボックスBBの外側の位置にある状態(図10(C))における拡張現実画像50を例示する。仮想カメラVPが、カメラ131の位置に対応する基準点RPから視線方向の反対方向に移動すると、現実空間の画像と仮想空間の画像との位置関係が視線方向にずれる。この結果、図11及び図12の拡張現実画像50において、仮想空間におけるキャラクタCHの表示は同様である一方、現実空間におけるテーブルTBの表示は、図11の拡張現実画像50のテーブルTBと比較して、図12の拡張現実画像50のテーブルTBの方が手前に位置する(拡大される)。このように、この例では、現実空間の画像と仮想空間の画像との位置関係に視線方向のずれが生じるものの、キャラクタの内部にめり込んだ仮想カメラからの不適切な画像の生成及び表示が抑制される。 11 illustrates an augmented reality image 50 in a state where the virtual camera VP is located outside the bounding box BB (FIG. 10(A)), and FIG. 12 illustrates an augmented reality image 50 in a state where the virtual camera VP, which has entered inside the bounding box BB, has moved in the opposite direction of the line of sight from the reference point RP corresponding to the position of the camera 131 to a position outside the bounding box BB (FIG. 10(C)). When the virtual camera VP moves in the opposite direction of the line of sight from the reference point RP corresponding to the position of the camera 131, the positional relationship between the image in real space and the image in virtual space shifts in the line of sight. As a result, while the display of the character CH in the virtual space is the same in the augmented reality images 50 of FIGS. 11 and 12, the display of the table TB in the real space is such that the table TB in the augmented reality image 50 of FIG. 12 is positioned closer to the viewer (enlarged) than the table TB in the augmented reality image 50 of FIG. 11. Thus, in this example, although there is a deviation in the line of sight between the positional relationship between the image in real space and the image in virtual space, the generation and display of inappropriate images from a virtual camera embedded inside the character is suppressed.
図5のフロー図に戻り、一方、仮想カメラがめり込み領域に位置しており、且つ、ローアングル領域への進入に応じた仮想カメラの上方向への移動(ステップS240)の直後である場合には(ステップS260においてYES)、端末10は、仮想カメラを水平方向に移動させる(ステップS280)。この例では、仮想カメラの現在の位置から、当該仮想カメラの視線方向の反対方向に向けた直線の水平成分に対応する直線とめり込み領域(境界ボックス)との交点までの距離に基づいて、めり込み領域(境界ボックス)の若干外側の位置となるように、仮想カメラを水平方向に移動させる。なお、本実施形態の他の例では、この場合の仮想カメラの移動量は固定値とされ得る。 Returning to the flow diagram of FIG. 5, on the other hand, if the virtual camera is located in the embedded area and immediately after the virtual camera has moved upward in response to entering the low-angle area (step S240) (YES in step S260), the terminal 10 moves the virtual camera horizontally (step S280). In this example, the virtual camera is moved horizontally to a position slightly outside the embedded area (bounding box) based on the distance from the current position of the virtual camera to the intersection between the embedded area (bounding box) and a line corresponding to the horizontal component of a line pointing in the opposite direction to the line of sight of the virtual camera. Note that in other examples of this embodiment, the amount of movement of the virtual camera in this case may be a fixed value.
図13は、仮想カメラがめり込み領域(境界ボックス)内に位置しており、且つ、ローアングル領域への進入に応じた仮想カメラの上方向への移動の直後である場合の仮想カメラの制御を説明するための図である。図示するように、仮想カメラVPは、キャラクタの腰の高さhよりも低い位置になると(図13(A))、カメラ131の位置に対応する基準点RPから上方向に移動し、キャラクタの腰の高さhよりも高い位置となる。そして、上方向に移動した仮想カメラVPの位置が、境界ボックスBBの内側である場合(図13(B))、仮想カメラVPは、その時点の位置(上方向への移動の直後の位置)から、視線VLの方向の反対方向の水平成分に対応する方向に移動し、境界ボックスBBの外側の位置となる(図13(C)))。なお、上述したように、カメラ131の位置に対応する基準点RPから仮想カメラVPまでの方向及び距離は、仮想カメラVPに対して設定されたオフセットとして管理される。 13 is a diagram for explaining the control of the virtual camera when the virtual camera is located within the embedded area (boundary box) and immediately after the virtual camera moves upward in response to entering the low-angle area. As shown in the figure, when the virtual camera VP is at a position lower than the height h of the character's waist (FIG. 13(A)), it moves upward from the reference point RP corresponding to the position of the camera 131 to a position higher than the height h of the character's waist. Then, when the position of the virtual camera VP that has moved upward is inside the bounding box BB (FIG. 13(B)), the virtual camera VP moves from its position at that time (the position immediately after the upward movement) in a direction corresponding to the horizontal component in the opposite direction to the line of sight VL, and becomes a position outside the bounding box BB (FIG. 13(C)). As described above, the direction and distance from the reference point RP corresponding to the position of the camera 131 to the virtual camera VP are managed as an offset set for the virtual camera VP.
例えば、ローアングル領域に位置する仮想カメラの視線の方向が上方向に近い場合には、当該視線方向の反対方向(下方向に近い方向)に仮想カメラが移動すると、仮想カメラは、再度、ローアングル領域に進入してしまう可能性がある。しかし、この例では、こうした場合に仮想カメラは水平方向に移動することになるから、再度のローアングル領域への進入が回避され得る。 For example, if the line of sight of a virtual camera positioned in a low-angle area is close to upward, moving the virtual camera in the opposite direction of the line of sight (close to downward) may result in the virtual camera re-entering the low-angle area. However, in this example, the virtual camera moves horizontally in such a case, and so re-entering the low-angle area can be avoided.
このように、仮想カメラが位置調整要領域内に位置する場合に当該仮想カメラの位置が調整されて仮想カメラに対するオフセットが設定されると、仮想カメラは、当該オフセットが維持された状態で(カメラ131の位置に対応する基準点との位置関係を維持したまま)カメラ131に連動するように制御される。 In this way, when the virtual camera is located within an area requiring position adjustment, the position of the virtual camera is adjusted and an offset is set for the virtual camera, and the virtual camera is controlled to move in conjunction with camera 131 while maintaining the offset (while maintaining the positional relationship with the reference point corresponding to the position of camera 131).
図5のフロー図に戻り、一方、仮想カメラが位置調整要領域内に位置していない場合には(ステップS220においてNO)、端末10は、仮想カメラに対してオフセットが設定されているか否かを判定する(ステップS290)。 Returning to the flow diagram of FIG. 5, on the other hand, if the virtual camera is not located within the area requiring position adjustment (NO in step S220), the terminal 10 determines whether an offset has been set for the virtual camera (step S290).
そして、仮想カメラに対するオフセットが設定されている場合には(ステップS290においてYES)、端末10は、仮想カメラを、カメラ131の位置に対応する基準点の方向に移動させる(ステップS300)。この例では、仮想カメラは、現在の位置から基準点の方向に所定距離だけ移動する。その後、位置調整要領域外に位置している限りにおいて、仮想カメラは、カメラ131に対応する基準点に向けて所定距離だけ繰り返し移動することになるから、最終的には、仮想カメラの位置は当該基準点の位置となり、オフセットが解消される。 If an offset has been set for the virtual camera (YES in step S290), the terminal 10 moves the virtual camera in the direction of the reference point corresponding to the position of the camera 131 (step S300). In this example, the virtual camera moves a predetermined distance from its current position in the direction of the reference point. Thereafter, as long as the virtual camera is located outside the area requiring position adjustment, the virtual camera will repeatedly move the predetermined distance toward the reference point corresponding to the camera 131, so that the position of the virtual camera will eventually become the position of the reference point, and the offset will be eliminated.
上述した例において、キャラクタの種類(例えば、身に着けている衣装の種類等)に応じて、ローアングル領域への進入に応じた仮想カメラの上方向への移動制御の要否を判断するようにしてもよい。この場合、キャラクタの種類(または、当該移動制御の要否)に関する情報は、コンテンツ管理サーバ30から取得されるオブジェクト情報に含まれるようにしてもよい。
In the above example, the need for upward movement control of the virtual camera in response to entry into the low-angle area may be determined depending on the type of character (e.g., the type of clothing worn, etc.). In this case, information regarding the type of character (or the need for such movement control) may be included in the object information obtained from the
上述した例では、ローアングル領域及びめり込み領域の2つの領域を、仮想カメラの位置の調整が必要な位置調整要領域としたが、これらの領域のいずれか一方のみを位置調整要領域としてもよい。また、本実施形態の他の例では、ローアングル領域及びめり込み領域以外の様々な領域が、位置調整要領域として適用され得る。 In the above example, the low-angle area and the embedded area are set as areas requiring position adjustment where the position of the virtual camera needs to be adjusted, but only one of these areas may be set as an area requiring position adjustment. In other examples of this embodiment, various areas other than the low-angle area and the embedded area may be applied as areas requiring position adjustment.
上述した例では、仮想カメラがローアングル領域に位置する場合に、仮想カメラを鉛直上方向に移動させるようにしたが、斜め上方向に移動させるようにしてもよい。また、ローアングル領域は、キャラクタの腰の高さよりも低い領域としたが、キャラクタの腰の位置を頂点とした円錐/角錐の形状を有する領域としてもよい。 In the above example, when the virtual camera is located in a low-angle area, the virtual camera is moved vertically upwards, but it may also be moved diagonally upwards. Also, the low-angle area is an area lower than the height of the character's waist, but it may also be an area having a cone/pyramid shape with the apex at the position of the character's waist.
上述した例では、仮想カメラがめり込み領域に位置する場合に、仮想カメラを視線方向の反対方向に移動させるようにしたが、その他の方向に移動させるようにしてもよい。 In the above example, when the virtual camera is located in the embedded area, the virtual camera is moved in the direction opposite to the line of sight, but it may be moved in another direction.
上述した例では、ARコンテンツとしてライブ空間動画を例示したが、本実施形態におけるARコンテンツは、これに限定されず、その他の動画、又は、ゲーム等の様々なコンテンツとして構成され得る。 In the above example, a live space video was given as an example of AR content, but the AR content in this embodiment is not limited to this and can be configured as various content such as other videos or games.
以上説明した本実施形態のコンテンツ提供端末10は、カメラ131を介した現実空間の画像に対して、当該カメラ131に連動する仮想カメラを介した仮想空間の画像を重ねた拡張現実画像を生成及び表示し、当該仮想空間に含まれる所定オブジェクト(例えば、キャラクタ)に基づく所定領域(例えば、ローアングル領域及びめり込み領域)外に仮想カメラが位置するように、カメラ131に対する仮想カメラの相対的な位置を調整するから、こうした領域内に仮想カメラが位置することによって不適切な画像が生成及び表示されることを抑制する。つまり、コンテンツ提供端末10は、適切な拡張現実画像の生成及び表示を支援する。
The
本発明の他の実施形態において、コンテンツ提供端末10が有する機能の少なくとも一部は、端末10とコンテンツ管理サーバ30とが協働することによって実現され、又は、コンテンツ管理サーバ30によって実現され得る。
In another embodiment of the present invention, at least some of the functions of the
本明細書で説明された処理及び手順は、明示的に説明されたもの以外にも、ソフトウェア、ハードウェアまたはこれらの任意の組み合わせによって実現される。例えば、本明細書で説明される処理及び手順は、集積回路、揮発性メモリ、不揮発性メモリ、磁気ディスク等の媒体に、当該処理及び手順に相当するロジックを実装することによって実現される。また、本明細書で説明された処理及び手順は、当該処理・手順に相当するコンピュータプログラムとして実装し、各種のコンピュータに実行させることが可能である。 The processes and procedures described in this specification may be realized by software, hardware, or any combination thereof, other than those explicitly described. For example, the processes and procedures described in this specification may be realized by implementing logic equivalent to the processes and procedures in a medium such as an integrated circuit, volatile memory, non-volatile memory, or magnetic disk. In addition, the processes and procedures described in this specification may be implemented as a computer program equivalent to the processes and procedures, and executed by various computers.
本明細書中で説明された処理及び手順が単一の装置、ソフトウェア、コンポーネント、モジュールによって実行される旨が説明されたとしても、そのような処理または手順は複数の装置、複数のソフトウェア、複数のコンポーネント、及び/又は複数のモジュールによって実行され得る。また、本明細書において説明されたソフトウェアおよびハードウェアの要素は、それらをより少ない構成要素に統合して、またはより多い構成要素に分解することによって実現することも可能である。 Although the processes and procedures described herein are described as being performed by a single device, software, component, or module, such processes or procedures may be performed by multiple devices, multiple software, multiple components, and/or multiple modules. Also, the software and hardware elements described herein may be realized by integrating them into fewer components or breaking them down into more components.
本明細書において、発明の構成要素が単数もしくは複数のいずれか一方として説明された場合、又は、単数もしくは複数のいずれとも限定せずに説明された場合であっても、文脈上別に解すべき場合を除き、当該構成要素は単数又は複数のいずれであってもよい。 In this specification, even if a component of the invention is described as either singular or plural, or described without being limited to either singular or plural, the component may be either singular or plural unless the context requires otherwise.
10 コンテンツ提供端末
20 通信ネットワーク
30 コンテンツ管理サーバ
11 コンピュータプロセッサ
111 画像生成表示部
112 コンテンツ制御部
13 入出力I/F
131 カメラ
15 ストレージ
40 コンテンツ提供用プログラム
45 撮影画像
50 拡張現実画像
BB 境界ボックス
RP 基準点
VL 視線
VP 仮想カメラ
REFERENCE SIGNS
131 Camera 15 Storage 40 Content providing program 45 Photographed image 50 Augmented reality image BB Bounding box RP Reference point VL Line of sight VP Virtual camera
Claims (6)
現実カメラを介した現実空間の画像を取得する処理と、
前記現実カメラに連動するように、仮想空間に含まれる仮想カメラを制御する処理と、
前記現実空間の画像に対して前記仮想カメラを介した前記仮想空間の画像を重ねた拡張現実画像を生成及び表示する処理と、を実行させ、
前記仮想カメラを制御する処理は、前記仮想空間に含まれる所定オブジェクトに基づく所定領域外に前記仮想カメラが位置するように、前記現実カメラに対する前記仮想カメラの相対的な位置を調整することを含み、
前記所定領域は、前記所定オブジェクトを囲う第1領域、及び、前記所定オブジェクトの所定位置よりも下側の第2領域を含み、
前記所定位置は、キャラクタとして構成される前記所定オブジェクトの腰の位置であり、
前記仮想カメラを制御する処理は、
前記現実カメラに連動する前記仮想カメラの前記第2領域内への進入に応じて、前記現実カメラに対する前記仮想カメラの相対的な位置を、上方向に移動させること、及び、
前記仮想カメラの前記第2領域内への進入に応じた前記現実カメラに対する前記仮想カメラの相対的な位置の上方向への移動に伴って前記仮想カメラが前記第1領域内に進入する場合に、前記現実カメラに対する前記仮想カメラの相対的な位置を水平方向に移動させること、を含む、
プログラム。 A program for providing content using augmented reality technology, comprising:
A process of acquiring an image of a real space via a real camera;
A process of controlling a virtual camera included in a virtual space so as to be linked to the real camera;
and generating and displaying an augmented reality image by superimposing an image of the virtual space via the virtual camera on an image of the real space;
the process of controlling the virtual camera includes adjusting a position of the virtual camera relative to the real camera so that the virtual camera is positioned outside a predetermined area based on a predetermined object included in the virtual space;
the predetermined area includes a first area surrounding the predetermined object and a second area below a predetermined position of the predetermined object,
the predetermined position is a waist position of the predetermined object configured as a character,
The process of controlling the virtual camera includes:
moving a position of the virtual camera relative to the real camera in an upward direction in response to entry of the virtual camera linked to the real camera into the second area; and
moving a position of the virtual camera relative to the real camera in a horizontal direction when the virtual camera enters the first area with an upward movement of the position of the virtual camera relative to the real camera in response to the virtual camera entering the second area,
program.
請求項1のプログラム。 the process of controlling the virtual camera includes adjusting a position of the virtual camera relative to the real camera in response to entry of the virtual camera linked to the real camera into the predetermined area so that the virtual camera is located outside the predetermined area.
The program of claim 1.
請求項1又は2のプログラム。 the process of controlling the virtual camera includes adjusting a relative position of the virtual camera with respect to the real camera so that the virtual camera is located outside the predetermined area, and then returning the relative position of the virtual camera with respect to the real camera to a position before the adjustment as long as the virtual camera is located outside the predetermined area.
The program of claim 1 or 2.
請求項1ないし3のプログラム。 the process of controlling the virtual camera includes, when the predetermined object is a first type object, adjusting a relative position of the virtual camera so that the virtual camera is located outside the second area, and, when the predetermined object is a second type object, not adjusting the relative position of the virtual camera so that the virtual camera is located outside the second area.
The program of any one of claims 1 to 3 .
前記1又は複数のコンピュータプロセッサは、読取可能な命令の実行に応じて、
現実カメラを介した現実空間の画像を取得する処理と、
前記現実カメラに連動するように、仮想空間に含まれる仮想カメラを制御する処理と、
前記現実空間の画像に対して前記仮想カメラを介した前記仮想空間の画像を重ねた拡張現実画像を生成及び表示する処理と、を実行し、
前記仮想カメラを制御する処理は、前記仮想空間に含まれる所定オブジェクトに基づく所定領域外に前記仮想カメラが位置するように、前記現実カメラに対する前記仮想カメラの相対的な位置を調整することを含み、
前記所定領域は、前記所定オブジェクトを囲う第1領域、及び、前記所定オブジェクトの所定位置よりも下側の第2領域を含み、
前記所定位置は、キャラクタとして構成される前記所定オブジェクトの腰の位置であり、
前記仮想カメラを制御する処理は、
前記現実カメラに連動する前記仮想カメラの前記第2領域内への進入に応じて、前記現実カメラに対する前記仮想カメラの相対的な位置を、上方向に移動させること、及び、
前記仮想カメラの前記第2領域内への進入に応じた前記現実カメラに対する前記仮想カメラの相対的な位置の上方向への移動に伴って前記仮想カメラが前記第1領域内に進入する場合に、前記現実カメラに対する前記仮想カメラの相対的な位置を水平方向に移動させること、を含む、
システム。 1. A system for providing content using augmented reality technology, comprising one or more computer processors, the system comprising:
The one or more computer processors, in response to execution of the readable instructions,
A process of acquiring an image of a real space via a real camera;
A process of controlling a virtual camera included in a virtual space so as to be linked to the real camera;
and generating and displaying an augmented reality image by superimposing an image of the virtual space via the virtual camera on the image of the real space;
the process of controlling the virtual camera includes adjusting a position of the virtual camera relative to the real camera so that the virtual camera is positioned outside a predetermined area based on a predetermined object included in the virtual space;
the predetermined area includes a first area surrounding the predetermined object and a second area below a predetermined position of the predetermined object,
the predetermined position is a waist position of the predetermined object configured as a character,
The process of controlling the virtual camera includes:
moving a position of the virtual camera relative to the real camera in an upward direction in response to entry of the virtual camera linked to the real camera into the second area; and
moving a position of the virtual camera relative to the real camera in a horizontal direction when the virtual camera enters the first area with an upward movement of the position of the virtual camera relative to the real camera in response to the virtual camera entering the second area,
system.
現実カメラを介した現実空間の画像を取得する工程と、
前記現実カメラに連動するように、仮想空間に含まれる仮想カメラを制御する工程と、
前記現実空間の画像に対して前記仮想カメラを介した前記仮想空間の画像を重ねた拡張現実画像を生成及び表示する工程と、を備え、
前記仮想カメラを制御する工程は、前記仮想空間に含まれる所定オブジェクトに基づく所定領域外に前記仮想カメラが位置するように、前記現実カメラに対する前記仮想カメラの相対的な位置を調整することを含み、
前記所定領域は、前記所定オブジェクトを囲う第1領域、及び、前記所定オブジェクトの所定位置よりも下側の第2領域を含み、
前記所定位置は、キャラクタとして構成される前記所定オブジェクトの腰の位置であり、
前記仮想カメラを制御する工程は、
前記現実カメラに連動する前記仮想カメラの前記第2領域内への進入に応じて、前記現実カメラに対する前記仮想カメラの相対的な位置を、上方向に移動させること、及び、
前記仮想カメラの前記第2領域内への進入に応じた前記現実カメラに対する前記仮想カメラの相対的な位置の上方向への移動に伴って前記仮想カメラが前記第1領域内に進入する場合に、前記現実カメラに対する前記仮想カメラの相対的な位置を水平方向に移動させること、を含む、
方法。 1. A method, executed by one or more computers, for providing content using augmented reality technology, comprising:
acquiring an image of a real space via a real camera;
controlling a virtual camera included in a virtual space so as to be linked to the real camera;
and generating and displaying an augmented reality image by superimposing an image of the virtual space via the virtual camera on the image of the real space,
the step of controlling the virtual camera includes adjusting a position of the virtual camera relative to the real camera so that the virtual camera is positioned outside a predetermined area based on a predetermined object included in the virtual space;
the predetermined area includes a first area surrounding the predetermined object and a second area below a predetermined position of the predetermined object,
the predetermined position is a waist position of the predetermined object configured as a character,
The step of controlling the virtual camera includes:
moving a position of the virtual camera relative to the real camera in an upward direction in response to entry of the virtual camera linked to the real camera into the second area; and
moving a position of the virtual camera relative to the real camera in a horizontal direction when the virtual camera enters the first area with an upward movement of the position of the virtual camera relative to the real camera in response to the virtual camera entering the second area,
Method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020018837A JP7492833B2 (en) | 2020-02-06 | 2020-02-06 | Program, system, and method for providing content using augmented reality technology |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020018837A JP7492833B2 (en) | 2020-02-06 | 2020-02-06 | Program, system, and method for providing content using augmented reality technology |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021125030A JP2021125030A (en) | 2021-08-30 |
JP7492833B2 true JP7492833B2 (en) | 2024-05-30 |
Family
ID=77459103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020018837A Active JP7492833B2 (en) | 2020-02-06 | 2020-02-06 | Program, system, and method for providing content using augmented reality technology |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7492833B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115442658B (en) * | 2022-08-04 | 2024-02-09 | 珠海普罗米修斯视觉技术有限公司 | Live broadcast method, live broadcast device, storage medium, electronic equipment and product |
CN117527992B (en) * | 2023-11-06 | 2024-06-21 | 中影电影数字制作基地有限公司 | Camera correction method and system for space simulation shooting |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018171455A (en) | 2018-05-15 | 2018-11-08 | 株式会社コロプラ | Display control method and program for causing computer to execute the method |
JP2019535210A (en) | 2016-10-14 | 2019-12-05 | ノキア テクノロジーズ オーユー | Audio object modification in free viewpoint rendering |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10198821A (en) * | 1996-11-07 | 1998-07-31 | Sega Enterp Ltd | Image processor, image processing method, and recording medium |
-
2020
- 2020-02-06 JP JP2020018837A patent/JP7492833B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019535210A (en) | 2016-10-14 | 2019-12-05 | ノキア テクノロジーズ オーユー | Audio object modification in free viewpoint rendering |
JP2018171455A (en) | 2018-05-15 | 2018-11-08 | 株式会社コロプラ | Display control method and program for causing computer to execute the method |
Also Published As
Publication number | Publication date |
---|---|
JP2021125030A (en) | 2021-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10013812B2 (en) | Method and system for controlling a head-mounted display system | |
US9779538B2 (en) | Real-time content immersion system | |
US10176643B2 (en) | Method of generating virtual three-dimensional space, video system, method of controlling video system, and non-transitory computer readable storage medium | |
US6377264B1 (en) | Game screen display control method and character movement control method | |
US20090244064A1 (en) | Program, information storage medium, and image generation system | |
JP7492833B2 (en) | Program, system, and method for providing content using augmented reality technology | |
JP6476657B2 (en) | Image processing apparatus, image processing method, and program | |
JP2019139673A (en) | Information processing apparatus, information processing method, and computer program | |
JP2007195747A (en) | Game apparatus and control method and program for the same | |
JP2008225767A (en) | Image processing program and image processor | |
US11521346B2 (en) | Image processing apparatus, image processing method, and storage medium | |
WO2020050103A1 (en) | Virtual viewpoint control device and method for controlling same | |
JP2019121224A (en) | Program, information processing device, and information processing method | |
JP2023182760A (en) | Game program, information processing device and method | |
US12062137B2 (en) | Information processing apparatus, information processing method, and storage medium | |
JP6121496B2 (en) | Program to control the head mounted display system | |
JP6306083B2 (en) | Method, program, and recording medium for providing virtual space | |
WO2008035550A1 (en) | Image processing device, control method for image processing device and information recording medium | |
JP2008264276A (en) | Game program, game apparatus and storage medium | |
JP7354186B2 (en) | Display control device, display control method, and display control program | |
JP2020173629A (en) | Image processing system, virtual viewpoint video generation system, and control method and program of image processing system | |
JP2008041013A (en) | Image display control device, image display method and program | |
US11423516B2 (en) | Gaze enhanced natural motion blur | |
CN115279469A (en) | Image processing system, program, and image processing method | |
JP4028113B2 (en) | GAME DEVICE AND INFORMATION STORAGE MEDIUM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A80 Effective date: 20200220 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221216 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231110 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231128 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240122 |
|
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: 20240507 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240520 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7492833 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |