JP6818968B2 - オーサリング装置、オーサリング方法、及びオーサリングプログラム - Google Patents

オーサリング装置、オーサリング方法、及びオーサリングプログラム Download PDF

Info

Publication number
JP6818968B2
JP6818968B2 JP2020558547A JP2020558547A JP6818968B2 JP 6818968 B2 JP6818968 B2 JP 6818968B2 JP 2020558547 A JP2020558547 A JP 2020558547A JP 2020558547 A JP2020558547 A JP 2020558547A JP 6818968 B2 JP6818968 B2 JP 6818968B2
Authority
JP
Japan
Prior art keywords
plane
authoring
virtual object
arrangement
placement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020558547A
Other languages
English (en)
Other versions
JPWO2020144848A1 (ja
Inventor
健瑠 白神
健瑠 白神
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6818968B2 publication Critical patent/JP6818968B2/ja
Publication of JPWO2020144848A1 publication Critical patent/JPWO2020144848A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Architecture (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Processing Or Creating Images (AREA)

Description

本発明は、オーサリング装置、オーサリング方法、及びオーサリングプログラムに関する。
近年、現実世界の画像に仮想的な情報を重畳することで得られた拡張現実(AR:Augmented Reality)画像をユーザに提示する技術が注目されている。例えば、ユーザが現実世界の物体である対象物を指定する操作を行ったときに、指定された対象物に関連する仮想的な情報部分である仮想オブジェクトを、指定された対象物の周辺に表示する技術が知られている。
特許文献1は、カメラで取得された実空間の情報を解析することで、実空間に存在する物体(例えば、手)の面である基準面(例えば、手の平)を求め、画像表示部に表示される仮想オブジェクトを、基準面に基づいて変更する装置を提案している。
特開2018−84886号公報(例えば、段落0087〜0102、図8〜図11)
しかしながら、上記従来の装置では、仮想オブジェクトが配置される平面の形状及び傾きは、実空間に存在する物体の形状及び傾きに応じて変化するため、仮想オブジェクトの視認性が低下する場合があるという問題がある。
本発明は、上記課題を解決するためになされたものであり、仮想オブジェクトの視認性を低下させないように拡張現実画像を表示可能にするオーサリング装置、オーサリング方法、及びオーサリングプログラムを提供することを目的とする。
本発明の一態様に係るオーサリング装置は、実空間に存在する対象物を指定する操作を受け付けるユーザインターフェース部と、前記ユーザインターフェース部によって指定された前記対象物である指定先の対象物に関連する基準平面上の基準点を特定する指定先特定部と、前記基準平面と前記基準点とに基づいて、前記基準点を含む位置に配置され、仮想オブジェクトが配置されることができる第1の配置平面を決定する配置位置計算部と、前記第1の配置平面を回転させることで得られ、前記仮想オブジェクトが配置されることができる1つ以上の第2の配置平面を決定する複数視点計算部と、を備え、前記第1の配置平面と前記仮想オブジェクトとを紐づけした情報及び前記第2の配置平面と前記仮想オブジェクトとを紐づけした情報とをオーサリングデータとして出力することを特徴とする。
本発明の他の態様に係るオーサリング方法は、実空間に存在する対象物を指定する操作を受け付けるステップと、指定された前記対象物である指定先の対象物に関連する基準平面上の基準点を特定するステップと、前記基準平面と前記基準点とに基づいて、前記基準点を含む位置に配置され、仮想オブジェクトが配置されることができる第1の配置平面を決定するステップと、前記第1の配置平面を回転させることで得られ、前記仮想オブジェクトが配置されることができる1つ以上の第2の配置平面を決定するステップと、前記第1の配置平面と前記仮想オブジェクトとを紐づけした情報及び前記第2の配置平面と前記仮想オブジェクトとを紐づけした情報とをオーサリングデータとして出力するステップと、を有することを特徴とする。
本発明によれば、仮想オブジェクトの視認性を低下させないように拡張現実画像を表示することが可能になる。
本発明の実施の形態1に係るオーサリング装置のハードウェア構成の例を示す図である。 実施の形態1に係るオーサリング装置の構成を概略的に示す機能ブロック図である。 (A)から(D)は、実施の形態1に係るオーサリング装置のデータ取得部によって扱われるデータ及び実空間を撮影するカメラの位置及び姿勢を示すパラメータを示す図である。 実空間に存在する対象物及びそれらに付与された物体IDの例を示す図である。 平面状の仮想オブジェクトの例を示す図である。 立体状の仮想オブジェクトの例を示す図である。 指定先の対象物上の領域を直線で囲うユーザ操作によって指定先を指定する第1の指定方法を示す図である。 指定先の対象物上の点を指定するユーザ操作によって指定先を指定する第2の指定方法を示す図である。 (A)は、ユーザ操作によって指定された指定先の領域及び基準点の例を示す図であり、(B)は、基準点及び基準平面の例を示す図であり、(C)は、水平面の例を示す図である。 (A)、(B)及び(C)は、基準平面と水平面とから配置平面を導出する処理を示す図である。 (A)及び(B)は、基準点と基準平面とから仮想オブジェクトが配置される配置平面を導出するための第1の導出方法及び第2の導出方法を示す図である。 (A)は、指定先の領域を手前から見る場合に、配置平面上に表示された仮想オブジェクトを視認することができることを示す図であり、(B)は、指定先の領域を上から見る場合に、配置平面上に表示された仮想オブジェクトを視認することができないことを示す図である。 図12(B)の状態のときに、ビルボードレンダリングを用いて仮想オブジェクトを表示した例を示す図である。 複数視点計算部によって導出された配置平面を示す図である。 複数視点計算部によって導出された配置平面を示す図である。 複数視点計算部によって導出された配置平面を示す図である。 実施の形態1に係るオーサリング装置の動作を示すフローチャートである。 本発明の実施の形態2に係るオーサリング装置のハードウェア構成の例を示す図である。 実施の形態2に係るオーサリング装置の構成を概略的に示す機能ブロック図である。 実施の形態2に係るオーサリング装置の動作を示すフローチャートである。
以下に、本発明の実施の形態に係るオーサリング装置、オーサリング方法、及びオーサリングプログラムを、図面を参照しながら説明する。以下の実施の形態は、例にすぎず、本発明の範囲内で種々の変更が可能である。
《1》実施の形態1.
《1−1》構成
《1−1−1》ハードウェア構成
図1は、実施の形態1に係るオーサリング装置1のハードウェア構成の例を示す図である。図1は、仮想オブジェクトを含むオーサリングデータに基づいてAR画像を表示する処理であるレンダリングを実行するための構成を示していない。しかし、オーサリング装置1は、カメラ又はセンサなどのような実空間の情報を取得する構成を備えてもよい。
図1に示されるように、オーサリング装置1は、例えば、ソフトウェアとしてのプログラム、すなわち、実施の形態1に係るオーサリングプログラムを格納する記憶装置としてのメモリ102と、メモリ102に格納されたプログラムを実行する演算処理部としてのプロセッサ101とを備えている。プロセッサ101は、CPU(Central Processing Unit)などの情報処理回路である。メモリ102は、例えば、RAM(Random Access Memory)などの揮発性の記憶装置である。オーサリング装置1は、例えば、コンピュータである。実施の形態1に係るオーサリングプログラムは、情報を記録する記録媒体から媒体情報読取装置(図示せず)を介して又はインターネットなどに接続可能な通信インタフェース(図示せず)を介してメモリ102に格納される。
また、オーサリング装置1は、マウス、キーボード、タッチパネル、などのユーザ操作部である入力装置103を備えている。入力装置103は、ユーザ操作を受け付けるユーザ操作装置である。入力装置103は、ジェスチャー操作による入力を受け付けるHMD(Head Mounted Display)、視線操作による入力を受け付ける装置、などを含む。ジェスチャー操作による入力を受け付けるHMDは、小型カメラを備えており、ユーザの身体の一部を撮像し、その身体の動きであるジェスチャー操作を、HMDに対する入力操作として認識する。
また、オーサリング装置1は、画像を表示する表示装置104を備えている。表示装置104は、オーサリングを行う際にユーザに情報を提示するディスプレイである。表示装置104は、アプリケーションを表示する。表示装置104は、HMDのシースルー型のディスプレイであってもよい。
また、オーサリング装置1は、各種情報を記憶する記憶装置であるストレージ105を備えてもよい。ストレージ105は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、などの記憶装置である。ストレージ105は、プログラム、オーサリングの実行時に使用するデータ、オーサリングによって生成されるデータ、などを格納する。ストレージ105は、オーサリング装置1の外部の記憶装置であってもよい。ストレージ105は、例えば、通信インタフェース(図示せず)を介して接続可能なクラウド上に存在する記憶装置であってもよい。
オーサリング装置1は、メモリ102に格納されるプログラムを実行するプロセッサ101によって実現されることができる。また、オーサリング装置1の一部が、メモリ102に格納されているプログラムを実行するプロセッサ101によって実現されてもよい。
《1−1−2》オーサリング装置1
図2は、実施の形態1に係るオーサリング装置1の構成を概略的に示す機能ブロック図である。オーサリング装置1は、実施の形態1に係るオーサリング方法を実施することができる装置である。オーサリング装置1は、仮想オブジェクトの奥行きを考慮したオーサリングを行う。
オーサリング装置1は、
(1)実空間に存在する対象物を指定するユーザ操作を受け付け、
(2)指定された対象物である指定先の対象物に関連する基準平面上の基準点を特定し(この処理は、後述する図9(A)から(C)に示される。)、
(3)基準平面と基準点とに基づいて、基準点を含む位置に配置され、仮想オブジェクトが配置されることができる第1の配置平面を決定し(この処理は、後述する図10(A)から(C)に示される。)、
(4)第1の配置平面を回転させることで得られ、仮想オブジェクトが配置されることができる1つ以上の第2の配置平面を決定し(この処理は、後述する図14から図16に示される。)、
(5)第1の配置平面と仮想オブジェクトとを紐づけした情報及び第2の配置平面と仮想オブジェクトとを紐づけした情報とをオーサリングデータとして、例えば、ストレージ105に出力する。
図2に示されるように、オーサリング装置1は、オーサリング部10と、データ取得部20と、認識部30とを備えている。オーサリング部10は、ユーザによって行われる入力操作であるユーザ操作に応じてオーサリングを実行する。データ取得部20は、ストレージ105(これは、図1に示される。)から、オーサリングの実行時に使用するデータを取得する。認識部30は、オーサリング部10によって実行されるオーサリングの過程で必要となる、画像認識などの処理を行う。実施の形態1におけるストレージ105は、図1に示されるが、ストレージ105の全体又は一部は、オーサリング装置1の外部の記憶装置であってもよい。
《1−1−3》データ取得部20
図3(A)から(D)は、実施の形態1に係るオーサリング装置1のデータ取得部20によって扱われるデータ及び実空間を撮影するカメラの位置及び姿勢を示すパラメータを示す図である。カメラについては、実施の形態2で説明する。データ取得部20は、オーサリング部10がオーサリングを実行するときに用いるデータを取得する。オーサリングの実行時に用いられるデータは、3次元モデルを示す3次元モデルデータ、仮想オブジェクトを示す仮想オブジェクトデータ、及びセンサから出力されるセンサデータを含むことができる。これらのデータは、予めストレージ105に記憶されていてもよい。
〈3次元モデルデータ〉
3次元モデルデータは、AR画像を表示する実空間の情報を、3次元的に表すデータである。3次元モデルデータは、図3(A)から(C)に示されるデータを含むことができる。3次元モデルデータは、例えば、SLAM(Simultaneous Localization and Mapping)技術を用いて取得することができる。SLAM技術では、実空間のカラー画像(すなわち、RGB画像)と奥行き画像(すなわち、Depth画像)とを取得することができるカメラ(以下「RGBDカメラ」とも言う。)を用いて実空間を撮影することによって、3次元モデルデータを取得する。
図3(A)は、3次元点群の例を表している。3次元点群は、実空間に存在する物体である対象物を表している。実空間に存在する対象物は、例えば、床、壁、ドア、天井、床に置かれた物品、天井から吊るされた物品、壁に取り付けられた物品、などを含む。
図3(B)は、3次元モデルデータの生成過程で取得された平面の例を表している。この平面は、図3(A)に示される3次元点群から取得される。
図3(C)は、複数の視点からの撮影及び複数の角度による撮影によって得られた画像の例を表している。SLAM技術では、RGBDカメラなどを用いて、複数の視点から及び複数の角度で実空間を撮影することによって、3次元モデルデータが生成される。このときの撮影時に得られた図3(C)に示される画像(すなわち、画像データ)は、図3(A)に示される3次元点群、図3(B)に示される平面、又はこれらの両方と共に、ストレージ105に記憶される。
図3(D)に示される情報は、それぞれの画像についてのカメラの位置及び姿勢を示す情報である。k=1,2,…,N(Nは正の整数)とした場合、pは、k番目のカメラの位置を示し、rは、k番目のカメラの姿勢、すなわち、カメラの撮影方向を示している。
図4は、実空間に存在する対象物及びそれらに付与された物体ID(Identification)の例を示す図である。図4において、物体IDの例として、「A1」,「A2」,「A3」,及び「A4」が記載されている。3次元モデルデータは、仮想オブジェクトの3次元的な配置位置を決定する処理、画像上の対象物の位置、姿勢、又はこれらの両方を導出する処理、などにおいて使用される。3次元モデルデータは、オーサリング部10の入力データの一つである。
3次元モデルデータは、図3(A)から(D)に示される情報のほかに、他の情報を含んでもよい。3次元モデルデータは、実空間に存在する対象物のそれぞれのデータを含んでもよい。例えば、図4に示されるように、3次元モデルデータは、各対象物に付与された物体IDと、物体IDが付与された対象物ごとの部分的な3次元モデルデータとを含んでもよい。
図4に示される場合には、対象物ごとの部分的な3次元モデルデータは、例えば、セマンティックセグメンテーション技術を用いて取得することができる。例えば、図3(A)に示される3次元点群のデータ、図3(B)に示される平面のデータ、又はこれらの両方のデータを、各対象物が持つ領域ごとに分割することで、対象物ごとの部分的な3次元モデルデータを取得することが可能である。また、非特許文献1は、点群データから点群データに含まれている対象物の領域を検出する技術を説明している。
Florian Walch、 "Deep Learning for Image−Based Localization"、 Department of Informatics、 Technical University of Munich (TUM)、 2016年10月15日
〈仮想オブジェクトデータ〉
図5は、平面状の仮想オブジェクトの例を示す図である。図6は、立体状の仮想オブジェクトの例を示す図である。仮想オブジェクトデータは、AR画像として表示される仮想オブジェクトを示す情報を格納するデータである。ここで扱われる仮想オブジェクトには、2種類の属性がある。
図5に示される仮想オブジェクトV1は、平面で表される。仮想オブジェクトV1は、画像及び動画などに相当する。仮想オブジェクトV1の重心座標は、Zv1で表される。重心座標Zv1は、ローカル座標系の座標としてストレージ105に記憶されている。
図6に示される仮想オブジェクトV2は、立体で表される。仮想オブジェクトV2は、3次元モデリングツールなどによって作成されたデータに相当する。仮想オブジェクトV2の重心座標は、Zv2で表される。重心座標Zv2は、ローカル座標系の座標としてストレージ105に記憶されている。
〈センサデータ〉
センサデータは、画像データ撮影時のカメラの位置及び姿勢の推定処理を支援するために用いられるデータである。センサデータは、例えば、実空間を撮影するカメラの傾きを測定するジャイロセンサから出力された傾きデータ、このカメラの加速度を測定する加速度センサから出力された加速度データ、などを含むことができる。センサデータは、カメラに付随する情報に限られず、例えば、位置情報計測システムであるGPS(Global Positioning System)によって計測された位置データを含んでもよい。
《1−1−4》認識部30
認識部30は、データ取得部20によって取得された3次元モデルデータを用いて、画像上の特定箇所に存在する平面又は対象物を認識する。認識部30は、ピンホールカメラモデルに従って、画像上の2次元位置を実空間上の3次元位置に変換し、この3次元位置を3次元モデルデータと照合することによって画像の特定箇所に存在する平面又は対象物を認識する。なお、画像上の2次元位置は、ピクセル座標によって表される。
また、認識部30は、画像を入力として受け取り、受け取った画像に基づいて、この画像を撮影したカメラの位置及び姿勢を認識する。画像からその画像を撮影したカメラの位置及び姿勢のペアを推定する方法には、例えば、PoseNetと呼ばれるニューラルネットワークを利用した方法が知られている。この方法は、例えば、非特許文献2に説明されている。
また、画像からその画像を撮影したカメラの位置及び姿勢のペアを推定する他の方法としては、SLAM技術を用いた方法が知られている。
《1−1−5》オーサリング部10
オーサリング部10は、データ取得部20によって取得された3次元モデルデータ、仮想オブジェクトデータ、又はこれらの両方のデータを用いて、仮想オブジェクトのオーサリングを実行する。オーサリング部10は、オーサリングの結果をオーサリングデータとして出力する。オーサリング部10は、ユーザが指定した箇所、すなわち、ユーザが指定した指定先の領域、に関連する仮想オブジェクトが、指定先の領域の奥行き方向の位置に合致する奥行き方向の位置を持つように、オーサリングを実行する。図2に示されるように、オーサリング部10は、ユーザインターフェース部11と、指定先特定部12と、配置位置計算部13と、複数視点計算部14とを含む。
《1−1−6》ユーザインターフェース部11
ユーザインターフェース部11は、オーサリングのためのユーザインターフェースを提供する。ユーザインターフェース部11は、例えば、図1に示される入力装置103、及び表示装置104、などである。ユーザインターフェース部11は、GUI(Graphical User Interface)アプリケーションを含むことができる。具体的には、ユーザインターフェース部11は、オーサリングに利用される画像又は3次元データ(例えば、3次元点群データ、平面データ、など)を表示装置104に表示させ、オーサリングに必要な、入力装置103からのユーザ操作を受け付ける。ここで、3次元データは、例えば、3次元点群データ、平面データ、などである。
入力装置103を用いて行われるユーザの入力操作を説明する。「操作U1」では、ユーザは、オーサリングに使用される画像を指定する。例えば、「操作U1」では、ユーザは、図3(A)、(B)及び(C)に示される画像の中から1つの画像を選択する。「操作U2」では、ユーザは、AR画像の基準となる指定先を指定する。「操作U3」では、ユーザは、仮想オブジェクトを配置するための操作を行う。「操作U4」では、ユーザは、平面パターンの数を指定する。平面パターンの数は、後述する複数視点計算部14で計算によって取得される平面の数である。
ユーザが、「操作U1」で指定した画像において、「操作U2」で指定先を指定することで、指定先特定部12及び配置位置計算部13は、指定先の3次元的な位置と指定先に関連する仮想オブジェクトが配置される平面である配置平面とを求める。
ユーザが、求められた平面に対して、「操作U3」で仮想オブジェクトが配置される位置を指定することで、配置位置計算部13は、仮想オブジェクトの3次元的な位置と姿勢を算出する。また、ユーザが「操作U4」で平面パターンの数G(Gは、正の整数である。)を指定することで、複数視点計算部14は、G個の視点から(すなわち、Gパターンの視線方向に)指定先を見た際の仮想オブジェクトの配置位置を求めることができる。
《1−1−7》指定先特定部12
指定先特定部12は、ユーザインターフェース部11によってユーザが指定した指定先から、基準点pと基準平面Sとを求める。指定先を指定する方法としては、第1の指定方法と第2の指定方法とがある。指定先特定部12は、指定先の指定方法ごとに、基準点p及び基準平面Sの導出方法として、異なる方法を用いる。
<第1の指定方法>
第1の指定方法では、ユーザは、GUIが表示された画像に対して、指定先とする領域を、矩形又は多角形などの直線で囲う操作を行う。直線で囲われた箇所が、指定先の領域となる。第1の指定方法で指定先が指定された場合、基準点pと基準平面Sとは、以下のように求められる。
指定先として指定されたn角形の領域の各頂点を、H,…,Hとする。ここで、nは3以上の整数である。頂点H,…,Hは、GUI画像上のピクセル座標(u,v)で表される。これらの座標は、ピンホールカメラモデルに従い、3次元座標a=(x,y,z)に変換される。ここで、i=1,2,…,nである。
3次元座標a,…,aから、任意に選ばれた3つの点をb,b,bとすると、点b,b,bを含む平面Smは、一意に求まる。また、n角形の領域の頂点H,…,Hのうちの3つの点b,b,bに選ばれなかった点の集合Cを、以下のように表記する。
C={c,c,…,cn−3
3次元座標a,…,aから3つの点を選ぶ選び方は、以下の式(1)に示されるJ通りである。ここで、Jは、正の整数である。
Figure 0006818968
このため、n角形の頂点のうちの任意の3つの点から求められる平面は、J個存在する。J個の平面を、Sm,…,Smと表記する。
また、n角形の領域の頂点H,…,Hから任意の3つの点を除いた点の集合C,…,Cは、以下に示すように、J通り存在する。
Figure 0006818968
なお、例えば、要素c1,n−3は、集合Cにおける、n−3番目の要素、すなわち、点を表す。
平面Sと点Xとの距離を、D(S,X)と表記すると、基準平面Sは、以下の式(2)で求められる。n角形の頂点のうちの3つの点から求められる複数の平面のうち、他の点との距離の平均が一番小さいものを基準平面Sとする。ここで、「他の点」とは、平面を構成しない点である。
Figure 0006818968
ここで、要素Ci,jは、集合Cにおける、j番目の要素である。
また、n角形の重心の座標をAとすると、座標Aから式(2)で求められた基準平面Sに垂線を引いたときの、基準平面Sと垂線との交点を基準点pとする。
<第2の指定方法>
ユーザは、GUIが表示された画像に対して、指定先とする1つの点を指定する操作を行う。第2の指定方法では、ユーザによって指定先の領域である点が指定された場合、基準点pと基準平面Sは、以下のように求められる。
基準点pが指定された画像上の点をM=(u,v)とすると、Mは、ピンホールカメラモデルに従い、3次元座標a=(x,y,z)に変換することが可能である。第2の指定方法では、3次元座標aを、そのまま基準点pの座標とする。
認識部30は、3次元モデルデータの平面データから基準点pを含む平面を検出し、基準平面Sを決定する。認識部30は、対応する平面が存在しない場合は、例えば、RANSAC(RANdom Sample Consensus)を利用して、基準点pの周辺の点群データを用いて疑似平面を検出してもよい。
図7は、指定先の対象物上の領域を直線で囲うユーザ操作によって指定先を指定する第1の指定方法を示す図である。図8は、指定先の対象物上の点を指定するユーザ操作によって指定先を指定する第2の指定方法を示す図である。図8に示される第2の指定方法では、1つの点のみから平面を検出するため、指定先の対象物が平面ではない場合に、基準平面Sを適切に検出することができない場合がある。しかし、図7に示される第1の指定方法を用いることで、指定先の対象物の形状が平面ではない場合であっても、基準平面Sを導出することができる。
《1−1−8》配置位置計算部13
配置位置計算部13は、以下に示される第1の処理13aと、第2の処理13bとを行う。
第1の処理13aでは、配置位置計算部13は、仮想オブジェクトが配置される配置平面Sを計算する。配置位置計算部13は、指定先特定部12で求められた基準点pと基準平面Sとから、仮想オブジェクトが配置される平面である配置平面Sを導出する。配置平面Sの導出方法としては、第1の導出方法と第2の導出方法とがある。
<第1の導出方法>
第1の導出方法では、配置位置計算部13は、基準平面Sを、そのまま配置平面Sとして扱う。
<第2の導出方法>
第2の導出方法では、まず、配置位置計算部13は、3次元モデルデータから実空間における水平面Sを検出する。水平面Sは、ユーザインターフェース部11を用いるユーザのユーザ操作によって選択されてもよい。また、水平面Sは、画像認識及び空間認識技術を用いて自動的に決定されてもよい。図9(A)は、ユーザ操作によって指定された指定先の領域及び基準点pの例を示す図である。図9(B)は、基準点p及び基準平面Sの例を示す図である。図9(C)は、水平面Sの例を示す図である。
図10(A)、(B)及び(C)は、基準平面Sと水平面Sとから配置平面Sを導出する処理を示す図である。このとき、第2の導出方法では、配置位置計算部13は、図10(A)、(B)及び(C)に示される処理によって、配置平面Sを導出する。
先ず、図10(A)に示されるように、基準平面Sと水平面Sとの交線をLとする。次に、図10(B)に示されるように、基準平面Sを、交線Lを中心軸にして、水平面Sと垂直となるように回転させて水平面Sと垂直な平面Sとする。次に、図10(C)に示されるように、水平面Sと垂直な平面Sを、基準点pを通るように平行移動させる。次に、基準点pを通る、水平面Sと垂直な平面Sを、配置平面Sとする。
第1の導出方法では、指定先の領域の傾きによっては、視認性の悪い配置平面となる場合がある。しかし、第2の導出方法のように、基準点pを通る、水平面Sと垂直な平面Sを、配置平面Sとすることで、指定先の領域の傾きに依存せずに、仮想オブジェクトの奥行き方向の位置を指定先の領域の奥行き方向の基準位置である基準点pに揃えることができる。
図11(A)及び(B)は、基準点pと基準平面Sとから、仮想オブジェクトが配置される配置平面Sを導出するための第1の導出方法と第2の導出方法とを示す図である。
第2の処理13bでは、配置位置計算部13は、仮想オブジェクトの3次元的な配置位置qを計算する。配置位置計算部13が、第1の処理13aにより、仮想オブジェクトが配置される配置平面Sを導出した後に、ユーザは、GUIにより、仮想オブジェクトの配置位置を指定する。例えば、ユーザは、画像上の仮想オブジェクトを配置したい場所を、マウスなどの入力装置103でクリックすることで、仮想オブジェクトの配置位置を指定する。このとき、GUIの画像上に配置平面Sを投影して、ユーザによる配置位置の指定操作を支援してもよい。
ユーザの指定によって取得された画像上の座標をD=(u,v)とすると、座標Dから、ピンホールカメラモデルに従い、3次元座標E=(x,y,z)が得られる。3次元モデルデータから得られるカメラの3次元座標をF=(x,y,z)とするとき、座標Eと座標Fの2点によって形成されるベクトルと、配置平面Sとの交点を、配置位置qとする。また、1つの指定先に対して、複数の仮想オブジェクトを配置することも可能である。t個(tは正の整数である。)の仮想オブジェクトを配置する場合には、同様の手順で配置位置q,q,…,qを導出する。
また、配置位置を決定した後に、ユーザによって仮想オブジェクトのサイズをドラッグアンドドロップなどのユーザ操作によって変更してもよい。その場合、ユーザ操作時に、表示装置104に、レンダリングの結果として得られる仮想オブジェクトが、表示されることが望ましい。
また、このとき、ユーザは、仮想オブジェクトが配置される向き(すなわち、姿勢)をドラックアンドドロップなどのユーザ操作により変更してもよい。その場合は、仮想オブジェクトの回転に関する情報もオーサリングデータとしてストレージ105に記憶される。以上の処理を行うことで、仮想オブジェクトの3次元的な配置位置、範囲、姿勢が求められる。
《1−1−9》複数視点計算部14
配置位置計算部13までの処理の結果、ある1方向から見た際に、指定先の領域の奥行き方向の位置と仮想オブジェクトの奥行き方向の位置とが揃えられている。図12(A)は、指定先の領域を手前から見る場合に、配置平面S上に表示された仮想オブジェクト#1及び#2を視認することができることを示す図である。図12(B)は、指定先の領域を上から見る場合に、配置平面S上に表示された仮想オブジェクト#1及び#2を視認することができないことを示す図である。
図13は、ビルボードレンダリングを用いて仮想オブジェクト#1及び#2を表示した例を示す図である。ビルボードレンダリングを用いて、仮想オブジェクトが常にカメラの視線ベクトルに垂直な姿勢になるようにレンダリングを実行した場合は、図13に示されるように、仮想オブジェクトを視認することができる。しかし、仮想オブジェクト#1及び#2の奥行き方向の位置L及びLが指定先の領域の奥行き方向の位置Lとずれている。
複数視点計算部14は、上記のように視点が大きく変わった際であっても、仮想オブジェクトの奥行き方向の位置を指定先の領域の奥行き方向の位置に合致させるために、1つの指定先に対して、複数の配置平面を用意し、それぞれの配置平面での仮想オブジェクトの配置位置の計算を行う。複数視点計算部14は、以下の第1の視点計算処理14aと、第2の視点計算処理14bとを、追加する配置平面の数に等しい回数繰り返す。
第1の視点計算処理14aでは、複数視点計算部14は、配置位置計算部13で求められた配置平面Sを、基準点pを通る軸を中心にして回転させることで得られた平面Sを求める。
第2の視点計算処理14bでは、複数視点計算部14は、配置位置計算部13で求められた配置される仮想オブジェクトv,v,…,vの平面S上での配置位置qr1,qr2,…,qrtを求める。
第1の視点計算処理14aについては、ドラッグアンドドロップなどのユーザ操作によって、ユーザ自身に平面S設定させてもよい。また、複数視点計算部14は、平面Sを自動で求める機能を備えてもよい。自動で求める方法の例は後述する。
第2の視点計算処理14bについては、複数視点計算部14は、配置位置計算部13で求めた仮想オブジェクトv,v,…,vの配置位置q,q,…,qと基準点pの配置平面S上での相対的な位置関係を利用することで、平面S上での配置位置qr1,qr2,…,qrtを求めることができる。
また、上記の方法で一時的な配置位置を求めた後に、ユーザによって配置位置を調整するユーザインターフェースを提供してもよい。また、複数視点計算部14は、一時的な配置位置を求めた後に、3次元モデルデータの点群のデータ、3次元モデルデータの平面のデータ、又はこれらの両方のデータを利用して、仮想オブジェクトと実空間における対象物の衝突判定を行い、仮想オブジェクトの配置位置を調整してもよい。
第1の視点計算処理14aにおいて、平面Sを自動で求める方法の例を説明する。ここでは、平面Sの数が3つの例を説明する。平面の数が3の場合、複数視点計算部14では、平面Sとして配置平面Sr1,Sr2,Sr3を導出する。図14は、複数視点計算部14によって導出された配置平面Sr1を示す図である。図15は、複数視点計算部14によって導出された配置平面Sr2の例を示す図である。図16は、複数視点計算部14によって導出された配置平面Sr3の例を示す図である。図14から図16の例は、指定先を前後、上下、左右から見ることを考慮した配置平面Sr1,Sr2,Sr3を示している。この例の場合、配置平面Sr1,Sr2,Sr3は、ユーザ操作無しで、以下のように求めることができる。
図14に示される例は、配置位置計算部13で導出した配置平面Sをそのまま、配置平面Sr1として扱う例である。
図15に示される配置平面Sr2は、配置平面Sを、基準点pを通る水平軸を中心にして、配置位置計算部13で検出した水平面Sと平行となるように回転させることによって得られる平面である。
図16に示される配置平面Sr3は、配置平面Sを、配置平面Sr1及び配置平面Sr2の両方と垂直な方向に変更し、かつ、基準点pを通る平面である。
以上のように、配置位置計算部13は、複数の配置平面及び配置位置を計算し、計算結果をオーサリングデータとして出力する。レンダリングの実行時には、カメラの角度に応じて、レンダリングする平面を切り替えることで、複数の視点から見た際であっても、指定先に関する複数の仮想オブジェクトの奥行き方向の位置を指定先の奥行き方向の位置に合致させることができる。
《1−1−10》オーサリングデータ
オーサリングデータは、オーサリング部10によって行われたオーサリングの結果がストレージ105に格納されたデータである。オーサリングデータには、例えば、以下の第1から第6の情報I1〜I6が含まれる。
第1の情報I1は、指定先に関する情報であり、基準点pと基準平面Sの情報を含む。第2の情報I2は、配置平面に関する情報であり、配置平面Sと平面Sの情報を含む。第3の情報I3は、仮想オブジェクトの情報であり、仮想オブジェクトv,v,…の情報を含む。第4の情報I4は、仮想オブジェクトの配置位置を示す情報である。第5の情報I5は、仮想オブジェクトの配置範囲を示す情報である。第6の情報I6は、仮想オブジェクトの姿勢を示す情報である。姿勢を示す情報は、仮想オブジェクトの向きを示す情報とも言う。
オーサリング部10で求められた仮想オブジェクトの3次元的な配置位置は、配置平面、指定先、又はこれらの両方に紐づけて管理される。
《1−2》動作
図17は、実施の形態1に係るオーサリング装置1の動作を示すフローチャートである。まず、ステップS11において、オーサリング装置1は、ユーザ指示に従い、オーサリング部10の機能を搭載したオーサリングアプリケーションを起動する。
ステップS12において、オーサリング装置1は、ユーザによってオーサリング部10のユーザインターフェース部11で指定された、オーサリングに使用する画像、又は3次元データである3次元点群若しくは平面を取得し、取得された画像又は3次元データを表示装置104に表示させる。ユーザによる指定は、ユーザインターフェース部11であるマウス又はタッチパッドなどにより行われる。
ステップS13において、オーサリング装置1は、ユーザによってユーザインターフェース部11で指定された画像又は3次元データの指定先を特定する。オーサリング装置1は、ユーザによって指定された指定先から基準点pと基準平面Sを求める。
ステップS14において、オーサリング装置1は、仮想オブジェクトが配置される配置平面Sを決定する。
ステップS15において、オーサリング装置1は、ユーザ操作により入力された、仮想オブジェクトの配置位置、サイズ、回転などの情報を受け取る。オーサリング装置1は、受け取った情報に基づいて、仮想オブジェクトの3次元的な配置位置及び姿勢などの情報を計算する。
ステップS16において、オーサリング装置1は、複数の視点からのレンダリングに対応させるために、追加する平面の数に等しい回数だけ、配置平面とその配置平面に置かれる仮想オブジェクトの配置位置などを求める。このとき、追加する配置平面は、ユーザ操作によってGUI上で指定される場合と、ユーザ操作によらずに自動的に決定される場合とがある。
ステップS17において、オーサリング装置1は、複数平面での仮想オブジェクトのオーサリング情報を求めた後に、ここまでの処理で得たオーサリングに関する情報を、オーサリングデータとして出力して、ストレージ105に保存する。
《1−3》効果
以上に説明したように、実施の形態1では、実空間における指定先の対象物と、その指定先の対象物に関連する仮想オブジェクトとに基づくオーサリングを実行する際に、指定先特定部12によって、ユーザの指定先から基準点pと基準平面Sを求める。このため、指定先の形状及び傾きに依存せずに、仮想オブジェクトの奥行き方向の位置を指定先の奥行き方向の位置に合致させることができる。
また、複数視点計算部14によって、複数の仮想オブジェクトの配置平面が求められる。このため、カメラの向き又は姿勢を変えた際であっても、仮想オブジェクトの奥行き方向の位置を指定先の奥行き方向の位置に合致させることができる。
また、1つの指定先に関して複数のコンテンツを登録した場合であっても、カメラの向き又は姿勢を変えた際であっても、仮想オブジェクトの奥行き方向の位置を指定先の奥行き方向の位置に合致させることができる。
《2》実施の形態2.
《2−1》構成
《2−1−1》ハードウェア構成
実施の形態1に係るオーサリング装置1は、オーサリングデータを生成し出力する装置であるが、オーサリング装置は、レンダリングを実行するための構成を備えてもよい。
図18は、本発明の実施の形態2に係るオーサリング装置2のハードウェア構成の例を示す図である。図18において、図1に示される構成要素と同一又は対応する構成要素には、図1に示される符号と同じ符号が付される。実施の形態2に係るオーサリング装置2は、センサ106とカメラ107を備えた点において、実施の形態1に係るオーサリング装置1と相違する。
センサ106は、IMU(Inertial Measurement Unit)、赤外線センサ、又はLiDAR(Light Detection and Ranging)、などである。IMUは、加速度センサ、地磁気センサ、ジャイロセンサ、などの各種のセンサが統合された検出装置である。カメラ107は、撮像装置であり、例えば、単眼カメラ、ステレオカメラ、又はRGBDカメラ、などである。
オーサリング装置2は、実空間を撮影するカメラ107から出力される画像データからカメラ107の位置及び姿勢を推定し、推定されたカメラ107の位置及び姿勢とオーサリングデータとに基づいて、仮想オブジェクトが配置される表示平面を、第1の配置平面及び1つ以上の第2の配置平面の中から選択し、画像データと表示平面上に配置された仮想オブジェクトとに基づく表示画像データを出力する。
オーサリング装置2は、第1の配置平面及び1つ以上の第2の配置平面のうちの、カメラ107の位置と基準点pとによって決まるベクトルと第1の配置平面とのなす角度及び前記ベクトルと1つ以上の第2の配置平面とのなす角度が最も90°に近い配置平面を、仮想オブジェクトが表示される表示平面として選択する。
《2−1−2》オーサリング装置2
図19は、実施の形態2に係るオーサリング装置2の構成を概略的に示す機能ブロック図である。図19において、図2に示される構成要素と同一又は対応する構成要素には、図2に示される符号と同じ符号が付される。実施の形態2に係るオーサリング装置2は、画像取得部40と、表示装置104に画像データを出力するAR表示部50とを備えた点において、実施の形態1に係るオーサリング装置1と相違する。
画像取得部40は、カメラ107から出力される画像データを取得する。画像取得部40で取得される画像データは、オーサリング部10、認識部30、及びAR表示部50に入力される。カメラ107から出力される画像データを用いてオーサリングを実行する場合は、カメラ107から出力される画像データは、オーサリング部10に入力される。それ以外の場合は、カメラ107から出力される画像データは、AR表示部50に入力される。
《2−1−3》AR表示部50
AR表示部50は、オーサリング部10から出力された又はストレージ105に記憶されたオーサリングデータを利用して、表示装置104に仮想オブジェクトを表示させる画像データを生成するためのレンダリングを実行する。図19に示されるように、AR表示部50は、位置姿勢推定部51と、表示平面特定部52と、レンダリング部53とを備えている。
〈位置姿勢推定部51〉
位置姿勢推定部51は、オーサリング装置2に接続されているカメラ107の位置及び姿勢を推定する。画像取得部40によってカメラ107から取得された撮像画像の画像データは、認識部30に与えられる。認識部30は、画像データを入力として受け取り、受け取った画像データに基づいて、この画像を撮影したカメラの位置及び姿勢を認識する。位置姿勢推定部51は、認識部30の認識の結果に基づいて、オーサリング装置2に接続されているカメラ107の位置及び姿勢を推定する。
〈表示平面特定部52〉
実施の形態2におけるオーサリングデータには、複数視点計算部14によって、ユーザが指定した1つの指定先に対して複数の配置平面が存在する場合がある。複数の配置平面は、例えば、図14から図16に示されている配置平面Sr1,Sr2,Sr3である。表示平面特定部52は、現在のカメラ107の位置及び姿勢情報を利用して、複数の配置平面の中からレンダリングの対象となる平面を決定する。ある指定先に対応する基準点をpとし、t個(tは正の整数である。)の表示平面をS,S,…,Sとする。また、カメラ107の3次元位置と基準点pとによって決まるベクトルと、表示平面S,S,…,Sとのなす角度[°]をそれぞれθ,θ,…,θとし、iを1以上t以下の整数とすると、レンダリングの対象となる平面Sは、0°<θ≦90°のときには、例えば、以下の式(3)のように求まる。カメラ107の3次元位置と基準点pとによって決まるベクトルは、例えば、カメラ107の光軸の位置と基準点pとを結ぶ方向のベクトルである。
Figure 0006818968
ただし、90°<θ≦180°のときには、レンダリングの対象となる平面Sは、例えば、以下の式(4)のように求まる。
Figure 0006818968
平面Sを求めたのち、平面Sに含まれる仮想オブジェクトの配置位置などをオーサリングデータから取得し、レンダリング部53に出力する。つまり、カメラ107の3次元位置と基準点pとによって決まるベクトルと、表示平面とのなす角度が、90°に最も近い表示平面が平面Sとして選択される。
〈レンダリング部53〉
レンダリング部53は、位置姿勢推定部51によって取得されたカメラ107の位置及び姿勢並びに表示平面特定部52によって取得された仮想オブジェクトの配置平面、配置位置の情報に基づいて、仮想オブジェクトの3次元座標を表示装置104のディスプレイ上の2次元座標に変換し、表示装置104のディスプレイにおいて、変換で得られた2次元座標に仮想オブジェクトを重畳表示する。
《2−1−4》表示装置104
表示装置104は、AR画像をレンダリングするための装置である。表示装置104は、例えば、PC(Personal Computer)のディスプレイ、スマートフォンのディスプレイ、タブレット端末のディスプレイ、又はヘッドマウントディスプレイ、などである。
《2−2》動作
図20は、実施の形態2に係るオーサリング装置2の動作を示すフローチャートである。実施の形態2に係るオーサリング装置2によって実行されるオーサリングは、実施の形態1のものと同様である。
ステップS21において、オーサリング装置2は、ARアプリケーションを起動する。
ステップS22において、オーサリングデータが起動された後、ステップS23において、オーサリング装置2は、表示データとしてオーサリングデータを取得する。
ステップS24において、オーサリング装置2は、オーサリング装置2に接続されたカメラ107から出力された撮像画像の画像データを取得する。
ステップS25において、オーサリング装置2は、カメラ107の位置及び姿勢を推定する。
ステップS26において、オーサリング装置2は、オーサリングデータから、求められた指定先についての情報を取得し、1つの指定先について、又は複数の指定先の各々について、ステップS27の処理を実行する。
ステップS26において、オーサリング装置2は、指定先に対応する複数の配置平面の中から、仮想オブジェクトが表示される配置平面を1つ特定する。次に、オーサリング装置2は、決定した配置平面上に配置される仮想オブジェクトの配置位置、サイズ、位置及び姿勢などの情報をオーサリングデータから取得する。次に、オーサリング装置2は、仮想オブジェクトのレンダリングを実行する。
ステップS27において、オーサリング装置2は、AR表示処理を、継続するか、又は、登録した全ての指定先について処理が終了したかの判定を行う。継続する場合には、ステップS24からS27の処理が繰り返される。
《2−3》効果
以上に説明したように、実施の形態2では、仮想オブジェクトの対象となる指定先とそれに関連する仮想オブジェクトをレンダリングする際に、オーサリング部10によって出力されたオーサリングデータに基づいたレンダリングを行う。このため、指定先の形状又は傾きに依存せずに、仮想オブジェクトの奥行き方向の位置を指定先の奥行き方向の位置に合致させるレンダリングが可能となる。
また、表示平面特定部52によって、複数視点計算部14で求めた複数のコンテンツ配置平面から、カメラ107の位置、姿勢、又はこれらの両方に応じてレンダリングする平面を決定する。このため、カメラ107の位置、姿勢、又はこれらの両方に変化がある場合であっても、仮想オブジェクトの奥行き方向の位置を指定先の奥行き方向の位置に合致させることができる。
1,2 オーサリング装置、 10 オーサリング部、 11 ユーザインターフェース部、 12 指定先特定部、 13 配置位置計算部、 14 複数視点計算部、 20 データ取得部、 30 認識部、 40 画像取得部、 50 AR表示部、 51 位置姿勢推定部、 52 表示平面特定部、 53 レンダリング部、 101 プロセッサ、 102 メモリ、 103 入力装置、 104 表示装置、 105 ストレージ、 106 センサ、 107 カメラ、 p 基準点、 S 基準平面、 S 水平面、 S 配置平面、 Sr1,Sr2,Sr3 配置平面。

Claims (8)

  1. 実空間に存在する対象物を指定する操作を受け付けるユーザインターフェース部と、
    前記ユーザインターフェース部によって指定された前記対象物である指定先の対象物に関連する基準平面上の基準点を特定する指定先特定部と、
    前記基準平面と前記基準点とに基づいて、前記基準点を含む位置に配置され、仮想オブジェクトが配置されることができる第1の配置平面を決定する配置位置計算部と、
    前記第1の配置平面を回転させることで得られ、前記仮想オブジェクトが配置されることができる1つ以上の第2の配置平面を決定する複数視点計算部と、
    を備え、
    前記第1の配置平面と前記仮想オブジェクトとを紐づけした情報及び前記第2の配置平面と前記仮想オブジェクトとを紐づけした情報とをオーサリングデータとして出力する
    ことを特徴とするオーサリング装置。
  2. 前記ユーザインターフェース部による前記操作は、nを3以上の整数とした場合に、前記指定先の対象物を示す領域をn角形で囲う操作であることを特徴とする請求項1に記載のオーサリング装置。
  3. 前記指定先特定部は、
    前記n角形の頂点のうちの3つの頂点を含む平面のうちの1つを前記基準平面とし、
    前記n角形の重心位置と前記基準平面とに基づいて前記基準点を決定する
    ことを特徴とする請求項2に記載のオーサリング装置。
  4. 前記複数視点計算部は、前記基準点を含む軸線を中心に前記第1の配置平面を回転させることで前記1つ以上の第2の配置平面を決定することを特徴とする請求項1から3のいずれか1項に記載のオーサリング装置。
  5. 実空間を撮影するカメラから出力される画像データから前記カメラの位置及び姿勢を推定する位置姿勢推定部と、
    推定された前記カメラの前記位置及び前記姿勢と前記オーサリングデータとに基づいて、前記仮想オブジェクトが配置される表示平面を、前記第1の配置平面及び前記1つ以上の第2の配置平面の中から選択する表示平面特定部と、
    前記画像データと前記表示平面上に配置された前記仮想オブジェクトとに基づく表示画像データを出力するレンダリング部と、
    をさらに備えたことを特徴とする請求項1から4のいずれか1項に記載のオーサリング装置。
  6. 前記表示平面特定部は、前記第1の配置平面及び前記1つ以上の第2の配置平面のうちの、前記カメラの位置と前記基準点とによって決まるベクトルと前記第1の配置平面とのなす角度及び前記ベクトルと前記1つ以上の第2の配置平面とのなす角度が最も90°に近い配置平面を、前記仮想オブジェクトが表示される表示平面として選択することを特徴とする請求項5に記載のオーサリング装置。
  7. 実空間に存在する対象物を指定する操作を受け付けるステップと、
    指定された前記対象物である指定先の対象物に関連する基準平面上の基準点を特定するステップと、
    前記基準平面と前記基準点とに基づいて、前記基準点を含む位置に配置され、仮想オブジェクトが配置されることができる第1の配置平面を決定するステップと、
    前記第1の配置平面を回転させることで得られ、前記仮想オブジェクトが配置されることができる1つ以上の第2の配置平面を決定するステップと、
    前記第1の配置平面と前記仮想オブジェクトとを紐づけした情報及び前記第2の配置平面と前記仮想オブジェクトとを紐づけした情報とをオーサリングデータとして出力するステップと、
    を有することを特徴とするオーサリング方法。
  8. 実空間に存在する対象物を指定する操作を受け付ける処理と、
    指定された前記対象物である指定先の対象物に関連する基準平面上の基準点を特定する処理と、
    前記基準平面と前記基準点とに基づいて、前記基準点を含む位置に配置され、仮想オブジェクトが配置されることができる第1の配置平面を決定する処理と、
    前記第1の配置平面を回転させることで得られ、前記仮想オブジェクトが配置されることができる1つ以上の第2の配置平面を決定する処理と、
    前記第1の配置平面と前記仮想オブジェクトとを紐づけした情報及び前記第2の配置平面と前記仮想オブジェクトとを紐づけした情報とをオーサリングデータとして出力する処理と、
    をコンピュータに実行させることを特徴とするオーサリングプログラム。
JP2020558547A 2019-01-11 2019-01-11 オーサリング装置、オーサリング方法、及びオーサリングプログラム Active JP6818968B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/000687 WO2020144848A1 (ja) 2019-01-11 2019-01-11 オーサリング装置、オーサリング方法、及びオーサリングプログラム

Publications (2)

Publication Number Publication Date
JP6818968B2 true JP6818968B2 (ja) 2021-01-27
JPWO2020144848A1 JPWO2020144848A1 (ja) 2021-02-18

Family

ID=71521116

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020558547A Active JP6818968B2 (ja) 2019-01-11 2019-01-11 オーサリング装置、オーサリング方法、及びオーサリングプログラム

Country Status (6)

Country Link
US (1) US20210327160A1 (ja)
JP (1) JP6818968B2 (ja)
CN (1) CN113228117A (ja)
DE (1) DE112019006107T5 (ja)
TW (1) TW202026861A (ja)
WO (1) WO2020144848A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022219780A1 (ja) * 2021-04-15 2022-10-20 三菱電機株式会社 点検支援装置、点検支援システム、点検支援方法、及び点検支援プログラム
US20240005579A1 (en) * 2022-06-30 2024-01-04 Microsoft Technology Licensing, Llc Representing two dimensional representations as three-dimensional avatars

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5674441B2 (ja) * 2010-12-02 2015-02-25 新日鉄住金ソリューションズ株式会社 情報処理システム、その制御方法及びプログラム
JP5799521B2 (ja) * 2011-02-15 2015-10-28 ソニー株式会社 情報処理装置、オーサリング方法及びプログラム
US8638986B2 (en) * 2011-04-20 2014-01-28 Qualcomm Incorporated Online reference patch generation and pose estimation for augmented reality
JP2013008257A (ja) * 2011-06-27 2013-01-10 Celsys:Kk 画像合成プログラム
WO2014119098A1 (ja) * 2013-02-01 2014-08-07 ソニー株式会社 情報処理装置、端末装置、情報処理方法及びプログラム
GB2522855A (en) * 2014-02-05 2015-08-12 Royal College Of Art Three dimensional image generation
US9830700B2 (en) * 2014-02-18 2017-11-28 Judy Yee Enhanced computed-tomography colonography
KR20150133585A (ko) * 2014-05-20 2015-11-30 삼성전자주식회사 3차원 영상의 단면 탐색 시스템 및 방법
US10304248B2 (en) * 2014-06-26 2019-05-28 Korea Advanced Institute Of Science And Technology Apparatus and method for providing augmented reality interaction service
JP6476657B2 (ja) * 2014-08-27 2019-03-06 株式会社リコー 画像処理装置、画像処理方法、およびプログラム
US10740971B2 (en) * 2015-01-20 2020-08-11 Microsoft Technology Licensing, Llc Augmented reality field of view object follower
JP6491574B2 (ja) * 2015-08-31 2019-03-27 Kddi株式会社 Ar情報表示装置
US11221750B2 (en) * 2016-02-12 2022-01-11 Purdue Research Foundation Manipulating 3D virtual objects using hand-held controllers
JP2018084886A (ja) * 2016-11-22 2018-05-31 セイコーエプソン株式会社 頭部装着型表示装置、頭部装着型表示装置の制御方法、コンピュータープログラム
US20200015904A1 (en) * 2018-07-16 2020-01-16 Ethicon Llc Surgical visualization controls

Also Published As

Publication number Publication date
US20210327160A1 (en) 2021-10-21
DE112019006107T5 (de) 2021-11-18
CN113228117A (zh) 2021-08-06
JPWO2020144848A1 (ja) 2021-02-18
TW202026861A (zh) 2020-07-16
WO2020144848A1 (ja) 2020-07-16

Similar Documents

Publication Publication Date Title
KR102222974B1 (ko) 홀로그램 스냅 그리드
JP5799521B2 (ja) 情報処理装置、オーサリング方法及びプログラム
US9639988B2 (en) Information processing apparatus and computer program product for processing a virtual object
US10762386B2 (en) Method of determining a similarity transformation between first and second coordinates of 3D features
JP5920352B2 (ja) 情報処理装置、情報処理方法及びプログラム
US20170132806A1 (en) System and method for augmented reality and virtual reality applications
TWI544447B (zh) 擴增實境的方法及系統
US10037614B2 (en) Minimizing variations in camera height to estimate distance to objects
US20180225837A1 (en) Scenario extraction method, object locating method and system thereof
US11842514B1 (en) Determining a pose of an object from rgb-d images
JP6609640B2 (ja) 電子デバイス上における環境マッピング用のフィーチャ・データの管理
JP2011095797A (ja) 画像処理装置、画像処理方法及びプログラム
JP6310149B2 (ja) 画像生成装置、画像生成システム及び画像生成方法
JP7162079B2 (ja) 頭部のジェスチャーを介してディスプレイ装置を遠隔制御する方法、システムおよびコンピュータプログラムを記録する記録媒体
US9672588B1 (en) Approaches for customizing map views
CN115039166A (zh) 增强现实地图管理
JP2009278456A (ja) 映像表示装置
US20210327160A1 (en) Authoring device, authoring method, and storage medium storing authoring program
JP2021136017A (ja) 仮想オブジェクトを作成し、レンダリングするための視覚的オブジェクト認識及び記憶された幾何学形状を使用する拡張現実システム
US20200211275A1 (en) Information processing device, information processing method, and recording medium
KR20190048810A (ko) 증강현실용 컨텐츠 제공 장치 및 방법
CN109710054B (zh) 用于头戴式显示设备的虚拟物体呈现方法和装置
CN115578432A (zh) 图像处理方法、装置、电子设备及存储介质
JP6581348B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP2019066196A (ja) 傾き測定装置及び傾き測定方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201019

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20201019

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20201120

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201228

R150 Certificate of patent or registration of utility model

Ref document number: 6818968

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250