(57)【特許請求の範囲】
【請求項１】
エッジデバイスオブジェクト認識のためのコンピューティングデバイスであって、前記コンピューティングデバイスは、
複数のオブジェクトに関連する複数の２次元画像を含むオブジェクト認識データベースにアクセスするオブジェクトデータベース回路と、
（ｉ）エッジコンピューティングデバイスのアイデンティティに基づいて、前記複数のオブジェクトのサブセットを識別し、（ｉｉ）前記オブジェクト認識データベースに基づいて、縮小オブジェクト認識データベースを生成するリダクション回路と、
前記縮小オブジェクト認識データベースを前記エッジコンピューティングデバイスに送信する通信回路と、
前記オブジェクト認識データベースを用いて前記エッジコンピューティングデバイスから受信される画像データに基づいてオブジェクトを識別するオブジェクト認識回路と、
を備え、
前記複数のオブジェクトの前記サブセットの各オブジェクトは、前記エッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを含み、
前記縮小オブジェクト認識データベースは、前記複数のオブジェクトの前記サブセットに関連する複数の２次元画像を含み、
前記リダクション回路は、更に、前記画像データに基づく前記オブジェクトの識別に応答して、前記オブジェクトに関連する複数の２次元画像を更新済みの縮小オブジェクト認識データベースに追加し、
前記通信回路は、更に、（ｉ）前記エッジコンピューティングデバイスから前記画像データを受信し、（ｉｉ）前記更新済みの縮小オブジェクト認識データベースを前記エッジコンピューティングデバイスに送信する、
コンピューティングデバイス。
【請求項２】
前記画像データは、サムネイル画像である、請求項１に記載のコンピューティングデバイス。
【請求項３】
前記リダクション回路は、更に、（ｉ）第２のエッジコンピューティングデバイスのアイデンティティに基づいて前記複数のオブジェクトの第２のサブセットを識別し、（ｉｉ）前記オブジェクト認識データベースに基づいて、第２の縮小オブジェクト認識データベースを生成し、前記複数のオブジェクトの前記第２のサブセットの各オブジェクトは、前記第２のエッジコンピューティングデバイスにより画像内にキャプチャされることが予想されるオブジェクトを有し、前記第２の縮小オブジェクト認識データベースは、前記複数のオブジェクトの前記第２のサブセットに関連する複数の２次元画像を含み、
前記通信回路は、更に、前記第２の縮小オブジェクト認識データベースを前記第２のエッジコンピューティングデバイスに送信する、請求項１または２に記載のコンピューティングデバイス。
【請求項４】
前記エッジコンピューティングデバイスの前記アイデンティティに基づいて前記複数のオブジェクトの前記サブセットを識別することは、前記エッジコンピューティングデバイスの予想される場所又は前記エッジコンピューティングデバイスの予想される使用に基づいて前記複数のオブジェクトの前記サブセットを識別することを含む、請求項１から３のいずれか一項に記載のコンピューティングデバイス。
【請求項５】
前記エッジコンピューティングデバイスの前記予想される場所に基づいて前記複数のオブジェクトの前記サブセットを識別することは、前記エッジコンピューティングデバイスの予想される小売店の棚の場所を識別することを含む、請求項４に記載のコンピューティングデバイス。
【請求項６】
オブジェクトの３次元モデルを前記オブジェクトに関連する複数の２次元画像に変換するモデリング回路
を更に備え、
前記オブジェクトデータベース回路は、更に、前記オブジェクトに関連する前記複数の２次元画像を前記オブジェクト認識データベースに追加する、請求項１から５のいずれか一項に記載のコンピューティングデバイス。
【請求項７】
エッジデバイスオブジェクト認識のためのコンピューティングデバイスであって、前記コンピューティングデバイスは、
複数のオブジェクトに関連する複数の２次元画像を含む縮小オブジェクト認識データベースをサーバコンピューティングデバイスから受信する通信回路と、
デバイスイベントの発生を監視するイベント回路と、
前記コンピューティングデバイスのカメラから画像データをキャプチャする画像キャプチャ回路と、
（ｉ）前記デバイスイベントの発生に応答して、前記縮小オブジェクト認識データベースとともに前記画像データに基づいてオブジェクト認識を実行し、（ｉｉ）前記オブジェクト認識の実行に応答して、オブジェクト認識動作を実行するオブジェクト認識回路と
を備え、
前記オブジェクト認識回路は、更に、（ｉ）オブジェクトが前記オブジェクト認識の実行に応答して認識されるか否かを判断し、（ｉｉ）前記オブジェクトが認識されないとの判断に応答して、前記カメラからの前記画像データに基づいて未認識オブジェクトの画像データを生成し、
前記通信回路は、更に、（ｉ）前記未認識オブジェクトの前記画像データを前記サーバコンピューティングデバイスに送信し、（ｉｉ）前記未認識オブジェクトの前記画像データの送信に応答して、前記サーバコンピューティングデバイスから更新済みのオブジェクト認識データベースを受信し、前記更新済みのオブジェクト認識データベースは、前記未認識オブジェクトに関連する複数の２次元画像を含む、
コンピューティングデバイス。
【請求項８】
前記未認識オブジェクトの前記画像データは、サムネイル画像である、請求項７に記載のコンピューティングデバイス。
【請求項９】
前記デバイスイベントの前記発生を監視することは、前記コンピューティングデバイスの１又は複数のセンサからセンサデータを受信することを含み、
前記デバイスイベントは、ドアを開けるイベント又はドアを閉めるイベントを含む、請求項７または８に記載のコンピューティングデバイス。
【請求項１０】
前記カメラから前記画像データをキャプチャすることは、前記デバイスイベントの前記発生に応答して、前記カメラからの前記画像データをキャプチャすることを含む、請求項７から９のいずれか一項に記載のコンピューティングデバイス。
【請求項１１】
前記オブジェクト認識を実行することは、前記画像キャプチャ回路によりキャプチャされた前記画像データに基づいて、重み付けされた認識値を生成することを含む、請求項７から１０のいずれか一項に記載のコンピューティングデバイス。
【請求項１２】
前記オブジェクト認識動作を実行することは、前記画像キャプチャ回路によりキャプチャされた前記画像データに基づいて前記オブジェクト認識の実行の結果のログを取ることを含む、請求項７から１１のいずれか一項に記載のコンピューティングデバイス。
【請求項１３】
エッジデバイスオブジェクト認識のための方法であって、前記方法は、
コンピューティングデバイスが、複数のオブジェクトに関連する複数の２次元画像を含むオブジェクト認識データベースにアクセスする段階と、
前記コンピューティングデバイスが、エッジコンピューティングデバイスのアイデンティティに基づいて前記複数のオブジェクトのサブセットを識別する段階と、
前記コンピューティングデバイスが、前記オブジェクト認識データベースに基づいて、縮小オブジェクト認識データベースを生成する段階と、
前記コンピューティングデバイスが、前記縮小オブジェクト認識データベースを前記エッジコンピューティングデバイスに送信する段階と、
前記コンピューティングデバイスが、前記エッジコンピューティングデバイスから画像データを受信する段階と、
前記コンピューティングデバイスが、前記オブジェクト認識データベースを用いて前記画像データに基づいてオブジェクトを識別する段階と、
前記コンピューティングデバイスが、前記画像データに基づく前記オブジェクトを識別する段階に応答して、前記オブジェクトに関連する複数の２次元画像を更新済みの縮小オブジェクト認識データベースに追加する段階と、
前記コンピューティングデバイスが、前記更新済みの縮小オブジェクト認識データベースを前記エッジコンピューティングデバイスに送信する段階と、
を備え、
前記複数のオブジェクトの前記サブセットの各オブジェクトは、前記エッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを含み、
前記縮小オブジェクト認識データベースは、前記複数のオブジェクトの前記サブセットに関連する複数の２次元画像を含む、方法。
【請求項１４】
前記画像データは、サムネイル画像である、請求項１３に記載の方法。
【請求項１５】
前記コンピューティングデバイスが、第２のエッジコンピューティングデバイスのアイデンティティに基づいて前記複数のオブジェクトの第２のサブセットを識別する段階と、
前記コンピューティングデバイスが、前記オブジェクト認識データベースに基づいて、第２の縮小オブジェクト認識データベースを生成する段階と、
前記コンピューティングデバイスが、前記第２の縮小オブジェクト認識データベースを前記第２のエッジコンピューティングデバイスに送信する段階と
を更に備え、
前記複数のオブジェクトの前記第２のサブセットの各オブジェクトは、前記第２のエッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを含み、
前記第２の縮小オブジェクト認識データベースは、前記複数のオブジェクトの前記第２のサブセットに関連する複数の２次元画像を含む、請求項１３または１４に記載の方法。
【請求項１６】
前記エッジコンピューティングデバイスの前記アイデンティティに基づいて前記複数のオブジェクトの前記サブセットを識別する段階は、前記エッジコンピューティングデバイスの予想される場所に基づいて前記複数のオブジェクトの前記サブセットを識別する段階を含む、請求項１３から１５のいずれか一項に記載の方法。
【請求項１７】
前記コンピューティングデバイスが、オブジェクトの３次元モデルを前記オブジェクトに関連する複数の２次元画像に変換する段階と、
前記コンピューティングデバイスが、前記オブジェクトに関連する前記複数の２次元画像を前記オブジェクト認識データベースに追加する段階と
を更に備える、請求項１３から１６のいずれか一項に記載の方法。
【請求項１８】
エッジデバイスオブジェクト認識のための方法であって、前記方法は、
コンピューティングデバイスが、複数のオブジェクトに関連する複数の２次元画像を含む縮小オブジェクト認識データベースをサーバコンピューティングデバイスから受信する段階と、
前記コンピューティングデバイスが、デバイスイベントの発生を監視する段階と、
前記コンピューティングデバイスが、前記コンピューティングデバイスのカメラからの画像データをキャプチャする段階と、
前記コンピューティングデバイスが、前記デバイスイベントの発生に応答して、前記縮小オブジェクト認識データベースを用いて前記画像データに基づくオブジェクト認識を実行する段階と、
前記コンピューティングデバイスが、前記オブジェクト認識を実行する段階に応答して、オブジェクト認識動作を実行する段階と、
前記コンピューティングデバイスが、前記オブジェクト認識を実行する段階に応答して、オブジェクトが認識されるか否かを判断する段階と、
前記コンピューティングデバイスが、前記オブジェクトが認識されないと判断する段階に応答して、前記カメラからの前記画像データに基づく未認識オブジェクトの画像データを生成する段階と、
前記コンピューティングデバイスが、前記未認識オブジェクトの前記画像データを前記サーバコンピューティングデバイスに送信する段階と、
前記コンピューティングデバイスが、前記未認識オブジェクトの前記画像データを送信する段階に応答して、前記サーバコンピューティングデバイスから更新済みのオブジェクト認識データベースを受信する段階と、
を備え、
前記更新済みのオブジェクト認識データベースは、前記未認識オブジェクトに関連する複数の２次元画像を含む、方法。
【請求項１９】
前記未認識オブジェクトの前記画像データは、サムネイル画像である、請求項１８に記載の方法。
【請求項２０】
前記デバイスイベントの前記発生を監視する段階は、前記コンピューティングデバイスの１又は複数のセンサからセンサデータを受信する段階を含み、前記デバイスイベントは、ドアを開けるイベント又はドアを閉めるイベントを含む、請求項１８または１９に記載の方法。
【請求項２１】
前記カメラからの前記画像データをキャプチャする段階は、前記デバイスイベントの前記発生に応答して、前記カメラからの前記画像データをキャプチャする段階を含む、請求項１８から２０のいずれか一項に記載の方法。
【請求項２２】
前記オブジェクト認識を実行する段階は、前記カメラからの前記画像データに基づいて、重み付けされた認識値を生成する段階を含む、請求項１８から２１のいずれか一項に記載の方法。
【請求項２３】
プロセッサと、
前記プロセッサにより実行されるときに、前記コンピューティングデバイスに請求項１３から２２のいずれか一項に記載の方法を実行させる複数の命令がその中に格納されたメモリと
を備えるコンピューティングデバイス。
【請求項２４】
コンピューティングデバイスに、請求項１３から２２のいずれか一項に記載の方法を実行させるためのコンピュータプログラム。
【請求項２５】
請求項２４に記載のコンピュータプログラムを格納するコンピュータ可読記憶媒体。
【請求項２６】
請求項１３から２２のいずれか一項に記載の方法を実行するための手段を備えるコンピューティングデバイス。
【発明の詳細な説明】
【背景技術】
【０００１】
センサ、乗り物、電化製品、産業機器及び他の物のような多くのタイプのデバイスは、コンピューティングリソース及びネットワーク機能を増している。モノのインターネット（ＩｏＴ）として説明されることもあるように、現代のコンピューティングシステムは、ネットワーク化されたアプリケーション機能を実行するべく、全てが共に働くクラウドベースのサーバ、ネットワークインフラストラクチャ、及び、接続エッジデバイスを含み得る。代表的なＩｏＴ接続エッジデバイスは、低消費電力の小型デバイスであってよく、ひいては、比較的低い処理能力又は他のコンピューティングリソースを一般的に含んでよい。更に、ネットワークのエッジにおける代表的なＩｏＴ接続デバイスは、利用可能な帯域幅が制限されていたのかもしれない。ＩｏＴ接続デバイスに対する高速ネットワーク接続を確立することは、高価なデータプラン又は他のネットワークサービスを必要とし得る。
【０００２】
特定のコンピューティングデバイスは、入力画像に基づいて１又は複数のオブジェクトを認識し得る。典型的なオブジェクト認識アルゴリズムは、オブジェクト認識を実行するべく、大きな参照画像データベースを必要とする。オブジェクト認識アルゴリズムの実行時間は、通常、画像データベースのサイズに比例する。
【図面の簡単な説明】
【０００３】
本明細書で説明される概念は、添付の図において例示の目的で示されるものであり、限定の目的で示されるものではない。図示を簡潔かつ明確にするために、図に示される要素は、必ずしも縮尺通りに描かれていない。適切と思われる個所では、対応する又は類似した要素を示すべく、参照番号が図面間で繰り返されている。
【０００４】
【図１】エッジデバイスオブジェクト認識のためのシステムの少なくとも１つの実施形態の簡略化されたブロック図である。
【図２】図１のシステムにより確立され得る様々な環境の少なくとも１つの実施形態の簡略化されたブロック図である。
【図３】図１及び図２のサーバコンピューティングデバイスにより実行され得るエッジデバイスオブジェクト認識のための方法の少なくとも１つの実施形態の簡略化されたフロー図である。
【図４】図１及び図２のエッジコンピューティングデバイスにより実行され得るエッジデバイスオブジェクト認識のための方法の少なくとも１つの実施形態の簡略化されたフロー図である。
【発明を実施するための形態】
【０００５】
本開示の概念は、様々な変更及び代替形態に影響されやすい一方、それらの特定の実施形態が図面において例示を目的として示されており、本明細書において詳細に説明される。しかしながら、本開示の概念を開示された特定の形態に限定する意図はないが、反対に、当該意図は、本開示及び添付の特許請求の範囲と一貫性がある全ての変更、均等物及び代替物を網羅するものであると理解されるべきである。
【０００６】
明細書における「一実施形態」、「実施形態」、「例示的な実施形態」等への言及は、説明される実施形態が特有の特徴、構造又は特性を含んでよいが、あらゆる実施形態がその特有の特徴、構造又は特性を含んでもよいし、必ずしも含まなくてもよいことを示す。更に、そのような表現は、必ずしも同一の実施形態に言及しているわけではない。更に、特有の特徴、構造又は特性がある実施形態と関連して説明されるときに、明示的に説明されているか否かに関わらず他の実施形態と関連するそのような特徴、構造又は特性をもたらすことが当業者の知識内であることが提示される。更に、「Ａ、Ｂ及びＣのうちの少なくとも１つ」という形式の一覧に含まれる項目は、（Ａ）、（Ｂ）、（Ｃ）、（Ａ及びＢ）、（Ａ及びＣ）、（Ｂ及びＣ）又は、（Ａ、Ｂ及びＣ）を意味し得ることが理解されるべきである。同様に、「Ａ、Ｂ又はＣのうちの少なくとも１つ」という形式で列挙される項目は、（Ａ）、（Ｂ）、（Ｃ）、（Ａ及びＢ）、（Ａ及びＣ）、（Ｂ及びＣ）又は（Ａ、Ｂ及びＣ）を意味し得る。
【０００７】
開示される実施形態は、場合によっては、ハードウェア、ファームウェア、ソフトウェア又はそれらの任意の組み合わせに実装されてよい。開示される実施形態は、１又は複数の一時的又は非一時的機械可読（例えば、コンピュータ可読）記憶媒体により実行され、又は、１又は複数の一時的又は非一時的機械可読（例えば、コンピュータ可読）記憶媒体に格納される命令として実装されてもよく、命令は、１又は複数のプロセッサにより読み取られ、かつ、実行されてよい。機械可読記憶媒体は、マシン（例えば、揮発性又は不揮発性メモリ、メディアディスク又は他のメディアデバイス）により読取可能な形式で情報を格納又は送信するための任意のストレージデバイス、メカニズム又は他の物理的な構造として具現化されてよい。
【０００８】
図面において、いくつかの構造的又は方法的な特徴は、特定の配置及び／又は順序で示されてよい。しかしながら、そのような特定の配置及び／又は順序が必要とされなくてよいことが理解されるべきである。むしろ、いくつかの実施形態において、そのような特徴は、例示的な図に示されるものとは異なる態様及び／又は順序で配置されてよい。更に、特定の図に構造的又は方法的な特徴を含ませることは、そのような特徴が全ての実施形態において必要とされることを暗示することを意図するものではなく、いくつかの実施形態において、そのような特徴が含まれなくてよく、又は、他の特徴と組み合わされてよい。
【０００９】
図１を参照すると、例示的な実施形態において、モノのインターネット（ＩｏＴ）エッジデバイスに対するオブジェクト認識のためのシステム１００は、ネットワーク１０６を介して通信するサーバコンピューティングデバイス１０２及び複数のエッジコンピューティングデバイス１０４を含む。複数のエッジコンピューティングデバイス１０４は、接続デバイス、ＩｏＴゲートウェイ、組み込みデバイス、又は、制限されたコンピューティングリソース及び／又は制限された利用可能な電力を有する他のデバイスとして具現化されてよい。例えば、例示的な実施形態において、複数のエッジコンピューティングデバイス１０４は、小売展示ユニット、小売店の棚、自動販売機又は冷却器のような製品貯蔵ユニットに含まれてよく、又は、製品貯蔵ユニットに連結されてよい。以下でより詳細に説明されるように、使用するときに、サーバコンピューティングデバイス１０２は、製品又は製品包装のような、認識され得る多数のオブジェクトに関連する画像データを含むデータベースを保持する。画像データは、もし、利用可能であれば、複数のオブジェクトの複数の３次元モデルから生成されてよい。各エッジコンピューティングデバイス１０４について、サーバコンピューティングデバイス１０２は、その特定のエッジコンピューティングデバイス１０４により認識されることが予想される複数のオブジェクトのみに関連するデータを含む縮小データベースを生成する。サーバコンピューティングデバイス１０２は、複数のエッジコンピューティングデバイス１０４に、縮小データベースを提供する。複数のエッジコンピューティングデバイス１０４は、複数のデバイスイベントを監視し、複数のデバイスイベントに応答して、縮小データベースを用いてオブジェクト認識を実行する。オブジェクトが認識されない場合、エッジコンピューティングデバイス１０４は、未認識オブジェクトのサムネイルをサーバコンピューティングデバイス１０２に送信してよく、サーバコンピューティングデバイス１０２は、そのオブジェクトについてオブジェクト認識データで応答してよい。従って、各エッジコンピューティングデバイス１０４に対するオブジェクト認識データベースのサイズを減らすことにより、システム１００は、各エッジコンピューティングデバイス１０４に対する処理能力要件及び／又は電力要件を減らし得る。複数のデバイスイベントに応答するときのみオブジェクト認識を実行することにより、システム１００は、各エッジコンピューティングデバイス１０４に対するパフォーマンス要件及び／又は電力要件を更に減らし得る。更に、複数の３次元モデルから認識データを生成することにより、システム１００は、オブジェクト認識データベースを準備するのに必要な手動労力を減らし得る。
【００１０】
サーバコンピューティングデバイス１０２は、本明細書で説明される複数の機能を実行することが可能な任意のタイプの計算又はコンピュータデバイスとして具現化されてよく、任意のタイプの計算又はコンピュータデバイスは、コンピュータ、サーバ、ラックマウント型のコンピューティングデバイス、デスクトップコンピュータ、ワークステーション、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、モバイルコンピューティングデバイス、ウェアラブルコンピューティングデバイス、ネットワーク機器、ウェブ機器、分散コンピューティングシステム、プロセッサベースシステム、及び／又は、民生用電子機器を含むが、これらに限定されない。図１に示されるように、サーバコンピューティングデバイス１０２は、プロセッサ１２０、入力／出力サブシステム１２２、メモリ１２４、データストレージデバイス１２６及び通信回路１２８を例示的に含む。言うまでもなく、サーバコンピューティングデバイス１０２は、他の実施形態において、サーバで一般に見られるもの（例えば、様々な入力／出力デバイス）のような、他のコンポーネント又は追加のコンポーネントを含んでよい。更に、いくつかの実施形態において、例示的な複数のコンポーネントのうちの１又は複数は、別のコンポーネントに組み込まれてよく、あるいは、別のコンポーネントの一部を形成してよい。例えば、メモリ１２４、又はその複数の部分は、いくつかの実施形態において、プロセッサ１２０に組み込まれてよい。追加的又は代替的に、いくつかの実施形態において、サーバコンピューティングデバイス１０２は、ネットワーク１０６に亘って分散され、かつ、パブリック又はプライベートクラウドにおいて動作する複数のコンピューティングデバイスから形成される「仮想サーバ」として具現化されてよい。従って、サーバコンピューティングデバイス１０２は、単一のサーバデバイスとして具現化されるように図１に示されているが、サーバコンピューティングデバイス１０２が以下で説明される機能を容易にするべく、共に協調する複数のデバイスとして具現化されてよいことが理解されるべきである。
【００１１】
プロセッサ１２０は、本明細書で説明される複数の機能を実行することが可能な任意のタイプのプロセッサとして具現化されてよい。プロセッサ１２０は、シングル又はマルチコアプロセッサ、デジタル信号プロセッサ、マイクロコントローラ、又は、他のプロセッサ若しくは処理／制御回路として具現化されてよい。同様に、メモリ１２４は、本明細書で説明される複数の機能を実行することが可能な任意のタイプの揮発性若しくは不揮発性メモリ又はデータストレージとして具現化されてよい。動作中、メモリ１２４は、オペレーティングシステム、アプリケーション、プログラム、ライブラリ及びドライバのような、サーバコンピューティングデバイス１０２の動作中に用いられる様々なデータ及びソフトウェアを格納してよい。メモリ１２４は、Ｉ／Ｏサブシステム１２２を介してプロセッサ１２０に通信可能に連結され、Ｉ／Ｏサブシステム１２２は、プロセッサ１２０、メモリ１２４、及び、サーバコンピューティングデバイス１０２の他のコンポーネントとの複数の入力／出力動作を促進する回路及び／又は複数のコンポーネントとして具現化されてよい。例えば、Ｉ／Ｏサブシステム１２２は、メモリコントローラハブ、入力／出力制御ハブ、ファームウェアデバイス、通信リンク（すなわち、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、ライトガイド、プリント回路基板配線等）、並びに／又は、複数の入力／出力動作を促進する他のコンポーネント及び複数のサブシステムとして具現化されてよく、あるいは、これらを含んでよい。いくつかの実施形態において、Ｉ／Ｏサブシステム１２２は、システムオンチップ（ＳｏＣ）の一部を形成してよく、プロセッサ１２０、メモリ１２４及びサーバコンピューティングデバイス１０２の他のコンポーネントに従って、単一の集積回路チップ上に組み込まれてよい。
【００１２】
データストレージデバイス１２６は、例えば、メモリデバイス及び回路、メモリカード、ハードディスクドライブ、ソリッドステートドライブ、又は、他のデータストレージデバイスのような短期的又は長期的なデータの格納のために構成される任意のタイプの１つ又は複数のデバイスとして具現化されてよい。以下で更に説明されるように、データストレージデバイス１２６は、オブジェクト認識に用いられるオブジェクト認識データベースを格納及び／又は保持してよい。
【００１３】
サーバコンピューティングデバイス１０２の通信回路１２８は、ネットワーク１０６を介したサーバコンピューティングデバイス１０２、エッジコンピューティングデバイス１０４、及び／又は、他の遠隔デバイスの間の通信を有効にすることを可能とする、任意の通信回路、デバイス又はそれらの集合体として具現化されてよい。通信回路１２８は、任意の１又は複数の通信技術（例えば、有線又は無線通信）、及び、関連するプロトコル（例えば、イーサネット（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ（登録商標）、ＷｉＭＡＸ（登録商標）等）を用いて、そのような通信を実現するように構成されてよい。
【００１４】
複数のエッジコンピューティングデバイス１０４の各々は、本明細書で説明される複数の機能を実行することが可能な任意のタイプの計算又はコンピュータデバイスとして具現化されてよく、任意のタイプの計算又はコンピュータデバイスは、接続デバイス、組み込みデバイス、モノのインターネット（ＩｏＴ）ゲートウェイ、スマートフォン、モバイルオーディオ若しくはビデオプレイヤ、コンピュータ、デスクトップコンピュータ、ワークステーション、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、ウェアラブルコンピューティングデバイス、ネットワーク機器、ウェブ機器、分散コンピューティングシステム、プロセッサベースシステム、及び／又は、民生用電子機器を含むが、これらに限定されない。エッジコンピューティングデバイス１０４は、プロセッサ１４０、Ｉ／Ｏサブシステム１４２、メモリ１４４、データストレージデバイス１４６、通信回路１４８、及び／又は、他のデバイスのような、組み込みデバイス、又は、類似のコンピューティングデバイスで一般に見られるコンポーネント及びデバイスを含んでよい。エッジコンピューティングデバイス１０４のこれら個々のコンポーネントは、サーバコンピューティングデバイス１０２の対応する複数のコンポーネントに類似してよく、個々のコンポーネントの説明は、エッジコンピューティングデバイス１０４の対応する複数のコンポーネントに適用可能であり、かつ、本開示を妨げないように、本明細書において繰り返されない。
【００１５】
エッジコンピューティングデバイス１０４は、１又は複数のカメラ１５０、及び、１又は複数の周辺機器１５２を含んでもよい。カメラ１５０は、エッジコンピューティングデバイス１０４に統合され、あるいは、これに通信可能に連結されるデジタルカメラ又は他のデジタル撮像デバイスとして具現化されてよい。カメラ１５０は、アクティブピクセルセンサ（ＡＰＳ）、例えば、相補型金属酸化膜半導体（ＣＭＯＳ）センサ、又は、電荷結合素子（ＣＣＤ）のような、電子画像センサを含む。カメラ１５０は、いくつかの実施形態において、複数の静止画又は複数の動画をキャプチャすることを含む、エッジコンピューティングデバイス１０４の環境の複数の画像をキャプチャすることに用いられてよい。いくつかの実施形態において、カメラ１５０は、エッジコンピューティングデバイス１０４の環境において複数のオブジェクトの２次元又は３次元形状をキャプチャすることが可能な１又は複数の３次元カメラ、ステレオビジョンカメラ、３次元スキャナ、又は、他のセンサとして具現化されてよい。
【００１６】
周辺機器１５２は、任意の数の追加の入力／出力デバイス、インタフェースデバイス、及び／又は、他の周辺機器を含んでよい。いくつかの実施形態において、周辺機器１５２は、１又は複数のセンサを含んでよい。例えば、いくつかの実施形態において、エッジコンピューティングデバイス１０４は、小売展示ユニット、小売店の棚、自動販売機、冷却器、陳列ケース、倉庫の棚、又は、小売製品若しくは他オブジェクトを格納するための他の貯蔵ユニットのような製品貯蔵ユニットに組み込まれてよく、あるいは、製品貯蔵ユニットに連結されてよい。これらの実施形態において、複数の周辺機器１５２は、ユーザが小売展示ユニットを開けたとき、あるいは、小売展示ユニットにアクセスしたときを判断するのに用いられ得るドア開放センサ、重さセンサ、照明センサ又は他のセンサを含んでよい。
【００１７】
以下でより詳細に論じられるように、サーバコンピューティングデバイス１０２及び複数のエッジコンピューティングデバイス１０４は、ネットワーク１０６を介して、互いに、及び／又は、システム１００の他のデバイスと、データを送信及び受信するように構成されてよい。ネットワーク１０６は、任意の数の様々な有線及び／又は無線ネットワークとして具現化されてよい。例えば、ネットワーク１０６は、有線又は無線ローカルエリアネットワーク（ＬＡＮ）、有線又は無線ワイドエリアネットワーク（ＷＡＮ）、セルラーネットワーク、及び／又は、インターネットのような公的にアクセス可能なグローバルネットワークとして具現化されてよく、あるいは、これらを含んでよい。そのようなものとして、ネットワーク１０６は、システム１００の複数のデバイス間の通信を促進する追加のコンピュータ、ルータ及びスイッチのような任意の数の追加のデバイスを含んでよい。
【００１８】
図２を参照すると、例示的な実施形態において、サーバコンピューティングデバイス１０２は、動作中に環境２００を確立する。例示的な環境２００は、モデリングモジュール２０２、オブジェクトデータベースモジュール２０６、リダクションモジュール２１０、通信モジュール２１４及びオブジェクト認識モジュール２１６を含む。環境２００の様々なモジュールは、ハードウェア、ファームウェア、ソフトウェア又はそれらの組み合わせとして具現化されてよい。例えば、環境２００の様々なモジュール、ロジック及び他のコンポーネントは、プロセッサ１２０又はサーバコンピューティングデバイス１０２の他のハードウェアコンポーネントの一部を形成してよく、あるいは、これらにより確立されてよい。そのようなものとして、いくつかの実施形態において、環境２００の複数のモジュールのうちの任意の１又は複数は、回路又は複数の電子デバイスの集まり（例えば、モデリング回路２０２、オブジェクトデータベース回路２０６、リダクション回路２１０等）として具現化されてよい。
【００１９】
いくつかの実施形態において、モデリングモジュール２０２は、オブジェクトの３次元モデルを当該オブジェクトに関連する複数の２次元画像に変換するように構成される。モデリングモジュール２０２は、３次元モデルデータ２０４を管理してよく、あるいは、３次元モデルデータ２０４にアクセスしてよく、３次元モデルデータ２０４は、様々なオブジェクトに対する３次元モデルデータを含んでよい。
【００２０】
オブジェクトデータベースモジュール２０６は、オブジェクト認識データベース２０８を管理し、あるいは、オブジェクト認識データベース２０８にアクセスするように構成される。オブジェクト認識データベース２０８は、複数のオブジェクトに関連する複数の２次元画像を含む。以下で更に説明されるように、キャプチャされた画像データから複数のオブジェクトを認識するべく、複数の２次元画像は、複数のエッジコンピューティングデバイス１０４及び／又はサーバコンピューティングデバイス１０２により用いられてよい。いくつかの実施形態において、オブジェクトデータベースモジュール２０６は、モデリングモジュール２０２により生成されるオブジェクトに関連する複数の２次元画像をオブジェクト認識データベース２０８に追加するように構成されてよい。追加的又は代替的に、いくつかの実施形態において、オブジェクト認識データベース２０８は、複数のエッジコンピューティングデバイス１０４及び／又はサーバコンピューティングデバイス１０２により用いられ得る複数の３次元画像、複数の３次元モデル、又は、他の３次元データを認識された複数のオブジェクトに含んでよい。
【００２１】
リダクションモジュール２１０は、対応するエッジコンピューティングデバイス１０４のアイデンティティに基づいて、複数のエッジコンピューティングデバイス１０４の各々に対するオブジェクト認識データベース２０８の複数のオブジェクトのサブセットを識別するように構成される。識別された複数のオブジェクトのサブセットの各オブジェクトは、対応するエッジコンピューティングデバイス１０４により画像内でキャプチャされることが予想される。リダクションモジュール２１０は、更に、オブジェクト認識データベース２０８に基づいて、各エッジコンピューティングデバイス１０４に対する縮小オブジェクト認識データベース２１２を生成するように構成される。縮小オブジェクト認識データベース２１２は、識別された複数のオブジェクトのサブセットに関連する複数の２次元画像を含む。リダクションモジュール２１０は、例えば、対応するエッジコンピューティングデバイス１０４の予想される場所及び／又は予想される使用に基づいて、複数のオブジェクトのサブセットを識別するように構成されてよい。
【００２２】
通信モジュール２１４は、縮小オブジェクト認識データベース２１２を複数のエッジコンピューティングデバイス１０４の各々に送信するように構成される。いくつかの実施形態において、通信モジュール２１４は、エッジコンピューティングデバイス１０４からサムネイル画像を受信し、サムネイル画像を受信することに応答して、更新済みの縮小オブジェクト認識データベース２１２をエッジコンピューティングデバイス１０４に送信するように構成されてよい。
【００２３】
いくつかの実施形態において、オブジェクト認識モジュール２１６は、オブジェクト認識データベース２０８を用いて、エッジコンピューティングデバイス１０４から受信したサムネイル画像に基づいてオブジェクトを識別するように構成される。リダクションモジュール２１０は、更に、サムネイル画像に基づいてオブジェクトを識別することに応答して、認識されたオブジェクトに関連する複数の２次元画像を、更新済みの縮小オブジェクト認識データベース２１２に追加するように構成されてよい。
【００２４】
図２を更に参照すると、例示的な実施形態において、エッジコンピューティングデバイス１０４は、動作中に環境２２０を確立する。例示的な環境２２０は、通信モジュール２２２、オブジェクト認識モジュール２２４、イベントモジュール２２６及び画像キャプチャモジュール２２８を含む。環境２２０の様々なモジュールは、ハードウェア、ファームウェア、ソフトウェア又はそれらの組み合わせとして具現化されてよい。例えば、環境２２０の様々なモジュール、ロジック及び他のコンポーネントは、プロセッサ１４０又はエッジコンピューティングデバイス１０４の他のハードウェアコンポーネントの一部を形成してよく、あるいは、これらにより確立されてよい。そのようなものとして、いくつかの実施形態において、環境２２０の複数のモジュールのうちの任意の１又は複数は、回路又は複数の電子デバイスの集まり（例えば、通信回路２２２、オブジェクト認識回路２２４、イベント回路２２６等）として具現化されてよい。
【００２５】
通信モジュール２２２は、サーバコンピューティングデバイス１０２から縮小オブジェクト認識データベース２１２を受信するように構成される。上記で説明したように、縮小オブジェクト認識データベース２１２は、複数のオブジェクトに関連する複数の２次元画像を含む。追加的又は代替的に、及び、オブジェクト認識データベース２０８と同様に、いくつかの実施形態において、縮小オブジェクト認識データベース２１２は、エッジコンピューティングデバイス１０４により用いられる複数の３次元画像、複数の３次元モデル又は他の３次元データを認識された複数のオブジェクトに含んでよい。いくつかの実施形態において、通信モジュール２２２は、更に、サーバコンピューティングデバイス１０２に未認識オブジェクトのサムネイル画像を送信し、応答としてサーバコンピューティングデバイス１０２から更新済みの縮小オブジェクト認識データベース２１２を受信するように構成されてよい。更新済みの縮小オブジェクト認識データベース２１２は、未認識オブジェクトに関連する複数の２次元画像を含む。
【００２６】
イベントモジュール２２６は、複数のデバイスイベントの発生を監視するように構成される。イベントモジュール２２６は、エッジコンピューティングデバイス１０４の１又は複数のセンサからセンサデータを受信することにより複数のデバイスイベントを監視するように構成されてよい。複数のデバイスイベントは、例えば、複数のドアを開けるイベント及び／又は複数のドアを閉めるイベントを含んでよい。画像キャプチャモジュール２２８は、エッジコンピューティングデバイス１０４のカメラ１５０から画像データをキャプチャするように構成される。画像キャプチャモジュール２２８は、例えば、デバイスイベントの発生に応答して、画像データをキャプチャしてよい。
【００２７】
オブジェクト認識モジュール２２４は、デバイスイベントの発生に応答して、オブジェクト認識を実行するように構成される。オブジェクト認識モジュール２２４は、縮小オブジェクト認識データベース２１２を用いて、カメラ１５０からキャプチャされた画像データに基づくオブジェクト認識を実行するように構成される。いくつかの実施形態において、オブジェクト認識モジュール２２４は、画像データに基づいて、重み付けされた認識値を生成するように構成されてよい。オブジェクト認識モジュール２２４は、更に、オブジェクト認識を実行することに応答して、オブジェクト認識の複数の結果のログを取るような、オブジェクト認識動作を実行するように構成される。いくつかの実施形態において、オブジェクト認識モジュール２２４は、オブジェクト認識を実行することに応答して、オブジェクトが認識されるか否かを判断し、オブジェクトが認識されない場合、未認識オブジェクトのサムネイル画像を生成するように構成される。
【００２８】
図３を参照すると、使用するときに、サーバコンピューティングデバイス１０２は、エッジデバイスオブジェクト認識のための方法３００を実行してよい。方法３００は、ブロック３０２で始まり、サーバコンピューティングデバイス１０２は、オブジェクト認識データベース２０８に加えられるべき特定のオブジェクトの３次元モデルが３Ｄモデルデータ２０４において利用可能か否かを判断する。例えば、多くの消費者製品及び／又はこれら消費者製品の包装は、元々、コンピュータ化された設計ツール（例えば、コンピュータ支援設計ソフトウェア、パブリッシング又はレイアウトソフトウェア、画像編集ソフトウェア又は他のソフトウェア生産性向上ツール）を用いて設計され得る。従って、３Ｄモデルデータ２０４は、複数のエッジコンピューティングデバイス１０４により認識されることが予想され得る消費者製品又は製品包装のような多くのオブジェクトに対して存在し得る。ブロック３０４において、サーバコンピューティングデバイス１０２は、３次元モデルデータが利用可能か否かを確認する。３次元モデルデータが利用可能でない場合、方法３００は、以下で説明されるブロック３０８に分岐する。３次元モデルデータが利用可能である場合、方法３００は、ブロック３０６に分岐する。
【００２９】
ブロック３０６において、サーバコンピューティングデバイス１０２は、３次元モデルをオブジェクトの１又は複数の２次元画像に変換する。例えば、サーバコンピューティングデバイス１０２は、いくつかの視点から３次元モデルをレンダリングして、複数の２次元画像を生成してよい。サーバコンピューティングデバイス１０２は、理想的な照明を用いて複数の２次元画像をレンダリングしてよく、あるいは、オブジェクト認識を実行することに用いるのに好適である複数の２次元画像をレンダリングしてよい。２次元画像をレンダリングした後、方法３００は、以下に説明されるブロック３１０に進む。
【００３０】
ブロック３０４に戻って参照すると、３次元モデルデータがオブジェクトに対して利用可能でない場合、方法３００は、ブロック３０８に分岐し、ブロック３０８において、サーバコンピューティングデバイス１０２は、製品に対する２次元画像データ入力を受信する。例えば、複数の２次元画像は、ユーザにより提供されてよく、あるいは、手動で指定されてよい。いくつかの実施形態において、ユーザは、例えば、反射光及び他の視覚的なアーチファクトを手動で除去することにより、複数の画像を手動で調節して、オブジェクト認識を実行するために複数の画像を準備してよい。従って、２次元画像データを受信することは、ブロック３０６と関連して上記で説明したように、３次元モデルから複数の２次元画像を作成するより多くの労力を必要とし得る。複数の２次元画像を取得した後、方法３００は、以下で説明されるブロック３１０に進む。
【００３１】
ブロック３１０において、サーバコンピューティングデバイス１０２は、認識されるべきオブジェクトに対応する複数の２次元画像をオブジェクト認識データベース２０８に追加する。以下で更に説明されるように、これらの２次元画像は、複数のエッジコンピューティングデバイス１０４によりキャプチャされる画像データ内の複数のオブジェクトを認識することに用いられてよい。ブロック３１２において、サーバコンピューティングデバイス１０２は、追加の複数のオブジェクトが、オブジェクト認識データベース２０８に追加されるべく、残っているか否かを判断する。例えば、サーバコンピューティングデバイス１０２は、小売店により蓄えられる製品（例えば、約１００，０００品）全ての画像がオブジェクト認識データベース２０８に含まれているか否かを判断してよい。追加の複数のオブジェクトが残っている場合、方法３００は、一巡してブロック３０２に戻り、追加の複数のオブジェクトを追加する。追加の複数のオブジェクトが残っていない場合、方法３００は、ブロック３１４に進む。
【００３２】
ブロック３１４において、サーバコンピューティングデバイス１０２は、複数のエッジコンピューティングデバイス１０４の各々により認識されることが予想される複数のオブジェクトをオブジェクト認識データベース２０８から識別する。サーバコンピューティングデバイス１０２は、任意の技術を用いて、特定のエッジコンピューティングデバイス１０４により認識されることが予想される複数のオブジェクトを判断してよい。例えば、サーバコンピューティングデバイス１０２は、エッジコンピューティングデバイス１０４の予想される場所及び／又は予想される使用に基づいて、予想される複数のオブジェクトを識別してよい。例えば、製品貯蔵ユニットに組み込まれ、あるいは、製品貯蔵ユニットに連結されるエッジコンピューティングデバイス１０４は、その製品貯蔵ユニットに一般的に格納される複数のオブジェクトを認識することが予想されてよい。サーバコンピューティングデバイス１０２は、在庫管理システム又は他のデータベースを参照して、その製品貯蔵ユニットに一般的に格納される複数のオブジェクトを判断してよい。その例に引き続き、自動販売機又は冷却器に連結されるエッジコンピューティングデバイス１０４は、自動販売機又は冷却器（又は関連する店）に蓄えられ得る飲料を認識することが予想されてよい。別の例として、小売店の棚に連結されるエッジコンピューティングデバイス１０４は、その小売店の棚に蓄えられるべき複数の製品の小売包装を認識することが予想されてよい。従って、各縮小オブジェクト認識データベース２１２は、オブジェクト認識データベース２０８よりも非常に少ない数のオブジェクト（例えば、小売店における１００，０００品以上と比べて小売店の棚に格納される約１０品）に対する複数の画像を含んでよい。
【００３３】
ブロック３１６において、サーバコンピューティングデバイス１０２は、各エッジコンピューティングデバイス１０４に対する縮小オブジェクト認識データベース２１２を生成する。各縮小オブジェクト認識データベース２１２は、オブジェクト認識データベース２０８の複数のオブジェクトのサブセットに関連する複数の２次元画像を含む。特定の縮小オブジェクト認識データベース２１２に含まれる複数の画像は、関連するエッジコンピューティングデバイス１０４により認識されることが予想される複数のオブジェクトであり、これら複数のオブジェクトは、ブロック３１４と関連して上記で説明したように判断される。従って、サーバコンピューティングデバイス１０２は、各エッジコンピューティングデバイス１０４に対して異なる縮小オブジェクト認識データベース２１２を準備してよい。ブロック３１８において、サーバコンピューティングデバイス１０２は、対応する縮小オブジェクト認識データベース２１２を各エッジコンピューティングデバイス１０４に送信する。
【００３４】
ブロック３２０において、サーバコンピューティングデバイス１０２は、複数のエッジコンピューティングデバイス１０４のうちの１又は複数から受信される複数のサムネイル画像を監視する。図４と関連して以下で更に説明されるように、エッジコンピューティングデバイス１０４は、オブジェクトが認識されない場合（例えば、オブジェクトが対応するエッジコンピューティングデバイス１０４の縮小オブジェクト認識データベース２１２に含まれていない場合）、サムネイル画像をサーバコンピューティングデバイス１０２に送信してよい。サムネイル画像は、エッジコンピューティングデバイス１０４によりキャプチャされる任意の画像又は一連の画像として具現化されてよい。サムネイル画像は、クロッピングされ、解像度が低減され、フレームレートが低減され、あるいは、エッジコンピューティングデバイス１０４からサーバコンピューティングデバイス１０２にサムネイル画像を送信するのに必要なストレージ空間、帯域幅及び／又はエネルギーを減らすべく変更されてよい。ブロック３２２において、サーバコンピューティングデバイス１０２は、サムネイル画像が受信されたか否かを確認する。サムネイル画像が受信されなかった場合、方法３００は、一巡してブロック３２０に戻り、複数のサムネイル画像を監視することを継続する。サムネイル画像が受信された場合、方法３００は、ブロック３２４に進む。
【００３５】
ブロック３２４において、サーバコンピューティングデバイス１０２は、エッジコンピューティングデバイス１０４から受信されたサムネイル画像に基づいてオブジェクトを認識する。サーバコンピューティングデバイス１０２は、任意の技術を用いて、オブジェクトを認識してよい。例えば、サーバコンピューティングデバイス１０２は、一致するオブジェクトを識別するべく、オブジェクト認識データベース２０８に格納された複数の２次元画像をサムネイル画像と比較してよい。オブジェクト認識データベース２０８が縮小オブジェクト認識データベース２１２よりもはるかに大きいので、サーバコンピューティングデバイス１０２によるオブジェクト認識は、エッジコンピューティングデバイス１０４によるオブジェクト認識と比べて、はるかに多くのエネルギー、処理能力、ストレージ空間又は他のコンピューティングリソースを必要とし得る。追加的又は代替的に、いくつかの実施形態において、サーバコンピューティングデバイス１０２のユーザは、（例えば、オブジェクトがオブジェクト認識データベース２０８に最初に含まれていない場合）サムネイル画像をオブジェクトと手動で照合してよい。
【００３６】
オブジェクトを認識した後、ブロック３２６において、サーバコンピューティングデバイス１０２は、エッジコンピューティングデバイス１０４に対する更新済みの縮小オブジェクト認識データベース２１２に、認識されたオブジェクトに関連する複数の２次元画像を追加する。ブロック３２８において、サーバコンピューティングデバイス１０２は、更新済みの縮小オブジェクト認識データベース２１２をエッジコンピューティングデバイス１０４に送信する。サーバコンピューティングデバイス１０２は、任意の技術を用いて、更新済みの縮小オブジェクト認識データベース２１２を生成し、及び／又は、送信してよい。例えば、いくつかの実施形態において、サーバコンピューティングデバイス１０２は、新たに認識されたオブジェクトを含めるべく、縮小オブジェクト認識データベース２１２全体を再生成してよい。別の例として、いくつかの実施形態において、サーバコンピューティングデバイス１０２は、増分変化のみを生成し、及び／又は、それのみを縮小オブジェクト認識データベース２１２に送信してよい。更新済みの縮小オブジェクト認識データベース２１２を送信した後、方法３００は、一巡してブロック３２０に戻り、複数のサムネイル画像を監視することを継続する。
【００３７】
図４を参照すると、使用するときに、エッジコンピューティングデバイス１０４は、エッジデバイスオブジェクト認識のための方法４００を実行してよい。方法４００は、ブロック４０２で始まり、ブロック４０２において、エッジコンピューティングデバイス１０４は、サーバコンピューティングデバイス１０２から縮小オブジェクト認識データベース２１２を受信する。図３のブロック３１６と関連して上記で説明したように、縮小オブジェクト認識データベース２１２は、エッジコンピューティングデバイス１０４により認識されることが予想される複数のオブジェクトに関連する複数の２次元画像を含む。縮小オブジェクト認識データベース２１２は、比較的少数のオブジェクト（例えば、小売店の棚に蓄えられることが予想される１０品）に対する画像データを含んでよい。
【００３８】
ブロック４０４において、エッジコンピューティングデバイス１０４は、１又は複数のデバイスイベントを監視する。エッジコンピューティングデバイス１０４は、タイマーイベント、ソフトウェアイベント、ネットワークイベント、センサイベント又は、エッジコンピューティングデバイス１０４に対する任意の他のイベント若しくは変化のような、任意の適切なイベントを監視してよい。多くの実施形態において、デバイスイベントは、ユーザが、例えば、関連する製品貯蔵ユニットを開けることにより、エッジコンピューティングデバイス１０４にアクセスしていることを示し得る。別の例として、エッジコンピューティングデバイス１０４は、ユーザが自動販売機から商品を選択するときのような、複数の製品の販売イベントを監視してよい。エッジコンピューティングデバイス１０４は、スリープ状態のような低電力状態における複数のイベントを監視してよい。いくつかの実施形態において、ブロック４０６では、エッジコンピューティングデバイス１０４が１又は複数のセンサから入力されるセンサを監視してよい。例えば、エッジコンピューティングデバイス１０４は、製品貯蔵ユニットのドアが開けられたとき及び／又は閉められたときのような、ドアを開けるイベント及び／又はドアを閉めるイベントに対する複数のセンサを監視してよい。他のイベントは、製品が製品貯蔵ユニットに加えられるとき、又は、製品貯蔵ユニットから移動させられたときのような複数の重さ変化イベント、製品貯蔵ユニットが開けられたとき、及び／又は、照明がユーザにより点灯されたときのような複数の照明イベント、又は、他のイベントを含んでよい。ブロック４０８において、エッジコンピューティングデバイス１０４は、デバイスイベントが発生したか否かを判断する。デバイスイベントが発生しなかった場合、方法４００は、一巡してブロック４０４に戻り、複数のデバイスイベントを監視することを継続する。デバイスイベントが発生した場合、方法４００は、ブロック４１０に進む。
【００３９】
ブロック４１０において、エッジコンピューティングデバイス１０４は、縮小オブジェクト認識データベース２１２に基づいて、（複数の）カメラ１５０からキャプチャされた画像データを用いたオブジェクト認識を実行する。エッジコンピューティングデバイス１０４は、（複数の）カメラ１５０を用いてオブジェクトの１又は複数の静止画及び／又は動画をキャプチャしてよい。更に、いくつかの実施形態において、エッジコンピューティングデバイス１０４は、（複数の）カメラ１５０の電源をオンにし、あるいは、（複数の）カメラ１５０を起動して、複数の画像をキャプチャしてよく、その後、画像をキャプチャした後に、（複数の）カメラ１５０の電源をオフし、あるいは、（複数の）カメラ１５０の動作を停止してよく、それで電力消費を削減し得る。更に、いくつかの実施形態において、エッジコンピューティングデバイス１０４は、例えば、１又は複数の３次元又はステレオカメラ１５０から、又は、１又は複数の３次元スキャナ（例えば、レーザスキャナ）から、キャプチャされた画像に関連する２次元又は３次元形状データをキャプチャしてよい。エッジコンピューティングデバイス１０４は、一致するオブジェクトを識別するべく、キャプチャされた画像データを、縮小オブジェクト認識データベース２１２に格納された複数の２次元画像と比較することによりオブジェクト認識を実行してよい。いくつかの実施形態において、エッジコンピューティングデバイス１０４は、エッジコンピューティングデバイス１０４の他の機能を妨げることなく非同期的なバックグラウンド処理においてオブジェクト認識を実行してよい。いくつかの実施形態において、ブロック４１２では、エッジコンピューティングデバイス１０４が１又は複数のオブジェクトに対する重み付けされた認識値を生成してよい。例えば、エッジコンピューティングデバイス１０４は、１又は複数のオブジェクトに関連する認識信頼値（例えば、パーセントの信頼性）を生成してよい。言うまでもなく、いくつかの実施形態において、エッジコンピューティングデバイス１０４は、追加的又は代替的に、バイナリ認識、例えば、オブジェクトが認識されるか、又は、認識されないかを判断することを実行してよい。
【００４０】
ブロック４１４において、エッジコンピューティングデバイス１０４は、オブジェクトが認識されたか否かを判断する。エッジコンピューティングデバイス１０４は、例えば、重み付けされた認識値を設定可能な認識閾値と比較してよい。ブロック４１２と関連して上記で説明したように、エッジコンピューティングデバイス１０４は、部分認識スコアを生成してよい。部分認識スコアが認識閾値（例えば、閾値パーセントの信頼性）より低い場合、エッジコンピューティングデバイス１０４は、オブジェクトが認識されていないと判断してよい。オブジェクトが認識される場合、方法４００は、以下で説明するブロック４２２へと分岐する。オブジェクトが認識されない場合、方法４００は、ブロック４１６に進む。
【００４１】
ブロック４１６において、エッジコンピューティングデバイス１０４は、未認識オブジェクトのサムネイル画像を作成する。上記で説明したように、サムネイル画像は、クロッピングされ、解像度が低減され、フレームレートが低減され、あるいは、エッジコンピューティングデバイス１０４からサーバコンピューティングデバイス１０２にサムネイル画像を送信するのに必要なストレージ空間、帯域幅及び／又はエネルギーを減らすべく変更されてよい。例えば、いくつかの実施形態において、エッジコンピューティングデバイス１０４は、未認識オブジェクトを含む、カメラ１５０によりキャプチャされた画像データの特定の一部を選択することにより、サムネイル画像を作成してよい。
【００４２】
ブロック４１８において、エッジコンピューティングデバイス１０４は、サムネイル画像をサーバコンピューティングデバイス１０２に送信する。図３のブロック３２４、３２６と関連して上記で説明したように、サーバコンピューティングデバイス１０２は、サムネイル画像内のオブジェクトを認識してよく、それから、そのオブジェクトに対する２次元画像データを含む更新済みの縮小オブジェクト認識データベース２１２を準備してよい。ブロック４２０において、エッジコンピューティングデバイス１０４は、サーバコンピューティングデバイス１０２から、更新済みの縮小オブジェクト認識データベース２１２を受信する。図３のブロック３２８と関連して上記で説明したように、縮小オブジェクト認識データベース２１２は、データベース全体として又は増分変化として含めた、任意のフォーマットで送信されてよい。従って、更新済みの縮小オブジェクト認識データベース２１２を受信した後に、エッジコンピューティングデバイス１０４は、以前の未認識オブジェクトを認識することを可能としてよい。
【００４３】
ブロック４２２において、エッジコンピューティングデバイス１０４は、オブジェクト認識の結果に基づいて、１又は複数の動作を実行する。いくつかの実施形態において、エッジコンピューティングデバイス１０４は、複数のオブジェクト認識の結果のログを取ってよく、例えば、認識された（複数の）オブジェクト及び／又は関連する複数の重み付けされた認識値を記録する。いくつかの実施形態において、エッジコンピューティングデバイス１０４は、オブジェクト認識の複数の結果をユーザに、又は、在庫管理システムのような別のデバイスに提供してよい。オブジェクト認識の結果に基づく動作を実行した後、方法４００は、一巡してブロック４０４に戻り、複数のデバイスイベントを監視することを継続する。
【００４４】
実施例
本明細書に開示された技術の例示的な実施例が以下に提供される。技術の実施形態は、以下に説明される実施例の任意の１又は複数、及び、任意の組み合わせを含んでよい。
【００４５】
実施例１は、エッジデバイスオブジェクト認識のためのコンピューティングデバイスを含み、コンピューティングデバイスは、複数のオブジェクトに関連する複数の２次元画像を含むオブジェクト認識データベースにアクセスするオブジェクトデータベース回路と、（ｉ）エッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトのサブセットを識別し、（ｉｉ）オブジェクト認識データベースに基づいて縮小オブジェクト認識データベースを生成するリダクション回路と、縮小オブジェクト認識データベースをエッジコンピューティングデバイスに送信する通信回路とを備え、複数のオブジェクトのサブセットの各オブジェクトは、エッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを有し、縮小オブジェクト認識データベースは、複数のオブジェクトのサブセットに関連する複数の２次元画像を含む。
【００４６】
実施例２は、実施例１の主題を含み、リダクション回路は、更に、（ｉ）第２のエッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトの第２のサブセットを識別し、（ｉｉ）オブジェクト認識データベースに基づいて第２の縮小オブジェクト認識データベースを生成し、複数のオブジェクトの第２のサブセットの各オブジェクトは、第２のエッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを有し、第２の縮小オブジェクト認識データベースは、複数のオブジェクトの第２のサブセットに関連する複数の２次元画像を含み、通信回路は、更に、第２の縮小オブジェクト認識データベースを第２のエッジコンピューティングデバイスに送信する。
【００４７】
実施例３は、実施例１及び２のいずれかの主題を含み、エッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトのサブセットを識別することは、エッジコンピューティングデバイスの予想される場所に基づいて複数のオブジェクトのサブセットを識別することを含む。
【００４８】
実施例４は、実施例１−３のいずれかの主題を含み、エッジコンピューティングデバイスの予想される場所に基づいて複数のオブジェクトのサブセットを識別することは、エッジコンピューティングデバイスの予想される小売店の棚の場所を識別することを含む。
【００４９】
実施例５は、実施例１−４のいずれかの主題を含み、エッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトのサブセットを識別することは、エッジコンピューティングデバイスの予想される使用に基づいて複数のオブジェクトのサブセットを識別することを含む。
【００５０】
実施例６は、実施例１−５のいずれかの主題を含み、オブジェクトの３次元モデルをオブジェクトに関連する複数の２次元画像に変換するモデリング回路を更に含み、オブジェクトデータベース回路は、更に、オブジェクトに関連する複数の２次元画像をオブジェクト認識データベースに追加する。
【００５１】
実施例７は、実施例１−６のいずれかの主題を含み、オブジェクト認識データベースを用いて、エッジコンピューティングデバイスから受信したサムネイル画像に基づいてオブジェクトを識別するオブジェクト認識回路を更に含み、リダクション回路は、更に、サムネイル画像に基づいてオブジェクトの識別に応答して、オブジェクトに関連する複数の２次元画像を更新済みの縮小オブジェクト認識データベースに追加し、通信回路は、更に、（ｉ）エッジコンピューティングデバイスからサムネイル画像を受信し、（ｉｉ）更新済みの縮小オブジェクト認識データベースをエッジコンピューティングデバイスに送信する。
【００５２】
実施例８は、エッジデバイスオブジェクト認識のためのコンピューティングデバイスを含み、コンピューティングデバイスは、複数のオブジェクトに関連する複数の２次元画像を含む縮小オブジェクト認識データベースをサーバコンピューティングデバイスから受信する通信回路と、デバイスイベントの発生を監視するイベント回路と、コンピューティングデバイスのカメラからの画像データをキャプチャする画像キャプチャ回路と、（ｉ）デバイスイベントの発生に応答して、縮小オブジェクト認識データベースとともに画像データに基づいてオブジェクト認識を実行し、（ｉｉ）オブジェクト認識の実行に応答して、オブジェクト認識動作を実行するオブジェクト認識回路とを備える。
【００５３】
実施例９は、実施例８の主題を含み、デバイスイベントの発生を監視することは、コンピューティングデバイスの１又は複数のセンサからセンサデータを受信することを含む。
【００５４】
実施例１０は、実施例８及び９のいずれかの主題を含み、デバイスイベントは、ドアを開けるイベント又はドアを閉めるイベントを含む。
【００５５】
実施例１１は、実施例８−１０のいずれかの主題を含み、カメラからの画像データをキャプチャすることは、デバイスイベントの発生に応答して、カメラからの画像データをキャプチャすることを含む。
【００５６】
実施例１２は、実施例８−１１のいずれかの主題を含み、オブジェクト認識を実行することは、画像データに基づいて、重み付けされた認識値を生成することを含む。
【００５７】
実施例１３は、実施例８−１２のいずれかの主題を含み、オブジェクト認識動作を実行することは、画像データに基づいてオブジェクト認識の実行の結果のログを取ることを含む。
【００５８】
実施例１４は、実施例８−１３のいずれかの主題を含み、オブジェクト認識回路は、更に、（ｉ）オブジェクト認識の実行に応答して、オブジェクトが認識されるか否かを判断し、（ｉｉ）オブジェクトが認識されないとの判断に応答して、画像データに基づく未認識オブジェクトのサムネイル画像を生成し、通信回路は、更に、未認識オブジェクトのサムネイル画像をサーバコンピューティングデバイスに送信する。
【００５９】
実施例１５は、実施例８−１４のいずれかの主題を含み、通信回路は、更に、サムネイル画像の送信に応答して、サーバコンピューティングデバイスから更新済みのオブジェクト認識データベースを受信し、更新済みのオブジェクト認識データベースは、未認識オブジェクトに関連する複数の２次元画像を含む。
【００６０】
実施例１６は、エッジデバイスオブジェクト認識のための方法を含み、方法は、コンピューティングデバイスが、複数のオブジェクトに関連する複数の２次元画像を含むオブジェクト認識データベースにアクセスする段階と、コンピューティングデバイスが、エッジコンピューティングデバイスのアイデンティティに基づいて、複数のオブジェクトのサブセットを識別する段階と、コンピューティングデバイスが、オブジェクト認識データベースに基づいて、縮小オブジェクト認識データベースを生成する段階と、コンピューティングデバイスが、縮小オブジェクト認識データベースをエッジコンピューティングデバイスに送信する段階とを備え、複数のオブジェクトのサブセットの各オブジェクトは、エッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを有し、縮小オブジェクト認識データベースは、複数のオブジェクトのサブセットに関連する複数の２次元画像を含む。
【００６１】
実施例１７は、実施例１６の主題を含み、コンピューティングデバイスが、第２のエッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトの第２のサブセットを識別する段階と、コンピューティングデバイスが、オブジェクト認識データベースに基づいて第２の縮小オブジェクト認識データベースを生成する段階と、コンピューティングデバイスが、第２の縮小オブジェクト認識データベースを第２のエッジコンピューティングデバイスに送信する段階とを更に含み、複数のオブジェクトの第２のサブセットの各オブジェクトは、第２のエッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを有し、第２の縮小オブジェクト認識データベースは、複数のオブジェクトの第２のサブセットに関連する複数の２次元画像を含む。
【００６２】
実施例１８は、実施例１６及び１７のいずれかの主題を含み、エッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトのサブセットを識別する段階は、エッジコンピューティングデバイスの予想される場所に基づいて複数のオブジェクトのサブセットを識別する段階を含む。
【００６３】
実施例１９は、実施例１６−１８のいずれかの主題を含み、エッジコンピューティングデバイスの予想される場所に基づいて複数のオブジェクトのサブセットを識別する段階は、エッジコンピューティングデバイスの予想される小売店の棚の場所を識別する段階を含む。
【００６４】
実施例２０は、実施例１６−１９のいずれかの主題を含み、エッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトのサブセットを識別する段階は、エッジコンピューティングデバイスの予想される使用に基づいて複数のオブジェクトのサブセットを識別する段階を含む。
【００６５】
実施例２１は、実施例１６−２０のいずれかの主題を含み、コンピューティングデバイスが、オブジェクトの３次元モデルを当該オブジェクトに関連する複数の２次元画像に変換する段階と、コンピューティングデバイスが、オブジェクトに関連する複数の２次元画像をオブジェクト認識データベースに追加する段階とを更に含む。
【００６６】
実施例２２は、実施例１６−２１のいずれかの主題を含み、コンピューティングデバイスが、エッジコンピューティングデバイスからサムネイル画像を受信する段階と、コンピューティングデバイスが、オブジェクト認識データベースを用いてサムネイル画像に基づいてオブジェクトを識別する段階と、コンピューティングデバイスが、サムネイル画像に基づいてオブジェクトを識別する段階に応答して、オブジェクトに関連する複数の２次元画像を、更新済みの縮小オブジェクト認識データベースに追加する段階と、コンピューティングデバイスが、更新済みの縮小オブジェクト認識データベースをエッジコンピューティングデバイスに送信する段階とを更に含む。
【００６７】
実施例２３は、エッジデバイスオブジェクト認識のための方法を含み、方法は、コンピューティングデバイスが、複数のオブジェクトに関連する複数の２次元画像を含む縮小オブジェクト認識データベースをサーバコンピューティングデバイスから受信する段階と、コンピューティングデバイスが、デバイスイベントの発生を監視する段階と、コンピューティングデバイスが、コンピューティングデバイスのカメラからの画像データをキャプチャする段階と、コンピューティングデバイスが、デバイスイベントの発生に応答して、縮小オブジェクト認識データベースを用いて、画像データに基づくオブジェクト認識を実行する段階と、コンピューティングデバイスが、オブジェクト認識を実行する段階に応答して、オブジェクト認識動作を実行する段階とを備える。
【００６８】
実施例２４は、実施例２３の主題を含み、デバイスイベントの発生を監視する段階は、コンピューティングデバイスの１又は複数のセンサからセンサデータを受信する段階を含む。
【００６９】
実施例２５は、実施例２３及び２４のいずれかの主題を含み、デバイスイベントは、ドアを開けるイベント又はドアを閉めるイベントを含む。
【００７０】
実施例２６は、実施例２３−２５のいずれかの主題を含み、カメラからの画像データをキャプチャする段階は、デバイスイベントの発生に応答して、カメラからの画像データをキャプチャする段階を含む。
【００７１】
実施例２７は、実施例２３−２６のいずれかの主題を含み、オブジェクト認識を実行する段階は、画像データに基づいて、重み付けされた認識値を生成する段階を含む。
【００７２】
実施例２８は、実施例２３−２７のいずれかの主題を含み、オブジェクト認識動作を実行する段階は、画像データに基づいてオブジェクト認識を実行した結果のログを取る段階を含む。
【００７３】
実施例２９は、実施例２３−２８のいずれかの主題を含み、コンピューティングデバイスが、オブジェクト認識を実行する段階に応答して、オブジェクトが認識されるか否かを判断する段階と、コンピューティングデバイスが、オブジェクトが認識されないと判断することに応答して、画像データに基づく未認識オブジェクトのサムネイル画像を生成する段階と、コンピューティングデバイスが、未認識オブジェクトのサムネイル画像をサーバコンピューティングデバイスに送信する段階とを更に含む。
【００７４】
実施例３０は、実施例２３−２９のいずれかの主題を含み、コンピューティングデバイスが、サムネイル画像を送信する段階に応答して、サーバコンピューティングデバイスから更新済みのオブジェクト認識データベースを受信する段階を更に含み、更新済みのオブジェクト認識データベースは、未認識オブジェクトに関連する複数の２次元画像を含む。
【００７５】
実施例３１は、プロセッサと、プロセッサにより実行されるときに、コンピューティングデバイスに実施例１６−３０のいずれかの方法を実行させる複数の命令がその中に格納されたメモリとを備えるコンピューティングデバイスを含む。
【００７６】
実施例３２は、実行されることに応答して、コンピューティングデバイスが実施例１６−３０のいずれかの方法を実行することを結果としてもたらす、そこに格納された複数の命令を備える１又は複数の機械可読記憶媒体を含む。
【００７７】
実施例３３は、実施例１６−３０のいずれかの方法を実行する手段を備えるコンピューティングデバイスを含む。
【００７８】
実施例３４は、エッジデバイスオブジェクト認識のためのコンピューティングデバイスを含み、コンピューティングデバイスは、複数のオブジェクトに関連する複数の２次元画像を含むオブジェクト認識データベースにアクセスする手段と、エッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトのサブセットを識別する手段と、オブジェクト認識データベースに基づいて縮小オブジェクト認識データベースを生成する手段と、縮小オブジェクト認識データベースをエッジコンピューティングデバイスに送信する手段とを備え、複数のオブジェクトのサブセットの各オブジェクトは、エッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを有し、縮小オブジェクト認識データベースは、複数のオブジェクトのサブセットに関連する２次元画像を含む。
【００７９】
実施例３５は、実施例３４の主題を含み、第２のエッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトの第２のサブセットを識別する手段と、オブジェクト認識データベースに基づいて第２の縮小オブジェクト認識データベースを生成する手段と、第２の縮小オブジェクト認識データベースを第２のエッジコンピューティングデバイスに送信する手段とを更に備え、複数のオブジェクトの第２のサブセットの各オブジェクトは、第２のエッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを有し、第２の縮小オブジェクト認識データベースは、複数のオブジェクトの第２のサブセットに関連する複数の２次元画像を含む。
【００８０】
実施例３６は、実施例３４及び３５のいずれかの主題を含み、エッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトのサブセットを識別する手段は、エッジコンピューティングデバイスの予想される場所に基づいて複数のオブジェクトのサブセットを識別する手段を含む。
【００８１】
実施例３７は、実施例３４−３６のいずれかの主題を含み、エッジコンピューティングデバイスの予想される場所に基づいて複数のオブジェクトのサブセットを識別する手段は、エッジコンピューティングデバイスの予想される小売店の棚の場所を識別する手段を含む。
【００８２】
実施例３８は、実施例３４−３７のいずれかの主題を含み、エッジコンピューティングデバイスのアイデンティティに基づいて複数のオブジェクトのサブセットを識別する手段は、エッジコンピューティングデバイスの予想される使用に基づいて複数のオブジェクトのサブセットを識別する手段を含む。
【００８３】
実施例３９は、実施例３４−３８のいずれかの主題を含み、オブジェクトの３次元モデルをオブジェクトに関連する複数の２次元画像に変換する手段と、オブジェクトに関連する２次元画像をオブジェクト認識データベースに追加する手段とを更に含む。
【００８４】
実施例４０は、実施例３４−３９のいずれかの主題を含み、エッジコンピューティングデバイスからサムネイル画像を受信する手段と、オブジェクト認識データベースを用いて、サムネイル画像に基づいてオブジェクトを識別する手段と、サムネイル画像に基づいてオブジェクトを識別することに応答して、オブジェクトに関連する複数の２次元画像を更新済みの縮小オブジェクト認識データベースに追加する手段と、更新済みの縮小オブジェクト認識データベースをエッジコンピューティングデバイスに送信する手段とを更に含む。
【００８５】
実施例４１は、エッジデバイスオブジェクト認識のためのコンピューティングデバイスを含み、コンピューティングデバイスは、複数のオブジェクトに関連する複数の２次元画像を含む縮小オブジェクト認識データベースをサーバコンピューティングデバイスから受信する手段と、デバイスイベントの発生を監視する手段と、コンピューティングデバイスのカメラからの画像データをキャプチャする手段と、デバイスイベントの発生に応答して、縮小オブジェクト認識データベースを用いて、画像データに基づくオブジェクト認識を実行する手段と、オブジェクト認識を実行することに応答して、オブジェクト認識動作を実行する手段とを備える。
【００８６】
実施例４２は、実施例４１の主題を含み、デバイスイベントの発生を監視する手段は、コンピューティングデバイスの１又は複数のセンサからセンサデータを受信する手段を含む。
【００８７】
実施例４３は、実施例４１及び４２のいずれかの主題を含み、デバイスイベントは、ドアを開けるイベント又はドアを閉めるイベントを含む。
【００８８】
実施例４４は、実施例４１−４３のいずれかの主題を含み、カメラからの画像データをキャプチャする手段は、デバイスイベントの発生に応答して、カメラからの画像データをキャプチャする手段を含む。
【００８９】
実施例４５は、実施例４１−４４のいずれかの主題を含み、オブジェクト認識を実行する手段は、画像データに基づいて、重み付けされた認識値を生成する手段を含む。
【００９０】
実施例４６は、実施例４１−４５のいずれかの主題を含み、オブジェクト認識動作を実行する手段は、画像データに基づいてオブジェクト認識を実行した結果のログを取る手段を含む。
【００９１】
実施例４７は、実施例４１−４６のいずれかの主題を含み、オブジェクト認識を実行することに応答して、オブジェクトが認識されるか否かを判断する手段と、オブジェクトが認識されないと判断することに応答して、画像データに基づく未認識オブジェクトのサムネイル画像を生成する手段と、未認識オブジェクトのサムネイル画像をサーバコンピューティングデバイスに送信する手段とを更に含む。
【００９２】
実施例４８は、実施例４１−４７のいずれかの主題を含み、サムネイル画像を送信することに応答して、サーバコンピューティングデバイスから更新済みのオブジェクト認識データベースを受信する手段を更に含み、更新済みのオブジェクト認識データベースは、未認識オブジェクトに関連する複数の２次元画像を含む。
（項目１）
エッジデバイスオブジェクト認識のためのコンピューティングデバイスであって、前記コンピューティングデバイスは、
複数のオブジェクトに関連する複数の２次元画像を含むオブジェクト認識データベースにアクセスするオブジェクトデータベース回路と、
（ｉ）エッジコンピューティングデバイスのアイデンティティに基づいて、前記複数のオブジェクトのサブセットを識別し、（ｉｉ）前記オブジェクト認識データベースに基づいて、縮小オブジェクト認識データベースを生成するリダクション回路と、
前記縮小オブジェクト認識データベースを前記エッジコンピューティングデバイスに送信する通信回路と、
を備え、
前記複数のオブジェクトの前記サブセットの各オブジェクトは、前記エッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを含み、
前記縮小オブジェクト認識データベースは、前記複数のオブジェクトの前記サブセットに関連する複数の２次元画像を含む、コンピューティングデバイス。
（項目２）
前記リダクション回路は、更に、（ｉ）第２のエッジコンピューティングデバイスのアイデンティティに基づいて前記複数のオブジェクトの第２のサブセットを識別し、（ｉｉ）前記オブジェクト認識データベースに基づいて、第２の縮小オブジェクト認識データベースを生成し、前記複数のオブジェクトの前記第２のサブセットの各オブジェクトは、前記第２のエッジコンピューティングデバイスにより画像内にキャプチャされることが予想されるオブジェクトを有し、前記第２の縮小オブジェクト認識データベースは、前記複数のオブジェクトの前記第２のサブセットに関連する複数の２次元画像を含み、
前記通信回路は、更に、前記第２の縮小オブジェクト認識データベースを前記第２のエッジコンピューティングデバイスに送信する、請求項１に記載のコンピューティングデバイス。
（項目３）
前記エッジコンピューティングデバイスの前記アイデンティティに基づいて前記複数のオブジェクトの前記サブセットを識別することは、前記エッジコンピューティングデバイスの予想される場所又は前記エッジコンピューティングデバイスの予想される使用に基づいて前記複数のオブジェクトの前記サブセットを識別することを含む、請求項１に記載のコンピューティングデバイス。
（項目４）
前記エッジコンピューティングデバイスの前記予想される場所に基づいて前記複数のオブジェクトの前記サブセットを識別することは、前記エッジコンピューティングデバイスの予想される小売店の棚の場所を識別することを含む、請求項３に記載のコンピューティングデバイス。
（項目５）
オブジェクトの３次元モデルを前記オブジェクトに関連する複数の２次元画像に変換するモデリング回路を更に備え、
前記オブジェクトデータベース回路は、更に、前記オブジェクトに関連する前記複数の２次元画像を前記オブジェクト認識データベースに追加する、請求項１に記載のコンピューティングデバイス。
（項目６）
前記オブジェクト認識データベースを用いて前記エッジコンピューティングデバイスから受信されるサムネイル画像に基づいてオブジェクトを識別するオブジェクト認識回路を更に備え、
前記リダクション回路は、更に、前記サムネイル画像に基づく前記オブジェクトの識別に応答して、前記オブジェクトに関連する複数の２次元画像を更新済みの縮小オブジェクト認識データベースに追加し、
前記通信回路は、更に、（ｉ）前記エッジコンピューティングデバイスから前記サムネイル画像を受信し、（ｉｉ）前記更新済みの縮小オブジェクト認識データベースを前記エッジコンピューティングデバイスに送信する、請求項１から５のいずれか一項に記載のコンピューティングデバイス。
（項目７）
エッジデバイスオブジェクト認識のためのコンピューティングデバイスであって、前記コンピューティングデバイスは、
複数のオブジェクトに関連する複数の２次元画像を含む縮小オブジェクト認識データベースをサーバコンピューティングデバイスから受信する通信回路と、
デバイスイベントの発生を監視するイベント回路と、
前記コンピューティングデバイスのカメラから画像データをキャプチャする画像キャプチャ回路と、
（ｉ）前記デバイスイベントの発生に応答して、前記縮小オブジェクト認識データベースとともに前記画像データに基づいてオブジェクト認識を実行し、（ｉｉ）前記オブジェクト認識の実行に応答して、オブジェクト認識動作を実行するオブジェクト認識回路と、
を備えるコンピューティングデバイス。
（項目８）
前記デバイスイベントの前記発生を監視することは、前記コンピューティングデバイスの１又は複数のセンサからセンサデータを受信することを含み、
前記デバイスイベントは、ドアを開けるイベント又はドアを閉めるイベントを含む、請求項７に記載のコンピューティングデバイス。
（項目９）
前記カメラから前記画像データをキャプチャすることは、前記デバイスイベントの前記発生に応答して、前記カメラからの前記画像データをキャプチャすることを含む、請求項７に記載のコンピューティングデバイス。
（項目１０）
前記オブジェクト認識を実行することは、前記画像データに基づいて、重み付けされた認識値を生成することを含む、請求項７に記載のコンピューティングデバイス。
（項目１１）
前記オブジェクト認識動作を実行することは、前記画像データに基づいて前記オブジェクト認識の実行の結果のログを取ることを含む、請求項７から１０のいずれか一項に記載のコンピューティングデバイス。
（項目１２）
前記オブジェクト認識回路は、更に、（ｉ）オブジェクトが前記オブジェクト認識の実行に応答して認識されるか否かを判断し、（ｉｉ）前記オブジェクトが認識されないとの判断に応答して、前記画像データに基づいて未認識オブジェクトのサムネイル画像を生成し、
前記通信回路は、更に、（ｉ）前記未認識オブジェクトの前記サムネイル画像を前記サーバコンピューティングデバイスに送信し、（ｉｉ）前記サムネイル画像の送信に応答して、前記サーバコンピューティングデバイスから更新済みのオブジェクト認識データベースを受信し、前記更新済みのオブジェクト認識データベースは、前記未認識オブジェクトに関連する複数の２次元画像を含む、請求項７から１０のいずれか一項に記載のコンピューティングデバイス。
（項目１３）
エッジデバイスオブジェクト認識のための方法であって、前記方法は、
コンピューティングデバイスが、複数のオブジェクトに関連する複数の２次元画像を含むオブジェクト認識データベースにアクセスする段階と、
前記コンピューティングデバイスが、エッジコンピューティングデバイスのアイデンティティに基づいて前記複数のオブジェクトのサブセットを識別する段階と、
前記コンピューティングデバイスが、前記オブジェクト認識データベースに基づいて、縮小オブジェクト認識データベースを生成する段階と、
前記コンピューティングデバイスが、前記縮小オブジェクト認識データベースを前記エッジコンピューティングデバイスに送信する段階と、
を備え、
前記複数のオブジェクトの前記サブセットの各オブジェクトは、前記エッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを含み、
前記縮小オブジェクト認識データベースは、前記複数のオブジェクトの前記サブセットに関連する複数の２次元画像を含む、方法。
（項目１４）
前記コンピューティングデバイスが、第２のエッジコンピューティングデバイスのアイデンティティに基づいて前記複数のオブジェクトの第２のサブセットを識別する段階と、
前記コンピューティングデバイスが、前記オブジェクト認識データベースに基づいて、第２の縮小オブジェクト認識データベースを生成する段階と、
前記コンピューティングデバイスが、前記第２の縮小オブジェクト認識データベースを前記第２のエッジコンピューティングデバイスに送信する段階と、
を更に備え、
前記複数のオブジェクトの前記第２のサブセットの各オブジェクトは、前記第２のエッジコンピューティングデバイスにより画像内でキャプチャされることが予想されるオブジェクトを含み、
前記第２の縮小オブジェクト認識データベースは、前記複数のオブジェクトの前記第２のサブセットに関連する複数の２次元画像を含む、請求項１３に記載の方法。
（項目１５）
前記エッジコンピューティングデバイスの前記アイデンティティに基づいて前記複数のオブジェクトの前記サブセットを識別する段階は、前記エッジコンピューティングデバイスの予想される場所に基づいて前記複数のオブジェクトの前記サブセットを識別する段階を含む、請求項１３に記載の方法。
（項目１６）
前記コンピューティングデバイスが、オブジェクトの３次元モデルを前記オブジェクトに関連する複数の２次元画像に変換する段階と、
前記コンピューティングデバイスが、前記オブジェクトに関連する前記複数の２次元画像を前記オブジェクト認識データベースに追加する段階と、
を更に備える、請求項１３に記載の方法。
（項目１７）
前記コンピューティングデバイスが、前記エッジコンピューティングデバイスからサムネイル画像を受信する段階と、
前記コンピューティングデバイスが、前記オブジェクト認識データベースを用いて前記サムネイル画像に基づいてオブジェクトを識別する段階と、
前記コンピューティングデバイスが、前記サムネイル画像に基づく前記オブジェクトを識別する段階に応答して、前記オブジェクトに関連する複数の２次元画像を更新済みの縮小オブジェクト認識データベースに追加する段階と、
前記コンピューティングデバイスが、前記更新済みの縮小オブジェクト認識データベースを前記エッジコンピューティングデバイスに送信する段階と、
を更に備える、請求項１３に記載の方法。
（項目１８）
エッジデバイスオブジェクト認識のための方法であって、前記方法は、
コンピューティングデバイスが、複数のオブジェクトに関連する複数の２次元画像を含む縮小オブジェクト認識データベースをサーバコンピューティングデバイスから受信する段階と、
前記コンピューティングデバイスが、デバイスイベントの発生を監視する段階と、
前記コンピューティングデバイスが、前記コンピューティングデバイスのカメラからの画像データをキャプチャする段階と、
前記コンピューティングデバイスが、前記デバイスイベントの発生に応答して、前記縮小オブジェクト認識データベースを用いて前記画像データに基づくオブジェクト認識を実行する段階と、
前記コンピューティングデバイスが、前記オブジェクト認識を実行する段階に応答して、オブジェクト認識動作を実行する段階と、
を備える方法。
（項目１９）
前記デバイスイベントの前記発生を監視する段階は、前記コンピューティングデバイスの１又は複数のセンサからセンサデータを受信する段階を含み、前記デバイスイベントは、ドアを開けるイベント又はドアを閉めるイベントを含む、請求項１８に記載の方法。
（項目２０）
前記カメラからの前記画像データをキャプチャする段階は、前記デバイスイベントの前記発生に応答して、前記カメラからの前記画像データをキャプチャする段階を含む、請求項１８に記載の方法。
（項目２１）
前記オブジェクト認識を実行する段階は、前記画像データに基づいて、重み付けされた認識値を生成する段階を含む、請求項１８に記載の方法。
（項目２２）
前記コンピューティングデバイスが、前記オブジェクト認識を実行する段階に応答して、オブジェクトが認識されるか否かを判断する段階と、
前記コンピューティングデバイスが、前記オブジェクトが認識されないと判断する段階に応答して、前記画像データに基づく未認識オブジェクトのサムネイル画像を生成する段階と、
前記コンピューティングデバイスが、前記未認識オブジェクトの前記サムネイル画像を前記サーバコンピューティングデバイスに送信する段階と、
前記コンピューティングデバイスが、前記サムネイル画像を送信する段階に応答して、前記サーバコンピューティングデバイスから更新済みのオブジェクト認識データベースを受信する段階と、
を更に備え、
前記更新済みのオブジェクト認識データベースは、前記未認識オブジェクトに関連する複数の２次元画像を含む、請求項１８に記載の方法。
（項目２３）
プロセッサと、
前記プロセッサにより実行されるときに、前記コンピューティングデバイスに請求項１３から２２のいずれか一項に記載の方法を実行させる複数の命令がその中に格納されたメモリと、
を備えるコンピューティングデバイス。
（項目２４）
コンピューティングデバイスに、請求項１３から２２のいずれか一項に記載の方法を実行させるためのコンピュータプログラム。
（項目２５）
請求項２４に記載のコンピュータプログラムを格納するコンピュータ可読記憶媒体。
（項目２６）
請求項１３から２２のいずれか一項に記載の方法を実行するための手段を備えるコンピューティングデバイス。
【図１】
0006273324.tif 000002
【図２】
0006273324.tif 000003
【図３】
0006273324.tif 000004
【図４】
0006273324.tif 000005