【文献】
粟飯原萌, 外3名,”子供向け電子絵本における集中力持続のためのインタフェースの開発と初期評価”,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2012年 5月19日,第112巻, 第66号,p.35-38
(58)【調査した分野】(Int.Cl.,DB名)
前記ターゲット識別子と前記ARクライアントからのテキストに基づいてARコンテンツを取得するステップは、前記ARクライアントからのテキストに少なくとも部分的に基づいて前記ARコンテンツを動的に生成するステップを有する、請求項1に記載の方法。
前記ターゲット識別子と前記ARクライアントからのテキストに基づいてARコンテンツを取得するステップは、リモート処理システムから前記ARコンテンツを自動的に読み出すステップを有する、請求項1に記載の方法。
前記ARターゲットに関連するOCRゾーン記述を自動的に読み出すステップは、前記ARターゲットのターゲット識別子を用いてローカル記憶媒体から前記OCRゾーン記述を読み出すステップを有する、請求項5に記載の方法。
選択された前記ARターゲットのOCRゾーンを指定するステップは、前記ARターゲットの少なくとも一フィーチャに対して前記OCRゾーンの少なくとも一フィーチャを指定するステップを有する、請求項12に記載の方法。
【発明を実施するための形態】
【0009】
上記の通り、ARシステムは、対応するARオブジェクトがビデオシーンを追加すべきであると判断するため、ARターゲットを用いる。ARシステムは、異なる多くのARターゲットを認識するようにできれば、異なる多くのARオブジェクトを提供するようにできる。しかし、上記のように、開発者が適当なARターゲットを生成することは容易ではない。また、従来のAR技術を用いると、十分に有用なAR体験を提供するには、異なるユニークな多くのターゲットを生成する必要があるだろう。
【0010】
異なる多くのARターゲットを生成するのに関連する問題の幾つかは、ARを用いて公共バスシステムを用いる人に情報を提供する、仮説に基づいたアプリケーションのコンテキストで例示される。バスシステムのオペレータは、数百のバス停留所のサインにユニークなARターゲットを配置することを欲し、そのバス停留所に次のバスがいつ到着するか各バス停留所の利用者に通知するためARを用いることを欲する。また、オペレータは、ARターゲットが、多かれ少なかれトレードマークのように、利用者に対する認識可能マークとして機能することを欲している。言い換えると、オペレータは、すべてのARターゲットに共通な認識可能な外観(look)を有し、一方、見る人により、他の組織(entities)により使用されているマーク、ロゴ、デザインなどから容易に区別できることを欲する。
【0011】
本開示によれば、各ARオブジェクトについて異なるARターゲットを要求する替わりに、ARシステムは、ARターゲットに光学式文字認識(OCR)ゾーンを関連付け、OCRゾーンからテキストを取るのにOCRを用いる。一実施形態では、このシステムは、ARターゲットとOCRの結果を用いて、ARオブジェクトをビデオに付加するか判断する。OCRに関してより詳細には、Quest Visual, Inc.のウェブサイト(questvisual.com/us/)にWord Lensとして知られたアプリケーションに関して記載されている。ARに関してさらに詳細は、ARToolKitソフトウェアライブラリのウェブサイト(www.hitl.washington.edu/artoolkit/documentation)に記載されている。
【0012】
図1は、光学式文字認識を用いて拡張現実(AR)を提供するデータ処理システムの一例を示すブロック図である。
図1の実施形態では、データ処理システム10は、ユーザにAR体験を提供するように協働する複数の処理デバイスを含む。それらの処理デバイスは、ユーザ又はコンシューマにより操作されるローカル処理デバイス21と、ARブローカにより操作されるリモート処理デバイス12、ARマーククリエータにより操作される他のリモート処理デバイス16と、ARコンテンツプロバイダにより操作される他のリモート処理デバイス18とを含む。
図1の実施形態では、ローカル処理デバイス21はモバイル処理デバイス(例えば、スマートフォン、タブレットなど)であり、リモート処理デバイス12、16及び18はラップトップ、デスクトップ、又はサーバシステムである。しかし、他の実施形態では、好適なタイプのいかなる処理デバイスを、上記の処理デバイスの各々に用いてもよい。
【0013】
ここで、「処理システム」及び「データ処理システム」との用語は、広く、単一のマシン、又は通信可能に結合された協働する複数のマシン又はデバイスよりなるシステムを含むものとする。例えば、二以上のマシンはピアツーピアモデル、クライアント/サーバモデル、又はクラウドコンピューティングモデルのうちの一以上のバリエーションを用いて協働し、ここに説明する機能の一部または全部を提供する。
図1の実施形態では、処理システム10の処理デバイスは、一以上のネットワーク14を介して、互いに、接続又は通信する。ネットワークは、ローカルエリアネットワーク(LAN)及び/又はワイドエリアネットワーク(WAN)(例えば、インターネット)を含む。
【0014】
参照を容易にするため、ローカル処理デバイス21は「モバイルデバイス」、「パーソナルデバイス」、「ARクライアント」または単に「コンシューマ」と呼ぶことがある。同様に、リモート処理デバイス12は「ARブローカ」と呼び、リモート処理デバイス16は「ARターゲットクリエータ」と呼び、リモート処理デバイス18は「ARコンテンツプロバイダ」と呼ぶことがある。後でより詳しく説明するように、ARブローカはARターゲットクリエータ、ARコンテンツプロバイダ、及びARブラウザが協働する支援をする。ARブラウザ、ARブローカ、ARコンテンツプロバイダ、及びARターゲットクリエータは、集合的に、ARシステムと呼ぶこともある。一以上のARシステムのARブローカ、ARブラウザ及びその他のコンポーネントに関するさらに詳細は、Layarカンパニーのウェブサイト(www.layar.com)及び/又はmetaio GmbH/metaio Inc.(「metaioカンパニー」)のウェブサイト(www.metaio.com)に記載されている。
【0015】
図1の実施形態では、モバイルデバイス21は、少なくとも1つの中央処理ユニット(CPU)又はプロセッサ22を、そのプロセッサに応答する又は結合したランダムアクセスメモリ(RAM)24、リードオンリメモリ(ROM)26、ハードディスクドライブその他の不揮発性データストレージ28、ネットワークポート32、カメラ34、及びディスプレイパネル23とともに備える。追加的入出力(I/O)コンポーネント(例えば、キーボード)がプロセッサに応答し又は結合されていてもよい。一実施形態では、カメラ(又はモバイルデバイス中の他のI.Oコンポーネント)は、肉眼で検出できる電磁波を超える赤外線などの電磁波を処理できる。モバイルデバイスはそれらの波長を含むビデオを用いてARターゲットを検出する。
【0016】
データストレージはオペレーティングシステム(OS)40とARブラウザ42を含む。ARブラウザはモバイルデバイスがユーザにAR体験を提供できるようにするアプリケーションである。ARブラウザは、単一のARコンテンツプロバイダのみにARサービスを提供するように設計されたアプリケーションとして実装でき、又は複数のARコンテンツプロバイダに対してARサービスを提供することもできる。モバイルデバイスは、ARブラウザを用いてARを提供する時、OSの一部又は全部とARブラウザの一部又は全部とを実行のためRAMにコピーする。また、データストレージはARデータベース44を含み、その一部又は全部はARブラウザの動作を容易にするためRAMにコピーされる。ARブラウザは、ディスプレイパネルを用いて、ビデオ画像25及び/又はその他の出力を表示する。ディスプレイパネルはタッチ検知式でもよく、その場合ディスプレイパネルは入力にも用いられる。
【0017】
ARブローカ、ARマーククリエータ及びARコンテンツプロバイダの処理デバイスは、上記の、モバイルデバイスに関するものと同様のフィーチャを含み得る。また、後で詳細に説明するが、ARブローカはARブローカアプリケーション50とブローカデータベース51を含み、ARターゲットクリエータ(TC)はTCアプリケーション52とTCデータベース53を含み、ARコンテンツプロバイダ(CP)はCPアプリケーション54とCPデータベース55を含む。モバイルコンピュータ中のARデータベース44はクライアントデータベース44とも呼ぶ。
【0018】
後で詳細に説明するように、ARターゲットを生成するのに加えて、ARターゲットクリエータは、ARターゲットに対して、一以上のOCRゾーンと一以上のARコンテンツゾーンを確定できる。この開示を目的として、OCRゾーンはビデオシーン内のエリア又はスペースであり、ARコンテンツゾーンはARコンテンツが提示されるビデオシーン内のエリア又はスペースである。ARコンテンツゾーンは単にARゾーンとも呼ぶ。一実施形態では、ARターゲットクリエータがARゾーンを確定する。他の一実施形態では、ARコンテンツプロバイダがARゾーンを確定する。後でより詳しく説明するように、座標系を用いてARターゲットに対してARゾーンを確定することも可能である。
【0019】
図2Aは、ビデオ画像内のOCRゾーンの一例とARターゲットの一例を示す図である。具体的に、図示したビデオ画像25はターゲット82を含み、例示を目的としてその境界を破線で示した。この画像はOCRゾーン84を含む。OCRゾーン84はターゲットの右側境界に隣接して配置され、ターゲットの幅とほぼ同じ長さだけ右に延在している。OCRゾーン84の境界も例示を目的として破線で示した。ビデオ25は、カメラがバス停留所標識90に向かっている間に撮られた、モバイルデバイスからの出力を示す。しかし、少なくとも一実施形態では、
図2Aに示された破線はディスプレイ上には実際には現れない。
【0020】
図2Bはビデオ画像又はシーン内のAR出力例を示す図である。具体的には、後でより詳しく説明するように、
図2BはARゾーン86内にARブラウザにより提示されるARコンテンツ(例えば、次のバスの期待到着時刻)を示す。このように、OCRゾーンから抽出されるテキストに対応するARコンテンツは、自動的に、そのシーンと共に(例えば、その内に)提示される。上記の通り、ARゾーンは座標系に対して確定できる。ARブラウザはその座標系を用いてARコンテンツを提示(present)する。例えば、座標系は、原点(例えば、ARターゲットの左上隅)と、一組の座標軸(例えば、ARターゲットの面における水平の動きを示すX軸、同じ面における垂直の動きを示すY軸、及びARターゲットの面に垂直な動きを示すZ軸)と、サイズ(例えば、「ARターゲット幅=0.22メートル」)とを含む。ARターゲットクリエータ又はARコンテンツプロバイダは、AR座標系の成分に対応する、又はよりなる、ARゾーンパラメータに対する所望の値を指定することによりARゾーンを確定し得る。したがって、ARブラウザはARゾーンにおける値を用いて、AR座標系に対してARコンテンツを提示できる。AR座標系は単にAR原点とも呼ぶ。一実施形態では、Z軸を有する座標系は3次元(3D)ARコンテンツに対して用いられ、Z軸を有しない座標系は2次元(2D)ARコンテンツに対して用いられる。
【0021】
図3は、AR体験(例えば、
図2Bに示した体験など)を作り出すために用い得る情報でARシステムを構成するプロセス例を示すフローチャートである。ブロック210に示したように、TCアプリケーションを用いてARターゲットを生成するステップで始まる。ARターゲットクリエータとARコンテンツプロバイダは同じ処理デバイス上で動作してもよいし、同じエンティティにより制御されてもよいし、ARターゲットクリエータがARコンテンツプロバイダのためにターゲットを生成してもよい。TCアプリケーションは好適な手法を用いてARターゲットを生成又は確定する。ARターゲット記述は、ARターゲットの属性を指定するさまざまな値、例えばARターゲットの現実世界の寸法を含み得る。ARターゲットが生成された後、ブロック250に示したように、TCアプリケーションはそのターゲットのコピーをARブローカに送信でき、ARブローカアプリケーションはターゲットのビジョンデータを計算する。ビジョンデータはターゲットの幾つかのフィーチャに関する情報を含む。具体的に、ビジョンデータは、モバイルデバイスにより撮られたビデオ内にターゲットが移っているか否かを判断するのにARブラウザが用いられるとの情報、及びAR座標系に対するカメラの姿勢(例えば、位置と方向)を計算する情報を含む。従って、ビジョンデータは、ARブラウザにより用いられるとき、所定のビジョンデータと呼ばれる。ビジョンデータは画像認識データとも呼ばれることがある。
図2に示したARターゲットに関して、ビジョンデータは、画像中に現れるコントラストが高いエッジやコーナー(鋭角)、互いに対するその位置などの特徴を示す。
【0022】
また、ブロック252に示したように、ARブローカアプリケーションは、ターゲットにラベルや識別子(ID)をアサインし、その後の参照を容易にする。ついで、ARブローカはビジョンデータとターゲットIDをARターゲットクリエータに返す。
【0023】
ブロック212に示したように、ARターゲットクリエータは、ARターゲットのAR座標系を確定し、その座標系を用いてARターゲットに対するOCRゾーンの範囲を指定する。換言すれば、ARターゲットクリエータはOCRを用いて認識できるテキストを含むと期待されるエリアの境界を画定し、OCRの結果はターゲットの異なるインスタンス(instances)を区別するために用い得る。一実施形態では、ARターゲットクリエータは、ARターゲットの正面ビュー(head−on view)をモデル化又はシミュレートするモデルビデオフレームに関するOCRゾーンを指定するOCRゾーンは、OCRを用いてテキストを抽出するビデオフレーム内のエリアよりなる。このように、ARターゲットは関連するARコンテンツを識別するためのハイレベル分類子として機能し、OCRゾーンから得られるテキストは関連するARコンテンツを識別するためのローレベル分類子として機能し得る。
図2Aの実施形態はバス停留所番号を含むようにデザインされたOCRゾーンを示す。
【0024】
ARターゲットクリエータは、ターゲットまたはその具体的フィーチャのロケーションに対するOCRゾーンの範囲を指定する。例えば、
図2Aに示したターゲットの場合、ARターゲットクリエータはOCRゾーンを次のように確定する:ターゲットと同じ面を共有し、(a)ターゲットの右側境界に隣接する左側境界と、(b)ターゲットの幅とほぼ等しい長さだけ右に延在する幅と、(c)ターゲットの右上隅に近い上側境界と、(d)ターゲットの高さの約15パーセント下に延在する高さ。あるいは、OCRゾーンは、AR座標系に対して、例えば、左上隅が座標{X=0.25m,Y=−0.10m,Z=0.0m}にあり、右下隅が座標{X=0.25m,Y=−0.30m,Z=0.0m}にある四角形を確定できる。あるいは、OCRゾーンは、中心がARターゲットの面の座標{X=0.30m,Y=−0.20m}にあり、半径が0.10mの円として確定できる。一般的に、OCRゾーンは、AR座標系に対する表面中の一組の閉じたエリアの形式的な記述により確定されてもよい。TCアプリケーションは、次いで、ブロック253に示したように、ターゲットIDとAR座標系(ARCS)の仕様とOCRゾーンとをARブローカに送る。
【0025】
次いで、ブロック254に示したように、ARブローカはターゲットIDとビジョンデータとOCRゾーン記述(OCR zone definition)とARCSとをCPアプリケーションに送る。
【0026】
ARコンテンツプロバイダは、次いで、ブロック214に示したように、CPアプリケーションを用いて、ARコンテンツが加えられるべきシーン内の一以上のゾーンを指定する。言い換えると、CPアプリケーションを用いて
図2BのARゾーン86のようなARゾーンを確定してもよい。OCRゾーンを確定するのに用いられる同種のアプローチを用いてARゾーンを確定してもよいし、その他の適当なアプローチを用いても良い。例えば、CPアプリケーションはAR座標系に対してARコンテンツを表示するロケーションを指定し、上記の通り、例えばAR座標系は原点がARターゲットの左上隅にあることを規定してもよい。ブロック214からブロック256までの矢印により示したように、CPアプリケーションは次いで、ARゾーン記述(AR zone definition)をターゲットIDとともにARブローカに送っても良い。
【0027】
ARブローカは、ブロック256に示したように、ブローカデータベースに、ターゲットID、ビジョンデータ、OCRゾーン記述(OCR zone definition)、ARゾーン記述(AR zone definition)及びARCSを保存する。ターゲットID、ゾーン記述(zone definition)、ビジョンデータ、ARCS、及びARターゲットのその他のデータは、そのターゲットのAR構成データとも呼ぶ。TCアプリケーションとCPアプリケーションは、それぞれTCデータベースとCPデータベース中に、AR構成データの一部又は全部を保存する。
【0028】
一実施形態では、ターゲットクリエータは、TCアプリケーションを用いて、カメラの姿勢が正面からターゲットに向いているかのように構成されたモデルビデオフレームのコンテキストでターゲット画像とOCRゾーンを生成する。同様に、CPアプリケーションは、カメラの姿勢が正面からターゲットに向いているかのように構成されたモデルビデオフレームのコンテキストで、ARゾーンを確定してもよい。ビジョンデータにより、ARブラウザは、ARブラウザにより受け取られたライブシーンが、カメラの姿勢が正面からターゲットに向かっていなくてもターゲットを検出できる。
【0029】
ブロック220に示したように、一以上のARターゲットが生成された後、人または「コンシューマ」が、次いでARブラウザを用いてARブローカからARサービスに加入する(subscribe)。これに応じて、ブロック260に示したように、ARブローカは、AR構成データをARブラウザに自動的におくる。ARブラウザは、次いで、ブロック222に示したように、その構成データをクライアントデータベースに保存する。コンシューマが単一のコンテンツプロバイダからのARにアクセスする登録するだけであるとき、ARブローカはそのコンテンツプロバイダの構成データのみを、ARブラウザアプリケーションに送っても良い。あるいは、登録は単一のコンテンツプロバイダに限定されなくてもよく、ARブローカは複数のコンテンツプロバイダのAR構成データをARブラウザに送って、クライアントデータベースに保存しても良い。
【0030】
また、ブロック230に示すように、コンテンツプロバイダはARコンテンツを生成してもよい。また、ブロック232に示したように、コンテンツプロバイダは、そのコンテンツを、ARターゲット及びそのターゲットに関連するテキストとリンクしてもよい。具体的に、テキストは、そのターゲットに関連するOCRゾーンに対してOCRを行った時に得られる結果に対応する。コンテンツプロバイダは、ターゲットID、テキスト、及び対応するARコンテンツをARブローカに送っても良い。ARブローカは、ブロック270に示したように、そのデータをブローカデータベースに保存する。追加的に又は代替的に、後でより詳細に説明するように、コンテンツプロバイダは、ARブラウザがターゲットを検出して、場合によってはARブローカを介してARコンテンツプロバイダにコンタクトした後、ARコンテンツを動的に提供してもよい。
【0031】
図4は、ARコンテンツを提供するプロセス例を示すフローチャートである。このプロセスは、ブロック310に示したように、モバイルデバイスがライブビデオを撮り、そのビデオをARブラウザに送るステップで始まる。ブロック312に示したように、ARブラウザはコンピュータビジョンとして知られる技術を用いて、そのビデオを処理する。コンピュータビジョンにより、ARブラウザは、標準又はモデル画像に対して、ライブビデオで自然に生じる相違を補償できる。例えば、コンピュータビジョンにより、ARブラウザは、ブロック314に示したように、例えば、カメラがターゲットに対してある角度をなす場合でも、ビデオ中のターゲットを、そのターゲットの所定のビジョンデータに基づいて認識できる。ブロック316に示したように、ARターゲットが検出されると、ARブラウザはカメラ姿勢を判断する(例えば、ARターゲットに関連するAR座標系に対するカメラの位置と方向)。カメラ姿勢を判断した後、ARブラウザは、ブロック318に示したように、OCRゾーンのライブビデオ内におけるロケーションを計算し、そのゾーンにOCRを適用する。(例えば、AR画像に対するカメラの位置と方向の計算のための)カメラ姿勢の計算の一以上のアプローチに関するさらに詳細は、文献「Tutorial 2: Camera and Marker Relationships」(www.hitl.washington.edu/artoolkit/documentation/tutorialcamera.htm)を参照されたい。例えば、変換行列を用いて、標識の現在のカメラビューを同じ標識の正面ビューに変換してもよい。次いで、変換行列を用いて、変換された画像のエリアを計算し、OCRゾーン記述(OCR zone definition)に基づいてOCRを実行する。この種の変換の実行に関しては、opencv.orgに更に詳細に記載されている。カメラ姿勢が決定されると、Tesseract OCRエンジン(code.google.com/p/tesseract−ocr参照)のウェブサイトに記載されたもののようなアプローチを用いて、変換された正面ビュー画像に対してOCRを実行する。
【0032】
ブロック320と350に示したように、ARブラウザは次いでターゲットIDとOCR結果とをARブローカに送る。例えば、
図2Aを再び参照して、ARブラウザは、バスオペレータにより使用されているターゲットのターゲットIDを、テキスト「9951」とともに、ARブローカに送る。
【0033】
ブロック352に示したように、ARブローカアプリケーションは、次いで、ターゲットIDとOCR結果とを用いて、対応するARコンテンツを読み出す。対応するARコンテンツがすでにコンテンツプロバイダによりARブローカに提供されている場合、ARブローカアプリケーションは、単にそのコンテンツをARブローカに送ってもよい。あるいは、ARブローカアプリケーションは、ARブラウザからターゲットIDとOCR結果を受け取ると、それに応じてコンテンツプロバイダからARコンテンツを動的に読み出しても良い。
【0034】
図2Bにはテキスト形式のARコンテンツを示したが、ARコンテンツは任意の媒体であってもよく、テキスト、画像、写真、ビデオ、3Dオブジェクト、3Dアニメーション、オーディオ、触覚的出力(例えば、振動や力のフィードバック)などを含み得るが、これらは限定ではない。オーディオや触覚的フィードバックなどの非視覚的ARコンテンツの場合、デバイスはそのARコンテンツを、ARコンテンツをビデオコンテンツとマージするのではなく、シーンに関する適当な媒体で提供できる。
【0035】
図5は、コンテンツプロバイダからARコンテンツを読み出すプロセス例を示すフローチャートである。具体的に、
図5は
図4のブロック352に示した動作をより詳細に説明するものである。
図5は、ブロック410と450に示したように、ARブローカアプリケーションがターゲットIDとOCR結果をコンテンツプロバイダに送るステップで始まる。ARブローカアプリケーションはターゲットIDに基づいてどのコンテンツプロバイダにコンタクトするか判断する。ブロック452に示したように、ターゲットIDとOCR結果とを受け取るのに応じて、CPアプリケーションはARコンテンツを生成する。例えば、ブロック454及び412に示したように、バス停留所番号9951を受け取るのに応じて、CPアプリケーションは、そのバス停留所における次のバスの期待到着時刻(ETA)を決定し、ARコンテンツとして用いるため、ARブローカにそのETAをレンダリング情報と共に返す。
【0036】
図4に戻って、ブロック354と322に示したように、ARブローカアプリケーションは、ARコンテンツを取得すると、そのコンテンツをARブラウザに返す。ARブラウザは、次いで、ブロック324に示したように、ARコンテンツをビデオとマージ(merge)する。例えば、レンダリング情報は、フォント、フォントカラー、フォントサイズ、テキストの最初の文字のベースラインの相対座標を記述し、ARブラウザが、現実世界の標識上のそのゾーン中に実際にある任意のコンテンツの上に、又はその替わりに、次のバスのETAをスーパーインポーズできるようにする。ARブラウザは、ブロック326と
図2Bに示したように、この拡張ビデオ(augmented video)をディスプレイデバイス上にしめされるようにする。このように、ARブラウザは計算されたARターゲットに対するカメラの姿勢と、ARコンテンツと、ライブビデオフレームとを用いて、ARコンテンツをビデオフレーム中に配置し、ディスプレイに送る。
【0037】
図2Bにおいて、ARコンテンツは2次元(2D)オブジェクトとして示されている。他の実施形態では、ARコンテンツは、AR座標系に対して3Dで配置された平面画像、同様に配置されたビデオ、及び3Dオブジェクト、並びにARターゲットが識別された時に再生される触覚的又はオーディオデータを含み得る。
【0038】
一実施形態の利点は、開示の技術によりコンテンツプロバイダが異なる状況において異なるARコンテンツを提供することが容易になることである。例えば、ARコンテンツプロバイダがバスシステムのオペレータである場合、コンテンツプロバイダは、各バス停留所に異なるARターゲットを用いなくても、異なる各バス停留所に異なるARコンテンツを提供できる。その替わり、コンテンツプロバイダは、単一のARターゲットを、そのターゲットに対して所定ゾーン内に配置されたテキスト(例えば、バス停留所番号)とともに用いることができる。その結果、ARターゲットはハイレベル分類子として機能し、テキストはローレベル分類子として機能し、両レベルの分類子を用いてどんな状況においても提供するARコンテンツを決定できる。例えば、ARターゲットは、ハイレベルカテゴリーとして、あるシーンの関連ARコンテンツがあるコンテンツプロバイダのコンテンツであることを示す。OCRゾーン中のテキストは、ローレベルカテゴリーとして、そのシーンのARコンテンツがあるロケーションに関するARコンテンツであることを示す。このように、ARターゲットは、ARコンテンツのハイレベルカテゴリーを特定し、OCRゾーンのテキストはARコンテンツのローレベルカテゴリーを特定する。コンテンツプロバイダが新しいローレベル分類子を生成して、新しい状況やロケーション(例えば、より多くのバス停留所がシステムに加えられた場合)に対してカスタマイズしたARコンテンツを提供することは非常に容易である。
【0039】
ARブラウザは、ARターゲット(又はターゲットID)とOCR結果(例えば、OCRゾーンから得たテキストの一部又は全部)を用いてARコンテンツを取得するので、ARターゲット(又はターゲットID)とOCR結果を集合的にマルチレベルARコンテンツトリガーと呼ぶことがある。
【0040】
他の一利点は、ARターゲットがコンテンツプロバイダの商標として用いるのに適しており、OCRゾーンのテキストはコンテンツプロバイダの顧客にとって読みやすく使いやすいことである。
【0041】
一実施形態では、コンテンツプロバイダ又はターゲットクリエータは各ARターゲットに対して複数のOCRゾーンを確定できる。このOCRゾーンのセットは、例えば、形状が異なる及び/又はコンテンツの構成が異なる標識の使用を可能にする。例えば、ターゲットクリエータは、ARターゲットの右にある第1のOCRゾーンと、ARターゲットの下にある第2のOCRゾーンを確定できる。したがって、ARブラウザは、ARターゲットを検出すると、次いで複数のゾーンに自動的にOCRを実行し、そのOCR結果の一部又は全部をARブローカに送り、ARコンテンツの読み出しに用いさせる。また、AR座標系により、コンテンツプロバイダは、どんな媒体やARターゲットに対する位置でどんなコンテンツでも、適当なものを提供できる。
【0042】
ここに説明の原理と実施形態を考慮して、例示した実施形態はかかる原理から逸脱することなく、構成や細部を変更できることが分かる。例えば、上記の段落の幾つかはビジョンベースARについてものである。しかし、ここでの教示は他のタイプのAR体験にも都合良く使える。例えば、本教示は、いわゆる同時ロケーション及びマッピング(Simultaneous Location And Mapping、SLAM)ARで用いることができ、ARマーカーは2次元画像でなく、3次元の物理的オブジェクトであってもよい。例えば、出入り口やフィギュア(例えば、ミッキーマウスやアイザックニュートンの胸像)を3次元ARターゲットとして用いることができる。SLAM ARに関するさらに詳しい情報は、metaioカンパニーに関する記事(http://techcrunch.com/2012/10/18/metaios−new−sdk−allows−slam−mapping−from−1000−feet/)に記載されている。
【0043】
また、上記の幾つかの段落は、ARコンテンツプロバイダから比較的独立したARブラウザ及びARブローカを参照している。しかし、他の実施形態では、ARブラウザはARコンテンツプロバイダと直接通信してもよい。例えば、ARコンテンツプロバイダは、モバイルデバイスに、カスタムARアプリケーションを供給し、そのアプリケーションがARブラウザとして機能する。次いで、ARブラウザは、ターゲットID、OCRテキストなどをコンテンツプロバイダに直接送り、コンテンツプロバイダはARコンテンツをARブラウザに直接送る。カスタムARアプリケーションに関するさらに詳細は、Total Immersionカンパニーのウェブサイト(www.t−immersion.com)に記載されている。
【0044】
また、上記の幾つかの段落は、商標又はロゴとしての使用に適したARターゲットに言及している。このARは見る人に意味のある印象を与え、ARターゲットは見る人に容易に認識され、他の画像やシンボルと容易に区別されるからである。しかし、他の実施形態では、www.artoolworks.com/supporl/library/Using_ARToolKit_NFT_with_fiducial_markers_(version_3.x)に記載されたもののような信用マーカー(fiduciary markers)を含むがこれに限定はさらない他のタイプのARターゲットを用いてもよい。かかる信用マーカーは「信用情報(fiducials)」または「ARタグ」とも呼ばれる。
【0045】
また、上記の説明は具体的な実施形態にフォーカスしたが、他の構成も想定される。また、ここで「一実施形態」、「他の一実施形態」などの表現を用いたが、これらのフレーズは可能性のある実施形態を広く参照することを意味するものであり、本発明を実施形態の具体的な構成に限定することを意図したものではない。これらのフレーズは、ここで用いたように同じ実施形態又は異なる実施形態を指し、これらの実施形態は他の実施形態と組み合わせ可能である。
【0046】
ここに説明したコンポーネントを実装するため、いかなる好適な動作環境やプログラミング言語(または、動作環境とプログラミング言語の組み合わせ)を用いてもよい。上記の通り、本教示を用いると異なる多くの種類のデータ処理システムにおいて都合がよい。データ処理システムの例には、分散計算システム、スーパーコンピュータ、高性能計算システム、計算クラスタ、メインフレームコンピュータ、ミニコンピュータ、クライアントサーバシステム、パーソナルコンピュータ(PC)ワークステーション、サーバ、ポータブルコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、パーソナルデジタルアシスタント(PDA)、電話、ハンドヘルドデバイス、(オーディオデバイス、ビデオデバイス、オーディオ/ビデオデバイスなどの)エンターテイメントデバイス(例えば、テレビジョンやセットトップボックス)、車載処理システム、その他の情報の処理又は伝送をするデバイスを含むが、これらに限定されない。したがって、特に断らなければ、又は文脈による必要性がなければ、何らかのタイプのデータ処理システム(例えば、モバイルデバイス)を参照した場合、他のタイプのデータ処理システムも含むものと理解すべきである。また、特に断らなければ、互いに結合された、互いに通信している、互いに応答するものと説明したコンポーネント等は、互いに連続して通信している必要はなく、互いに直接結合されている必要もない。同様に、一コンポーネントが他のコンポーネントとの間でデータを送受すると説明したとき、特に断らなければ、そのデータは一以上の中間コンポーネントを通して送受されてもよい。また、データ処理システムの幾つかのコンポーネントは、バスと通信するためのインタフェース(例えば、コネクタ)を有するアダプタカードとして実装できる。あるいは、デバイス又はコンポーネントは、プログラマブル又は非プログラマブルロジックデバイスやアレイ、特定目的集積回路(ASIC)、組み込みコンピュータ、スマートカードなどのコンポーネントを用いて、組み込みコントローラとして実装されてもよい。この開示を目的として、「バス」との用語は、3つ以上のデバイスにより共有される経路及びポイントツーポイント経路を含む。
【0047】
この開示は、命令、関数、手順、データ構造、アプリケーションプログラム、コンフィギュレーション設定、その他のデータに言及している。上記の通り、データがマシンによりアクセスされたとき、そのマシンは、タスクの実行、抽象データタイプ又はローレベルハードウェアコンテキストの確定、及び/又はその他の動作の実行により応答する。例えば、データストレージ、RAM、及び/又はフラッシュメモリは、実行されると、さまざまな動作を実行するさまざまな命令セットを含む。かかる命令セットは一般にソフトウェアと呼ばれる。また、「プログラム」との用語は、広い範囲のソフトウェア構成をカバーするために用いられ、アプリケーション、ルーチン、モジュール、ドライバ、サブプログラム、プロセスその他のタイプのソフトウェアコンポーネントを含む。また、一実施形態であるデバイス上にあると説明したアプリケーション及び/又はその他のデータは、他の実施形態では、一以上の他のデバイス上にあってもよい。一実施形態であるデバイス上で実行されると説明した計算動作は、他の実施形態では、他の一以上のデバイスにより実行されてもよい。
【0048】
言うまでもなく、ここに示したハードウェア及びソフトウェアコンポーネントは、自己充足的な機能要素を表し、それぞれ他から実質的に独立してデザイン、構成、又は更新できる。別の実施形態では、多くのコンポーネントが、ここに説明の機能を提供するハードウェア、ソフトウェア、又はハードウェアとソフトウェアの組み合わせとして実装される。例えば、別の実施形態は、この発明の動作を実行する、マシンアクセス可能な媒体符号化命令又は制御ロジックを含む。このような実施形態はプログラム製品とも呼ばれる。かかるマシンアクセス可能媒体は、非限定的に、磁気ディスク、光ディスク、RAM、ROMなどの有体記憶媒体を含む。本開示の目的のため、「ROM」との用語は、概して、消去可能プログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、フラッシュROM、フラッシュメモリなどの不揮発性メモリデバイスを指す。幾つかの実施形態では、説明の動作を実装する制御ロジックの一部又は残部は、ハードウェアロジック中に(例えば、集積回路チップ、プログラマブルゲートアレイ(PGA)、ASICなどの一部として)実装できる。少なくとも一実施形態では、すべてのコンポーネントの命令は、一非一時的マシンアクセス可能媒体に記憶できる。他の少なくとも一実施形態では、コンポーネント用の命令を記憶するため、2以上の非一時的マシンアクセス可能媒体を用いてもよい。例えば、一コンポーネント用の命令を一媒体に記憶し、他のコンポーネント用の命令を他の媒体に記憶してもよい。あるいは、一実施形態の命令の一部を一媒体に記憶し、そのコンポーネント用の命令の残り(及び他のコンポーネント用命令)を他の一以上の媒体に記憶してもよい。命令は分散環境で用いても良いし、単一の又は複数のプロセッサマシンによるアクセスのため、ローカル及び/又はリモートに記憶してもよい。
【0049】
また、一以上のプロセス例をある順序で実行される具体的な動作に関して説明したが、これらのプロセスには多くの変更をして、本発明の別の多くの実施形態を作れる。例えば、別の実施形態には、開示した動作の全部を用いないプロセス、追加的動作を用いるプロセス、ここに開示した個別動作が組み合わされ、分割され、再構成され、又は改変されたプロセスを含み得る。
【0050】
ここに説明した実施形態から容易に求められる有用な置換のバラエティを考慮して、この詳細な説明は、単なる例示であり、範囲を限定するものと解してはならない。
【0052】
例A1はOCRを用いてARを提供する自動的な方法である。該方法は、シーンのビデオに基づいて、前記シーンが所定のARターゲットを含むか自動的に判断するステップを含む。前記シーンが前記ARターゲットを含むとの判断に応じて、前記ARターゲットに関連するOCRゾーン記述を自動的に読み出す。前記OCRゾーン記述はOCRゾーンを特定する。前記ARターゲットに関連する前記OCRゾーン記述の読み出しに応じて、自動的にOCRを用いて前記OCRゾーンからテキストを抽出する。OCRの結果を用いて、前記OCRゾーンから抽出されたテキストに対応するARコンテンツを取得する。OCRゾーンから抽出されるテキストに対応するARコンテンツは、自動的に、そのシーンと共に提示される。
【0053】
例A2は例A1のフィーチャを含み、前記OCRゾーン記述は前記ARターゲットの少なくとも一フィーチャに対する前記OCRゾーンの少なくとも一フィーチャを特定する、
例A3は例A1のフィーチャを含み、前記ARターゲットに関連するOCRゾーン記述を自動的に読み出すステップは、前記ARターゲットのターゲット識別子を用いてローカル記憶媒体から前記OCRゾーン記述を読み出すステップを有する。例A3は例A2のフィーチャを含んでもよい。
【0054】
例A4は例A1のフィーチャを含み、前記OCRの結果を用いて、前記OCRゾーンから抽出されたテキストに対応するARコンテンツを判断するステップは、(a)前記ARターゲットのターゲット識別子と前記OCRゾーンからのテキストの少なくとも一部をリモート処理システムに送るステップと、(b)前記ターゲット識別子と前記OCRゾーンからのテキストの少なくとも一部とを前記リモート処理システムに送った後、前記リモート処理システムから前記ARコンテンツを受け取るステップとを有する。例A4は例A2又は例A3のフィーチャを含んでいてもよく、例A2及び例A3のフィーチャを含んでいてもよい。
【0055】
例A5は例A1のフィーチャを含み、前記OCRの結果を用いて、前記OCRゾーンから抽出されたテキストに対応するARコンテンツを判断するステップは、(a)OCR情報を前記リモート処理システムに送る、前記OCR情報は前記OCRゾーンから抽出されたテキストに対応する、ステップと、(b)前記OCR情報を前記リモート処理システムに送った後、前記リモート処理システムから前記ARコンテンツを受け取るステップとを有する。例A5は例A2又は例A3のフィーチャを含んでいてもよく、例A2及び例A3のフィーチャを含んでいてもよい。
【0056】
例A6は例A1のフィーチャを含み、前記ARターゲットはハイレベル分類子として機能する。また、前記OCRゾーンからのテキストの少なくとも一部はローレベル分類子として機能する。例A6は、(a)例A2、A3、A4又はA5のフィーチャ、(b)例A2、A3及びA4のうちいずれか2つ以上のフィーチャ、又は(c)例A2、A3及びA5のうちいずれか2つ以上のフィーチャを含み得る。
【0057】
例A7は例A6のフィーチャを含み、前記ハイレベル分類子は前記ARコンテンツプロバイダを特定する。
【0058】
例A8は例A1のフィーチャを含み、前記ARターゲットは2次元である。例A8は、(a)例A2、A3、A4、A5、A6又はA7のフィーチャ、(b)例A2、A3、A4、A6及びA7のうちいずれか2つ以上のフィーチャ、又は(c)例A2、A3、A5、A6及びA7のうちいずれか2つ以上のフィーチャを含み得る。
【0059】
例B1はARコンテンツのマルチレベルトリガーを実装する方法である。該方法は、関連ARコンテンツを特定するハイレベル分類子として機能するARターゲットを選択するステップを含む。また、選択された前記ARターゲットのOCRゾーンが指定される。OCRゾーンは、OCRを用いてテキストを抽出するビデオフレーム内のエリアを構成する。OCRゾーンからのテキストは関連ARコンテンツを特定するローレベル分類子として機能する。
【0060】
例B2は例B1のフィーチャを含み、選択された前記ARターゲットのOCRゾーンを指定するステップは、前記ARターゲットの少なくとも一フィーチャに対して前記OCRゾーンの少なくとも一フィーチャを指定するステップを有する。
【0061】
例C1はARコンテンツのマルチレベルトリガーを処理する方法である。該方法は、ARクライアントからターゲット識別子を受け取るステップを含む。ターゲット識別子は、所定のARターゲットを、前記ARクライアントによりビデオシーン中に検出されたものとして識別する。また、テキストが前記ARクライアントから受け取られる。前記テキストは前記ビデオシーン中の前記所定ARターゲットに関連するOCRゾーンに前記ARクライアントにより実行されるOCRの結果に対応する。前記ターゲット識別子と前記ARクライアントからのテキストに基づいてARコンテンツが取得される。ARコンテンツはARクライアントに送られる。
【0062】
例C2は例C1のフィーチャを含み、前記ターゲット識別子と前記ARクライアントからのテキストに基づいてARコンテンツを取得するステップは、前記ARクライアントからのテキストに少なくとも部分的に基づいて前記ARコンテンツを動的に生成するステップを有する。
【0063】
例C3は例C1のフィーチャを含み、前記ターゲット識別子と前記ARクライアントからのテキストに基づいてARコンテンツを取得するステップは、リモート処理システムから前記ARコンテンツを自動的に読み出すステップを有する。
【0064】
例C4は例C1のフィーチャを含み、前記ARクライアントから受け取るテキストは、前記ARクライアントにより実行された前記OCRからの結果の少なくとも一部を含む。例C4は例C2又は例C3のフィーチャを含み得る。
【0065】
例D1はOCRでエンハンスされたARをサポートするコンピュータ命令を有する少なくとも1つのマシンアクセス可能媒体である。該コンピュータ命令は、データ処理システム上で実行されると、それに応じて前記データ処理システムが例A1−A7、B1−B2及びC1−C4のうちいずれかによる方法を実行できるようにする。
【0066】
例E1は、OCRでエンハンスされたARをサポートするデータ処理システムである。該データ処理システムは、処理要素と、前記処理要素に応答する少なくとも1つのマシンアクセス可能媒体と、前記少なくとも1つのマシンアクセス可能媒体に少なくとも部分的に記憶されたコンピュータ命令とを含む。該コンピュータ命令は、実行されると、それに応じて前記データ処理システムが例A1−A7、B1−B2及びC1−C4のうちいずれかによる方法を実行できるようにする。
【0067】
例F1は、OCRでエンハンスされたARをサポートするデータ処理システムである。該データ処理システムは、例A1−A7、B1−B2及びC1−C4のうちいずれかによる方法を実行する手段を含む。
【0068】
例G1はOCRでエンハンスされたARをサポートするコンピュータ命令を有する少なくとも1つのマシンアクセス可能媒体である。該コンピュータ命令は、データ処理システム上で実行されると、それに応じて前記データ処理システムが、シーンのビデオに基づき、前記シーンが所定のARターゲットを含むか自動的に判断できるようにする。該コンピュータ命令は、シーンがARターゲットを含むと判断すると、その判断に応じて、データ処理システムがARターゲットに関連するOCRゾーン記述を自動的に読み出せるようにする。OCRゾーン記述はOCRゾーンを特定する。該コンピュータ命令は、また、ARターゲットに関連するOCRゾーン記述を読み出すと、それに応じて、データ処理システムが自動的にOCRを用いてOCRゾーンからテキストを抽出できるようにする。該コンピュータ命令は、処理システムが、OCRの結果を用いて、OCRゾーンから抽出されたテキストに対応するARコンテンツを取得できるようにする。該コンピュータ命令は、また、自動的に、データ処理システムが、OCRゾーンから抽出されたテキストに対応するARコンテンツがシーンと共に提示するようにできる。
【0069】
例G2は例G1のフィーチャを含み、前記OCRゾーン記述は前記ARターゲットの少なくとも一フィーチャに対する前記OCRゾーンの少なくとも一フィーチャを特定する。
【0070】
例G3は例G1のフィーチャを含み、前記ARターゲットに関連するOCRゾーン記述を自動的に読み出すステップは、前記ARターゲットのターゲット識別子を用いてローカル記憶媒体から前記OCRゾーン記述を読み出すステップを有する。例G3は例G2のフィーチャを含んでもよい。
【0071】
例G4は例G1のフィーチャを含み、前記OCRの結果を用いて、前記OCRゾーンから抽出されたテキストに対応するARコンテンツを判断するステップは、(a)前記ARターゲットのターゲット識別子と前記OCRゾーンからのテキストの少なくとも一部をリモート処理システムに送るステップと、(b)前記ターゲット識別子と前記OCRゾーンからのテキストの少なくとも一部とを前記リモート処理システムに送った後、前記リモート処理システムから前記ARコンテンツを受け取るステップとを有する。例G4は、例G2又は例G3のフィーチャを含んでいても、例G2及び例G3のフィーチャを含んでいてもよい。
【0072】
例G5は例G1のフィーチャを含み、前記OCRの結果を用いて、前記OCRゾーンから抽出されたテキストに対応するARコンテンツを判断するステップは、(a)OCR情報を前記リモート処理システムに送る、前記OCR情報は前記OCRゾーンから抽出されたテキストに対応する、ステップと、(b)前記OCR情報を前記リモート処理システムに送った後、前記リモート処理システムから前記ARコンテンツを受け取るステップとを有する。例G5は、例G2又は例G3のフィーチャを含んでいても、例G2及び例G3のフィーチャを含んでいてもよい。
【0073】
例G6は例G1のフィーチャを含み、前記ARターゲットはハイレベル分類子として機能する。また、前記OCRゾーンからのテキストの少なくとも一部はローレベル分類子として機能する。例G6は、(a)例G2、G3、G4又はG5のフィーチャ、(b)例G2、G3及びG4のうちいずれか2つ以上のフィーチャ、又は(c)例G2、G3及びG5のうちいずれか2つ以上のフィーチャを含み得る。
【0074】
例G7は例G6のフィーチャを含み、前記ハイレベル分類子は前記ARコンテンツプロバイダを特定する。
【0075】
例G8は例G1のフィーチャを含み、前記ARターゲットは2次元である。例G8は、(a)例G2、G3、G4、G5、G6又はG7のフィーチャ、(b)例G2、G3、G4、G6及びG7のうちいずれか2つ以上のフィーチャ、又は(c)例G2、G3、G5、G6及びG7のうちいずれか2つ以上のフィーチャを含み得る。
【0076】
例H1は、ARコンテンツのマルチレベルトリガーを実装するコンピュータ命令を有する少なくとも1つのマシンアクセス可能媒体である。コンピュータ命令は、データ処理システムで実行されるとそれに応じて、データ処理システムが関連ARコンテンツを特定するハイレベル分類子として機能するARターゲットを選択できるようにする。また、コンピュータ命令は、データ処理システムが、選択された前記ARターゲットのOCRゾーンを指定できるようにする。前記OCRゾーンはOCRを用いてテキストが抽出されるビデオフレーム内のエリアを構成し、前記OCRゾーンからのテキストは関連ARコンテンツを特定するローレベル分類子として機能する、ステップとを有する。
【0077】
例H2は例H1のフィーチャを含み、選択されたARターゲットのOCRゾーンを指定するステップは、ARターゲットの少なくとも1つのフィーチャに対してOCRゾーンの少なくとも1つのフィーチャを指定するステップを有する。
【0078】
例H1は、ARコンテンツのマルチレベルトリガーを実装するコンピュータ命令を有する少なくとも1つのマシンアクセス可能媒体である。コンピュータ命令は、データ処理システムで実行されるとそれに応じて、データ処理システムがARクライアントからターゲット識別子を受け取れるようにする。ターゲット識別子は、所定のARターゲットを、前記ARクライアントによりビデオシーン中に検出されたものとして識別する。コンピュータ命令は、データ処理システムが、前記ARクライアントからテキストを受け取れるようにする。前記テキストは前記ビデオシーン中の前記所定ARターゲットに関連するOCRゾーンに前記ARクライアントにより実行されるOCRの結果に対応する。コンピュータ命令は、データ処理システムがターゲット識別子とARクライアントからのテキストとに基づいてARコンテンツを取得し、ARコンテンツをARクライアントに送れるようにする。
【0079】
例I2は例I1のフィーチャを含み、前記ターゲット識別子と前記ARクライアントからのテキストに基づいてARコンテンツを取得するステップは、前記ARクライアントからのテキストに少なくとも部分的に基づいて前記ARコンテンツを動的に生成するステップを有する。
【0080】
例I3は例I1のフィーチャを含み、前記ターゲット識別子と前記ARクライアントからのテキストに基づいてARコンテンツを取得するステップは、リモート処理システムからARコンテンツを自動的に読み出すステップを有する。
【0081】
例I4は例I1のフィーチャを含み、前記ARクライアントから受け取るテキストは、前記ARクライアントにより実行された前記OCRからの結果の少なくとも一部を含む。例I4は例I2又は例I3のフィーチャを含み得る。
【0082】
例J1はデータ処理システムであり、処理要素と、前記処理要素に応答する少なくとも1つのマシンアクセス可能媒体と、前記少なくとも1つのマシンアクセス可能媒体に少なくとも部分的に記憶されたARブラウザとを含む。また、ARデータベースが前記少なくとも1つのマシンアクセス可能媒体に少なくとも部分的に記憶される。ARデータベースは、ARターゲットに関連するARターゲット識別子と、ARターゲットに関連するOCRゾーン記述とを含む。OCRゾーン記述はOCRゾーンを特定する。ARブラウザは、シーンのビデオに基づき、シーンがARターゲットを含むか、自動的に判断するように動作可能である。ARブラウザは、シーンがARターゲットを含むと判断するとその判断に応じて、ARターゲットに関連するOCRゾーン記述を自動的に読み出すように動作可能である。ARブラウザは、また、ARターゲットに関連するOCRゾーン記述を読み出すとそれに応じて、自動的にOCRを用いてOCRゾーンからテキストを抽出するように動作可能である。ARブラウザは、OCRの結果を用いて、OCRゾーンから抽出されたテキストに対応するARコンテンツを取得するように動作可能である。ARブラウザは、前記OCRゾーンから抽出されたテキストに対応するARコンテンツを、自動的に、前記シーンと共に提示させるように動作可能である。
【0083】
例J2は例J1のフィーチャを含み、前記OCRゾーン記述は前記ARターゲットの少なくとも一フィーチャに対する前記OCRゾーンの少なくとも一フィーチャを特定する。
【0084】
例J3は例J1のフィーチャを含み、ARブラウザは、前記ARターゲットのターゲット識別子を用いてローカル記憶媒体から前記OCRゾーン記述を読み出すように動作可能である。例J3は例J2のフィーチャを含んでもよい。
【0085】
例J4は例J1のフィーチャを含み、前記OCRの結果を用いて、前記OCRゾーンから抽出されたテキストに対応するARコンテンツを判断するステップは、(a)前記ARターゲットのターゲット識別子と前記OCRゾーンからのテキストの少なくとも一部をリモート処理システムに送るステップと、(b)前記ターゲット識別子と前記OCRゾーンからのテキストの少なくとも一部とを前記リモート処理システムに送った後、前記リモート処理システムから前記ARコンテンツを受け取るステップとを有する。例J4は例J2又は例J3のフィーチャを含み、例J2及び例J3のフィーチャを含み得る。
【0086】
例J5は例J1のフィーチャを含み、前記OCRの結果を用いて、前記OCRゾーンから抽出されたテキストに対応するARコンテンツを判断するステップは、(a)OCR情報を前記リモート処理システムに送る、前記OCR情報は前記OCRゾーンから抽出されたテキストに対応する、ステップと、(b)前記OCR情報を前記リモート処理システムに送った後、前記リモート処理システムから前記ARコンテンツを受け取るステップとを有する。例J5は例J2又は例J3のフィーチャを含み、例J2及び例J3のフィーチャを含み得る。
【0087】
例J6は例J1のフィーチャを含み、ARブラウザは、ARターゲットをハイレベル分類子として用い、OCRゾーンからのテキストの少なくとも一部をローレベル分類子として用いるように動作可能である。例J6は、(a)例J2、J3、J4又はJ5のフィーチャ、(b)例J2、J3及びJ4のうちいずれか2つ以上のフィーチャ、又は(c)例J2、J3及びJ5のうちいずれか2つ以上のフィーチャを含み得る。
【0088】
例J7は例J6のフィーチャを含み、前記ハイレベル分類子は前記ARコンテンツプロバイダを特定する。
【0089】
例J8は例J1のフィーチャを含み、前記ARターゲットは2次元である。例J8は、(a)例J2、J3、J4、J5、J6又はJ7のフィーチャ、(b)例J2、J3、J4、J6及びJ7のうちいずれか2つ以上のフィーチャ、又は(c)例J2、J3、J5、J6及びJ7のうちいずれか2つ以上のフィーチャを含み得る。