(57)【要約】  いくつかの実施形態では、情景の画像を示す第1の情報がアクセスされる。1つまたは複数の基準特徴が検出され、基準特徴は画像内の基準物体に関連付けられる。第1の情報に基づいて、画像空間と実際の空間との間の変換が決定される。ユーザからの入力を示す第2の情報がアクセスされ、第2の情報は、実際の空間内の対象の実際の距離に対応する画像空間内の画像空間距離を識別する。次いで、第2の情報および決定された変換に基づいて、対象の実際の距離が推定される。
2015510112.tif 000002
【特許請求の範囲】
【請求項１】
情景の画像を示す第1の情報にアクセスするステップと、
前記第1の情報内の基準物体に関連付けられた1つまたは複数の基準特徴を検出するステップと、
前記画像に基づいて、画像空間と実際の空間との間の変換を決定するステップと、
ユーザからの入力を示す第2の情報にアクセスするステップであって、前記第2の情報が、前記実際の空間内の対象の実際の距離に対応する前記画像空間内の画像空間距離を識別する、ステップと、
前記第2の情報および前記決定された変換に基づいて、対象の前記実際の距離を推定するステップと
を含む、実際の距離を推定するための方法。
【請求項２】
前記第2の情報が開始点およびエンドポイントを含み、対象の前記実際の距離が、前記開始点および前記エンドポイントに関連付けられた実際の位置の間の距離を含む、請求項1に記載の方法。
【請求項３】
前記画像に仮想定規を重ね合わせるステップをさらに含む、請求項1に記載の方法。
【請求項４】
前記重ね合わされた仮想定規のうちの少なくとも一部が前記画像上で位置すべき場所を、前記第2の情報が含む、請求項3に記載の方法。
【請求項５】
前記変換が少なくとも部分的に遠近ひずみを考慮する、請求項1に記載の方法。
【請求項６】
前記変換がホモグラフィ行列を含む、請求項1に記載の方法。
【請求項７】
その全体がモバイルデバイス上で実行される、請求項1に記載の方法。
【請求項８】
前記モバイルデバイスが携帯電話を含む、請求項7に記載の方法。
【請求項９】
前記基準物体が、実質的に平坦で実質的に長方形の物体を含む、請求項1に記載の方法。
【請求項１０】
前記基準特徴のうちの前記1つまたは複数に関連付けられた前記画像空間内の少なくとも1つの第1の空間特性を決定するステップと、
前記基準特徴のうちの前記1つまたは複数に関連付けられた前記実際の空間内の少なくとも1つの第2の空間特性を決定するステップと、
前記少なくとも1つの第1の空間特性および前記少なくとも1つの第2の空間特性に基づいて、前記変換を決定するステップと
をさらに含む、請求項1に記載の方法。
【請求項１１】
前記推定された対象の実際の距離および前記基準物体の表面の両方が、同じ平面に沿って位置する、請求項1に記載の方法。
【請求項１２】
対象の前記実際の距離を推定するステップが、前記変換の逆を適用するステップを含む、請求項1に記載の方法。
【請求項１３】
情景の画像を示す第1の情報にアクセスするためのイメージングデバイスと、
前記第1の情報内の基準物体に関連付けられた1つまたは複数の基準特徴を検出するための基準特徴検出器と、
前記検出された1つまたは複数の基準特徴に基づいて、画像空間と実際の空間との間の変換を決定するための変換識別器と、
前記実際の空間内の対象の実際の距離に対応する前記画像空間内の画像空間距離を識別する、モバイルデバイスのユーザからの入力を示す第2の情報にアクセスするためのユーザ入力コンポーネントと、
前記第2の情報および前記決定された変換に基づいて、対象の前記実際の距離を推定するための距離推定器と
を備える、実際の距離を推定するためのシステム。
【請求項１４】
前記第2の情報が、前記画像の提示上に重ね合わされた定規の回転を含む、請求項13に記載のシステム。
【請求項１５】
前記距離推定器が、ディスプレイによって提示されるべき仮想定規を生成するための定規生成器を備える、請求項13に記載のシステム。
【請求項１６】
ディスプレイが、前記推定された対象の実際の距離および前記画像を同時に提示する、請求項13に記載のシステム。
【請求項１７】
前記基準特徴検出器が縁部検出器を備える、請求項13に記載のシステム。
【請求項１８】
前記ユーザ入力コンポーネントおよびディスプレイが、タッチスクリーンとして一体化された、請求項13に記載のシステム。
【請求項１９】
情景の画像を示す第1の情報にアクセスするための手段と、
前記画像内の基準物体に関連付けられた1つまたは複数の基準特徴を検出するための手段と、
前記第1の情報に基づいて、画像空間と実際の空間との間の変換を決定するための手段と、
ユーザからの入力を示す第2の情報にアクセスするための手段であって、前記第2の情報が、前記実際の空間内の対象の実際の距離に対応する前記画像空間内の画像空間距離を識別する、手段と、
前記第2の情報および前記決定された変換に基づいて、対象の前記実際の距離を推定するための手段と
を備える、実際の距離を推定するためのシステム。
【請求項２０】
前記第1の情報にアクセスするための前記手段が、モバイル電話内のカメラを備える、請求項19に記載のシステム。
【請求項２１】
前記1つまたは複数の基準特徴を検出するための前記手段が、縁部検出器を備える、請求項19に記載のシステム。
【請求項２２】
前記ユーザからの前記入力を示す前記第2の情報にアクセスするための前記手段が、タッチスクリーンディスプレイを備える、請求項19に記載のシステム。
【請求項２３】
対象の前記実際の距離を推定するための前記手段が、定規生成器を備える、請求項19に記載のシステム。
【請求項２４】
対象の前記推定された実際の距離を提示するための手段をさらに備える、請求項19に記載のシステム。
【請求項２５】
情景の画像を示す第1の情報にアクセスするステップと、
前記画像内の基準物体に関連付けられた1つまたは複数の基準特徴を検出するステップと、
前記第1の情報に基づいて、画像空間と実際の空間との間の変換を決定するステップと、
ユーザからの入力を示す第2の情報にアクセスするステップであって、前記第2の情報が、前記実際の空間内の対象の実際の距離に対応する前記画像空間内の画像空間距離を識別する、ステップと、
前記第2の情報および前記決定された変換に基づいて、対象の前記実際の距離を推定するステップと
を実行するプログラムを含む、コンピュータ可読記憶媒体。
【請求項２６】
前記プログラムが、
前記基準物体に関連付けられた実際の空間特性をデータベースから識別するステップを
さらに実行する、請求項25に記載のコンピュータ可読記憶媒体。
【請求項２７】
前記変換がホモグラフィを含む、請求項25に記載のコンピュータ可読記憶媒体。
【請求項２８】
前記第2の情報が、開始点および終了点を含む、請求項25に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、その全体が参照により本明細書に組み込まれている、2012年1月13日に出願された「VIRTUAL RULER」と題する米国仮出願第61/586,228号、および2012年7月31日に出願された「VIRTUAL RULER」と題する米国出願第13/563,330号の優先権の利益を主張するものである。
【背景技術】
【０００２】
しばしば、目に入る物体の正確な寸法を識別することは重要である。たとえば、郵便料金を決定するためには封筒の大きさを、フレームのサイズを決定するためには絵の寸法を、机が部屋に適合するかどうかを判定するためには机の寸法を識別することが必要であり得る。巻き尺により人がこれらの寸法を測ることが可能になるが、人は測定したいときに巻き尺を有していない場合がある。
【発明の概要】
【課題を解決するための手段】
【０００３】
いくつかの実施形態では、実際の測定値を決定する際にユーザを支援するための方法およびシステムが提供される。イメージングデバイス(たとえば、携帯電話の中のカメラ)は、情景の画像を取り込むことができる。スケーリング、カメラの傾き、カメラの回転、カメラのパン、カメラの位置などのうちの1つまたは複数を考慮することができる変換(たとえば、ホモグラフィ)を決定することができる。変換を決定することは、情景の画像内の(たとえば、既知のサイズおよび/または形状の)基準物体を位置決めすること、および基準物体の実際の空間特性(たとえば、寸法特性)を、情景の画像内の対応する空間特性(たとえば、寸法特性)と比較することを含み得る。仮想定規は、変換に基づいて構成され、(たとえば、イメージングデバイスのディスプレイに提示された)情景の画像上に重ね合わされ得る。ユーザは、仮想定規を使用して、情景内の実際の寸法または距離を識別することができる。追加または代替として、実際の測定値は、距離または寸法に対する要求に応答して、ユーザに提供することができる。
【０００４】
たとえば、基準カードを情景の表面に置くことができる。モバイルデバイス内のカメラは、情景の画像を取得し、(たとえば、その隅にある)基準カードに関連付けられた画像ベースの座標を、(たとえば、変換された座標間の距離がカードの寸法を正確に反映するような)実際の意味を有する座標に変換する変換を識別することができる。モバイルデバイスのユーザは、(たとえば、タッチスクリーンを使用してポイントを識別することによって、)画像化された情景内の開始点および終了点を識別することができる。変換に基づいて、デバイスは、基準カードの平面に沿った開始点と終了点との間の実際の距離を測定し、ユーザに表示することができる。いくつかの実施形態では、プロセス全体はモバイルデバイス(たとえば、携帯電話)で実行されてもよい。
【０００５】
いくつかの実施形態では、実際の距離を推定するための方法が提供される。方法は、情景の画像を示す第1の情報にアクセスすること、および第1の情報内の基準物体に関連付けられた1つまたは複数の基準特徴を検出することを含むことができる。方法は、また、画像に基づいて画像空間と実際の空間との間の変換を決定すること、およびユーザからの入力を示す第2の情報にアクセスすることを含むことができ、第2の情報は、実際の空間内の対象の実際の距離に対応する画像空間内の画像空間距離を識別する。方法は、さらに、第2の情報および決定された変換に基づいて、対象の実際の距離を推定することを含むことができる。
【０００６】
いくつかの実施形態では、実際の距離を推定するためのシステムが提供される。システムは、情景の画像を示す第1の情報にアクセスするためのイメージングデバイス、および第1の情報内の基準物体に関連付けられた1つまたは複数の基準特徴を検出するための基準特徴検出器を含むことができる。システムは、また、1つまたは複数の基準特徴に基づいて画像空間と実際の空間との間の変換を決定するための変換識別器、および実際の空間内の対象の実際の距離に対応する画像空間内の画像空間距離を識別するモバイルデバイスのユーザからの入力を示す第2の情報にアクセスするためのユーザ入力コンポーネントを含むことができる。システムは、さらに、第2の情報および決定された変換に基づいて、対象の実際の距離を推定するための距離推定器を含むことができる。
【０００７】
いくつかの実施形態では、実際の距離を推定するためのシステムが提供される。システムは、情景の画像を示す第1の情報にアクセスするための手段、および画像内の基準物体に関連付けられた1つまたは複数の基準特徴を検出するための手段を含むことができる。システムは、また、第1の情報に基づいて画像空間と実際の空間との間の変換を決定するための手段、およびユーザからの入力を示す第2の情報にアクセスするための手段を含むことができ、第2の情報は、実際の空間内の対象の実際の距離に対応する画像空間内の画像空間距離を識別する。システムは、さらに、第2の情報および決定された変換に基づいて、対象の実際の距離を推定するための手段を含むことができる。
【０００８】
いくつかの実施形態では、コンピュータ可読媒体が提供される。コンピュータ可読媒体は、情景の画像を示す第1の情報にアクセスするステップ、および画像内の基準物体に関連付けられた1つまたは複数の基準特徴を検出するステップを実行するプログラムを含むことができる。プログラムは、さらに、第1の情報に基づいて画像空間と実際の空間との間の変換を決定するステップ、およびユーザからの入力を示す第2の情報にアクセスするステップを実行することができ、第2の情報は、実際の空間内の対象の実際の距離に対応する画像空間内の画像空間距離を識別する。プログラムは、また、第2の情報および決定された変換に基づいて、対象の実際の距離を推定するステップを実行することができる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態により、画像に基づいて実際の距離を推定するための方法を例示する図である。
【図２】基準特徴に関連付けられた画像ベースの座標を、実際の寸法を有する第2の空間に写像する一例を示す図である。
【図３Ａ】実際の距離を識別するためのシステムの一例を示す図である。
【図３Ｂ】実際の距離を識別するためのシステムの別の一例を示す図である。
【図４】一実施形態により、実際の距離を推定するためのシステムを示す図である。
【図５】一実施形態により、実際の距離を推定するためのシステムを示す図である。
【図６】コンピュータシステムの一実施形態を例示する図である。
【発明を実施するための形態】
【００１０】
いくつかの実施形態では、実際の測定値を決定する際にユーザを支援するための方法およびシステムが提供される。イメージングデバイス(たとえば、携帯電話の中のカメラ)は、情景の画像を取り込むことができる。スケーリング、カメラの傾き、カメラの回転、カメラのパン、カメラの位置などのうちの1つまたは複数を考慮することができる変換(たとえば、ホモグラフィ)を決定することができる。変換を決定することは、情景の画像内の(たとえば、既知のサイズおよび/または形状の)基準物体を位置決めすること、および基準物体の実際の空間特性(たとえば、寸法特性)を、情景の画像内の対応する空間特性(たとえば、寸法特性)と比較することを含み得る。仮想定規は、変換に基づいて構成され、(たとえば、イメージングデバイスのディスプレイに提示された)情景の画像上に重ね合わされ得る。ユーザは、仮想定規を使用して、情景内の実際の寸法または距離を識別することができる。追加または代替として、実際の測定値は、距離または寸法に対する要求に応答して、ユーザに提供することができる。
【００１１】
たとえば、基準カードを情景の表面に置くことができる。モバイルデバイス内のカメラは、情景の画像を取得し、(たとえば、その隅にある)基準カードに関連付けられた画像ベースの座標を、(たとえば、変換された座標間の距離がカードの寸法を正確に反映するような)実際の意味を有する座標に変換する変換を識別することができる。モバイルデバイスのユーザは、(たとえば、タッチスクリーンを使用してポイントを識別することによって、)画像化された情景内の開始点および終了点を識別することができる。変換に基づいて、デバイスは、基準カードの平面に沿った開始点と終了点との間の実際の距離を測定し、ユーザに表示することができる。いくつかの実施形態では、プロセス全体はモバイルデバイス(たとえば、携帯電話)で実行されてもよい。
【００１２】
図1は、一実施形態により、画像に基づいて実際の距離を推定するための方法100を例示する。105で、1つまたは複数の画像が取り込まれる。画像は、カメラなどのイメージングデバイスによって取り込むことができる。イメージングデバイスは、携帯電話、スマートフォン、携帯情報端末、タブレットコンピュータ、ラップトップコンピュータ、デジタルウォッチなどのポータブルデバイスおよび/または電子デバイスの内部に位置し得る。画像は、個々に、かつ/または別々に取り込むことができる。たとえば、ユーザはボタンを押すか、またはオプションを選択して、画像が取り込まれるべき明確な時点を示すことができる。一例では、画像は、ある時間期間中繰り返して、または連続して取り込まれる。たとえば、電話は、レンズを通して情景を画像化し、リアルタイム画像またはリアルタイム画像のサブセットを処理および/または表示することができる。
【００１３】
110で、画像内の1つまたは複数の基準特徴が、検出または識別される。場合によっては、2つ、3つ、4つまたはそれ以上の基準特徴が、検出または識別される。一実施形態では、基準特徴は、画像内にあることが知られている、または思われている1つまたは複数の基準物体の特徴である。たとえば、ユーザは、画像を取り込む前に、画像化されるべき情景内および/または対象の平面上に、(長方形の基準カードなどの)特定の物体を配置するように命令され得る。別の例として、ユーザは、1つまたは複数の特定の特徴(たとえば、標準寸法のクレジットカード、運転免許証、長方形の物体、25セント硬貨、米国流通証券など)を、情景内および/または平面上に配置するように命令され得る。物体は、たとえば、長方形、剛性、実質的に平面などであり得る。物体は、6インチよりも小さい1次元、2次元または3次元などの少なくとも1つの平坦面を有し得る。物体は、(たとえば、バーコード、一連の色など)明確な視覚パターンなどの1つまたは複数の顕著な特徴(たとえば、視覚的に顕著な特徴)を有し得る。場合によっては、ユーザは情景内に基準物体を置くようには命令されない。たとえば、一技法は、少なくとも1つの長方形の物体が情景内および/または対象の平面上に配置されることを仮定し得る。
【００１４】
1つ、複数またはすべての基準特徴は、たとえば、基準物体、縁部、および/または隅に対応する画像の一部分または全部分を含み得る。たとえば、基準特徴は、基準物体を画定する4つの縁部を含み得る。基準特徴は、基準物体の1つまたは複数の部分(たとえば、基準物体の上部に近い赤い点および基準物体の下部に近い青い点)を含み得る。
【００１５】
基準特徴は、(たとえば、画像ベースの2次元座標系内の)位置を含み得る。たとえば、105で取り込まれた画像は、画像化された情景の2次元表現を含み得る。画像は、たとえば、行と列で編成された複数のピクセルを含み得る。したがって、画像の特徴は、ピクセル座標として、またはそれに基づいて識別することができる(たとえば、隅1は(4,16)に位置し、隅2は(6,18)に位置するなど)。
【００１６】
基準特徴は、1つまたは複数の長さおよび/または面積を含み得る。長さおよび/または面積は、画像空間の空間特性を有し得る。たとえば、「縁部1」は15.4ピクセル長であり得る。
【００１７】
基準特徴は、1つまたは複数のコンピュータビジョン技法を使用して検出することができる。たとえば、縁部検出アルゴリズムを使用することができ、様々な画像位置での空間対比を分析することができ、スケール不変特徴変換を使用することができる、など。
【００１８】
基準特徴は、ユーザ入力に基づいて検出することができる。たとえば、ユーザは、基準特徴の位置を識別するように命令され得る。ユーザは、たとえば、タッチスクリーン、マウス、キーパッドなどを使用して、基準特徴に対応する画像上の位置を識別することができる。一例では、ユーザは、タッチスクリーン電子ディスプレイを介して画像を提示され、基準物体の隅に対応する4つの位置で画面にタッチするように命令される。
【００１９】
1つ、2つ、3つ、4つまたはそれ以上の基準特徴を検出することができる。一実施形態では、少なくとも4つの基準特徴が検出され、基準特徴のうちの少なくとも一部または全部は、固定または既知の互いの間の実際の距離を有する。たとえば、クレジットカード基準物体の4つの隅を検出することができる。一実施形態では、少なくとも4つの基準特徴が検出され、基準特徴のうちの少なくとも一部または全部は、特徴自体に関連する固定または既知の実際の空間特性(たとえば、実際の寸法)を有する。たとえば、クレジットカード基準物体の4つの縁部を検出することができる。
【００２０】
115で、画像内で検出された基準特徴に関連する1つもしくは複数の空間特性、および/または1つもしくは複数の対応する実際の空間特性に基づいて、変換を決定することができる。変換には、拡大、回転変換、従来の変換、および/またはレンズのひずみ補正が含まれ得る。変換はホモグラフィを含んでいてもよく、任意の遠近ひずみを軽減するか、または少なくとも部分的に考慮することができる。変換は、イメージングデバイスに固有の(たとえば、焦点距離などのパラメータを考慮する)内部パラメータ、および/または画像化される情景に依存する(たとえば、カメラの角度または位置を考慮する)外部パラメータを含み得る。変換は、カメラ行列、回転行列、変換行列、および/または合同回転変換行列を含み得る。
【００２１】
変換は、画像空間(たとえば、画像に関連付けられた2次元の座標空間)と実際の空間(たとえば、実際の距離、面積などを識別する2次元または3次元の座標空間)との間の変換を含んでいてもよい。変換は、1つまたは複数の基準特徴に関連付けられた画像ベースの空間特性(たとえば、座標、距離、形状など)を、(特徴間の実際の距離に関連付けられている)別の空間に変換するはずの変換を決定することによって、決定され得る。たとえば、特定の長方形の基準物体の4つの隅の画像ベースの位置は、方法100の110で検出されてもよい。画像を取り込むために使用されるイメージングデバイスの位置、回転、および/または傾きに起因して、物体は、傾いている、かつ/または(たとえば、台形として見える代わりに)非長方形であるように見え得る。(各々1つまたは複数の基準特徴に関連付けられた)画像に基づいた空間特性と対応する実際の空間特性との間の形状の差異は、(たとえば、イメージングデバイスの角度、位置、および/または焦点距離に基づいた)遠近ひずみに、少なくとも部分的に起因し得る。変換は、遠近ひずみを補正するように決定され得る。たとえば、基準特徴は、長方形の基準物体カードの縁部を含んでいてもよい。縁部は、台形用の画像ベースの縁部の組合せなどの画像ベースの空間特性に関連付けられてもよい。画像ベースの空間特性を変換することは、(たとえば、基準物体カードの実際のサイズに対応するサイズの)長方形を形成する、変換された縁部を作成することができる。たとえば、隅1の画像ベースの寸法は、変換された座標(0,0)に写像し、隅2の寸法は座標(3.21,0)に写像し得る。図2参照。
【００２２】
数式1〜数式3は、2次元の画像ベースの座標(p,q)が2次元の実際の座標(x,y)に、どのように変換され得るかの一例を示す。数式1では、画像ベースの座標(p,q)が回転関連変数(r11〜r32)、変換関連変数(tx〜tz)、およびカメラベースまたは視線投射変数(f)を使用して変換される。数式2は数式1の簡易板であり、数式3は、変数を新しいホモグラフィ変数(h11〜h33)に合成する。
【００２３】
【数１】
2015510112.tif 000003
【００２４】
複数の画像ポイントをこの方式で変換することができる。以下でより詳細に説明されるように、変換されたポイント間の距離は、実際の距離に対応することができる。
【００２５】
方法100の110で検出された基準特徴は、数式3のホモグラフィ変数を決定するために使用され得る。場合によっては、画像または(たとえば、1つもしくは複数の画像ベースの座標に対応する)1つもしくは複数の基準特徴は、最初に事前調整される。たとえば、事前調整の変換は、(画像の図心を元の座標に変換させるものとして)識別されてもよく、かつ/または事前調整のスケーリングファクタは、(たとえば、画像の座標と図心との間の平均距離が2の平方根であるように)識別され得る。次いで、検出された特徴に関連する1つまたは複数の画像ベースの空間特性(たとえば、座標)は、事前調整の変換および/または事前調整のスケーリングファクタを適用することによって、事前調整されてもよい。
【００２６】
いくつかの実施形態では、ホモグラフィ変数h33が1に設定されてもよく、またはホモグラフィ変数の平方和が1に設定されてもよい。次いで、他のホモグラフィ変数は、(基準特徴に関連付けられた座標を使用して)数式3を解くことによって識別され得る。たとえば、数式4は、数式3が4つの実際のポイント(x1,y1)〜(x4,y4)および4つの画像ベースのポイント(x'1,y'1)〜(x'4,y'4)の各々にどのように適用され、単一の数式として結合され得るかを示す。
【００２７】
【数２】
2015510112.tif 000004
【００２８】
簡易化された行列形式では、数式4は、
数式5:A*H=X
と表され得る。
【００２９】
数式5は、線形システムソルバによって、またはH=(ATA)-1(ATX)として解くことができる。ホモグラフィ変数の平方和が1に設定された場合、数式5は、たとえば、特異値分解を使用して解くことができる。
【００３０】
以下でさらに詳述されるように、入力は、対象の距離を識別するユーザから受け取られ得る。入力は、画像空間で取得され得る。たとえば、ユーザは、入力コンポーネント(たとえば、タッチスクリーン、マウスなど)を使用して、取り込まれた、かつ/または表示された画像内の対象のエンドポイントを識別することができる。別の例として、ユーザは、特定の方向に沿って対象の距離を識別できるように、仮想定規を回転することができる。距離は推定することができる。場合によっては、距離の推定は、特に識別された距離の高速および固有の推定になる。たとえば、ユーザは、対象の距離が2つのエンドポイント間の距離であることを示すことができ、その後、その距離は推定および提示され得る。場合によっては、距離の推定はあまり明示的ではない。たとえば、仮想定規は、ユーザが定規の向きを識別した後、生成されるか、または再生成され得る。次いで、ユーザは、たとえば、提示された仮想定規上のマーキングを使用して、特定の距離を識別することができる。方法100では、120〜125は、ユーザ入力(たとえば、双方向仮想定規の生成)に基づいた1つのタイプの距離推定を例示し、130〜140は、ユーザ入力(たとえば、ユーザ入力の開始点と終了点との間の推定された実際の距離)に基づいた別のタイプの距離推定を例示する。これらの例は例示的である。他のタイプのユーザ入力および推定を実行することができる。場合によっては、120〜125および130〜140のうちの1つだけが実行される。
【００３１】
方法100の120〜140で、画像内の距離と実際の距離との間の対応を推定し、ユーザに提示するために、変換を使用することができる。たとえば、この指示は、画像ベースの座標および/もしくは距離に変換を適用して(たとえば、2つのユーザが識別したポイント間の距離を推定する)こと、ならびに/または、変換の逆を適用して(たとえば、画像のほとんどまたはすべてとともに提示されたスケーリングバーをユーザが見ることを可能にする)ことを含んでいてもよい。
【００３２】
120で、定規がディスプレイ上に重ね合わされ得る。定規は、取り込まれた画像内の距離に対応する実際の距離を識別することができる。たとえば、定規は、基準物体の表面の平面に沿った距離に対応する実際の距離を識別することができる。対応は、115で識別された変換に基づいて識別することができる。たとえば、識別されたホモグラフィ行列または変換行列の逆は、定規の測定マーカに対応する実際の座標に適用することができる。
【００３３】
定規は、1つもしくは複数の線および/または1つもしくは複数のマーキング(たとえば、マーク)を含み得る。1つまたは複数のマーキング間の距離は、実際の距離に対応するものとして識別することができる。たとえば、テキストが定規上に提示され得る(たとえば、「1」、「2」、「1cm」、「インチ」など)。別の例として、ユーザは、目盛の間の距離が特定の単位の測定値(たとえば、インチ、センチメートル、フィートなど)に対応することを通知され得る。情報は、ディスプレイ上にテキストとして提示される、スケールバーとして提示される、セッティングとして含まれる、などであり得る。
【００３４】
隣接する目盛の各ペアの間の距離は、固定された実際の距離に対応するものとして(たとえば、マーク間の画像ベースの絶対距離が定規に沿った位置に応じて異なる場合があっても、隣接する目盛の各ペアの間の距離が実際の1インチに対応するように)、明示的または暗示的に識別することができる。場合によっては、画像ベースのマーク間距離に関連付けられた実際の距離は、画像化された情景のサイズに基づいて決定されてもよい。(たとえば、標準SI単位がすべての情景にわたって使用されてもよいが、特定の単位は、より小さい画像化された情景用のセンチメートルなどのより小さい単位、およびより大きい画像化された情景用のメートルなどのより大きい単位であり得る。)場合によっては、ユーザは、マーク間の画像ベースの距離に関連付けられた実際の距離を設定することができる。
【００３５】
定規は、(たとえば、モバイルデバイスまたはイメージングデバイス上の)ディスプレイ画面の一部または全部の端から端まで延在し得る。一例では、(たとえば、定規の対応する実際の距離が1インチ、1フィート、1ヤード、1キロメートルなどであるように)定規の長さは実際の長さに基づいて決定される。定規は、部分的に透明である場合があり、透明でない場合もある。定規は、従来の定規のように見える場合があり、見えない場合もある。いくつかの実施形態では、定規は一連のドット、一連の刻み、1つまたは複数のスケールバー、巻き尺などのように見え得る。(他ではないが)場合によっては、定規の存在のせいで、情景の画像の少なくとも一部が覆い隠されるか、または見えない。
【００３６】
125で、ユーザは、定規と対話することが可能になり得る。たとえば、ユーザは定規を拡張するか、または短縮することができ得る。たとえば、実際の12インチに対応する定規は、実際の14インチに対応する定規に拡張されてもよい。ユーザは、たとえば、定規全体を水平もしくは垂直に移動するか、または定規を回転することによって、定規を移動することができ得る。いくつかの実施形態では、ユーザは、定規の端部または中心を新しい位置にドラッグすることによって、定規と対話することができる。いくつかの実施形態では、ユーザは、セッティングを介して(たとえば、定規を再配置する、測定単位を設定する、定規の長さを設定する、ディスプレイ特性を設定する、など)、定規と対話することができる。
【００３７】
いくつかの実施形態では、刻み間の画像ベースの距離が対話の後変化する。たとえば、ユーザが垂直の向きから水平の向きに定規を回転した場合、(たとえば、カメラの傾きにより、垂直に向けられた定規により不均一な間隔が必要になる可能性があるように、)回転により、目盛間の距離がより均一になり得る。いくつかの実施形態では、刻み間の実際ベースの距離が対話の後変化する。たとえば、「1インチ」の刻み間の実際の距離は、定規が水平に向けられているとき1cmの画像ベースの刻み間の距離に対応するが、定規が垂直に向けられているとき0.1cmの画像ベースの刻み間の距離に対応し得る。したがって、水平から垂直に回転すると、定規上のスケーリングは自動的に変化して、ユーザが定規を使用してより簡単に寸法または距離を推定することが可能になり得る。
【００３８】
方法100の130で、測定点またはエンドポイントのユーザ入力が受け取られ得る。たとえば、ユーザは、(たとえば、開始点および終了点でディスプレイ画面をタッチすること、開始点および終了点をクリックすること、または他の方法でポイントを識別することによって、)画像ベースの開始点および画像ベースの終了点を識別することができる。いくつかの実施形態では、これらのポイントの各々は、画像空間内の座標に対応する。
【００３９】
135で、ユーザの測定点入力に基づいて実際の距離が推定され得る。たとえば、ユーザ入力は、各々が2次元の画像ベースの座標に対応する開始点および終了点を含んでいてもよい。115で決定された変換は、各ポイントに適用することができる。次いで、変換されたポイント間の距離を推定することができる。この距離は、各ポイントが基準物体の表面の平面に沿っていると仮定されるとき、2つのポイント間の実際の距離の推定値であり得る。
【００４０】
140で、推定された距離が出力される。たとえば、開始点および終了点が識別された後(たとえば、ほとんど即時に)、距離はユーザに提示または表示されてもよい。
【００４１】
いくつかの実施形態では、方法100は120〜125を含まず、かつ/または130〜140を含まない。他の実装形態も考えられる。
【００４２】
115で決定された変換は、図1に示されていない他の適用例に適用されてもよい。たとえば、(たとえば、空の床面積の)実際の距離を計算することができ、ユーザは、画像化されたセッティングが別の物体を含むために拡張される可能性があるかどうかについて通知され得る。1つの具体的な例として、リビングルームの画像を取り込むことができる。基準物体を部屋の床に配置することができ、変換を決定することができ、壁に対する空きスペースの距離を識別することができる。(店舗内の)ソファの画像を取り込むことができる。基準物体を部屋の床に配置することができ、別の変換を決定することができ、椅子の床寸法を決定することができる。次いで、椅子がリビングルーム内の空きスペースに適合するかどうかを判定することができる。場合によっては、物体が適合するとき、拡張されたセッティングを表示することができる。
【００４３】
図3Aは、実際の距離を推定するためのシステムの一例を示す。この実施形態では、基準物体はカード305を含む。基準物体はテーブル310に配置される。カードの隅315は、基準特徴として検出される。したがって、隅の各々が検出され、画像ベースの座標と関連付けることができる。これらの座標およびカードの既知の空間特性(たとえば、寸法)を使用して、変換を決定することができる。次いで、ユーザは、ディスプレイ画面をタッチすることによって、開始点320aおよび終了点320bを識別することができる。その後、カーソルマーカがこれらの位置に表示される。決定された変換を使用して、開始点と終了点との間の実際の距離を推定することができる。この推定は、2つのポイントがカードの表面の平面に沿っているとの仮定に基づくことができる。画面は、決定された実際の距離をユーザに通知する距離表示325を含む。図示されたように、距離表示325は、距離の推定数値(「3.296321」)、提示されているもの(「物体の長さ」)および/または単位(「インチ」)を含み得る。
【００４４】
図3Aは、ユーザに利用可能ないくつかの他のオプションも示す。たとえば、ユーザは、たとえば、ズーム機能330を使用して、画像のズームインまたはズームアウトが可能であり得る。変換はズームの後再計算することができ、変換はズームによって影響された既知の倍率スケールに基づいて調整することができる。一実施形態では、ユーザは、(たとえば、画像取込みオプション335を選択することによって、)新しい画像が取り込まれるときを能動的に示すことができる。いくつかの実施形態では、画像は、ある時間間隔の間(たとえば、プログラムが動作している間)連続して、または規則的に取り込まれる。
【００４５】
ユーザは、たとえば、各ポイントを新しい位置にドラッグアンドドロップすること、または(たとえば、ポイント削除オプション340を使用して)ポイントを削除し、新しいポイントを作成することによって、測定点(たとえば、終了点および開始点)を修正することができる。ユーザは、(たとえば、測定特性機能345を使用して)測定特性を設定することが可能になり得る。たとえば、ユーザは、測定の単位、図示された信頼性メトリクスなどを識別することが可能であり得る。ユーザは、(たとえば、定規表示オプション350を使用して)定規を見せるか、または隠すことも可能であり得る。
【００４６】
図3Bは、実際の距離を推定するためのシステムの一例を示す。この実施形態は、図3Aに示された実施形態と同様である。1つの相違は、追加の定規360が図示されていることである。図3Bは、表示することができる異なるタイプの定規を強調する。一実施形態では、定規は、見えない線に沿って延在する一連のマーキングから構成され得る。たとえば、図3Aおよび図3Bでは、定規355aまたは355bのいずれかの中の隣接するドット間の各距離は、(たとえば、1インチの)固定された実際の距離に対応することができる。定規は、画像全体に及ぶ場合があり、及ばない場合もある。図3Aおよび図3Bは、2つの見えない線の定規355aおよび355bの例を示す。この実施形態では、定規は、2つの定規355aおよび355bが垂直の実際の方向に対応する方向を表すように、最初に基準カード305の境界に沿って配置される。定規の最初の位置は、基準物体を縁取り、画像の縁部に対して平行に、実空間では別の定規に対して垂直に、画像空間では別の定規に対して垂直に、画像の中心で交差するなどのように配置され得る。
【００４７】
図3Bは、別の定規360を示す。この定規の外観は従来の定規と同様である。定規360は、ユーザが下にある画像を見ることができるように、透明であり得る。定規360は、同じく一連のマーキングを有してもよく、隣接するマーキング間の距離は、固定された実際の距離(たとえば、1インチ)に対応し得る。図示されていないが、定規は、(1つ、複数またはすべてのマーキングに関連付けられた)数字および/または(たとえば、測定の単位を示す)テキストを含んでいてもよい。定規360のマーキングは一定の縮尺でないが、しばしば、画像の距離に関連付けられた実際の距離を識別することが、単一の倍率を識別することよりも複雑であるという事実を強調するように示される。たとえば、イメージングデバイスは、対象の平面に対して傾けられ得る。したがって、隣接するマーキング間の距離が固定された実際の距離に対応することを示す方式でマーキングが表示された場合、マーキング間の画像ベースの距離は、定規の長さに沿って変化し得る。
【００４８】
場合によっては、(たとえば、定規355と同様の、または定規360と同様の)ただ1つのタイプの定規が提示される。場合によっては、(同じタイプまたは異なるタイプの)複数の定規が提示される。たとえば、図3Bでは、2つの定規355が示される。これにより、ユーザが複数の方向に沿った寸法または距離を同時に推定することが可能になる。場合によっては、複数の定規は、それらの交点で定規を分離する画像ベースの角度に関連付けられた実際の角度が固定されるような方式で、提示される。たとえば、定規は、実世界で垂直の方向に沿って推定された距離を常に識別しているように提示され得る。
【００４９】
図4は、一実施形態により、実際の距離を推定するためのシステム400を示す。システムは、電子デバイス、ポータブルデバイスおよび/またはモバイルデバイス(たとえば、携帯電話、スマートフォン、携帯情報端末、タブレットコンピュータ、ラップトップコンピュータ、デジタルカメラ、ハンドヘルドゲーム機など)であり得るデバイスを含んでいてもよい。図示されたように、システム400は、ユーザ410によって使用され得るデバイス405(たとえば、モバイルデバイスまたは携帯電話)を含む。デバイス405は、トランシーバ415を含むことができ、このトランシーバ415により、デバイスがデータおよび/または音声通信を送信および/または受信することが可能になり得る。デバイス405は、(たとえば、トランシーバ415を介して)ネットワーク420(たとえば、ワイヤレスネットワークおよび/またはインターネット)に接続されてもよい。ワイヤレスネットワークを介して、デバイス405は外部サーバ425と通信することが可能であり得る。
【００５０】
デバイス405は、マイクロフォン430を含み得る。マイクロフォン430により、モバイルデバイス405がデバイスの周囲の物理的環境から音声データを収集するまたは取り込むことが可能になり得る。デバイス405は、(たとえば、通話中に別のデバイスのユーザから受信されたか、またはユーザ410に命令もしくは通知するためにデバイスによって生成された)音声データを放出するスピーカ435を含み得る。デバイス405は、ディスプレイ440を含み得る。ディスプレイ440は、図3A〜図3Bに示されたディスプレイなどのディスプレイを含み得る。ディスプレイ440は、リアルタイムまたはリアルタイムでない画像をユーザ410に提示し、(たとえば、ユーザ入力のエンドポイントに基づいて決定された距離を表示すること、または画像に定規を重ね合わせることによって、)画像に沿った距離に関連付けられた実際の距離をユーザに通知することができる。ディスプレイ440は、(たとえば、ユーザ410が画像を取り込み、画像上に重ね合わされた実際の距離の定規を見て、定規を移動し、画像内の測定エンドポイントを識別するなどを可能にするために、)対話オプションをユーザ410に提示する。デバイス405は、ユーザ入力コンポーネント445を含み得る。ユーザ入力コンポーネント445には、たとえば、ボタン、キーボード、ナンバーパッド、タッチスクリーン、マウスなどが含まれ得る。ユーザ入力コンポーネント445により、たとえば、ユーザ410が定規を移動し、セッティング(たとえば、定規または測定のセッティング)を修正し、測定エンドポイントを識別し、新しい画像を取り込むなどが可能になり得る。図示されていないが、デバイス405は、イメージングコンポーネント(たとえば、カメラ)も含み得る。イメージングコンポーネントは、たとえば、レンズ、光源などを含み得る。
【００５１】
デバイス405は、プロセッサ450を含んでいてもよく、かつ/またはデバイス405は、プロセッサ455を有する外部サーバ425に結合されてもよい。プロセッサ450および/または455は、任意の上記のプロセスの一部または全部を実行することができる。場合によっては、(たとえば、実際の距離を決定する)変換の識別および/または適用は、デバイス405で局所的に実行される。場合によっては、外部サーバのプロセッサ455は、変換の決定および/または適用に関与しない。場合によっては、プロセッサ450および455の両方が関与する。
【００５２】
デバイス405は記憶デバイス460を含み得、かつ/または、デバイス405は、記憶デバイス465を有する外部サーバ425に結合され得る。記憶デバイス460および/または465は、画像、基準データ(たとえば、基準特徴および/もしくは基準物体の寸法)、カメラのセッティング、ならびに/または変換を記憶することができる。たとえば、画像を取り込み、画像データベース480に記憶することができる。画像内で検出されるべき基準特徴を示す基準データ、および特徴に関係する実際の距離データ(たとえば、距離の分離)は、基準データベース470に記憶することができる。これらの基準データおよび画像を使用して、プロセッサ450および/または455は変換を決定することができ、次いで、決定は変換データベース475に記憶することができる。変換を使用して、仮想定規を画像上に重ね合わせ、ユーザ410に表示することができ、かつ/または、(たとえば、ユーザが定義した)画像の距離に対応する実際の距離を、(たとえば、プロセッサ450および/または455によって)決定することができる。
【００５３】
図5は、一実施形態により、実際の距離を推定するためのシステム500を示す。システム500の全部または一部は、電子デバイス、ポータブルデバイス、および/またはモバイルデバイスなどのデバイスに含まれ得る。場合によっては、システム500の一部はリモートサーバに含まれる。
【００５４】
システム500はイメージングデバイス505を含む。イメージングデバイス505は、たとえばカメラを含んでいてもよい。イメージングデバイス505は、情景を視覚的に画像化し、それによって画像を取得するように構成することができる。したがって、たとえば、イメージングデバイス505は、レンズ、ライトなどを含んでいてもよい。
【００５５】
イメージングデバイス505によって取得された1つまたは複数の画像は、画像データベース510に記憶することができる。たとえば、イメージングデバイス505によって取得された画像はデジタル画像を含んでいてもよく、デジタル画像に対応する電子情報および/またはデジタル画像自体は、画像データベース510に記憶することができる。画像は、固定の時間期間の間、ユーザが削除するまで、イメージングデバイス505が別の画像を取り込むまで、などに記憶することができる。
【００５６】
取込み画像は、画像分析器515によって分析することができる。画像分析器515は、画像プリプロセッサ520を含み得る。画像プリプロセッサ520は、たとえば、画像のコントラスト、輝度、色分布などを調整することができる。事前処理された画像は、基準特徴検出器525によって分析することができる。基準特徴検出器525は、たとえば、縁部検出器またはコントラスト分析器を含み得る。基準特徴検出器525は、縁部、隅、特定のパターンなどを検出するように試みることができる。詳細には、基準特徴検出器525は、画像内の基準特徴または基準物体の1つもしくは複数の部分を検出するように試みることができる。いくつかの実施形態では、基準特徴検出器525は、ユーザ入力分析器を備える。たとえば、基準特徴検出器525は、入力デバイス(たとえば、タッチスクリーン)を使用して基準特徴の画像位置を識別し、入力を受け取り、任意の必要な変換を実行して画像を望ましいユニットおよびフォーマットに変換するように、ユーザが命令されたことを識別することができる。基準特徴検出器は、1つまたは複数の画像ベースの空間特性(たとえば、座標、長さ、形状など)を出力することができる。
【００５７】
1つまたは複数の画像ベースの空間特性は、変換識別器530によって分析することができる。変換識別器530は、基準特徴データベース535を含み得る。基準特徴データベース535は、基準物体に関連する実際の空間特性を含み得る。変換識別器530は、(基準特徴検出器525によって出力された)1つまたは複数の画像ベースの空間特性を、(基準特徴データベース535から識別された)1つまたは複数の実際ベースの空間特性に関連付ける、基準特徴関連付け器540を含み得る。場合によっては、特徴の厳密な対応は本質的ではない。たとえば、基準特徴が長方形のカードの4つの縁部に対応する場合、画像ベースの縁部のいずれが実際ベースの「長い」縁部に対応するかを認識することは十分であり得る(1つの長い縁部を他と区別することは本質的でない)。画像ベースの空間特性および関連付けられた実際ベースの空間特性を使用して、変換識別器530は、変換(たとえば、ホモグラフィ)を決定することができる。
【００５８】
本明細書に記載された定規などの定規を生成するために、定規生成器545によって変換を使用することができる。生成された定規は、(たとえば、基準物体の表面の平面に沿った)画像内の距離に対応する実際の距離を識別することができる。定規はディスプレイ550に表示され得る。ディスプレイ550は、さらに、最初にイメージングデバイス505によって取り込まれ、画像データベース510に記憶された、取り込まれた画像を表示することができる。場合によっては、ディスプレイ550は、(たとえば、変換の識別または基準特徴の検出の間に使用される画像ではない)現在の画像を表示する。(変換は、たとえば、検出されたデバイスの移動に基づいて、固定されて保持されるか、調整され得る。)定規は表示された画像に重ね合わされ得る。ユーザ入力は、ユーザが生成された定規と対話することができるように、ユーザ入力コンポーネント555を介して受け取ることができる。たとえば、ユーザは定規を回転するか、または拡張することができ得る。ユーザ入力コンポーネント555は、(たとえば、タッチスクリーンとして)ディスプレイと一体化される場合があり、一体化されない場合もある。
【００５９】
場合によっては、距離推定器560は、画像ベースの距離に関連付けられた実際の距離を推定することができる。たとえば、ユーザは、(ユーザ入力コンポーネントを介して)表示された画像内の開始点および終了点を識別することができる。変換識別器530によって識別された変換を使用して、(基準物体の表面の平面に沿った)これらのポイントの間の推定された実際の距離を推定することができる。推定された距離はディスプレイ550に表示され得る。
【００６０】
場合によっては、イメージングデバイス505は繰り返し画像を取り込み、画像分析器は繰り返し画像を分析し、変換識別器は繰り返し変換を識別する。したがって、リアルタイムまたはリアルタイムに近い画像は、ディスプレイ550に表示されてもよく、重ね合わされた定規または推定された距離は、頻繁に更新された変換に基づいて、かなり正確のままであり得る。
【００６１】
図6に示されたコンピュータシステムは、前述のコンピュータ化デバイスの一部として組み込まれてもよい。たとえば、コンピュータシステム600は、本出願で説明されたモバイルデバイスおよび/またはリモートコンピュータシステムのコンポーネントのうちのいくつかを表すことができる。図6は、本明細書に記載されたような様々な他の実施形態によって提供される方法を実行することができ、かつ/または、外部サーバ425および/もしくはデバイス405として機能することができるコンピュータシステム600の一実施形態の略図を提供する。図6は、必要に応じて、そのうちのいずれかまたはすべてを利用することができる様々な構成要素の一般化された例示を提供することだけを意味することに留意されたい。したがって、図6は、個々のシステム要素を、比較的分離して、または比較的統合して、どのように実装することができるかを大まかに示す。
【００６２】
コンピュータシステム600は、バス605を介して電気的に結合され得る(または適宜、他の何らかの形で接続し得る)ハードウェア要素を備えるように図示されている。ハードウェア要素には、限定はしないが、1つもしくは複数の汎用プロセッサおよび/または1つもしくは複数の(デジタル信号処理チップ、グラフィックス加速プロセッサなどの)専用プロセッサを含む1つまたは複数のプロセッサ610、限定はしないが、マウス、キーボードなどを含むことができる1つまたは複数の入力デバイス615、ならびに限定はしないが、表示デバイス、プリンタなどを含むことができる1つまたは複数の出力デバイス620が含まれ得る。
【００６３】
コンピュータシステム600は、1つまたは複数の記憶デバイス625をさらに含む(かつ/またはこれらと接続する)ことができ、この1つまたは複数の記憶デバイス625は、限定はしないが、ローカルストレージおよび/もしくはネットワークアクセス可能ストレージを含むことができ、かつ/または、限定はしないが、プログラマブル、フラッシュ更新可能などにすることができる、ディスクドライブ、ドライブアレイ、光学記憶デバイス、ランダムアクセスメモリ(RAM)および/もしくは読取り専用メモリ(ROM)などの固体状態記憶デバイスを含むことができる。そのような記憶デバイスは、限定はしないが、様々なファイルシステム、データベース構造などを含む任意の適切なデータストアを実装するように構成されてもよい。
【００６４】
コンピュータシステム600は、限定はしないが、モデム、ネットワークカード(ワイヤレスもしくは有線)、赤外線通信デバイス、ワイヤレス通信デバイス、および/もしくは(Bluetooth（登録商標）デバイス、802.11デバイス、WiFiデバイス、WiMaxデバイス、セルラー通信設備などの)チップセット、ならびに/または同様のものを含むことができる、通信サブシステム630を含むことも可能である。通信サブシステム630により、データが、(一例をあげると、以下に記載されるネットワークなどの)ネットワーク、他のコンピュータシステム、および/または本明細書に記載された任意の他のデバイスと交換されることが可能になり得る。多くの実施形態では、コンピュータシステム600は、上述されたように、RAMデバイスまたはROMデバイスを含むことができる作業メモリ635をさらに備える。
【００６５】
コンピュータシステム600は、本明細書に記載されたように、オペレーティングシステム640、デバイスドライバ、実行可能ライブラリ、ならびに/または、様々な実施形態によって提供されるコンピュータプログラムを含んでいてもよく、かつ/もしくは、他の実施形態によって提供された方法を実装しシステムを構成するように設計されていてもよく、1つもしくは複数のアプリケーションプログラム645などの他のコードを含む、作業メモリ635内に現在配置されているものとして図示されたソフトウェア要素を備えることもできる。単に例として、上記で説明された方法に関して記載された1つまたは複数の手順は、コンピュータ(および/またはコンピュータ内のプロセッサ)によって実行可能なコードおよび/または命令として実装することが可能であり、次いで、一態様では、そのようなコードおよび/または命令は、記載された方法に従って1つまたは複数の動作を実行するように汎用コンピュータ(もしくは他のデバイス)を構成し、かつ/または適合させるために使用することができる。
【００６６】
1組のこれらの命令および/またはコードは、上述された記憶デバイス625などのコンピュータ可読記憶媒体に記憶することができる。場合によっては、記憶媒体は、システム600などのコンピュータシステム内に組み込むことができる。他の実施形態では、記憶媒体は、コンピュータシステムから分離し(たとえば、コンパクトディスクなどの取り外し可能な媒体)、かつ/またはインスタレーションパッケージで提供されることも可能であり、これにより、記憶媒体を使用して、そこに格納されている命令/コードで汎用コンピュータをプログラムし、構成し、かつ/または適合させることができる。これらの命令は、コンピュータシステム600によって実行可能である、実行可能コードの形態をとることが可能であり、かつ/または、コンピュータシステム600で(たとえば、様々な一般的に利用可能なコンパイラ、インスタレーションプログラム、圧縮/解凍ユーティリティなどのいずれかを使用して)コンパイルおよび/またはインストールした後に実行可能コードの形態をとる、ソースコードおよび/もしくはインストール可能コードの形態をとることが可能である。
【００６７】
特定の要件に従って実質的な変形が行われ得ることが、当業者には明らかであろう。たとえば、カスタマイズされたハードウェアを使用することも可能であり、かつ/または、特定の要素は、ハードウェア、(アプレットなどのような移植可能なソフトウェアを含む)ソフトウェア、もしくはその両方に実装することが可能である。さらに、ネットワーク入出力デバイスなどの他のコンピューティングデバイスとの接続が使用されてもよい。
【００６８】
上述されたように、一態様では、いくつかの実施形態は、(コンピュータシステム600などの)コンピュータシステムを使用して、様々な実施形態による方法を実行し得る。1組の実施形態によれば、そのような方法の手順のうちのいくつかまたはすべては、プロセッサ610が、作業メモリ635に含まれている(オペレーティングシステム640および/またはアプリケーションプログラム645などの他のコードに組み込むことができる)1つまたは複数の命令の1つまたは複数のシーケンスを実行したことに応答して、コンピュータシステム600によって実行される。そのような命令は、記憶デバイス625のうちの1つまたは複数などの別のコンピュータ可読媒体から作業メモリ635に読み込まれ得る。単に例として、作業メモリ635に含まれている命令のシーケンスの実行は、プロセッサ610に、本明細書に記載された方法の1つまたは複数の手順を実行させることができる。
【００６９】
本明細書で使用する「機械可読媒体」および「コンピュータ可読媒体」という用語は、機械を特定の方式で動作させるデータを提供することに関与する任意の媒体を指す。コンピュータ可読媒体および記憶媒体は、一時的な伝搬信号は指さない。コンピュータシステム600を使用して実施される実施形態では、様々なコンピュータ可読媒体が、命令/コードを実行するために1つもしくは複数のプロセッサ610に提供する際に必要となる可能性があり、かつ/またはそのような命令/コードを記憶するために使用される可能性がある。多くの実施態様では、コンピュータ可読媒体は、物理的および/または有形の記憶媒体である。そのような媒体は、不揮発性媒体または揮発性媒体の形態をとり得る。不揮発性媒体には、たとえば、記憶デバイス625などの光ディスクおよび/または磁気ディスクが含まれる。揮発性媒体には、限定はしないが、作業メモリ635などのダイナミックメモリが含まれる。
【００７０】
物理的および/または有形のコンピュータ可読媒体の一般的な形態には、たとえば、フロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、磁気テープまたは任意の他の磁気媒体、CD-ROM、任意の他の光学媒体、パンチカード、紙テープ、穴のパターンを有する任意の他の物理的媒体、RAM、PROM、EPROM、フラッシュEPROM、任意の他のメモリチップまたはカートリッジなどが含まれる。
【００７１】
上記で説明された方法、システム、およびデバイスは例である。様々な構成は、様々な手順または較正要素を、適宜、省略し、置換し、または追加することができる。たとえば、代替構成では、本方法は、記載された順序とは異なる順序で実行される場合があり、ならびに/または、様々なステージが追加され、省略され、かつ/もしくは組み合わされてもよい。また、いくつかの構成に関して記載された特徴は、様々な他の構成で組み合わされてもよい。構成の様々な態様および要素は、同様の方式で組み合わされてもよい。また、技術は発展するものであり、したがって、要素の多くは例であり、本開示または特許請求の範囲の範囲を限定しない。
【００７２】
(実装形態を含む)例示的な構成を完全に理解するために、説明には具体的な詳細が与えられている。しかしながら、構成は、これらの具体的な詳細なしに実践することができる。たとえば、構成を不明瞭にすることを回避するために、よく知られている回路、プロセス、アルゴリズム、構造、および技法は、不要な詳細なしに示された。この説明は例示的な構成のみを提供し、特許請求の範囲の範囲、適用可能性、または構成を限定しない。むしろ、これらの構成の前述の説明は、記載された技法を実装するための有効な説明を当業者に提供する。本開示の趣旨または範囲から逸脱することなく、要素の機能および構成に様々な変更を行うことができる。
【００７３】
また、構成は、流れ図またはブロック図として描写されるプロセスとして記載され得る。各々は動作を逐次プロセスとして記載する場合があるが、動作の多くは、並行して実行するか、または同時に実行することができる。加えて、動作の順序は並び替えられてもよい。プロセスは、図に含まれていない追加のステップを有していてもよい。さらに、方法の例は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはそれらの任意の組合せによって実装することができる。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコードで実装されるとき、必要なタスクを実行するプログラムコードまたはコードセグメントは、記憶媒体などの非一時的コンピュータ可読媒体に記憶することができる。プロセッサは記載されたタスクを実行することができる。
【００７４】
いくつかの例示的な構成を記載してきたが、様々な変更、代替構造、および均等物は、本開示の趣旨から逸脱することなく使用することができる。たとえば、上記の要素は、より大きいシステムの構成要素であり得るし、他の規則は、適用例に優先するか、そうでなければそれらを変更することができる。また、上記の要素が考慮される前、間、または後に、いくつかのステップを行うことができる。したがって、上記の説明は、特許請求の範囲を制限しない。
【符号の説明】
【００７５】
405  デバイス
410  ユーザ
425  外部サーバ
440  ディスプレイ
445  ユーザ入力コンポーネント
450  プロセッサ
455  プロセッサ
460  記憶デバイス
465  記憶デバイス
470  基準データベース
475  変換データベース
480  画像データベース
【図１】
2015510112.tif 000005
【図２】
2015510112.tif 000006
【図３Ａ】
2015510112.tif 000007
【図３Ｂ】
2015510112.tif 000008
【図５】
2015510112.tif 000009
【図６】
2015510112.tif 000010
【図４】
2015510112.tif 000011
【国際調査報告】
2015510112.tif 000012
2015510112.tif 000013