IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ センセン ネットワークス グループ ピーティーワイ リミテッドの特許一覧

特表2023-516500画像ベースの場所決定のためのシステム及び方法
<>
  • 特表-画像ベースの場所決定のためのシステム及び方法 図1
  • 特表-画像ベースの場所決定のためのシステム及び方法 図2
  • 特表-画像ベースの場所決定のためのシステム及び方法 図3
  • 特表-画像ベースの場所決定のためのシステム及び方法 図4
  • 特表-画像ベースの場所決定のためのシステム及び方法 図5
  • 特表-画像ベースの場所決定のためのシステム及び方法 図6
  • 特表-画像ベースの場所決定のためのシステム及び方法 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-04-19
(54)【発明の名称】画像ベースの場所決定のためのシステム及び方法
(51)【国際特許分類】
   G06T 7/00 20170101AFI20230412BHJP
【FI】
G06T7/00 350C
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022554563
(86)(22)【出願日】2021-02-25
(85)【翻訳文提出日】2022-11-02
(86)【国際出願番号】 AU2021050162
(87)【国際公開番号】W WO2021179036
(87)【国際公開日】2021-09-16
(31)【優先権主張番号】2020900736
(32)【優先日】2020-03-10
(33)【優先権主張国・地域又は機関】AU
(31)【優先権主張番号】2020902942
(32)【優先日】2020-08-18
(33)【優先権主張国・地域又は機関】AU
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.TENSORFLOW
(71)【出願人】
【識別番号】518400022
【氏名又は名称】センセン ネットワークス グループ ピーティーワイ リミテッド
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】チャラ,サブハッシュ
(72)【発明者】
【氏名】ヴォ,ニャット
(72)【発明者】
【氏名】クイン,ルイス
(72)【発明者】
【氏名】ヴォ,ドゥク
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096BA18
5L096CA02
5L096FA69
5L096HA09
5L096HA11
5L096JA09
5L096KA04
5L096KA15
(57)【要約】
実施形態は、画像に基づいた場所決定のシステム及び方法に関する。実施形態は、マッチする画像を識別するために、背景マッチングモジュールを使用して、入力画像と参照背景画像のライブラリ内の画像との比較を行う。実施形態は、マッチする背景画像に関連付けられたメタデータに基づいて、入力画像に関連付けられた場所を決定する。
【特許請求の範囲】
【請求項1】
場所決定のためのシステムであって、前記システムが、
少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサにアクセス可能なメモリと、を含むコンピューティングデバイスを含み、
前記メモリが、参照背景画像及び各参照背景画像のメタデータのライブラリを含み、前記メタデータが、場所情報を含み、
前記メモリが、
リモートコンピューティングデバイスから入力画像データを受信することであって、前記入力画像データが、決定されるべき場所で前記リモートコンピューティングデバイスによって捕捉された少なくとも1つの画像の画像データを含む、受信することと、
マッチする参照背景画像を識別するために、背景マッチングモジュールを使用して、前記受信した入力画像データを処理することと、
前記ライブラリ内の前記マッチする参照背景画像の前記メタデータに基づいて、前記入力画像データに対応した場所情報を決定することと、
前記決定された場所情報を前記リモートコンピューティングデバイスに送信することと、
を行うように前記少なくとも1つのプロセッサを構成するための、前記少なくとも1つのプロセッサによって実行可能なプログラムコードを保存する、システム。
【請求項2】
前記背景マッチングモジュールが、背景特徴抽出器ニューラルネットワークを含み、前記少なくとも1つのプロセッサが、
前記背景特徴抽出器ニューラルネットワークを使用して、前記少なくとも1つの捕捉画像から背景記述子を抽出することと、
前記抽出された背景記述子に基づいて、前記背景画像のライブラリから1つ又は複数の候補マッチング画像を選択することと、
前記マッチする参照背景画像を選択するために、前記少なくとも1つの捕捉画像と前記候補マッチング画像との間で幾何学的マッチングを行うことと、
によって、前記マッチする参照背景画像を識別するようにさらに構成される、請求項1に記載のシステム。
【請求項3】
前記幾何学的マッチングが、前記少なくとも1つの捕捉画像と前記候補マッチング画像のそれぞれとにおいて、共通の視覚的特徴を識別することを含む、請求項2に記載のシステム。
【請求項4】
前記幾何学的マッチングが、ランダムサンプルコンセンサスプロセスを使用して行われる、請求項2又は3に記載のシステム。
【請求項5】
前記背景特徴抽出器ニューラルネットワークが、前記少なくとも1つの捕捉画像内の1つ又は複数の静止した特徴に対応した背景記述子を抽出するように訓練される、請求項2~4の何れか一項に記載のシステム。
【請求項6】
前記メモリが、
前記リモートコンピューティングデバイスから前記入力画像に対応したGPSデータを受信することであって、前記GPSデータが低データ品質指標を含む、受信することと、
前記決定された場所情報に基づいて、GPS訂正信号を生成することと、
前記GPS訂正信号を前記リモートコンピューティングデバイスに送信することと、
を行うように前記少なくとも1つのプロセッサをさらに構成するための、前記少なくとも1つのプロセッサによって実行可能なプログラムコードを保存する、請求項1~5の何れか一項に記載のシステム。
【請求項7】
前記メモリが、
前記リモートコンピューティングデバイスから前記入力画像に対応したGPSデータを受信することであって、前記GPSデータが低データ品質指標を含む、受信することと、
前記GPSデータに基づいて、前記背景画像のライブラリから画像のサブセットを決定することと、
前記抽出された背景記述子に基づいて、前記背景画像のライブラリ由来の前記画像のサブセットから、前記1つ又は複数の候補マッチング画像を選択することと、
を行うように前記少なくとも1つのプロセッサをさらに構成するための、前記少なくとも1つのプロセッサによって実行可能なプログラムコードを保存する、請求項1~5の何れか一項に記載のシステム。
【請求項8】
都市部における場所決定のためのシステムであって、前記システムが、
少なくとも1つのカメラであって、前記少なくとも1つのカメラが前記都市部を移動中に、前記少なくとも1つのカメラが前記都市部の画像を捕捉するように位置決めされる、少なくとも1つのカメラと、
前記少なくとも1つのカメラと共に移動し、及び前記捕捉画像を受信するために前記少なくとも1つのカメラと通信するコンピューティングデバイスと、
を含み、
前記コンピューティングデバイスが、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサにアクセス可能なメモリと、を含み、
前記メモリが、参照背景画像及び各参照背景画像のメタデータのライブラリを含み、前記メタデータが、場所情報を含み、
前記メモリが、
マッチする参照背景画像を識別するために、背景マッチングモジュールを使用して、捕捉画像を処理することと、
前記マッチする参照背景画像の前記メタデータに基づいて、前記少なくとも1つのカメラ及び前記コンピューティングデバイスの場所を決定することと、
を行うように前記少なくとも1つのプロセッサを構成するための、前記少なくとも1つのプロセッサによって実行可能なプログラムコードを保存する、システム。
【請求項9】
前記背景マッチングモジュールを使用して前記捕捉画像を処理することが、
前記捕捉画像から背景記述子を抽出することと、
前記抽出された背景記述子に基づいて、前記参照背景画像のライブラリから1つ又は複数の候補マッチング画像を選択することと、
前記マッチする参照背景画像を選択するために、前記捕捉画像と、前記候補マッチング画像との間で幾何学的マッチングを行うことと、
を含む、請求項8に記載のシステム。
【請求項10】
前記背景マッチングモジュールが、前記少なくとも1つの捕捉画像内の1つ又は複数の静止した特徴に対応した背景記述子を抽出するように構成された背景特徴抽出器ニューラルネットワークを含む、請求項9に記載のシステム。
【請求項11】
前記幾何学的マッチングが、ランダムサンプルコンセンサスプロセスを使用して行われ、及び
前記幾何学的マッチングが、前記少なくとも1つの捕捉画像と前記候補マッチング画像のそれぞれとにおいて、共通の視覚的特徴を識別することを含む、請求項9又は10に記載のシステム。
【請求項12】
前記コンピューティングデバイスが、前記場所をリアルタイムで決定するように構成される、請求項8~11の何れか一項に記載のシステム。
【請求項13】
場所決定のためのコンピュータ実装方法であって、前記方法が、メモリと通信する少なくとも1つのプロセッサを含むコンピューティングデバイスによって行われ、前記方法が、
リモートコンピューティングデバイスから前記コンピューティングデバイスによって入力画像を受信することであって、前記入力画像が、決定されるべき場所に対応する、受信することと、
前記メモリに保存された参照背景画像のライブラリの中からマッチする参照背景画像を識別するために、前記コンピューティングデバイスの前記メモリに設けられた背景マッチングモジュールを使用して、前記受信した入力画像を処理することと、
前記マッチする参照背景画像の前記メタデータに基づいて、前記入力画像に対応した場所情報を決定することと、
前記決定された場所情報を前記リモートコンピューティングデバイスに送信することと、
を含む、方法。
【請求項14】
前記背景マッチングモジュールが、背景特徴抽出器ニューラルネットワークを含み、前記方法が、
前記背景特徴抽出器ニューラルネットワークを使用して、前記少なくとも1つの捕捉画像から背景記述子を抽出することと、
前記抽出された背景記述子に基づいて、前記背景画像のライブラリから1つ又は複数の候補マッチング画像を選択することと、
前記マッチする参照背景画像を選択するために、前記少なくとも1つの捕捉画像と、前記候補マッチング画像との間で幾何学的マッチングを行うことと、
によって、前記マッチする参照背景画像を識別することをさらに含む、請求項13に記載の方法。
【請求項15】
前記幾何学的マッチングが、前記少なくとも1つの捕捉画像と前記候補マッチング画像のそれぞれとにおいて、共通の視覚的特徴を識別することを含む、請求項14に記載の方法。
【請求項16】
前記幾何学的マッチングが、ランダムサンプルコンセンサスプロセスを使用して行われる、請求項14又は15に記載の方法。
【請求項17】
前記背景特徴抽出器ニューラルネットワークが、前記少なくとも1つの捕捉画像内の1つ又は複数の恒久的な静止した特徴に対応した背景記述子を抽出するように訓練される、請求項13~16の何れか一項に記載の方法。
【請求項18】
前記方法が、
前記リモートコンピューティングデバイスから前記入力画像に対応したGPSデータを受信することであって、前記GPSデータが低データ品質指標を含む、受信することと、
前記決定された場所情報に基づいて、GPS訂正信号を生成することと、
前記GPS訂正信号を前記リモートコンピューティングデバイスに送信することと、
をさらに含み、
前記GPS訂正信号が、より正確なGPS場所データを決定するために前記リモートコンピューティングデバイスによってアクセス可能な情報を含む、請求項13~17の何れか一項に記載の方法。
【請求項19】
前記方法が、
前記リモートコンピューティングデバイスから前記入力画像に対応したGPSデータを受信することであって、前記GPSデータが低データ品質指標を含む、受信することと、
前記GPSデータに基づいて、前記背景画像のライブラリから画像のサブセットを決定することと、
前記抽出された背景記述子に基づいて、前記背景画像のライブラリ由来の前記画像のサブセットから、前記1つ又は複数の候補マッチング画像を選択することと、
をさらに含む、請求項13~17の何れか一項に記載の方法。
【請求項20】
場所決定のためのコンピュータ実装方法であって、前記方法が、メモリと通信する少なくとも1つのプロセッサを含むコンピューティングデバイスによって行われ、前記方法が、
リモートコンピューティングデバイスから前記コンピューティングデバイスによって入力画像を受信することであって、前記入力画像が、決定されるべき場所に対応する、受信することと、
前記メモリに保存された参照背景画像のライブラリの中からマッチする参照背景画像を識別するために、前記コンピューティングデバイスの前記メモリに設けられた背景マッチングモジュールを使用して、前記受信した入力画像を処理することと、
前記マッチする参照背景画像の前記メタデータに基づいて、前記入力画像に対応した場所情報を決定することと、
前記決定された場所情報を前記リモートコンピューティングデバイスに送信することと、
を含む、方法。
【請求項21】
都市部における場所決定のためのシステムであって、前記システムが、
少なくとも1つのカメラであって、前記少なくとも1つのカメラが前記都市部を移動中に、前記少なくとも1つのカメラが前記都市部の画像を捕捉するように位置決めされる、少なくとも1つのカメラと、
前記少なくとも1つのカメラと共に移動し、及び前記捕捉画像を受信するために前記少なくとも1つのカメラと通信するコンピューティングデバイスと、
を含み、
前記コンピューティングデバイスが、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサにアクセス可能なメモリと、を含み、
前記メモリが、参照背景画像及び各参照背景画像のメタデータのライブラリを含み、前記メタデータが、場所情報を含み、
前記メモリが、
マッチする参照背景画像を識別するために、背景マッチングモジュールを使用して、捕捉画像を処理することと、
前記マッチする参照背景画像の前記メタデータに基づいて、前記少なくとも1つのカメラ及び前記コンピューティングデバイスの場所を決定することと、
を行うように前記少なくとも1つのプロセッサを構成するための、前記少なくとも1つのプロセッサによって実行可能なプログラムコードを保存する、システム。
【請求項22】
コンピュータによって実行されると、前記コンピュータに請求項13~21の何れか一項に記載の方法を行わせる命令を保存するコンピュータ可読ストレージ媒体。
【発明の詳細な説明】
【技術分野】
【0001】
技術分野
[0001] 実施形態は、場所決定のためのシステム及び方法に関する。実施形態は、画像ベースの場所決定のためのシステム及び方法に関する。
【背景技術】
【0002】
背景
[0002] 全地球測位システム(GPS)技術は、GPS受信機と通信するGPS専用衛星との通信によって、場所の決定を支援する。各GPS衛星は、現在の時刻及びその位置に関するデータを含む電波信号を継続的に送信する。衛星が信号を送信した時と、受信機がそれを受信した時との間の時間遅延は、衛星から受信機までの距離に比例する。GPS受信機は、複数の衛星をモニタリングし、受信機の厳密な位置、及び実際の時刻からのずれを決定するために式を解く。正確な場所情報を得るために、GPS受信機が4つの未知数(3つの位置座標及び衛星時刻からのクロックのずれ)を計算するために、4つの衛星がGPS受信機の視野内に存在しなければならない。
【0003】
[0003] GPSベースの場所推定は、GPS受信機の位置を正確に特定するために、少なくとも4つの衛星に対して、遮るもののない見通し線を必要とする。GPS衛星に対する不十分な接続性、又は4つ未満のGPS衛星への接続性は、GPSに基づいた場所の決定の不正確さにつながる。GPS衛星への接続性は、地磁気嵐などの極端な大気条件によっても影響を受け得る。壁、建物、超高層ビル、及び木などの障害物は、GPS受信機への見通し線を遮る場合があり、それによって、不正確な場所推定がもたらされる。都市の一部などの幾つかの障害が存在するエリアでは、GPS場所情報は、信頼性を欠く、又は不正確な場合がある。
【0004】
[0004] 本明細書に含まれる文献、行為、材料、デバイス、又は物品などの何れの記述も、これらの物の何れか又はすべてが、先行技術の基礎の一部を形成すること、又は本出願の各クレームの優先日前にそれが存在したため、本開示に関連した分野において共通の一般知識であったと認めるものと解釈されるものではない。
【0005】
[0005] 本明細書全体を通して、「含む(comprise)」という言葉、又は「comprises」若しくは「comprising」などのバリエーションは、記述された要素、整数値、若しくはステップ、又は一群の要素、整数値、若しくはステップの包含を意味するが、その他の要素、整数値、若しくはステップ、又は一群の要素、整数値、若しくはステップの排除は意味しないことが理解されるだろう。
【発明の概要】
【課題を解決するための手段】
【0006】
概要
[0006] 幾つかの実施形態は、場所決定のためのシステムであって、システムが、
少なくとも1つのプロセッサと、少なくとも1つのプロセッサにアクセス可能なメモリと、を含むコンピューティングデバイスを含み、
メモリが、参照背景画像及び各参照背景画像のメタデータのライブラリを含み、メタデータが、場所情報を含み、
メモリが、
リモートコンピューティングデバイスから入力画像データを受信することであって、入力画像データが、決定されるべき場所でリモートコンピューティングデバイスによって捕捉された少なくとも1つの画像の画像データを含む、受信することと、
マッチする参照背景画像を識別するために、背景マッチングモジュールを使用して、受信した入力画像データを処理することと、
ライブラリ内のマッチする参照背景画像のメタデータに基づいて、入力画像データに対応した場所情報を決定することと、
決定された場所情報をリモートコンピューティングデバイスに送信することと、
を行うように少なくとも1つのプロセッサを構成するための、少なくとも1つのプロセッサによって実行可能なプログラムコードを保存する、システムに関する。
【0007】
[0007] 幾つかの実施形態の背景マッチングモジュールは、背景特徴抽出器ニューラルネットワークを含み、少なくとも1つのプロセッサは、
背景特徴抽出器ニューラルネットワークを使用して、少なくとも1つの捕捉画像から背景記述子を抽出することと、
抽出された背景記述子に基づいて、背景画像のライブラリから1つ又は複数の候補マッチング画像を選択することと、
マッチする参照背景画像を選択するために、少なくとも1つの捕捉画像と候補マッチング画像との間で幾何学的マッチングを行うことと、
によって、マッチする参照背景画像を識別するようにさらに構成される。
【0008】
[0008] 幾つかの実施形態における幾何学的マッチングは、少なくとも1つの捕捉画像と候補マッチング画像のそれぞれとにおいて、共通の視覚的特徴を識別することを含む。幾つかの実施形態では、幾何学的マッチングは、ランダムサンプルコンセンサスプロセスを使用して行われる。
【0009】
[0009] 幾つかの実施形態では、背景特徴抽出器ニューラルネットワークは、少なくとも1つの捕捉画像内の1つ又は複数の静止した特徴に対応した背景記述子を抽出するように訓練される。
【0010】
[0010] 幾つかの実施形態では、メモリは、
リモートコンピューティングデバイスから入力画像に対応したGPSデータを受信することであって、GPSデータが低データ品質指標を含む、受信することと、
決定された場所情報に基づいて、GPS訂正信号を生成することと、
GPS訂正信号をリモートコンピューティングデバイスに送信することと、
を行うように少なくとも1つのプロセッサをさらに構成するための、少なくとも1つのプロセッサによって実行可能なプログラムコードを保存する。
【0011】
[0011] 幾つかの実施形態では、メモリは、
リモートコンピューティングデバイスから入力画像に対応したGPSデータを受信することであって、GPSデータが低データ品質指標を含む、受信することと、
GPSデータに基づいて、背景画像のライブラリから画像のサブセットを決定することと、
抽出された背景記述子に基づいて、背景画像のライブラリ由来の画像のサブセットから、1つ又は複数の候補マッチング画像を選択することと、
を行うように少なくとも1つのプロセッサをさらに構成するための、少なくとも1つのプロセッサによって実行可能なプログラムコードを保存する。
【0012】
[0012] 幾つかの実施形態は、都市部における場所決定のためのシステムであって、システムが、
少なくとも1つのカメラであって、少なくとも1つのカメラが都市部を移動中に、少なくとも1つのカメラが都市部の画像を捕捉するように位置決めされる、少なくとも1つのカメラと、
少なくとも1つのカメラと共に移動し、及び捕捉画像を受信するために少なくとも1つのカメラと通信するコンピューティングデバイスと、
を含み、
コンピューティングデバイスが、少なくとも1つのプロセッサと、少なくとも1つのプロセッサにアクセス可能なメモリと、を含み、
メモリが、参照背景画像及び各参照背景画像のメタデータのライブラリを含み、メタデータが、場所情報を含み、
メモリが、
マッチする参照背景画像を識別するために、背景マッチングモジュールを使用して、捕捉画像を処理することと、
マッチする参照背景画像のメタデータに基づいて、少なくとも1つのカメラ及びコンピューティングデバイスの場所を決定することと、
を行うように少なくとも1つのプロセッサを構成するための、少なくとも1つのプロセッサによって実行可能なプログラムコードを保存する、システムに関する。
【0013】
[0013] 幾つかの実施形態では、背景マッチングモジュールを使用して捕捉画像を処理することは、
捕捉画像から背景記述子を抽出することと、
抽出された背景記述子に基づいて、参照背景画像のライブラリから1つ又は複数の候補マッチング画像を選択することと、
マッチする参照背景画像を選択するために、捕捉画像と候補マッチング画像との間で幾何学的マッチングを行うことと、
を含む。
【0014】
[0014] 幾つかの実施形態では、背景マッチングモジュールは、少なくとも1つの捕捉画像内の1つ又は複数の静止した特徴に対応した背景記述子を抽出するように構成された背景特徴抽出器ニューラルネットワークを含む。
【0015】
[0015] 幾つかの実施形態では、幾何学的マッチングは、ランダムサンプルコンセンサスプロセスを使用して行われ、及び幾何学的マッチングは、少なくとも1つの捕捉画像と候補マッチング画像のそれぞれとにおいて、共通の視覚的特徴を識別することを含む。
【0016】
[0016] 幾つかの実施形態では、コンピューティングデバイスは、場所をリアルタイムで決定するように構成される。
【0017】
[0017] 幾つかの実施形態は、場所決定のためのコンピュータ実装方法であって、方法が、メモリと通信する少なくとも1つのプロセッサを含むコンピューティングデバイスによって行われ、方法が、
リモートコンピューティングデバイスからコンピューティングデバイスによって入力画像を受信することであって、入力画像が、決定されるべき場所に対応する、受信することと、
メモリに保存された参照背景画像のライブラリの中からマッチする参照背景画像を識別するために、コンピューティングデバイスのメモリに設けられた背景マッチングモジュールを使用して、受信した入力画像を処理することと、
マッチする参照背景画像のメタデータに基づいて、入力画像に対応した場所情報を決定することと、
決定された場所情報をリモートコンピューティングデバイスに送信することと、
を含む、方法に関する。
【0018】
[0018] 幾つかの実施形態では、背景マッチングモジュールは、背景特徴抽出器ニューラルネットワークを含み、方法は、
背景特徴抽出器ニューラルネットワークを使用して、少なくとも1つの捕捉画像から背景記述子を抽出することと、
抽出された背景記述子に基づいて、背景画像のライブラリから1つ又は複数の候補マッチング画像を選択することと、
マッチする参照背景画像を選択するために、少なくとも1つの捕捉画像と候補マッチング画像との間で幾何学的マッチングを行うことと、
によって、マッチする参照背景画像を識別することをさらに含む。
【0019】
[0019] 幾つかの実施形態では、幾何学的マッチングは、少なくとも1つの捕捉画像と候補マッチング画像のそれぞれとにおいて、共通の視覚的特徴を識別することを含む。
【0020】
[0020] 幾つかの実施形態では、幾何学的マッチングは、ランダムサンプルコンセンサスプロセスを使用して行われる。
【0021】
[0021] 幾つかの実施形態では、背景特徴抽出器ニューラルネットワークは、少なくとも1つの捕捉画像内の1つ又は複数の恒久的な静止した特徴に対応した背景記述子を抽出するように訓練される。
【0022】
[0022] 幾つかの実施形態の場所決定の方法は、
リモートコンピューティングデバイスから入力画像に対応したGPSデータを受信することであって、GPSデータが低データ品質指標を含む、受信することと、
決定された場所情報に基づいて、GPS訂正信号を生成することと、
GPS訂正信号をリモートコンピューティングデバイスに送信することと、
をさらに含み、
GPS訂正信号は、より正確なGPS場所データを決定するためにリモートコンピューティングデバイスによってアクセス可能な情報を含む。
【0023】
[0023] 幾つかの実施形態では、幾つかの実施形態の場所決定の方法は、
リモートコンピューティングデバイスから入力画像に対応したGPSデータを受信することであって、GPSデータが低データ品質指標を含む、受信することと、
GPSデータに基づいて、背景画像のライブラリから画像のサブセットを決定することと、
抽出された背景記述子に基づいて、背景画像のライブラリ由来の画像のサブセットから、1つ又は複数の候補マッチング画像を選択することと、
をさらに含む。
【0024】
[0024] 幾つかの実施形態は、場所決定のためのコンピュータ実装方法であって、方法が、メモリと通信する少なくとも1つのプロセッサを含むコンピューティングデバイスによって行われ、方法が、
リモートコンピューティングデバイスからコンピューティングデバイスによって入力画像を受信することであって、入力画像が、決定されるべき場所に対応する、受信することと、
メモリに保存された参照背景画像のライブラリの中からマッチする参照背景画像を識別するために、コンピューティングデバイスのメモリに設けられた背景マッチングモジュールを使用して、受信した入力画像を処理することと、
マッチする参照背景画像のメタデータに基づいて、入力画像に対応した場所情報を決定することと、
決定された場所情報をリモートコンピューティングデバイスに送信することと、
を含む、方法に関する。
【0025】
[0025] 幾つかの実施形態は、都市部における場所決定のためのシステムであって、システムが、
少なくとも1つのカメラであって、少なくとも1つのカメラが都市部を移動中に、少なくとも1つのカメラが都市部の画像を捕捉するように位置決めされる、少なくとも1つのカメラと、
少なくとも1つのカメラと共に移動し、及び捕捉画像を受信するために少なくとも1つのカメラと通信するコンピューティングデバイスと、
を含み、
コンピューティングデバイスが、少なくとも1つのプロセッサと、少なくとも1つのプロセッサにアクセス可能なメモリと、を含み、
メモリが、参照背景画像及び各参照背景画像のメタデータのライブラリを含み、メタデータが、場所情報を含み、
メモリが、
マッチする参照背景画像を識別するために、背景マッチングモジュールを使用して、捕捉画像を処理することと、
マッチする参照背景画像のメタデータに基づいて、少なくとも1つのカメラ及びコンピューティングデバイスの場所を決定することと、
を行うように少なくとも1つのプロセッサを構成するための、少なくとも1つのプロセッサによって実行可能なプログラムコードを保存する、システムに関する。
【0026】
[0026] 幾つかの実施形態は、コンピュータによって実行されると、コンピュータに上記実施形態による場所決定の方法を行わせる命令を保存するコンピュータ可読ストレージ媒体に関する。
【図面の簡単な説明】
【0027】
図面の簡単な説明
図1】[0027]幾つかの実施形態による、場所決定のためのシステムのブロック図である。
図2】[0028]幾つかの実施形態による、場所決定のためのプロセスのフローチャートである。
図3】[0029]幾つかの実施形態による、コンピューティングデバイスによって実行される場所決定のためのプロセスのフローチャートである。
図4】[0030]幾つかの実施形態による、リモートサーバによって実行される場所決定のためのプロセスのフローチャートである。
図5】[0031]背景マッチングを示す例示的な画像ペアである。
図6】[0032]背景マッチングを示す別の例示的な画像ペアである。
図7】[0033]幾つかの実施形態による、例示的なコンピュータシステムである。
【発明を実施するための形態】
【0028】
詳細な説明
[0034] 記載の実施形態は、画像を使用した場所決定又は推定のためのシステム及び方法に関する。建物の密度が高い都市部では、GPS信号の接続性及び精度は、路上又は地表面上では劣っていることが多く、それによって、GPSデバイスを使用した不正確な場所決定が引き起こされる。記載の実施形態は、場所情報をリアルタイムで、又はほぼリアルタイムで決定するために、画像処理技術に依存する。記載の実施形態は、画像内の持続的な背景をマッチングさせることによって、都市部における場所を決定するために、画像処理技術に依存する。幾つかの実施形態は、都市部の画像を処理することによって決定された場所に基づいて、GPS訂正信号も生成する。
【0029】
[0035] 図1は、幾つかの実施形態によるシステム100のブロック図である。システム100は、ネットワーク170上で、リモートコンピュータシステム180と通信可能なコンピューティングデバイス130を含む。コンピューティングデバイス130は、少なくとも1つのカメラ120、GPS受信機126、及びディスプレイ127を含む。
【0030】
[0036] コンピューティングデバイス130は、少なくとも1つのプロセッサ132、通信モジュール134、及びメモリ136も含む。メモリ136は、揮発性及び不揮発性両方のメモリを含み得る。幾つかの実施形態では、プロセッサ132は、機械学習プログラム又はプロセスの動作を加速させるように特別に設計されてもよい。具体的には、少なくとも1つのプロセッサ132は、機械学習プロセス又はプログラムの実行を加速させるためのグラフィック処理ユニット(GPU)を含んでもよい。GPUは、高度並列計算動作を可能にし、したがって、リアルタイムで、又はほぼリアルタイムで結果を取得するための機械学習プロセス又はプログラムの実行により適する。幾つかの実施形態では、コンピューティングデバイスは、スマートフォン又はタブレットデバイスを含むエンドユーザハンドヘルドコンピューティングデバイスでもよい。
【0031】
[0037] メモリ136は、参照背景画像ライブラリ144、背景マッチングモジュール152を含み得る。参照背景画像ライブラリ144は、参照背景画像146及び参照背景画像に関連付けられたメタデータ148を含む。背景マッチングモジュール152は、背景特徴抽出器モジュール154及び幾何学的マッチ検証モジュール156を含む。通信モジュール134は、コンピューティングデバイス130とネットワーク170との間の有線又は無線通信を容易にするために必要なハードウェア及びソフトウェアを含む。無線通信は、例えば3G、4G、又は5Gネットワークなどの無線テレコミュニケーションネットワークによって達成することができる。
【0032】
[0038] GPS受信機126は、コンピューティングデバイス130の場所に対応するGPSデータをコンピューティングデバイス130が入手できるようにすることができる。GPS受信機によって生成されたGPSデータは、GPS信号の品質表示を含む。例えば、米国海洋電子機器協会(NMEA:National Marine Electronics Association)0183規格によって規定された「$GPGGA」(全地球測位システム修正データ(Global Positioning System Fix Data))フォーマットで示されたGPSデータは、GPS修正品質指標(GPS fix quality indicator)、水平方向確度低下率指標(HDOP:horizontal dilution of precision)を含む。コンピューティングデバイス130は、GPS受信機126によって生成されたGPSデータを処理し、受信した1つ又は複数のGPSデータ品質指標が、品質の劣ったGPS信号データ又は望ましい確度に届かないGPS信号データを示すかどうかを決定するように構成され得る。幾つかの実施形態では、望ましい確度に届かないGPS信号データは、比較のための背景画像146を絞り込むために、背景マッチングモジュール152によって使用されてもよく、背景マッチングモジュール152における検討する画像の数を相対的に絞り込むことによって、計算上の利点が提供される。
【0033】
[0039] ネットワーク170は、例えば、1つ又は複数のメッセージ、パケット、信号、又はこれらのある組み合わせなどの送信、受信、転送、生成、バッファリング、保存、ルーティング、切換え、処理、又はそれらの組み合わせなどを行う1つ又は複数のノードを有する1つ又は複数のネットワークの少なくとも一部を含み得る。ネットワーク170は、例えば、無線ネットワーク、有線ネットワーク、インターネット、イントラネット、公衆網、パケット交換網、回線交換網、アドホックネットワーク、インフラネットワーク、公衆交換電話網(PSTN)、ケーブルネットワーク、セルラーネットワーク、光ファイバネットワーク、又はこれらのある組み合わせなどの1つ又は複数を含み得る。
【0034】
[0040] 画像からの背景抽出及び2つの画像の類似性の比較を行うために、様々な機械学習技術が実施形態によって用いられ得る。幾つかの実施形態では、背景マッチングモジュール152は、深層学習ベースのニューラルネットワークを使用して背景抽出を行い得る。幾つかの実施形態では、背景抽出のための深層学習ベースのフレームワークは、例えば、R-CNN(regions with convolutional neural networks)、又はFast R-CNN(fast region-based convolutional network)法、又はFaster R-CNN(faster region-based convolutional network)法を含み得る。
【0035】
[0041] 幾つかの実施形態によって実装されるCNNは、構造及び動作が互いに異なり得る複数のニューロン層を含み得る。CNNの第1の層は、ニューロンの畳み込み層でもよい。ニューロンの畳み込み層は、入力画像のピクセル間の空間的関係を維持しながら、入力画像から特徴を抽出する機能を行う。畳み込み演算の出力は、入力画像の特徴マップを含み得る。畳み込みの演算は、フィルタ又はカーネル行列を使用して行われ、フィルタ又はカーネル行列における具体的な重みは、以下に記載されるプロセスによってCNNを訓練することによって取得又は較正される。
【0036】
[0042] 畳み込み層の後に、CNNは、幾つかの実施形態では、プーリング層、又は整流線形ユニット(ReLU:rectified linear unit)層、又はその両方を実装する。プーリング層は、最も重要な特徴情報は保持しながら、各特徴マップの次元を減少させる。ReLU演算は、入力画像から学習されるべき現実世界のデータのほとんどが非線形であるため、CNNにおいて非線形性を導入する。CNNは、複数の畳み込み層、ReLU層、及びプーリング層を含んでもよく、先行するプーリング層の出力が、後続の畳み込み層への入力として供給され得る。この多数のニューロンの層は、CNNが深層学習アルゴリズム又は技術と呼ばれる理由である。CNNの最後の1つ又は複数の層は、出力を生じさせるために畳み込み層及びプーリング層によって抽出された高位特徴を使用する従来の多層パーセプトロンニューラルネットワークでもよい。CNNの設計は、動物の視覚野におけるニューロンのパターン及び接続性に発想を得たものである。CNN設計のこの基礎は、画像内の物体検出の機能を行うためにCNNが選ばれ得る理由の1つである。
【0037】
[0043] 参照背景画像ライブラリ144は、参照背景画像146及び背景画像メタデータ148を含む。参照背景画像146は、場所を決定するためにカメラ120によって捕捉された画像をマッチングするプロセス中に、背景マッチングモジュール152用の参照として機能する画像を含む。参照背景画像メタデータ148は、各参照背景画像に関するメタデータを含む。メタデータ148は、参照背景画像に関連付けられた場所情報を含み得る。幾つかの実施形態では、場所情報は、経度座標情報及び緯度座標情報、又は場所に関連付けられたアドレスを含み得る。
【0038】
[0044] 背景マッチングモジュール152は、カメラ120によって捕捉された画像を参照背景画像ライブラリ144内の画像とマッチングさせる機能を行う。背景比較を効率的に行うために、幾つかの実施形態では、背景マッチングモジュール152は、大規模画像検索及び比較に適した注意深い局所的特徴記述子に基づいた、DELF(Deep Local Feature)として知られる画像検索及び比較プロセスを組み込んでもよい。
【0039】
[0045] 場所決定又は推定のためのシステム100を実装する前に、都市部の様々な場所の調査が行われ得る。調査は、具体的な場所の写真を撮ること、及び写真をそれらが対応する場所にマッピングすることを含み得る。調査は、基本的に参照背景画像ライブラリ144の内容を拡充する。場所決定又は推定中の決定された場所の特定性に対する要求が、途切れのない都市部をカバーするのに必要とされる写真の数を決定し得る。決定された場所が、10メートルの範囲内で許容可能に存在するとするならば、参照背景画像ライブラリ144を拡充するために、途切れのない都市部にわたり、10メートルごとに写真が撮られてもよい。幾つかの実施形態では、参照背景画像を収集するための調査は、照明又は天候条件の変化にかかわらず場所の決定を可能にするために、様々な照明条件又は天候条件下で行われ得る。
【0040】
[0046] 都市部の調査の完了後に、背景特徴抽出器モジュール154は、捕捉画像内の背景特徴又は背景特徴記述子を抽出するために捕捉画像を処理するように訓練され得る。背景記述子は、捕捉画像の背景の符号化表現である。背景記述子は、最近傍探索などの計算最適化技術を使用して様々な画像の背景の比較を可能にする。
【0041】
[0047] 背景記述子は、恒久的な、又は静止した画像の領域又は部分に対応し得る。したがって、決定された背景記述子は、ある場所に対応した画像の静止部分と動的部分を区別するために使用することができる。例えば、掲示板を備えたバス停の画像内で、掲示板の画像領域は、動的と見なすことができ、背景特徴抽出器モジュール154は、掲示板に対応する画像の部分又は領域を無視するように訓練することができる。バス停の同じ画像内で、標識又は支柱若しくは待合所などの恒久的構造物に対応する画像の部分が、背景特徴抽出器モジュール154によって、この画像の背景記述子として抽出され得る。したがって、背景特徴抽出器モジュール154は、同じ場所に対応する他の画像との比較のための効率的な、及び信頼性のある基礎を提供する、恒久的構造物、又は静止構造物に対応する画像内の背景記述子を識別するように訓練される。
【0042】
[0048] 幾つかの実施形態では、特徴抽出器モジュール154は、捕捉画像から背景特徴記述子を抽出するように訓練されたCNNを含み得る。CNNは、捕捉画像内の特徴に関する注意指標(attention indicator)又は重みを決定するように訓練されたニューロンのさらなる層(注意決定層(attention determination layer))を含み得る。例えば、持続的な背景に対応する特徴は、高い注意重み(attention weight)を与えられ、非持続的又は一時的な背景に対応する特徴は、低い注意重みを与えられてもよい。注意決定層は、本質的に、背景特徴抽出器モジュール154が、捕捉画像の持続的な部分と一時的な部分を区別することを助け、参照背景画像ライブラリ144内の画像の背景に対する捕捉画像の背景の効率的な比較を支援する。
【0043】
[0049] 幾つかの実施形態では、システム100は、リアルタイムで、又はほぼリアルタイムで場所決定又は推定を行うことができる。都市部では、都市部全体を詳しく調査するために、多数の参照背景画像が必要となり得る。背景マッチングモジュール152によって組み込まれたDELFプロセスは、捕捉画像と参照背景画像ライブラリ144内の画像の効率的な比較を可能にする。
【0044】
[0050] 幾つかの実施形態では、背景特徴抽出器モジュール154は、2つ以上のマッチする背景画像を識別し得る。これは、背景の相対類似性によるものの場合がある。そのような場合、幾何学的マッチ検証モジュール156が、単一のマッチした画像に絞り込むことを支援し得る。幾何学的マッチ検証モジュール156は、単一のマッチした参照背景画像に絞り込むために、ホモグラフィテストプロセスに依存し得る。幾つかの実施形態では、幾何学的マッチ検証モジュール156は、単一のマッチした参照背景画像に絞り込むために、ランダムサンプルコンセンサス(RANSAC:random sample consensus)プロセスに依存し得る。
【0045】
[0051] 幾何学的マッチ検証モジュール156は、2つの画像を解析し、これら2つの画像内の1つ又は複数の共通の視覚的特徴を決定又は識別するためのプログラムコードを含む。例えば、幾何学的マッチ検証モジュール156は、2つの画像から特徴のある視覚的特徴又は形状又は曲線を抽出し得る。これら2つの画像がマッチであると見なすことができ、したがって、共通の場所に対応すると見なすことができるか否かを評価するために、各画像からの対応する特徴のある視覚的特徴又は形状又は曲線間の重複が決定されてもよい。
【0046】
[0052] 幾つかの実施形態では、背景マッチングモジュール152は、背景マッチングを行うために画像内の局所的特徴を検出及び記述するために、SIFT(scale-invariant feature transform)プロセスに依存し得る。幾つかの実施形態では、背景マッチングモジュール152は、背景マッチングを行うために画像内の局所的特徴を検出及び記述するために、SURF(speeded-up robust features)プロセスに依存し得る。
【0047】
[0053] リモートコンピュータシステム180は、メモリ172と通信する少なくとも1つのプロセッサ174を含む。幾つかの実施形態では、場所決定又は推定を行うための画像処理動作は、コンピューティングデバイス130によって行われ得る。しかしながら、より広い都市部をカバーするために、より大きな参照背景画像ライブラリ144が必要とされる場合がある。幾つかの実施形態のコンピューティングデバイス130は、メモリ136内で限られた画像記憶容量を有する場合がある。幾つかの実施形態では、リモートサーバ180は、背景画像186及び背景画像メタデータ188を含む参照背景画像ライブラリ184を含み得る。リモートサーバシステム180は、例えば複数の都市などの複数の都市部にわたる画像ベースの場所決定又は推定を可能にするために、より大きな都市部又は複数の都市部をカバーする参照背景画像ライブラリ184を含むように拡張可能となり得るスケーラブルなメモリ172を有してもよい。参照背景画像ライブラリ144は、より大きな参照背景画像ライブラリ184のサブセットであってもよい。
【0048】
[0054] 幾つかの実施形態では、コンピューティングデバイス130は、限られた計算又は処理能力を有し得る。そのような実施形態では、場所決定又は推定を行うための画像処理動作は、リモートサーバシステム180によって行われ得る。リモートサーバシステム180のメモリ172は、背景マッチングモジュール162も含む。背景マッチングモジュール162は、背景特徴抽出器モジュール164及び幾何学的マッチ検証モジュール166を含み得る。背景マッチングモジュール162は、リモートサーバ180上のより大きな処理能力、及びより大きな参照背景画像ライブラリ184へのアクセスを有することを除き、背景マッチングモジュール152と同一の機能を行い得る。
【0049】
[0055] 幾つかの実施形態では、リモートサーバシステム180は、それのメモリ172内に設けられたGPS訂正信号生成モジュール167を含み得る。従来のGPS受信機によって生成される信号は、様々な形態のエラーを受けやすい。これらのエラーには、例えば、建物又は木などの恒久的構造物によるGPS信号の障害、建物によるGPS信号の反射、電波障害、太陽及び嵐によるエラーが含まれ得る。GPS信号エラーの訂正を行うための代替手段の1つは、差分全地球測位システム(DGPS:Differential Global Positioning System)を使用することである。DGPSは、GPS衛星システムによって示される位置と、地上参照ステーション(ground-based reference station)の既知の固定位置との間の差を放送するために、固定地上参照ステーションのネットワークを使用する。DGPSシステムから信号を受信するように構成されたGPS受信機は、計算された場所の訂正及び/又は再較正を行うために、DGPSシステムによって送信された信号を使用する。
【0050】
[0056] 幾つかの実施形態では、GPS訂正信号生成モジュール167は、1つ又は複数の受信画像に基づいて決定された場所情報に基づいて、GPS訂正信号、又は経度及び緯度座標若しくはアドレスなどの場所座標を含む場所情報を生成する。
【0051】
[0057] コンピューティングデバイス130のメモリ136及びリモートサーバシステム180のメモリ172において実装される様々なモジュールには、それぞれのモジュールの計算又はデータ処理能力を実装するプログラムコードが含まれる。加えて、様々なモジュールは、それぞれのモジュールの計算又はデータ処理動作又は機能を行うための1つ又は複数のソフトウェアパッケージ、ソフトウェアライブラリ、機器構成又は構成ファイル、アプリケーションプログラミングインタフェース(API)も含んでもよく、又はそれ(ら)にアクセスすることができる。幾つかの実施形態では、様々なモジュールは、プロセッサによる実行時に、コンピューティングデバイス130又はリモートサーバシステム180で実行するオペレーティングシステムによって調整された1つ又は複数のプロセスとして実行し得る。様々なモジュールの各プロセスは、様々なモジュールのデータ処理、画像処理、又は通信動作を行うために、同時に実行する1つ又は複数のスレッドを含み得る。
【0052】
[0058] 図2は、幾つかの実施形態による、場所決定又は推定のためのプロセス200のフローチャートである。プロセス200は、コンピューティングデバイス130が、送信された画像データに対応する場所データを受信するために、画像データをリモートサーバシステム180に送信することを含む。図2の場所決定又は推定プロセスの動作の前提条件として、関連の都市部の様々な場所の調査が行われ、参照背景画像ライブラリ144及び/又は184が、例えば場所データを含む関連の画像メタデータと共に拡充される。場所データは、幾つかの実施形態では、経度及び緯度座標情報などの場所を定義する具体的な座標情報を含み得る。幾つかの実施形態では、場所データは、所在地住所などのアドレスを含み得る。場所データは、有用な情報をコンピューティングデバイス130に提供するために十分な粒度で場所を定義する。場所データの粒度又は精度は、少なくとも4つのGPS衛星からの信号をコンピューティングデバイス130が利用できず、結果的に、厳密でないGPSベースの場所決定がもたらされる状況におけるGPSベースの場所データの粒度よりも厳密となり得る。背景マッチングモジュール152又は162は、モニタリングされている関連の都市部から取得された画像データに関して訓練される。
【0053】
[0059] 210では、カメラ120が、都市部の少なくとも1つの画像を捕捉し、処理のために画像をプロセッサ132が利用できるようにする。コンピューティングデバイス130がスマートフォン又はタブレットデバイスである実施形態では、カメラ120は、スマートフォン又はタブレットデバイスに内蔵された(組み込まれた)カメラでもよい。カメラ120は、看板又は他の静止した背景構造物などの持続的な、又は静止した背景特徴を備えた都市部に向けられ得る。
【0054】
[0060] 幾つかの実施形態では、ステップ210は、GPS受信機126が、コンピューティングデバイス130の不正確な、又は厳密でないGPSベースの場所を決定したことに応答して、行われてもよい。幾つかの実施形態では、コンピューティングデバイス130は、コンピューティングデバイス130の付近の画像の捕捉を開始するようにプロンプトをディスプレイ127上でユーザに対して生成し得る。プロンプトを生成する際に、コンピューティングデバイス130は、コンピューティングデバイス130のネイティブカメラアプリケーションを起動して、ユーザにカメラ120のライブの視野を見せ、画像捕捉をトリガするための入力をユーザが提供することを可能にすることもできる。幾つかの実施形態では、コンピューティングデバイス130は、コンピューティングデバイス130の向き(例えば、垂直)(ひいては、カメラ120の視野の向き)を決定するための1つ又は複数の加速度計又は他の向き検出器を含んでもよい。コンピューティングデバイス130及びカメラ120の視野の向きが都市部の路上又は街頭風景に向けられているとの決定に基づいて、コンピューティングデバイス130は、ステップ210において、自動的に画像の捕捉を開始し得る。例えば、コンピューティングデバイス130の場所を決定するために使用することができる、場所をはっきりと区別するような特徴を捕捉するのに適した前向き方向にカメラ120を向けるために、コンピューティングデバイス130の向きが垂直であることが推測され得る。
【0055】
[0061] 幾つかの実施形態では、プロセス200は、コンピューティングデバイス130が、背景特徴を抽出するために、背景特徴抽出器モジュール154を用いて、ステップ210で捕捉された画像を処理する任意選択のステップ220を含む。抽出された背景特徴は、例えば、行列又はベクターデータ構造で表されてもよい。ステップ220(もし行われた場合)は、リモートサーバシステム180に送信されることが必要なデータ量を減少させる。送信されるデータ量の減少は、プロセス200の速度及びコンピューティングデバイス130によって使用されるネットワーク帯域幅の量を向上させることができる。他の実施形態では、変換符号化、フラクタル圧縮、ランレングス方式の符号化、又はエントロピー符号化などの代替データ圧縮技術が使用されてもよい。
【0056】
[0062] ステップ230では、コンピューティングデバイス130は、ステップ220で抽出された背景特徴、又はステップ210で捕捉された少なくとも1つの画像の圧縮画像データ若しくは画像データをリモートサーバシステム180に送信する。リモートサーバ180は、ステップ210で捕捉された画像に関連付けられた場所情報を取得するために、受信した画像データを処理し、参照背景画像ライブラリ184に対する背景比較を行う。図4は、場所情報を取得するためにリモートサーバ180によって行われるステップの詳細なステップを示す。幾つかの実施形態では、コンピューティングデバイス130は、GPS受信機126から取得された不正確な、又は厳密でないGPSベースの場所データもリモートサーバ180に送信し得る。不正確な、又は厳密でないGPSベースの場所データは、リモートサーバ180が参照背景画像ライブラリ184内で探索を狭めること又は精密化することを支援することができ、それによって、場所決定のプロセスがより効率的及びより高速になる。
【0057】
[0063] ステップ240では、コンピューティングデバイス130が、ステップ210で捕捉された画像に関連付けられた場所情報を受信する。ステップ250では、受信された場所情報が、コンピューティングデバイスのディスプレイ127上に示され得る。幾つかの実施形態では、場所決定又は推定プロセス200は、コンピューティングデバイス上のAndroid(商標)又はiPhone(商標)場所決定アプリケーション157によって行われてもよい。したがって、場所決定アプリケーション157は、リモートサーバシステム180から受信した場所データをディスプレイ127上に示し得る。
【0058】
[0064] 図3は、幾つかの実施形態による、場所決定のためのプロセス300のフローチャートである。プロセス300は、リモートサーバシステム180と通信することなく、コンピューティングデバイスによって行われる。
【0059】
[0065] 任意選択のステップ310では、プロセッサ132が、GPS受信機126から場所データを受信し、受信したGPSデータの品質を評価する。受信したGPSデータの品質が特定の閾値を下回った場合、画像ベースの場所決定又は推定プロセス300の残りの部分は、より正確な場所情報を取得するために行われ得る。ステップ311では、都市部の画像が、コンピューティングデバイス130によって捕捉される。幾つかの実施形態では、場所決定アプリケーション157は、都市部の画像を捕捉することをユーザに求め得る。都市部の少なくとも1つの画像が捕捉されると、ステップ312において、プロセッサ132は、背景特徴抽出器モジュール154を使用して、画像に関連付けられた背景記述子を決定するために、捕捉画像を処理する。背景記述子は、本質的に、捕捉画像内に存在する背景を一意的に識別する、捕捉画像の持続的な示差的側面である。幾つかの実施形態では、背景記述子は、分類損失を用いて訓練された畳み込みニューラルネットワーク(CNN)の特徴抽出層を使用することによって構築された全層畳み込みネットワーク(FCN:fully convolutional network)を適用することによって抽出され得る。背景特徴抽出器モジュール154は、背景記述子の適合率を明示的に測定するための注意パラメータを有する分類子を含んでもよく、それは、持続的な背景特徴と一時的な背景特徴を区別するために訓練され得る。持続的な背景特徴は、例えば、背景内の建物の特徴的な部分、又は恒久的な灯柱若しくはボラードを含み得る。一時的な背景特徴は、例えば、変更される可能性がある掲示板又は広告板を含み得る。ステップ312の出力として、捕捉画像に関する背景記述子又は特徴のセットが取得される。これらの背景記述子又は特徴は、例えば、ベクター又は行列データ構造の形式で表されてもよい。ステップ312の結果として、(高解像度画像でもよい)捕捉画像が、関連した背景記述子又は特徴の圧縮された(compressed)、又は簡潔な(succinct)ベクター又は行列に変換され得る。
【0060】
[0066] 314では、参照背景画像のライブラリ144から1つ又は複数の候補マッチング画像を選択するために、探索が行われる。幾つかの実施形態では、探索は、KD木及び積量子化(PQ:product quantisation)の組み合わせによって実装された最近傍探索でもよい。探索は、参照背景画像のライブラリ144内の画像の所定の背景記述子又は特徴を使用して行われる。314の出力は、捕捉画像の有力なマッチである候補参照背景画像のセットである。候補マッチング画像内の点に対応する捕捉画像の点は、重要点と呼ばれることがある。捕捉画像と参照背景画像ライブラリ144内の画像との間で識別された重要点の数は、これら2つの画像における背景の類似性を決定する際の因子と見なされ得る。
【0061】
[0067] 幾つかの実施形態では、314で行われた探索は、ステップ310で受信した厳密でない場所データに基づいて、さらに精密化され、又はさらに狭められ得る。ステップ310で取得した厳密でない場所データは、ステップ310でGPS受信機126から受信したデータに基づいて、厳密でない場所又は厳密でない場所範囲の一部の可能性がある参照背景画像ライブラリ144内の画像のサブセットをフィルタにかける、又は選択するために使用され得る。
【0062】
[0068] 参照背景画像ライブラリ144及び184内の画像の数は、かなり大きくなり得るため(例えば、10,000~100万個の画像)、従来の画像比較技術の使用は、311で捕捉された画像を参照背景画像ライブラリ144又は184内の各画像と比較するための実質的に正確な、又は実質的に計算効率の良い手法を提供しない場合がある。捕捉された内の関連した背景記述子又は特徴の簡潔なベクター又は行列として表される、ステップ312で決定された背景記述子は、参照背景画像ライブラリ144又は184内の画像と比較するための計算効率の良い基礎を提供する。ステップ312で識別された背景記述子は、参照背景画像ライブラリ144又は184内の画像との比較に無関係の捕捉画像内の特徴を無視し、又は除外し、又はそれらの優先度を下げながら、持続的な、又は静止した背景特徴に関連した特徴のサブセットの効果的な符号化を提供する。参照背景画像ライブラリ144又は184内の画像との比較に無関係の捕捉画像内の特徴は、例えば、人、掲示板、又は動的看板に関連した画像部分又は特徴を含み得る。
【0063】
[0069] 316では、捕捉画像と候補参照背景画像との間で幾何学的マッチング又は照合が行われる。幾何学的照合は、2つの画像が共通の背景を共有するかどうかを評価するための2つの画像間のより詳細な比較を含む。ステップ314で取得される候補参照背景画像の数の減少により、幾何学的マッチングステップは、参照背景画像ライブラリ144全体にわたり幾何学的マッチングを行うことと比較して、それほど計算負荷が高くない。幾つかの実施形態では、幾何学的照合は、ランダムサンプルコンセンサス(RANSAC)を使用して行われ得る。316の結果は、捕捉画像のマッチとしての単一の候補参照画像の確認となり得る。
【0064】
[0070] 幾何学的マッチ検証の一部として、捕捉画像と、各候補参照背景画像との間で、マッチする関心対象点の数が識別され得る。捕捉画像内の各関心対象点は、画像内の静止した、又は恒久的な背景に対応し得る。2つの画像間のマッチする関心対象点の数は、2つの画像がマッチする度合いを数値化するための測定基準として使用され得る。例えば、30個のマッチする関心対象点を有する画像A及びBは、10個のマッチする関心対象点を有する画像A及びCよりも、より良いマッチとなり得る。最多数のマッチする関心対象点を有する候補参照背景画像が、捕捉画像に最も近いマッチと見なされ得る。最小数のマッチする点の関心対象点マッチ閾値(point of interest match threshold)を使用することによって、最低限の幾何学的マッチングを確立することができる。候補参照背景画像が、関心対象点マッチ閾値を超えるマッチする関心対象点を含まない場合、捕捉画像は、マッチしないと見なすことができる。幾つかの実施形態では、関心対象点マッチ閾値は、例えば、5個の点、10個の点、15個の点、20個の点、又は25個の点であり得る。図5は、2つの画像間のマッチする関心対象点の一例を示す。
【0065】
[0071] 318では、マッチした参照背景画像に関連付けられた場所メタデータを問い合わせることによって、ステップ311で捕捉された画像に対応した場所が決定され得る。ステップ320では、取得された場所情報が、コンピューティングデバイス130のディスプレイ127上に示され得る。
【0066】
[0072] 図3の場所決定のプロセス300は、コンピューティングデバイス130に保存された参照背景画像ライブラリ144に基づく。幾つかの実施形態では、コンピューティングデバイス130は、メモリ136内に限られた容量を有する場合があり、メモリ136の内の限られた容量を最大限に活用するためには、コンピューティングデバイスは、GPS受信機126から取得された場所情報に基づいて、都市部に関連付けられた背景画像146及び背景画像メタデータ148を先回りして、又はユーザの命令時にダウンロードし得る。コンピューティングデバイス130が、ある都市部から別の都市部に移動し得るため、コンピューティングデバイス130は、すぐ近くの都市部に関連付けられた背景画像146及び背景画像メタデータ148を取得するために、参照背景画像ライブラリ144を更新することができる。
【0067】
[0073] 図4は、幾つかの実施形態による、場所決定のためのプロセス400のフローチャートである。プロセス400は、コンピューティングデバイス130と通信して動作するリモートサーバシステム180によって行われる。プロセス400は、コンピューティングデバイス130によって行われる場所決定又は推定のプロセス200に応答して、リモートサーバシステム180によって行われる相手側プロセスである。プロセス400は、リモートサーバシステム180のメモリ172の参照背景画像ライブラリ184に依存する。リモートサーバシステム180のメモリ172は、スケーラブルであり、参照背景画像ライブラリ184は、多数の都市部を関連付ける背景画像186及び背景画像メタデータ188を含むことができ、それによって、多数の都市部においてコンピューティングデバイス130による場所決定又は推定の能力が提供される。
【0068】
[0074] ステップ410では、リモートサーバシステム180は、図2のステップ210でコンピューティングデバイス130によって捕捉された少なくとも1つに対応した画像データを受信する。画像データは、例えば、ステップ220で抽出された背景特徴、又は画像データ全体、又は圧縮画像データの形式でもよい。ステップ410で画像データ全体又は圧縮画像データが受信される実施形態では、ステップ412において、背景特徴抽出器モジュール164を使用して、画像に関連付けられた背景記述子を決定するために受信した画像データを処理するプロセッサ174によって、画像データが処理され得る。背景記述子は、本質的に、捕捉画像内に存在する背景を一意的に識別する、捕捉画像の持続的な示差的側面である。幾つかの実施形態では、背景記述子は、分類損失を用いて訓練された畳み込みニューラルネットワーク(CNN)の特徴抽出層を使用することによって構築された全層畳み込みネットワーク(FCN)を適用することによって抽出され得る。背景特徴抽出器モジュール164は、背景記述子の適合率を明示的に測定するための注意パラメータを有する分類子を含んでもよく、それは、持続的な背景特徴と一時的な背景特徴を区別するために訓練され得る。持続的な背景特徴は、例えば、背景内の建物の特徴的な部分、又は恒久的な灯柱若しくはボラードを含み得る。一時的な背景特徴は、例えば、変更される可能性がある掲示板又は広告板を含み得る。ステップ412の出力として、捕捉画像に関する背景記述子又は特徴のセットが取得される。これらの背景記述子又は特徴は、ベクター又は行列データ構造の形式で表されてもよい。ステップ412の結果として、受信された画像データが、関連した背景記述子又は特徴の圧縮された、又は簡潔なベクター又は行列に変換され得る。幾つかの実施形態では、リモートサーバシステム180は、コンピューティングデバイス130から、コンピューティングデバイス130の厳密でない、現在のものではない、若しくは不正確な場所情報(例えば、厳密でない、若しくは不正確なGPS場所)、又はコンピューティングデバイス130の最後の既知の厳密な、若しくは正確な場所に対応した場所情報も受信し得る。
【0069】
[0075] 414では、参照背景画像のライブラリ184から1つ又は複数の候補マッチング画像を選択するために、探索が行われる。リモートサーバシステム180が、コンピューティングデバイス130から厳密でない、現在のものではない、又は不正確な場所データを受信する実施形態では、厳密でない、又は不正確な場所データは、厳密でない、又は不正確な場所データに関連付けられたエリアの範囲又は外挿範囲に対応した、参照背景画像のライブラリ186からの画像のサブセットをフィルタにかける、又は選択するために使用され得る。参照背景画像のライブラリ184からの画像のサブセットの選択は、探索されるべき画像の数を減ずることによって、場所決定プロセスの全体的な効率を向上させることができる。幾つかの実施形態では、探索は、KD木及び積量子化(PQ)の組み合わせによって実装された最近傍探索でもよい。探索は、参照背景画像のライブラリ184内の画像の所定の背景記述子又は特徴を使用して行われる。414の出力は、捕捉画像の有力なマッチである候補参照背景画像のセットである。候補マッチング画像内の点に対応する捕捉画像の点は、重要点と呼ばれることがある。捕捉画像と参照背景画像ライブラリ184内の画像との間で識別された重要点の数は、これら2つの画像における背景の類似性を決定する際の因子と見なされ得る。
【0070】
[0076] 416では、捕捉画像と候補参照背景画像との間で幾何学的マッチング又は照合が行われる。幾何学的照合は、2つの画像が共通の背景を共有するかどうかを評価するための2つの画像間のより詳細な比較を含む。ステップ414で取得する候補参照背景画像の数の減少により、幾何学的マッチングステップは、参照背景画像ライブラリ184全体にわたり幾何学的マッチングを行うことと比較して、それほど計算負荷が高くない。幾つかの実施形態では、幾何学的照合は、ランダムサンプルコンセンサス(RANSAC)を使用して行われ得る。416の結果は、捕捉画像のマッチとしての単一の候補参照画像の確認となり得る。幾何学的マッチ検証の一部として、捕捉画像と、各候補参照背景画像との間で、マッチする関心対象点の数が識別され得る。捕捉画像内の各関心対象点は、画像内の静止した、又は恒久的な背景に対応し得る。2つの画像間のマッチする関心対象点の数は、2つの画像がマッチする度合いを数値化するための測定基準として使用され得る。例えば、30個のマッチする関心対象点を有する画像A及びBは、10個のマッチする関心対象点を有する画像A及びCよりも、より良いマッチとなり得る。最多数のマッチする関心対象点を有する候補参照背景画像が、捕捉画像に最も近いマッチと見なされ得る。最小数のマッチする点の関心対象点マッチ閾値を使用することによって、最低限の幾何学的マッチングを確立することができる。候補参照背景画像が、関心対象点マッチ閾値を超えるマッチする関心対象点を含まない場合、捕捉画像は、マッチしないと見なすことができる。幾つかの実施形態では、関心対象点マッチ閾値は、例えば、5個の点、10個の点、15個の点、20個の点、又は25個の点であり得る。
【0071】
[0077] 418では、リモートサーバシステム180が、ステップ410で受信された画像データに対応した場所データを取得するために、単一のマッチした背景画像の場所メタデータを問い合わせる。場所メタデータは、例えば、アドレス、又は経度及び緯度座標などの場所情報を含み得る。
【0072】
[0078] 幾つかの実施形態では、プロセス400は、ステップ418で取得された場所メタデータに基づいて、GPS訂正信号生成モジュール167によってGPS訂正信号を生成する任意選択のステップ419を含んでもよい。生成されたGPS訂正信号は、コンピューティングデバイス130が、より正確な場所データを取得するために、それのGPS受信機126を用いて生成された信号と結合させることを可能にするデータを含み得る。生成されたGPS訂正信号は、コンピューティングデバイス130がそれのGPS受信機126によって受信された信号を訂正するためのオフセット情報として機能し得る。420では、リモートサーバシステム180は、ステップ418で取得された場所メタデータ、及び任意選択的にステップ419で生成されたGPS訂正信号をコンピューティングデバイス130に送信する。
【0073】
[0079] 図5は、背景マッチングモジュール152又は背景マッチングモジュール162によって行われる背景マッチングのプロセスにおけるある段階を示す例示的画像500である。画像500は、2つの部分、すなわち画像510及び画像520を含む。画像510は、参照背景画像ライブラリ144又は184に保存された参照背景画像である。画像520は、コンピューティングデバイス130のカメラ120を使用した都市部の捕捉画像である。不明瞭にされていない、画像520内の持続的な背景の様々な部分が、画像510との比較のための基礎を提供し、参照画像510に関連付けられた場所メタデータに基づいた場所の決定を可能にする。画像510内の特徴512(駐車道路標識の一部)は、捕捉画像520内の同一の特徴522に対応する。画像510内の特徴514(背景の建物の一部)は、捕捉画像520内の同一の特徴524に対応する。画像510内の特徴518(沿道の縁石の一部)は、捕捉画像520内の同一の特徴528に対応する。
【0074】
[0080] 図6は、背景マッチングモジュール152によって行われる背景マッチングのプロセスにおけるある段階を示す例示的な画像ペア600である。画像600は、2つの部分、すなわち第1の画像630及び第2の画像640を含む。画像640は、参照背景画像ライブラリ144に保存された参照背景画像である。画像630は、ある都市部の駐車監視の過程でカメラ120によって捕捉された画像である。画像640内の背景の様々な部分は、画像630との比較のための基礎を提供し、参照画像640に関連付けられた場所メタデータに基づいた駐車場所の決定を可能にする。各捕捉画像630は、様々な動的画像特徴が経時的に変化するとしても、実質的に同じ場所で撮影された参照画像640内にも存在する様々な静的画像特徴を有すると考えられる。例えば、画像640内の特徴612(灯柱の一部)は、捕捉画像630内の同一の特徴602に対応する。画像640内の特徴614(郵便ポストの脚部の一部)は、捕捉画像2130内の同一の特徴604に対応する。画像640内の特徴616(建物のファサードの一部)は、捕捉画像630内の同一のファサード特徴606に対応する。画像640内の特徴618(凹凸模様の格子(textured grate)又は歩道の一部)は、捕捉画像630内の同一の格子又は歩道の特徴608に対応する。画像640内の特徴620(看板の非動的/静的部分)は、捕捉画像630内の同一の特徴610に対応する。
【0075】
[0081] 実験中に、実施形態の性能をベンチマークテストにかけるために、実施形態の精度を評価した。精度は、例えば0.5m~2mの誤差を使用して、ステップ240でコンピューティングデバイス130によって受信された場所データ、又はステップ318で決定された場所データの精度に基づいて測定した。幾つかの実施形態に関して、決定された場所の精度は、およそ95%以上であった。95%以上の精度性能は、昼間及び夜間両方の条件で、並びに冬及び夏を含む1年の異なる季節にわたり取得された。
【0076】
[0082] 背景マッチングモジュール152、背景マッチングモジュール162を含む、コンピューティングデバイス130及びリモートサーバシステム180の様々なモデル及びモジュールは、プログラムコード、ライブラリ、アプリケーションプログラミングインタフェース(API)、メタデータ、コンフィギュレーションデータ、従属性、フレームワーク、及び様々なモジュール若しくはモデルの機能性を実装するための他の必要なコードコンポーネント若しくはハードウェアコンポーネントでもよく、又はそれらを含んでもよい。様々な機械学習モデル又はコンポーネントは、例えば、教師あり、教師なし、半教師あり、又は強化学習ベースの方法論を含む、代替の機械学習方法論を組み込んでもよい。様々な機械学習モデル又はコンポーネントは、例えば、OpenCV、TensorFlow、PyTorch、Caffe、EmuCV、VXL、GDAL、MIScnn、Marvin、及びKorniaを含む機械学習フレームワークから1つ又は複数のコンポーネントを組み込んでもよい。
【0077】
[0083] 図7は、幾つかの実施形態による、例示的なコンピュータシステム700を示す。特定の実施形態では、1つ又は複数のコンピュータシステム700が、本明細書に記載又は図示した1つ又は複数の方法の1つ又は複数のステップを行う。特定の実施形態では、1つ又は複数のコンピュータシステム700が、本明細書に記載又は図示した機能性を提供する。特定の実施形態では、1つ又は複数のコンピュータシステム700上で走るソフトウェアが、本明細書に記載若しくは図示した1つ若しくは複数の方法の1つ若しくは複数のステップを行い、又は本明細書に記載若しくは図示した機能性を提供する。特定の実施形態は、1つ又は複数のコンピュータシステム700の1つ又は複数の部分を含む。本明細書では、コンピュータシステムへの言及は、コンピューティングデバイスを包含する場合があり、適切な場合には、逆もまた同様である。また、コンピュータシステムへの言及は、適切な場合には、1つ又は複数のコンピュータシステムを包含する場合がある。コンピューティングデバイス130は、コンピュータシステム700の一例である。リモートサーバシステム180は、コンピュータシステム700の別の例である。
【0078】
[0084] 本開示は、任意の適切な数のコンピュータシステム700を企図する。本開示は、コンピュータシステム700が任意の適切な物理的形態を取ることを企図する。限定としてではなく例として、コンピュータシステム700は、埋込式コンピュータシステム、システムオンチップ(SOC)、シングルボードコンピュータシステム(SBC)(例えば、コンピュータオンモジュール(COM)又はシステムオンモジュール(SOM)など)、特殊用途コンピューティングデバイス、デスクトップコンピュータシステム、ラップトップ若しくはノートブック型コンピュータシステム、携帯電話、サーバ、タブレットコンピュータシステム、又はこれらの2つ以上の組み合わせでもよい。必要に応じて、コンピュータシステム700は、1つ若しくは複数のコンピュータシステム700を含んでもよく、単体でもよく、若しくは分散されてもよく、複数の場所に及んでもよく、複数の機械に及んでもよく、複数のデータセンターに及んでもよく、又はコンピューティングクラウド(これは、1つ若しくは複数のネットワーク内に1つ若しくは複数のクラウドコンピューティングコンポーネントを含み得る)内に部分的に、若しくは全体的に存在してもよい。必要に応じて、1つ又は複数のコンピュータシステム700は、実質的な空間的又は時間的制限なしに、本明細書に記載又は図示した1つ又は複数の方法の1つ又は複数のステップを行い得る。限定ではなく例として、1つ又は複数のコンピュータシステム700は、リアルタイムで、又はバッチモードで、本明細書に記載又は図示した1つ又は複数の方法の1つ又は複数のステップを行い得る。1つ又は複数のコンピュータシステム700は、必要に応じて、異なる時点で、又は異なる場所で、本明細書に記載又は図示した1つ又は複数の方法の1つ又は複数のステップを行い得る。
【0079】
[0085] 特定の実施形態では、コンピュータシステム700は、少なくとも1つのプロセッサ702、メモリ704、ストレージ706、入出力(I/O)インタフェース708、通信インタフェース710、及びバス712を含む。本開示は、特定の配置にある特定の数の特定のコンポーネントを有する特定のコンピュータシステムを記載及び図示しているが、本開示は、任意の適切な配置にある任意の適切な数の任意の適切なコンポーネントを有する任意の適切なコンピュータシステムを企図する。
【0080】
[0086] 特定の実施形態では、プロセッサ702は、コンピュータプログラムを構成する命令などの命令を実行するためのハードウェアを含む。限定ではなく例として、命令を実行するために、プロセッサ702は、内部レジスタ、内部キャッシュ、メモリ704、又はストレージ706から命令を検索し(又はフェッチし)、それらを復号及び実行し、その後、1つ又は複数の結果を内部レジスタ、内部キャッシュ、メモリ704、又はストレージ706に書き込むことができる。特定の実施形態では、プロセッサ702は、データ、命令、又はアドレスのための1つ又は複数の内部キャッシュを含み得る。本開示は、必要に応じて、プロセッサ702が、任意の適切な数の任意の適切な内部キャッシュを含むことを企図する。限定ではなく例として、プロセッサ702は、1つ又は複数の命令キャッシュ、1つ又は複数のデータキャッシュ、及び1つ又は複数のTLB(translation lookaside buffer)を含み得る。命令キャッシュ内の命令は、メモリ704又はストレージ706内の命令のコピーの場合があり、命令キャッシュは、プロセッサ702によるこれらの命令の検索を加速させることができる。データキャッシュ内のデータは、プロセッサ702で作用するように実行される命令、プロセッサ702で実行される後続の命令によるアクセスのため、又はメモリ704若しくはストレージ706に書き込むための、プロセッサ702で実行された前の命令の結果、又は他の適切なデータ用のメモリ704又はストレージ706内のデータのコピーの場合がある。データキャッシュは、プロセッサ702による読取り動作及び書込み動作を加速させることができる。TLBは、プロセッサ702の仮想アドレス変換を加速させることができる。特定の実施形態では、プロセッサ702は、データ、命令、又はアドレス用の1つ又は複数の内部レジスタを含み得る。本開示は、必要に応じて、プロセッサ702が、任意の適切な数の任意の適切な内部レジスタを含むことを企図する。必要に応じて、プロセッサ702は、1つ若しくは複数の演算論理装置(ALU)を含んでもよく、マルチコアプロセッサでもよく、又は1つ若しくは複数のプロセッサ702を含んでもよい。本開示は、特定のプロセッサを記載及び図示しているが、本開示は、任意の適切なプロセッサを企図する。
【0081】
[0087] 特定の実施形態では、メモリ704は、プロセッサ702が実行する命令、又はプロセッサ702が操作するデータを保存するためのメインメモリを含む。限定ではなく例として、コンピュータシステム700は、ストレージ706又は別のソース(例えば、別のコンピュータシステム700など)からメモリ704へと命令をロードし得る。次に、プロセッサ702は、メモリ704から内部レジスタ又は内部キャッシュへと命令をロードし得る。命令を実行するために、プロセッサ702は、内部レジスタ又は内部キャッシュから命令を検索し、それらを復号し得る。命令の実行中、又は命令の実行後に、プロセッサ702は、1つ又は複数の結果(中間又は最終結果でもよい)を内部レジスタ又は内部キャッシュに書き込み得る。次に、プロセッサ702は、これらの結果の1つ又は複数をメモリ704に書き込み得る。特定の実施形態では、プロセッサ702は、1つ又は複数の内部レジスタ又は内部キャッシュ内の、又は(ストレージ706又は他の場所とは対照的に)メモリ704内の命令のみを実行し、1つ又は複数の内部レジスタ又は内部キャッシュ内の、又は(ストレージ706又は他の場所とは対照的に)メモリ704内のデータのみを操作する。1つ又は複数のメモリバス(各メモリバスは、アドレスバス及びデータバスを含み得る)は、プロセッサ702をメモリ704に結合させ得る。バス712は、以下に記載する通り、1つ又は複数のメモリバスを含み得る。特定の実施形態では、1つ又は複数のメモリ管理ユニット(MMU)が、プロセッサ702とメモリ704との間に存在し、プロセッサ702によって要求されたメモリ704へのアクセスを容易にする。特定の実施形態では、メモリ704は、ランダムアクセスメモリ(RAM)を含む。このRAMは、必要に応じて、揮発性メモリでもよい。必要に応じて、このRAMは、ダイナミックRAM(DRAM)又はスタティックRAM(SRAM)でもよい。また、必要に応じて、このRAMは、シングルポート又はマルチポートRAMでもよい。本開示は、任意の適切なRAMを企図する。メモリ704は、必要に応じて、1つ又は複数のメモリ704を含んでもよい。本開示は、特定のメモリを記載及び図示しているが、本開示は、任意の適切なメモリを企図する。
【0082】
[0088] 特定の実施形態では、ストレージ706は、データ又は命令用のマスストレージを含む。限定ではなく例として、ストレージ706は、ハードディスクドライブ(HDD)、フラッシュメモリ、光ディスク、光磁気ディスク、磁気テープ、又はユニバーサルシリアルバス(USB)ドライブ、又はこれらの2つ以上の組み合わせを含み得る。ストレージ706は、必要に応じて、リムーバブル又は非リムーバブル(若しくは固定)媒体を含み得る。ストレージ706は、必要に応じて、コンピュータシステム700の内部又は外部に存在してもよい。特定の実施形態では、ストレージ706は、不揮発性の固体メモリである。特定の実施形態では、ストレージ706は、読取り専用メモリ(ROM)を含む。必要に応じて、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書き換え可能ROM(EAROM)、又はフラッシュメモリ、又はこれらの2つ以上の組み合わせを含む。本開示は、マスストレージ706が、任意の適切な物理的形態を取ることを意図する。ストレージ706は、必要に応じて、プロセッサ702とストレージ706との間の通信を容易にする1つ又は複数のストレージ制御ユニットを含み得る。必要に応じて、ストレージ706は、1つ又は複数のストレージ706を含み得る。本開示は、特定のストレージを記載及び図示しているが、本開示は、任意の適切なストレージを企図する。
【0083】
[0089] 特定の実施形態では、I/Oインタフェース708は、コンピュータシステム700と1つ又は複数のI/Oデバイスとの間の通信用の1つ又は複数のインタフェースを提供する、ハードウェア、ソフトウェア、又はその両方を含む。コンピュータシステム700は、必要に応じて、これらのI/Oデバイスの1つ又は複数を含み得る。これらのI/Oデバイスの1つ又は複数は、人とコンピュータシステム700との間の通信を可能にし得る。限定ではなく例として、I/Oデバイスは、キーボード、キーパッド、マイクロホン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチールカメラ、スタイラス、タブレット、タッチスクリーン、トラックボール、ビデオカメラ、別の適切なI/Oデバイス、又はこれらの2つ以上の組み合わせを含み得る。I/Oデバイスは、1つ又は複数のセンサを含み得る。本開示は、任意の適切なI/Oデバイス、及びそれらのI/Oデバイスのための任意の適切なI/Oインタフェース708を企図する。必要に応じて、I/Oインタフェース708は、プロセッサ702がこれらのI/Oデバイスの1つ又は複数を駆動することを可能にする1つ又は複数のデバイス又はソフトウェアドライバを含み得る。I/Oインタフェース708は、必要に応じて、1つ又は複数のI/Oインタフェース708を含み得る。本開示は、特定のI/Oインタフェースを記載及び図示しているが、本開示は、任意の適切なI/Oインタフェースを企図する。
【0084】
[0090] 特定の実施形態では、通信インタフェース710は、コンピュータシステム700と、1つ若しくは複数の他のコンピュータシステム700又は1つ若しくは複数のネットワークとの間の通信(例えば、パケットベースの通信など)のための1つ又は複数のインタフェースを提供する、ハードウェア、ソフトウェア、又はその両方を含む。限定ではなく例として、通信インタフェース710は、WI-FI又はセルラーネットワークなどの無線ネットワークと通信するための無線アダプタと通信するためのネットワークインタフェースコントローラ(NIC)又はネットワークアダプタを含み得る。本開示は、任意の適切なネットワーク、及びそのネットワークのための任意の適切な通信インタフェース710を企図する。限定ではなく例として、コンピュータシステム700は、アドホックネットワーク、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、又はインターネットの1つ若しくは複数の部分、又はこれらの2つ以上の組み合わせと通信し得る。これらのネットワークの1つ又は複数のネットワークの1つ又は複数の部分は、有線又は無線でもよい。例として、コンピュータシステム700は、無線携帯電話ネットワーク(例えば、GSM(Global System for Mobile Communications)ネットワーク、又は3G、4G、若しくは5Gセルラーネットワークなど)、又は他の適切な無線ネットワーク、又はこれらの2つ以上の組み合わせと通信し得る。コンピュータシステム700は、必要に応じて、これらのネットワークの何れかのための任意の適切な通信インタフェース710を含み得る。通信インタフェース710は、必要に応じて、1つ又は複数の通信インタフェース710を含んでもよい。本開示は、特定の通信インタフェースを記載及び図示しているが、本開示は、任意の適切な通信インタフェースを企図する。
【0085】
[0091] 特定の実施形態では、バス712は、コンピュータシステム700のコンポーネントを互いに結合させる、ハードウェア、ソフトウェア、又はその両方を含む。限定ではなく例として、バス712は、AGP(Accelerated Graphics Port)若しくは他のグラフィックバス、EISA(Enhanced Industry Standard Architecture)バス、フロントサイドバス(FSB)、HYPERTRANSPORT(HT)相互接続、ISA(Industry Standard Architecture)バス、INFINIBAND相互接続、LPC(low-pin-count)バス、メモリバス、MCA(Micro Channel Architecture)バス、PCI(Peripheral Component Interconnect)バス、PCIe(PCI-Express)バス、SATA(serial advanced technology attachment)バス、VLB(Video Electronics Standards Association local bus)、又は別の適切なバス、又はこれらの2つ以上の組み合わせを含み得る。バス712は、必要に応じて、1つ又は複数のバス712を含んでもよい。本開示は、特定のバスを記載及び図示しているが、本開示は、任意の適切なバス又は相互接続を企図する。
【0086】
[0092] 本明細書では、1つ又は複数のコンピュータ可読非一時的ストレージ媒体は、必要に応じて、1つ又は複数の半導体ベース若しくは他の集積回路(IC)(例えば、フィールドプログラマブルゲートアレイ(FPGA)、若しくは特定用途向けIC(ASIC)など)、ハードディスクドライブ(HDD)、ハイブリッドハードドライブ(HHD)、光ディスク、光ディスクドライブ(ODD)、光磁気ディスク、光磁気ドライブ(FDD)、固体ドライブ(SSD)、RAMドライブ、又はその他の適切なコンピュータ可読非一時的ストレージ媒体、又はこれらの2つ以上の任意の適切な組み合わせを含み得る。コンピュータ可読非一時的ストレージ媒体は、必要に応じて、揮発性、不揮発性、又は揮発性及び不揮発性の組み合わせでもよい。
【0087】
[0093] 本開示の範囲は、当業者が理解するであろう、本明細書に記載又は図示した例示的実施形態に対するすべての変更、置換、バリエーション、改変、及び修正を包含する。本開示の範囲は、本明細書に記載又は例示した例示的実施形態に限定されない。また、本開示は、特定のコンポーネント、要素、特徴、機能、動作、又はステップを含むものとして本明細書の各実施形態を記載及び図示しているが、これらの実施形態の何れも、当業者が理解するであろう、本明細書のどこかに記載又は図示したコンポーネント、要素、特徴、機能、動作、又はステップの何れかの任意の組み合わせ又は並べ替えを含み得る。さらに、添付の特許請求の範囲において、特定の機能を行うように適応した、特定の機能を行うように配置された、特定の機能を行うことが可能な、特定の機能を行うように構成された、特定の機能を行うことを可能にされた、特定の機能を行うように動作可能な、又は特定の機能を行うように機能する装置、又はシステム、又は装置若しくはシステムのコンポーネントへの言及は、その装置、システム、又はコンポーネントが、そのように適応し、配置され、可能であり、構成され、可能にされ、動作可能であり、又は機能する限り、その装置、システム、コンポーネント(それ又はその特定の機能が起動されるかどうか、オンにされるかどうか、又はアンロックされるかどうかに関わりなく)を包含する。加えて、本開示は、特定の利点を提供するものとして特定の実施形態を記載又は図示しているが、特定の実施形態は、これらの利点を全く提供しなくてもよいし、これらの利点の一部又はすべてを提供してもよい。
【0088】
[0094] 本開示の広い一般的範囲から逸脱することなく、上記の実施形態に対して多数のバリエーション及び/又は変更形態を作ることができることを当業者は理解するだろう。したがって、本実施形態は、あらゆる面で、制限的なものではなく、理解を助けるものと見なされるものである。
図1
図2
図3
図4
図5
図6
図7
【国際調査報告】