JP6102445B2 - 表示装置、表示方法、および表示プログラム - Google Patents

表示装置、表示方法、および表示プログラム Download PDF

Info

Publication number
JP6102445B2
JP6102445B2 JP2013081202A JP2013081202A JP6102445B2 JP 6102445 B2 JP6102445 B2 JP 6102445B2 JP 2013081202 A JP2013081202 A JP 2013081202A JP 2013081202 A JP2013081202 A JP 2013081202A JP 6102445 B2 JP6102445 B2 JP 6102445B2
Authority
JP
Japan
Prior art keywords
marker
display
virtual object
image
images
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
JP2013081202A
Other languages
English (en)
Other versions
JP2014203382A (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.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2013081202A priority Critical patent/JP6102445B2/ja
Publication of JP2014203382A publication Critical patent/JP2014203382A/ja
Application granted granted Critical
Publication of JP6102445B2 publication Critical patent/JP6102445B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は表示装置、表示方法、および表示プログラムに関し、特に、拡張現実を表示する表示装置、表示方法、および表示プログラムに関する。
拡張現実(AR:Augmented Reality)とは、「拡張現実」または「強化現実」とも言われ、現実感をコンピューターにより補助してユーザーの五感に届ける技術を指すものである。視覚的に現実と仮想情報とを重ねる場合は、ARの中でも特にMR(Mixed Reality)や「複合現実感」と呼ばれる。MR技術として、撮影画像から所定の画像(マーカー)を認識して、該マーカーに関連付けられた仮想オブジェクトを撮影画像に重ねて表示する技術がある。
ところが、撮影画像からマーカーが検出されなかったり、カメラとマーカーとの位置関係などからうまく撮影されていなかったりすると、仮想オブジェクトが表示されなくなる。
この問題に対して、たとえば特開2012−103789号公報(以下、特許文献1)は、マーカーが検出できなった場合に、マーカーが検出できた過去の画像とマーカーを検出できなかった画像との間の変化に基づいて仮想オブジェクトの表示位置や態様を予想する技術を開示している。
また、特開2008−261753号公報(以下、特許文献2)には、試薬容器にバーコード面を生成して、試薬収納庫に収納された状態でバーコードを読み取り可能とする技術において、試薬容器にバーコード面を複数面形成して各バーコード面にバーコードラベルを貼付することによって、2以上のバーコードの読み取りを可能とすることが開示されている。これによれば、たとえばいずれかのバーコードが剥がれたり擦れたりして読取ミスが発生した場合であっても、他のバーコードを読み取ることで試薬情報が取得される。
特開2012−103789号公報 特開2008−261753号公報
しかしながら、上記の特許文献1の技術ではマーカー周囲の特徴が小さいと仮想オブジェクトの表示位置や態様を精度よく予想できない、という問題がある。
そこで、上記の特許文献2の開示を応用して、所定位置に仮想オブジェクトを確実に表示させるために、同一の仮想オブジェクトに関連付けられている複数のマーカーを配置することが考えられる。しかしながら、撮影画像から複数のマーカーが検出されてしまうとマーカーごとに仮想オブジェクトが表示されてしまい、複数の仮想オブジェクトが重複して表示されることになる、という問題がある。
逆に、特定画像を撮影画像に含めるように撮影しようとすると、撮影装置の可動範囲が制約されてしまうという問題もある。
本発明はこのような問題に鑑みてなされたものであって、AR(拡張現実)、特にMR表示を行なう表示装置であって、仮想オブジェクトを適切に表示することのできる表示装置、表示方法、および表示プログラムを提供することを目的としている。
上記目的を達成するために、本発明のある局面に従うと、表示装置は映像画像に仮想オブジェクトを重ねて表示することで拡張現実を表示可能な表示装置であって、撮影画像からマーカー画像を認識するための認識手段と、マーカー画像ごとに規定された仮想オブジェクトを表示するための表示情報を参照して、撮影画像から認識されたマーカー画像に関連付けられた仮想オブジェクトと、仮想オブジェクトの表示位置とを特定するための特定手段と、マーカー画像に関連付けられた仮想オブジェクトを、撮影画像の、表示情報で規定された表示位置に表示するための表示手段とを備える。表示情報に規定される仮想オブジェクトの表示位置は、マーカー画像の位置に対して相対的に規定されている。表示手段は、同一の仮想オブジェクトに関連付けられた複数のマーカー画像が撮影画像から認識された場合に、複数のマーカー画像のうち、マーカー画像の位置から関連付けられた仮想オブジェクトの表示位置までの距離が最小である1つのマーカー画像を選択するための選択手段を含み、表示手段は、複数のマーカー画像のうちの選択手段によって選択された1つのマーカー画像の表示情報に基づいて、1つのマーカー画像に関連付けられた仮想オブジェクトを1つのマーカー画像に関連付けられた表示位置に表示する。
好ましくは、表示情報は、複数のマーカー画像の表示優先度を含む。複数のマーカー画像の中に表示優先度が同一である2以上のマーカー画像が認識された場合、選択手段は、2以上のマーカー画像のうち、距離が最小である1つのマーカー画像を選択する。
本発明の他の局面に従うと、表示方法は撮影画像に仮想オブジェクトを重ねて表示することで拡張現実を表示する方法であって、撮影画像からマーカー画像を認識するステップと、認識されたマーカー画像について、マーカー画像ごとに規定された仮想オブジェクトを表示するための表示情報を参照して、関連付けられた仮想オブジェクトとその表示位置とを特定するステップと、マーカー画像に関連付けられた仮想オブジェクトを、撮影画像の、表示情報で規定された表示位置に表示するステップとを備える。表示情報に規定される仮想オブジェクトの表示位置は、マーカー画像の位置に対して相対的に規定されている。表示するステップは、認識するステップにおいて同一の仮想オブジェクトに関連付けられた複数のマーカー画像が撮影画像から認識された場合に、複数のマーカー画像のうち、マーカー画像の位置から関連付けられた仮想オブジェクトの表示位置までの距離が最小である1つのマーカー画像を選択して、1つのマーカー画像の表示情報に基づいて、1つのマーカー画像に関連付けられた仮想オブジェクトを1つのマーカー画像に関連付けられた表示位置に表示することを含む
好ましくは、表示情報は、複数のマーカー画像の表示優先度を含む。複数のマーカー画像の中に表示優先度が同一である2以上のマーカー画像が認識された場合、表示するステップは、2以上のマーカー画像のうち、距離が最小である1つのマーカー画像を選択することを含む。
本発明のさらに他の局面に従うと、表示プログラムは、コンピューターに、撮影画像に仮想オブジェクトを重ねて表示することで拡張現実を表示する処理を実行させるためのプログラムであって、撮影画像からマーカー画像を認識するステップと、認識されたマーカー画像について、マーカー画像ごとに規定された仮想オブジェクトを表示するための表示情報を参照して、関連付けられた仮想オブジェクトとその表示位置とを特定するステップと、マーカー画像に関連付けられた仮想オブジェクトを、撮影画像の、表示情報で規定された表示位置に表示するステップとを、コンピューターに実行させる。表示情報に規定される仮想オブジェクトの表示位置は、マーカー画像の位置に対して相対的に規定されている。表示するステップは、認識するステップにおいて同一の仮想オブジェクトに関連付けられた複数のマーカー画像が撮影画像から認識された場合に、複数のマーカー画像のうち、マーカー画像の位置から関連付けられた仮想オブジェクトの表示位置までの距離が最小である1つのマーカー画像を選択して、1つのマーカー画像の表示情報に基づいて、1つのマーカー画像に関連付けられた仮想オブジェクトを1つのマーカー画像に関連付けられた表示位置に表示することを含む
好ましくは、表示情報は、複数のマーカー画像の表示優先度を含む。複数のマーカー画像の中に表示優先度が同一である2以上のマーカー画像が認識された場合、表示するステップは、2以上のマーカー画像のうち、距離が最小である1つのマーカー画像を選択することを含む。
この発明によると、AR(拡張現実)、特にMR表示を行なう表示装置において、仮想オブジェクトを適切に表示することのできる。
実施の形態にかかる表示装置としての、端末装置の外観の具体例を表わした図である。 端末装置のハードウェア構成の概略を表わしたブロック図である。 表示装置の他の例を表わした図である。 第1の動作例での、表示情報の具体例を示した図である。 図4に規定されるマーカー画像「1」についての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。 図4に規定されるマーカー画像「2」についての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。 図4に規定されるマーカー画像「3」についての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。 撮影画像から認識されたマーカー画像と、表示すると決定された仮想オブジェクトが関連付けられているマーカー画像との関係を表わした図である。 第1の動作例での仮想オブジェクトの表示方法を表わした図である。 第1の動作例での仮想オブジェクトの表示方法を表わした図である。 第1の動作例での仮想オブジェクトの表示方法を表わした図である。 図8の関係のうちのいくつかを図示したものである。 第2の動作例での表示情報の具体例を示した図である。 図13に規定されるマーカー画像「1」についての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。 図13に規定されるマーカー画像「2」についての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。 図13に規定されるマーカー画像「3」についての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。 図13に規定されるマーカー画像「4」についての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。 第2の動作例での仮想オブジェクトの表示方法を表わした図である。 第2の動作例での仮想オブジェクトの表示方法を表わした図である。 第2の動作例での仮想オブジェクトの表示方法を表わした図である。 第2の動作例での仮想オブジェクトの表示方法を表わした図である。 第3の動作例での表示情報の具体例を示した図である。 図22に規定されるマーカー画像「1」についての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。 図22に規定されるマーカー画像「2」についての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。 第3の動作例での仮想オブジェクトの表示方法を表わした図である。 第3の動作例での仮想オブジェクトの表示方法を表わした図である。 第3の動作例での仮想オブジェクトの表示方法を表わした図である。 端末装置の機能構成の具体例を示すブロック図である。 端末装置での第1の動作例での動作の流れの具体例を表わしたフローチャートである。 端末装置での第2の動作例での動作の流れの具体例を表わしたフローチャートである。 端末装置での第3の動作例での動作の流れの具体例を表わしたフローチャートである。
以下に、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらの説明は繰り返さない。
<装置構成>
図1は、本実施の形態にかかる表示装置であって映像画像に仮想オブジェクトを重ねて表示することで拡張現実を表示可能な表示装置としての、端末装置100の外観の具体例を表わした図である。図1を参照して、端末装置100は、ある一面に配置された、表示部の一例としてのタッチパネル14と、入力部の一例としてのスイッチ15と、撮影画像の入力部の一例としてのカメラ13とを含む。
図2は、端末装置100のハードウェア構成の概略を表わしたブロック図である。図2を参照して、端末装置100は、装置全体を制御するためのCPU(Central Processing Unit)10と、メモリであるROM(Read Only Memory)11およびRAM(Random Access Memory)12と、カメラ13と、タッチパネル14と、スイッチ15と、他の装置との通信を制御するための通信コントローラー18とを含む。
メモリであるROM11には、CPU10で実行されるプログラムが記憶される。CPU10は、ROM11から上記プログラムを読み出して実行することで、図2の各部を制御する。その際、RAM12は、CPU10による作業領域ともなる。
本実施の形態にかかる表示装置は、少なくとも、表示部と、ユーザーからの指示入力を得受け付けるための入力部と、撮影画像の入力部とを備えるものであればいかなる装置であってもよい。一例として、図1に表わされたような、カメラ機能付きの携帯電話機などが挙げられる。他の例として、他の装置と通信したり、記録媒体から読み出したりして撮影画像が入力可能なPC(パーソナルコンピュータ)などであってもよい。図3は、表示装置の他の例を表わした図である。すなわち、本実施の形態にかかる表示装置は、図3(A)に示されたように、相互に通信可能な端末装置100とサーバー200とを含むシステムで構成されてもよい。または、図3(B)に示されたように、WEBカメラのようなカメラ13が搭載されたPC100’であってもよい。
<動作概要>
端末装置100は、現実映像である入力された撮影画像に、仮想情報である仮想オブジェクトを重ねてタッチパネル14に表示することで、拡張現実を表示する。詳しくは、端末装置100は、まず、入力された撮影画像からマーカー画像を認識する。次に、端末装置100は、予め記憶している、(または、サーバー等、他の装置に記憶されている)表示情報を参照して、認識されたマーカー画像について、関連付けられた仮想オブジェクトとその表示位置とを特定する。ここで「表示情報」とは、マーカー画像ごとに規定された仮想オブジェクトを表示するための情報を指す。詳しくは、表示情報には、マーカー画像ごとに、表示する仮想オブジェクト(図形や画像)と、撮影画像における表示位置とが規定される。そして、端末装置100は、その仮想オブジェクトを、撮影画像の、表示情報で規定された表示位置に表示する。
このとき、1つの撮影画像から、同一の仮想オブジェクトに関連付けられた複数のマーカー画像が認識された場合、端末装置100は、その複数のマーカー画像のうちの1つのマーカー画像を選択する。そして、端末装置100は、選択した1つのマーカー画像に関連付けられた仮想オブジェクトを、撮影画像の、その1つのマーカー画像に関連付けられた表示位置に表示する。
(第1の動作例)
第1の動作例として、仮想オブジェクトの表示位置は、表示情報において、撮影画像上のマーカー画像の位置に対して相対的に規定されている。図4は、第1の動作例での、表示情報の具体例を示した図である。図4を参照して、第1の動作例では、表示情報は、マーカー画像ごとに、仮想オブジェクトの表示位置を、撮影画像上におけるそのマーカー画像の位置からの相対的な位置で規定している。すなわち、図4を参照して、第1の動作例では、表示情報が、一例として、マーカー画像「1」〜「3」それぞれに対して、その中心位置からの相対的な差分を有する位置を表示位置とした、仮想オブジェクト「1」が規定されている。なお、マーカー画像は矩形画像とし、横軸方向をx軸、縦軸方向をy軸と設定して、x軸方向の長さが基準長さa、y軸方向の長さを基準長さbとする。これは、以降の他の動作例でも同様である。
図5〜図7は、図4に規定されるマーカー画像「1」〜「3」それぞれについての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。図5(A)、図6(A)、および図7(A)は、マーカー画像「1」〜「3」それぞれの撮影画像上の位置を表わしている。図5(B)、図6(B)、および図7(B)は、図5(A)、図6(A)、および図7(A)の位置にマーカー画像「1」〜「3」それぞれが認識された場合の、仮想オブジェクト「1」の表示位置を表わしている。なお、図5(A)、図6(A)、および図7(A)中の実線四角形はマーカー画像を表わし、その中の数字がマーカー画像「1」〜「3」を表わしている。また、図5(B)、図6(B)、および図7(B)中の縦方向の実線は仮想オブジェクトの中心位置を示し、矢印はマーカー画像の位置からの相対的な位置の差分を示している。これは、以降の他の動作例でも同様である。
詳しくは、図4の表示情報は、マーカー画像「1」に仮想オブジェクト「1」を関連付け、仮想オブジェクト「1」の位置を、撮影画像上のマーカー画像「1」の位置からx軸方向に0、y軸方向に0の位置と規定している。従って、図5(A)および図5(B)を参照して、マーカー画像「1」に関連付けられた仮想オブジェクト「1」は、撮影画像上のマーカー画像「1」と同じ位置に表示される。
また、図4の表示情報は、マーカー画像「2」に仮想オブジェクト「1」を関連付け、仮想オブジェクト「1」の位置を、撮影画像上のマーカー画像「2」の位置からx軸方向に+1.5a、y軸方向に0の位置と規定している。従って、図6(A)および図6(B)を参照して、マーカー画像「2」に関連付けられた仮想オブジェクト「1」は、撮影画像上のマーカー画像「2」の位置からx軸方向に+1.5aの位置に表示される。
また、図4の表示情報は、マーカー画像「3」に仮想オブジェクト「1」を関連付け、仮想オブジェクト「1」の位置を、撮影画像上のマーカー画像「3」の位置からx軸方向に+1.5a、y軸方向に−1.5bの位置と規定している。従って、図7(A)および図7(B)を参照して、マーカー画像「3」に関連付けられた仮想オブジェクト「1」は、撮影画像上のマーカー画像「3」の位置からx軸方向に+1.5a、y軸方向に−1.5bの位置に表示される。
端末装置100は、1つの撮影画像から、同じ仮想オブジェクト「1」に関連付けられているマーカー画像「1」〜「3」のうちの複数のマーカー画像が認識された場合、第1の動作を実行する。すなわち、第1の動作は、これら複数のマーカー画像それぞれの関連付けられた仮想オブジェクトの表示位置に基づいて1つのマーカー画像を選択する動作である。好ましくは、端末装置100は、認識された複数のマーカー画像のうち、撮影画像上のそれぞれのマーカー画像の位置から関連付けられた仮想オブジェクトの表示位置までの距離が最小であるマーカー画像を選択する。
図8は、1つの撮影画像中のマーカー画像の位置関係が図5(A)、図6(A)、および図7(A)に表わされたものであり、図4の表示情報を用いた場合の、撮影画像から認識されたマーカー画像と、表示すると決定された仮想オブジェクトが関連付けられているマーカー画像との関係を表わした図である。また、図9〜図12は、図8の関係のうちのいくつかを図示したものである。
図8を参照して、1つの撮影画像から、図5(A)、図6(A)、および図7(A)の位置関係にあるマーカー画像「1」〜「3」すべてが認識された場合には、端末装置100は、マーカー画像「1」〜「3」それぞれについての、撮影画像上の位置と表示情報で規定された仮想オブジェクト「1」との距離を比較する。また、1つの撮影画像からマーカー画像「1」「2」が認識された場合には、端末装置100は、マーカー画像「1」「2」についての、撮影画像上の位置と表示情報で規定された仮想オブジェクト「1」との距離を比較する。また、1つの撮影画像からマーカー画像「1」「3」が認識された場合には、端末装置100は、マーカー画像「1」「3」についての、撮影画像上の位置と表示情報で規定された仮想オブジェクト「1」との距離を比較する。そして、端末装置100は、最も距離の近い(小さい)マーカー画像「1」を仮想オブジェクトを表示するために用いるマーカー画像に採用する。
また、1つの撮影画像からマーカー画像「2」「3」が認識された場合には、端末装置100は、マーカー画像「2」「3」についての、撮影画像上の位置と表示情報で規定された仮想オブジェクト「1」との距離を比較する。そして、端末装置100は、最も距離の近い(小さい)マーカー画像「2」を仮想オブジェクトを表示するために用いるマーカー画像に採用する。
もちろん、1つの撮影画像からいずれか1つのマーカー画像しか認識されなかった場合には、端末装置100は、そのマーカー画像を仮想オブジェクトを表示するために用いるマーカー画像に採用する。
図9は、1つの撮影画像から、図5(A)、図6(A)、および図7(A)の位置関係にあるマーカー画像「1」〜「3」すべてが認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。なお、図9(A)中の太線四角形はマーカー画像を表わし、そのうちの黒塗りされたものは認識が不成功であったマーカー画像を表わしている。また、図9(B)の円柱は仮想オブジェクト「1」を示している。以降の例でも同様とする。
すなわち、図9(A)に示されたように、図5(A)、図6(A)、および図7(A)の位置関係でマーカー画像「1」〜「3」すべてが認識された場合には、図8に示されたように、端末装置100は、マーカー画像「1」を仮想オブジェクトを表示するために採用する。そこで、端末装置100は、図4の表示情報に従って、図9(B)に示されたように、撮影画像中のマーカー画像「1」の位置に仮想オブジェクト「1」を表示する。
図10は、1つの撮影画像から、図5(A)、図6(A)、および図7(A)の位置関係にあるマーカー画像「1」〜「3」のうち、マーカー画像「2」「3」が認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。すなわち、図10(A)に示されたように、図5(A)、図6(A)、および図7(A)の位置関係でマーカー画像「2」「3」が認識され、マーカー画像「1」の認識が不成功であった場合には、図8に示されたように、端末装置100は、マーカー画像「2」を仮想オブジェクトを表示するために採用する。そこで、端末装置100は、図4の表示情報に従って、図10(B)に示されたように、撮影画像中のマーカー画像「2」の位置からx軸方向に+1.5aの位置に仮想オブジェクト「1」を表示する。
図11は、1つの撮影画像から、図5(A)、図6(A)、および図7(A)の位置関係にあるマーカー画像「1」〜「3」のうち、マーカー画像「3」のみが認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。すなわち、図11(A)に示されたように、図5(A)、図6(A)、および図7(A)の位置関係でマーカー画像「3」のみが認識され、マーカー画像「1」「2」の認識が不成功であった場合には、図8に示されたように、端末装置100は、マーカー画像「3」を仮想オブジェクトを表示するために採用する。そこで、端末装置100は、図4の表示情報に従って、図11(B)に示されたように、撮影画像中のマーカー画像「3」の位置からx軸方向に+1.5a、y軸方向に−1.5bの位置に仮想オブジェクト「1」を表示する。
図12は、1つの撮影画像から、図5(A)、図6(A)、および図7(A)の位置関係にあるマーカー画像「1」〜「3」のうち、マーカー画像「2」のみが認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。すなわち、図12(A)に示されたように、図5(A)、図6(A)、および図7(A)の位置関係でマーカー画像「2」のみが認識され、マーカー画像「1」「3」の認識が不成功であった場合には、図8に示されたように、端末装置100は、マーカー画像「2」を仮想オブジェクトを表示するために採用する。そこで、端末装置100は、図4の表示情報に従って、図12(B)に示されたように、撮影画像中のマーカー画像「2」の位置からx軸方向に+1.5aの位置に仮想オブジェクト「1」を表示する。
端末装置100は、上記の第1の動作を行なうことで、図5(A)、図6(A)、および図7(A)の位置関係で撮影範囲に置かれたマーカー画像「1」〜「3」のうち、撮影画像から少なくとも1つでも認識が成功すると、マーカー画像「1」と同じ位置に仮想オブジェクト「1」を表示する。
ユーザーは、予め、各マーカー画像に対応付けられた仮想オブジェクトの表示位置を把握した上で、撮影範囲にマーカー画像を置く。すなわち、図4の表示情報の場合、ユーザーは、仮想オブジェクト「1」を撮影画像内の意図した位置に表示させるため、撮影範囲の、仮想オブジェクト「1」を表示させることを意図した位置にマーカー画像「1」を、仮想オブジェクト「1」を表示させることを意図した位置からx軸方向に−1.5aの位置にマーカー画像「2」を、および仮想オブジェクト「1」を表示させることを意図した位置からx軸方向に−1.5a、y軸方向に+1.5bの位置にマーカー画像「3」を置く。このようにすることで、撮影画像からたとえすべてのマーカー画像が認識されなかったとしても、1つでも認識されると、図9(B)、図10(B)、図11(B)、および図12(B)に表わされたように、マーカー画像「1」と同じ位置である、意図した位置に仮想オブジェクト「1」を表示させることができる。
(第2の動作)
第2の動作例では、表示情報において、仮想オブジェクトの表示位置は必ずしも撮影画像上のマーカー画像の位置に対して相対的に規定されていなくてもよい。図13は、第2の動作例での表示情報の具体例を示した図である。図13に表わされた以下の例では、一例として、第1の動作例と同様に仮想オブジェクトの表示位置が表示情報において撮影画像上のマーカー画像の位置に対して相対的に規定されているものとしているに過ぎない。すなわち、図13を参照して、第2の動作例では、表示情報が、一例として、マーカー画像「1」〜「4」それぞれに対して、その中心位置からの相対的な差分を有する位置を表示位置とした、仮想オブジェクト「1」が規定されている。
図14〜図17は、図13に規定されるマーカー画像「1」〜「4」それぞれについての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。図14(A)、図15(A)、図16(A)、および図17(A)は、マーカー画像「1」〜「4」それぞれの撮影画像上の位置を表わしている。図14(B)、図15(B)、図16(B)、および図17(B)は、図14(A)、図15(A)、図16(A)、および図17(A)の位置にマーカー画像「1」〜「4」それぞれが認識された場合の、仮想オブジェクト「1」の表示位置を表わしている。
詳しくは、図13の表示情報は、マーカー画像「1」に仮想オブジェクト「1」を関連付け、仮想オブジェクト「1」の位置を、撮影画像上のマーカー画像「1」の位置からx軸方向に−0.5a、y軸方向に+0.5bの位置と規定している。従って、図14(A)および図14(B)を参照して、マーカー画像「1」に関連付けられた仮想オブジェクト「1」は、撮影画像上のマーカー画像「1」の位置からx軸方向に−0.5a、y軸方向に+0.5bの位置に表示される。
また、図13の表示情報は、マーカー画像「2」に仮想オブジェクト「1」を関連付け、仮想オブジェクト「1」の位置を、撮影画像上のマーカー画像「2」の位置からx軸方向に+0.5a、y軸方向に+0.5bの位置と規定している。従って、図15(A)および図15(B)を参照して、マーカー画像「2」に関連付けられた仮想オブジェクト「1」は、撮影画像上のマーカー画像「1」の位置からx軸方向に+0.5a、y軸方向に+0.5bの位置に表示される。
また、図13の表示情報は、マーカー画像「3」に仮想オブジェクト「1」を関連付け、仮想オブジェクト「1」の位置を、撮影画像上のマーカー画像「3」の位置からx軸方向に+0.5a、y軸方向に−0.5bの位置と規定している。従って、図16(A)および図16(B)を参照して、マーカー画像「3」に関連付けられた仮想オブジェクト「1」は、撮影画像上のマーカー画像「3」の位置からx軸方向に+0.5a、y軸方向に−0.5bの位置に表示される。
また、図13の表示情報は、マーカー画像「4」に仮想オブジェクト「1」を関連付け、仮想オブジェクト「1」の位置を、撮影画像上のマーカー画像「4」の位置からx軸方向に−0.5a、y軸方向に−0.5bの位置と規定している。従って、図17(A)および図17(B)を参照して、マーカー画像「4」に関連付けられた仮想オブジェクト「1」は、撮影画像上のマーカー画像「4」の位置からx軸方向に−0.5a、y軸方向に−0.5bの位置に表示される。
端末装置100は、1つの撮影画像から、同じ仮想オブジェクト「1」に関連付けられているマーカー画像「1」〜「4」のうちの複数のマーカー画像が認識された場合、第2の動作を実行する。すなわち、第2の動作は、これら複数のマーカー画像から1つのマーカー画像を無作為に選択する動作である。
図18は、1つの撮影画像から、図14(A)、図15(A)、図16(A)、および図17(A)の位置関係にあるマーカー画像「1」〜「4」すべてが認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。すなわち、図18(A)に示されたようにマーカー画像「1」〜「4」すべてが認識された場合、端末装置100は、このうちのいずれか一つを仮想オブジェクトを表示するために選択し、図18(B)に示されたように、表示情報で規定された位置に仮想オブジェクト「1」を表示する。
図19は、1つの撮影画像から、図14(A)、図15(A)、図16(A)、および図17(A)の位置関係にあるマーカー画像「1」〜「4」のうちのマーカー画像「2」〜「4」のみが認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。すなわち、図19(A)に示されたようにマーカー画像「2」〜「4」のみが認識された場合、端末装置100は、このうちのいずれか一つを仮想オブジェクトを表示するために選択し、図19(B)に示されたように、表示情報で規定された位置に仮想オブジェクト「1」を表示する。
図20は、1つの撮影画像から、図14(A)、図15(A)、図16(A)、および図17(A)の位置関係にあるマーカー画像「1」〜「4」のうちのマーカー画像「3」〜「4」のみが認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。すなわち、図20(A)に示されたようにマーカー画像「3」「4」のみが認識された場合、端末装置100は、このうちの一方を仮想オブジェクトを表示するために選択し、図20(B)に示されたように、表示情報で規定された位置に仮想オブジェクト「1」を表示する。
図21は、1つの撮影画像から、図14(A)、図15(A)、図16(A)、および図17(A)の位置関係にあるマーカー画像「1」〜「4」のうちのマーカー画像「2」〜「4」のみが認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。すなわち、図21(A)に示されたようにマーカー画像「2」「4」のみが認識された場合、端末装置100は、このうちの一方を仮想オブジェクトを表示するために選択し、図21(B)に示されたように、表示情報で規定された位置に仮想オブジェクト「1」を表示する。
端末装置100は、上記の第2の動作を行なうことで、図14(A)、図15(A)、図16(A)、および図17(A)の位置関係で撮影範囲に置かれたマーカー画像「1」〜「4」のうち、撮影画像から少なくとも1つでも認識が成功すると仮想オブジェクト「1」を表示する。
ユーザーは、予め、各マーカー画像に対応付けられた仮想オブジェクトの表示位置を把握した上で、撮影範囲にマーカー画像を置く。すなわち、図13の表示情報の場合、ユーザーは、仮想オブジェクト「1」を撮影画像内の意図した位置に表示させるため、撮影範囲の、仮想オブジェクト「1」を表示させることを意図した位置からx軸方向に+0.5a、y軸方向に−0.5bの位置にマーカー画像「1」を、仮想オブジェクト「1」を表示させることを意図した位置からx軸方向に−0.5a、y軸方向に−0.5bの位置にマーカー画像「2」を、仮想オブジェクト「1」を表示させることを意図した位置からx軸方向に−1.5a、y軸方向に+0.5bの位置にマーカー画像「3」を、および仮想オブジェクト「1」を表示させることを意図した位置からx軸方向に+0.5a、y軸方向に+0.5bの位置にマーカー画像「4」を置く。このようにすることで、撮影画像からたとえすべてのマーカー画像が認識されなかったとしても、1つでも認識されると、図18(B)、図19(B)、図20(B)、および図21(B)に表わされたように、意図した位置に仮想オブジェクト「1」を表示させることができる。
(第3の動作)
第3の動作例でもまた、表示情報において、仮想オブジェクトの表示位置は必ずしも撮影画像上のマーカー画像の位置に対して相対的に規定されていなくてもよい。第3の動作例では、表示情報において、同一の仮想オブジェクトに関連付けられたマーカー画像について表示優先度が規定されている。図22は、第3の動作例での表示情報の具体例を示した図である。図22に表わされた以下の例でも、一例として、第1の動作例と同様に仮想オブジェクトの表示位置が表示情報において撮影画像上のマーカー画像の位置に対して相対的に規定されているものとしているに過ぎない。すなわち、図22を参照して、第3の動作例では、表示情報が、一例として、マーカー画像「1」「2」それぞれに対して、その中心位置からの相対的な差分を有する位置を表示位置とした、仮想オブジェクト「1」が規定されていると共に、表示優先度が規定されている。
図23および図24は、図22に規定されるマーカー画像「1」「2」それぞれについての、関連付けられた仮想オブジェクト「1」の表示位置を説明するための図である。図23(A)および図24(A)は、マーカー画像「1」「2」それぞれの撮影画像上の位置を表わしている。図23(B)および図24(B)は、図23(A)および図24(A)の位置にマーカー画像「1」「2」それぞれが認識された場合の、仮想オブジェクト「1」の表示位置を表わしている。なお、図23(B)および図24(B)中の実線円は仮想オブジェクトの中心位置を示している。
詳しくは、図22の表示情報は、マーカー画像「1」に仮想オブジェクト「1」を関連付け、仮想オブジェクト「1」の位置を、撮影画像上のマーカー画像「1」の位置から鉛直方向に+a、水平方向に0の位置と規定している。従って、図23(A)および図23(B)を参照して、マーカー画像「1」に関連付けられた仮想オブジェクト「1」は、撮影画像上のマーカー画像「1」の位置から鉛直方向に+aの位置に表示される。
また、図13の表示情報は、マーカー画像「2」に仮想オブジェクト「1」を関連付け、仮想オブジェクト「1」の位置を、撮影画像上のマーカー画像「2」の位置から周直方向に0、水平方向に+bの位置と規定している。従って、図24(A)および図24(B)を参照して、マーカー画像「2」に関連付けられた仮想オブジェクト「1」は、撮影画像上のマーカー画像「1」の位置から水平方向に+bの位置に表示される。
端末装置100は、1つの撮影画像から、同じ仮想オブジェクト「1」に関連付けられている複数のマーカー画像「1」「2」が認識された場合、第3の動作を実行する。すなわち、第3の動作は、これら複数のマーカー画像それぞれに設定された表示優先度に基づいて1つのマーカー画像を選択する動作である。端末装置100は、認識された複数のマーカー画像「1」「2」のうち、最も表示優先度の高いマーカー画像を選択する。
図25は、1つの撮影画像から、図24(A)および図25(A)の位置関係にあるマーカー画像「1」「2」すべてが認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。すなわち、図25(A)に示されたようにマーカー画像「1」「2」すべてが認識された場合、端末装置100は、このうちの表示優先度の高い方のマーカー画像「1」を仮想オブジェクトを表示するために選択し、図25(B)に示されたように、表示情報で規定された位置に仮想オブジェクト「1」を表示する。
図26は、1つの撮影画像から、図24(A)および図25(A)の位置関係にあるマーカー画像「1」「2」のうちのマーカー画像「2」のみが認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。すなわち、図26(A)に示されたようにマーカー画像「1」の認識が不成功でマーカー画像「2」のみが認識された場合、端末装置100は、マーカー画像「2」の表示情報に基づいて、図26(B)に示されたように、表示情報で規定された位置に仮想オブジェクト「1」を表示する。
図27は、1つの撮影画像から、図24(A)および図25(A)の位置関係にあるマーカー画像「1」「2」のうちのマーカー画像「1」のみが認識された場合の仮想オブジェクト「1」の表示方法を表わした図である。すなわち、図27(A)に示されたようにマーカー画像「2」の認識が不成功でマーカー画像「1」のみが認識された場合、端末装置100は、マーカー画像「1」の表示情報に基づいて、図27(B)に示されたように、表示情報で規定された位置に仮想オブジェクト「1」を表示する。
端末装置100は、上記の第3の動作を行なうことで、図24(A)および図25(A)の位置関係で撮影範囲に置かれたマーカー画像「1」「2」のうち、撮影画像から少なくとも1つでも認識が成功すると仮想オブジェクト「1」を表示する。
ユーザーは、予め、各マーカー画像に対応付けられた仮想オブジェクトの表示位置を把握した上で、撮影範囲にマーカー画像を置く。すなわち、図22の表示情報の場合、ユーザーは、仮想オブジェクト「1」を撮影画像内の意図した位置に表示させるため、撮影範囲の、仮想オブジェクト「1」を表示させることを意図した位置から鉛直方向に−aの位置にマーカー画像「1」を、仮想オブジェクト「1」を表示させることを意図した位置から水平方向に−bの位置にマーカー画像「2」を置く。このようにすることで、撮影画像からたとえすべてのマーカー画像が認識されなかったとしても、1つでも認識されると、図25(B)、図26(B)、および図27(B)に表わされたように、意図した位置に仮想オブジェクト「1」を表示させることができる。
<機能構成>
図28は、上記動作を行なうための端末装置100の機能構成の具体例を示すブロック図である。図28の各機能は、端末装置100のCPU10が、ROM11に記憶されているプログラムを読み出して実行することで、主にCPU10によって実現される。しかしながら、少なくとも一部が、図2に図示されたハードウェア構成、または図2には示されていない電気回路などハードウェア構成によって実現されてもよい。
図28を参照して、ROM11などのメモリには、図8、図13、および図22のような表示情報を記憶するための記憶領域である表示情報記憶部111が設けられる。さらに図28を参照して、CPU10は、カメラ13からの撮影画像の入力を受け付けるための撮影画像入力部101と、撮影画像からマーカー画像を認識するための認識部102と、認識されたマーカー画像についての表示情報をメモリから読み出すための読出部104と、読み出された表示情報を参照して、認識されたマーカー画像に関連付けられた仮想オブジェクトとその表示位置とを特定するための特定部103と、認識されたマーカー画像に関連付けられた仮想オブジェクトを、撮影画像の、表示情報で規定された表示位置に表示するための表示部105とを含む。表示部105は、さらに、同一の仮想オブジェクトに関連付けられた複数のマーカー画像が撮影画像から認識された場合に、その複数のマーカー画像のうちの1つのマーカー画像を選択するための選択部106を含む。この場合、表示部105は、複数のマーカー画像のうちの選択部106によって選択された1つのマーカー画像の表示情報に基づいて、その1つのマーカー画像に関連付けられた仮想オブジェクトをその1つのマーカー画像に関連付けられた表示位置に表示する。
<動作フロー>
図29〜図31は、端末装置100での動作の流れの具体例を表わしたフローチャートであって、それぞれ、上記の第1の動作例、第2の動作例、および第3の動作例での動作の流れの具体例を表わしている。これらフローチャートに表わされた動作は、端末装置100のCPU10がROM11に記憶されているプログラムを読み出して実行し、図28の各機能を発揮することによって実現される。
すなわち、第1の動作例の場合、図29を参照して、以降の動作を継続する場合(ステップS101でYES)、CPU10は、撮影画像からマーカー画像を認識する処理を実行する。CPU10によるここでの処理は特定の処理に限定されない。CPU10は、たとえばテンプレートマッチングなど、通常の手法を採用することができる。以降のフローチャートでも同様である。
撮影画像中にマーカー画像を認識した場合(ステップS103でYES)、CPU10は、認識したマーカー画像についての表示情報を参照して、関連付けられている仮想オブジェクトとその表示位置とを特定する(ステップS105)。
同一の仮想オブジェクトに関連付けられた複数のマーカー画像を同一の撮影画像から認識していない場合、つまり、同一の仮想オブジェクトについては単一のマーカー画像のみ認識した場合には(ステップS107でNO)、CPU10は、そのマーカー画像を、仮想オブジェクトの表示に用いるマーカー画像として選択する(ステップS109)。一方、同一の仮想オブジェクトに関連付けられた複数のマーカー画像を同一の撮影画像から認識した場合(ステップS107でYES)、CPU10は、各マーカー画像の表示情報を参照して、各マーカー画像の撮影画像における位置から仮想オブジェクトの表示位置までの距離(差の絶対値)が最も小さいマーカー画像を選択する(ステップS111)。そして、CPU10は、ステップS109またはステップS111で選択したマーカー画像の表示情報に基づき、表示情報に規定される表示位置にそのマーカー画像に関連付けられた仮想オブジェクトを表示する(ステップS113)。
CPU10は、以上の処理を、撮影画像からマーカー画像が認識されなくなるまで継続し、すべてのマーカー画像についての処理が終わると(ステップS101でNO)、一連の処理を終了する。
第2の動作例の場合、図30を参照して、以降の動作を継続する場合(ステップS201でYES)、CPU10は、撮影画像からマーカー画像を認識する処理を実行する。撮影画像中にマーカー画像を認識した場合(ステップS203でYES)、CPU10は、認識したマーカー画像についての表示情報を参照して、関連付けられている仮想オブジェクトとその表示位置とを特定する(ステップS205)。
同一の仮想オブジェクトに関連付けられた複数のマーカー画像を同一の撮影画像から認識していない場合、つまり、同一の仮想オブジェクトについては単一のマーカー画像のみ認識した場合には(ステップS207でNO)、CPU10は、そのマーカー画像を、仮想オブジェクトの表示に用いるマーカー画像として選択する(ステップS209)。一方、同一の仮想オブジェクトに関連付けられた複数のマーカー画像を同一の撮影画像から認識した場合(ステップS207でYES)、CPU10は、認識された複数のマーカー画像から無作為に1つのマーカー画像を選択する(ステップS211)。ここでの選択方法は特定の方法に限定されない。一例として乱数表を用いたり、乱数発生用のプログラムを用いたりする方法が挙げられる。そして、CPU10は、ステップS209またはステップS211で選択したマーカー画像の表示情報に基づき、表示情報に規定される表示位置にそのマーカー画像に関連付けられた仮想オブジェクトを表示する(ステップS213)。
CPU10は、以上の処理を、撮影画像からマーカー画像が認識されなくなるまで継続し、すべてのマーカー画像についての処理が終わると(ステップS201でNO)、一連の処理を終了する。
第3の動作例の場合、図31を参照して、以降の動作を継続する場合(ステップS301でYES)、CPU10は、撮影画像からマーカー画像を認識する処理を実行する。撮影画像中にマーカー画像を認識した場合(ステップS303でYES)、CPU10は、認識したマーカー画像についての表示情報を参照して、関連付けられている仮想オブジェクトとその表示位置とを特定する(ステップS305)。
同一の仮想オブジェクトに関連付けられた複数のマーカー画像を同一の撮影画像から認識していない場合、つまり、同一の仮想オブジェクトについては単一のマーカー画像のみ認識した場合には(ステップS307でNO)、CPU10は、そのマーカー画像を、仮想オブジェクトの表示に用いるマーカー画像として選択する(ステップS309)。一方、同一の仮想オブジェクトに関連付けられた複数のマーカー画像を同一の撮影画像から認識した場合(ステップS307でYES)、CPU10は、各マーカー画像の表示情報を参照して、各マーカー画像に規定されている表示優先度のうち、最も表示優先度の高いマーカー画像を選択する(ステップS311)。そして、CPU10は、ステップS309またはステップS311で選択したマーカー画像の表示情報に基づき、表示情報に規定される表示位置にそのマーカー画像に関連付けられた仮想オブジェクトを表示する(ステップS313)。
CPU10は、以上の処理を、撮影画像からマーカー画像が認識されなくなるまで継続し、すべてのマーカー画像についての処理が終わると(ステップS301でNO)、一連の処理を終了する。
<変形例1>
なお、以上の説明では、第1の動作〜第3の動作が独立した動作として示されている。端末装置100がこれら動作のうちのいずれの動作を行なって仮想オブジェクトを表示するかは、予め規定されていてもよいし、動作の都度、ユーザーが設定するものであってもよい。または、CPU10が、同一の仮想オブジェクトに関連付けられた複数のマーカー画像を同一の撮影画像から認識したときに、それら複数のマーカー画像の表示情報に基づいて第1の動作〜第3の動作のうちの行なう動作を一つ選択するようにしてもよい。一例として、CPU10は、認識された複数のマーカー画像についての表示情報を分析し、それら表示情報のいずれにも表示優先度が設定されているときには表示優先度に従って1つのマーカー画像を選択し、表示優先度が規定されておらず、かつ、仮想オブジェクトの表示位置がマーカー画像の位置からの相対的な位置として規定されている場合には、その間の距離に基づいて1つのマーカー画像を選択し、いずれでもない場合には無作為に選択する、という方法が挙げられる。
または、第1の動作〜第3の動作が組み合わされてもよい。たとえば、表示情報において同じ表示優先度が規定されたマーカー画像が複数認識された場合、端末装置100は、それら複数のマーカー画像のうち、仮想オブジェクトの表示位置までの距離が最も小さいマーカー画像を選択する、または、その中から無作為に選択する、という方法が挙げられる。
<変形例2>
以上の説明では、端末装置100単体ですべての動作を行なうものとしているが、たとえば図3(A)に挙げられたように、他の装置と連携して行なってもよい。すなわち、サーバー200が上記の認識部102や特定部103や読出部104や表示部105を含んで上記の動作を行なってもよい。この場合、端末装置100はサーバー200に対して撮影画像を送信し、サーバー200からの表示の指示に基づいて仮想オブジェクトを表示することになる。また、端末装置100は必ずしもカメラ13を含んでいなくてもよく、他の装置から撮影画像を受信したり、記録媒体から撮影画像を読み出したりして取得するようにしてもよい。
<実施の形態の効果>
現実映像である入力された撮影画像に、仮想情報である仮想オブジェクトを重ねて表示することで、AR(拡張現実)、特にMR表示を行なう表示装置において、適切な位置に仮想情報である仮想オブジェクトを表示させることができる。すなわち、撮影画像中に、ユーザーによって同一の表示位置に表示することを意図して配置された、同一の仮想オブジェクトに関連付けられている複数のマーカー画像が配置されている場合、本実施の形態にかかる端末装置100では、たとえいずれかのマーカー画像が障害物等によって認識されなくても、そのうちの少なくも1つでも認識することで、仮想オブジェクトを、上記のユーザーの意図した表示位置に表示することができる。
一方で、そのようにすると同一の仮想オブジェクトに関連付けられている複数のマーカー画像が1つの撮影画像から認識されてしまい、同一の仮想オブジェクトが重複して表示され、視認性が損なわれる可能性もある。しかしながら、本実施の形態にかかる端末装置100では、1つの撮影画像から同一の仮想オブジェクトに関連付けられている複数のマーカー画像が認識された場合にはそのうちの1つのマーカー画像を選択して、そのマーカー画像を用いて仮想オブジェクトを表示する。そのため、仮想オブジェクトの視認性を損なうことがない。
さらに、上述の表示の処理を端末装置100のCPU10に実行させるためのプログラムを提供することもできる。このようなプログラムは、コンピューターに付属するフレキシブルディスク、CD−ROM(Compact Disk-Read Only Memory)、ROM、RAMおよびメモリカードなどのコンピューター読取り可能な記録媒体にて記録させて、プログラム製品として提供することもできる。あるいは、コンピューターに内蔵するハードディスクなどの記録媒体にて記録させて、プログラムを提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
なお、本発明にかかるプログラムは、コンピューターのオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明にかかるプログラムに含まれ得る。
また、本発明にかかるプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明にかかるプログラムに含まれ得る。
提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記録された記録媒体とを含む。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
10 CPU、11 ROM、12 RAM、13 カメラ、14 タッチパネル、15 スイッチ、18 通信コントローラー、100 端末装置、100’ PC、101 撮影画像入力部、102 認識部、103 特定部、104 読出部、105 表示部、106 選択部、111 表示情報記憶部、200 サーバー。

Claims (6)

  1. 映像画像に仮想オブジェクトを重ねて表示することで拡張現実を表示可能な表示装置であって、
    撮影画像からマーカー画像を認識するための認識手段と、
    マーカー画像ごとに規定された仮想オブジェクトを表示するための表示情報を参照して、前記撮影画像から認識された前記マーカー画像に関連付けられた仮想オブジェクトと、前記仮想オブジェクトの表示位置とを特定するための特定手段と、
    前記マーカー画像に関連付けられた前記仮想オブジェクトを、前記撮影画像の、前記表示情報で規定された前記表示位置に表示するための表示手段とを備え、
    前記表示情報に規定される前記仮想オブジェクトの表示位置は、前記マーカー画像の位置に対して相対的に規定されており、
    前記表示手段は、同一の仮想オブジェクトに関連付けられた複数のマーカー画像が前記撮影画像から認識された場合に、前記複数のマーカー画像のうち、マーカー画像の位置から関連付けられた仮想オブジェクトの表示位置までの距離が最小である1つのマーカー画像を選択するための選択手段を含み、
    前記表示手段は、前記複数のマーカー画像のうちの前記選択手段によって選択された前記1つのマーカー画像の表示情報に基づいて、前記1つのマーカー画像に関連付けられた仮想オブジェクトを前記1つのマーカー画像に関連付けられた表示位置に表示する、表示装置。
  2. 前記表示情報は、前記複数のマーカー画像の表示優先度を含み、
    前記複数のマーカー画像の中に表示優先度が同一である2以上のマーカー画像が認識された場合、前記選択手段は、前記2以上のマーカー画像のうち、前記距離が最小である1つのマーカー画像を選択する、請求項1に記載の表示装置。
  3. 撮影画像に仮想オブジェクトを重ねて表示することで拡張現実を表示する方法であって、
    撮影画像からマーカー画像を認識するステップと、
    認識された前記マーカー画像について、マーカー画像ごとに規定された仮想オブジェクトを表示するための表示情報を参照して、関連付けられた仮想オブジェクトとその表示位置とを特定するステップと、
    前記マーカー画像に関連付けられた前記仮想オブジェクトを、前記撮影画像の、前記表示情報で規定された前記表示位置に表示するステップとを備え、
    前記表示情報に規定される前記仮想オブジェクトの表示位置は、前記マーカー画像の位置に対して相対的に規定されており、
    前記表示するステップは、前記認識するステップにおいて同一の仮想オブジェクトに関連付けられた複数のマーカー画像が前記撮影画像から認識された場合に、前記複数のマーカー画像のうち、マーカー画像の位置から関連付けられた仮想オブジェクトの表示位置までの距離が最小である1つのマーカー画像を選択して、前記1つのマーカー画像の表示情報に基づいて、前記1つのマーカー画像に関連付けられた仮想オブジェクトを前記1つのマーカー画像に関連付けられた表示位置に表示することを含む、表示方法。
  4. 前記表示情報は、前記複数のマーカー画像の表示優先度を含み、
    前記複数のマーカー画像の中に表示優先度が同一である2以上のマーカー画像が認識された場合、前記表示するステップは、前記2以上のマーカー画像のうち、前記距離が最小である1つのマーカー画像を選択することを含む、請求項3に記載の表示方法。
  5. コンピューターに、撮影画像に仮想オブジェクトを重ねて表示することで拡張現実を表示する処理を実行させるためのプログラムであって、
    撮影画像からマーカー画像を認識するステップと、
    認識された前記マーカー画像について、マーカー画像ごとに規定された仮想オブジェクトを表示するための表示情報を参照して、関連付けられた仮想オブジェクトとその表示位置とを特定するステップと、
    前記マーカー画像に関連付けられた前記仮想オブジェクトを、前記撮影画像の、前記表示情報で規定された前記表示位置に表示するステップとを、前記コンピューターに実行させ、
    前記表示情報に規定される前記仮想オブジェクトの表示位置は、前記マーカー画像の位置に対して相対的に規定されており、
    前記表示するステップは、前記認識するステップにおいて同一の仮想オブジェクトに関連付けられた複数のマーカー画像が前記撮影画像から認識された場合に、前記複数のマーカー画像のうち、マーカー画像の位置から関連付けられた仮想オブジェクトの表示位置までの距離が最小である1つのマーカー画像を選択して、前記1つのマーカー画像の表示情報に基づいて、前記1つのマーカー画像に関連付けられた仮想オブジェクトを前記1つのマーカー画像に関連付けられた表示位置に表示することを含む、表示プログラム。
  6. 前記表示情報は、前記複数のマーカー画像の表示優先度を含み、
    前記複数のマーカー画像の中に表示優先度が同一である2以上のマーカー画像が認識された場合、前記表示するステップは、前記2以上のマーカー画像のうち、前記距離が最小である1つのマーカー画像を選択することを含む、請求項5に記載の表示プログラム。
JP2013081202A 2013-04-09 2013-04-09 表示装置、表示方法、および表示プログラム Active JP6102445B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013081202A JP6102445B2 (ja) 2013-04-09 2013-04-09 表示装置、表示方法、および表示プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013081202A JP6102445B2 (ja) 2013-04-09 2013-04-09 表示装置、表示方法、および表示プログラム

Publications (2)

Publication Number Publication Date
JP2014203382A JP2014203382A (ja) 2014-10-27
JP6102445B2 true JP6102445B2 (ja) 2017-03-29

Family

ID=52353740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013081202A Active JP6102445B2 (ja) 2013-04-09 2013-04-09 表示装置、表示方法、および表示プログラム

Country Status (1)

Country Link
JP (1) JP6102445B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101745636B1 (ko) * 2016-05-04 2017-06-20 주식회사 엠코코아 대표 마커를 이용하는 증강현실 시스템 및 방법
JP7360243B2 (ja) 2019-02-15 2023-10-12 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
CN112146649B (zh) * 2020-09-23 2023-04-07 北京市商汤科技开发有限公司 Ar场景下的导航方法、装置、计算机设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4972576B2 (ja) * 2008-02-13 2012-07-11 日本電信電話株式会社 画像表示方法、画像表示装置および処理システム

Also Published As

Publication number Publication date
JP2014203382A (ja) 2014-10-27

Similar Documents

Publication Publication Date Title
US10438409B2 (en) Augmented reality asset locator
US9792730B2 (en) Display control method, system and medium
US20170153698A1 (en) Method and apparatus for providing a view window within a virtual reality scene
JP6323202B2 (ja) 映像を取得するシステム、方法及びプログラム
JP6102445B2 (ja) 表示装置、表示方法、および表示プログラム
CN109791703B (zh) 基于二维媒体内容生成三维用户体验
US10962738B2 (en) Information processing apparatus and information processing method to calibrate line-of-sight of a user
WO2016152891A1 (ja) 画像処理装置、画像処理方法、及び、プログラム
JP6952868B2 (ja) 情報処理装置、情報処理システム、および情報処理プログラム
WO2015136952A1 (ja) ジェスチャー認識装置、ヘッドマウントディスプレイ、および携帯端末
EP4184931A1 (en) Image capturing apparatus capable of suppressing detection of subject not intended by user, control method for image capturing apparatus, and storage medium
JP2014071818A (ja) 二次元コード読取装置および二次元コード読取方法
JP2016218766A (ja) 情報処理装置及び情報処理プログラム
JP6155893B2 (ja) 画像処理装置、及びプログラム
KR102570009B1 (ko) Ar 객체 생성 방법 및 전자 장치
JP2021140459A (ja) 画像処理システム
JP2021028760A (ja) 電子機器およびその制御方法
EP3355266A1 (en) Systems and methods for contextualizing data obtained from barcode images
KR102614026B1 (ko) 복수의 렌즈를 구비하는 전자 장치 및 그 제어 방법
JP6797589B2 (ja) 撮像装置および撮像装置の制御方法
KR102164879B1 (ko) 사용자 초점 일치형 증강 현실 제공 방법 및 장치
JP6369604B2 (ja) 画像処理装置、画像処理方法、及びプログラム
CN108496363A (zh) 用于跟踪拍摄的方法和设备
JP2012104986A (ja) 複数帳票スキャン方法および複数帳票スキャンプログラム
JP2016194835A (ja) 情報抽出方法、情報抽出プログラム及び情報抽出装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161019

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161025

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161216

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170213

R150 Certificate of patent or registration of utility model

Ref document number: 6102445

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150