(57)【要約】【課題】複数の整理されたオブジェクトを含む画像を解析する方法及びシステム等を提供する。【解決手段】当該技術は、画像認識システムであって、複数の整理されたオブジェクトを含むリアログラム画像を受け取り、小売り棚にある１つ以上のアイテムのリアログラム画像においてオブジェクトを検出及び特定し、棚の最前部を特定してそれにラベルを付し、棚の下にある空きスペースを特定し、特定されていない製品がある可能性がある領域を特定し、製品が“品切れ”である領域を特定する画像認識システムを含む。【選択図】図２
2016115348.tif 000002
【特許請求の範囲】
【請求項１】
複数の整理されたオブジェクトの画像を受け取るステップと、
前記複数の整理されたオブジェクトの前記画像におけるピクセルのグループに基づきスーパーピクセルを生成するステップと、
前記複数の整理されたオブジェクトの前記画像に対する画像解析からの情報及び観測結果を用いてスーパーピクセルにラベルを付すステップと、
前記スーパーピクセルに基づき前記複数の整理されたオブジェクトの前記画像の領域を特定するステップと
を有する、コンピュータにより実施される方法。
【請求項２】
前記画像においてインデックス付きのオブジェクトを特定するステップを更に有し、
前記情報及び観測結果を用いてスーパーピクセルにラベルを付すステップは、オブジェクト識別子を用いてスーパーピクセルにラベルを付すことを含む、
請求項１に記載のコンピュータにより実施される方法。
【請求項３】
前記情報及び観測結果を用いて領域の仮定を生成するステップを更に有する
請求項１に記載のコンピュータにより実施される方法。
【請求項４】
前記仮定をバリデートするステップを更に有する
請求項３に記載のコンピュータにより実施される方法。
【請求項５】
前記バリデートされた仮定を用いて前記画像の領域を分類するステップを更に有する
請求項４に記載のコンピュータにより実施される方法。
【請求項６】
前記領域は、既知のオブジェクト、空の棚スペース、棚の特徴、及びラベルのグループからの１つ以上を含む、
請求項１に記載のコンピュータにより実施される方法。
【請求項７】
棚の下にある空き領域を特定するステップと、
空又は他としてスーパーピクセルを分類するステップと、
前記スーパーピクセルに対してセグメンテーションアルゴリズムを繰り返して、該スーパーピクセルの夫々を空又は他として再分類するステップと、
前記再分類されたスーパーピクセルに基づき前記画像において空の棚スペースを特定するステップと
を更に有する請求項１に記載のコンピュータにより実施される方法。
【請求項８】
１つ以上のプロセッサと、
命令を記憶しているメモリと
を有し、
前記命令は、実行される場合に、前記１つ以上のプロセッサに、
複数の整理されたオブジェクトの画像を受け取る動作と、
前記複数の整理されたオブジェクトの前記画像における類似したピクセルのグループに基づきスーパーピクセルを生成する動作と
前記複数の整理されたオブジェクトの前記画像に対する画像解析からの情報及び観測結果を用いてスーパーピクセルにラベルを付す動作と、
前記スーパーピクセルに基づき前記複数の整理されたオブジェクトの前記画像の領域を特定する動作と
を実行させる、システム。
【請求項９】
前記命令は、前記１つ以上のプロセッサに、
前記画像においてインデックス付きのオブジェクトを特定する動作と、
オブジェクト識別子を用いてスーパーピクセルにラベルを付す動作と
を更に実行させる、請求項８に記載のシステム。
【請求項１０】
前記命令は、前記１つ以上のプロセッサに、前記情報及び観測結果を用いて領域の仮定を生成する動作を更に実行させる、
請求項８に記載のシステム。
【請求項１１】
前記命令は、前記１つ以上のプロセッサに、前記仮定をバリデートする動作を更に実行させる、
請求項１０に記載のシステム。
【請求項１２】
前記命令は、前記１つ以上のプロセッサに、前記バリデートされた仮定を用いて前記画像の領域を分類する動作を更に実行させる、
請求項１１に記載のシステム。
【請求項１３】
前記領域は、既知のオブジェクト、空の棚スペース、棚の特徴、及びラベルのグループからの１つ以上を含む、
請求項８に記載のシステム。
【請求項１４】
前記命令は、前記１つ以上のプロセッサに、
棚の下にある空き領域を特定する動作と、
空又は他としてスーパーピクセルを分類する動作と、
前記スーパーピクセルに対してセグメンテーションアルゴリズムを繰り返して、該スーパーピクセルの夫々を空又は他として再分類する動作と、
前記再分類されたスーパーピクセルに基づき前記画像において空の棚スペースを特定する動作と
を更に実行させる、請求項８に記載のシステム。
【請求項１５】
コンピュータで実行される場合に、該コンピュータに、
複数の整理されたオブジェクトの画像を受け取る動作と、
前記複数の整理されたオブジェクトの前記画像における類似したピクセルのグループに基づきスーパーピクセルを生成する動作と
前記複数の整理されたオブジェクトの前記画像に対する画像解析からの情報及び観測結果を用いてスーパーピクセルにラベルを付す動作と、
前記スーパーピクセルに基づき前記複数の整理されたオブジェクトの前記画像の領域を特定する動作と
を実行させるコンピュータ可読プログラム。
【請求項１６】
当該コンピュータ可読プログラムは、前記コンピュータに、
前記画像においてインデックス付きのオブジェクトを特定する動作と、
オブジェクト識別子を用いてスーパーピクセルにラベルを付す動作と
を更に実行させる、請求項１５に記載のコンピュータ可読プログラム。
【請求項１７】
当該コンピュータ可読プログラムは、前記コンピュータに、前記情報及び観測結果を用いて領域の仮定を生成する動作を更に実行させる、
請求項１５に記載のコンピュータ可読プログラム。
【請求項１８】
当該コンピュータ可読プログラムは、前記コンピュータに、前記領域の仮定を用いて前記画像の領域を分類する動作を更に実行させる、
請求項１７に記載のコンピュータ可読プログラム。
【請求項１９】
前記領域は、既知のオブジェクト、空の棚スペース、棚の特徴、及びラベルのグループからの１つ以上を含む、
請求項１５に記載のコンピュータ可読プログラム。
【請求項２０】
当該コンピュータ可読プログラムは、前記コンピュータに、
棚の下にある空き領域を特定する動作と、
空又は他としてスーパーピクセルを分類する動作と、
前記スーパーピクセルに対してセグメンテーションアルゴリズムを繰り返して、該スーパーピクセルの夫々を空又は他として再分類する動作と、
前記再分類されたスーパーピクセルに基づき前記画像において空の棚スペースを特定する動作と
を更に実行させる、請求項１５に記載のコンピュータ可読プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、概して、画像処理におけるオブジェクト検出の分野に関係がある。より具体的には、本願は、複数の整理されたオブジェクトの画像を解析して、オブジェクト、棚の最前部及びその棚の最前部にあるラベル、棚の下にある空きスペース、特定されていないオブジェクトがある可能性がある領域、及び空き領域を画像において特定するシステム及び方法に関係がある。
【発明の概要】
【０００２】
当該技術は、複数の整理されたオブジェクトの画像を受け取る画像認識システムを含む。画像認識システムは、複数の整理されたオブジェクトの画像におけるピクセルのグループに基づき画像セグメント（例えば、スーパーピクセル）を生成し、複数の整理されたオブジェクトの画像に対する画像解析からの情報及び観測結果を用いて画像セグメントにラベルを付す。更に、システムは、画像セグメントに基づき複数の整理されたオブジェクトの画像の領域を分類する。領域は、例えば、画像における特定されたオブジェクト、棚の最前部及びラベル、棚の下にある空きスペース、特定されていないオブジェクトがある可能性がある領域、及び製品が“品切れ”である領域を含んでよい。
【０００３】
他の実施形態には、画像においてオブジェクトを認識するための対応する方法及びコンピュータプログラム製品がある。ここで記載される特徴及び利点は、包括的ではなく、多くの更なる特徴及び利点は、図面及び明細書を参酌して当業者に明らかである。更に、明細書において使用される用語は、主として、読みやすさ及び教育的目的のために選ばれており、記載される技術の適用範囲を制限するものはない点が留意されるべきである。
【図面の簡単な説明】
【０００４】
ここで記載される技術は、限定としてではなく一例として、添付の図面の図において表されている。図中、同じ参照符号は、同様の要素を参照するために使用されている。図は、説明のためにのみ、ここで記載される技術の様々な実施形態を表す。ここで表されている構造及び方法の代替の実施形態がここで記載される技術の原理から外れることなしに採用され得ることは、以下の議論から容易に認識されるはずである。
【０００５】
【図１】小売り棚の画像を解析するシステム１００の実施形態の一例を表すハイレベルブロック図である。
【０００６】
【図２】リアログラム解析アプリケーションを含むリアログラム解析システムの一例のブロック図を表す。
【０００７】
【図３】スーパーピクセルに基づくリアログラムシーン解析のための方法の一例のフロー図である。
【０００８】
【図４】リアログラムの一例を表す。
【０００９】
【図５Ａ】棚及び棚にある製品を含むリアログラムの例を表す。
【００１０】
【図５Ｂ】スーパーピクセルを重ね合わされたリアログラムの例を表す。
【００１１】
【図６】スーパーピクセル及び幾つかの実施形態では他の観測結果に基づきリアログラムの領域を特定する方法の一例のフロー図である。
【００１２】
【図７Ａ】リアログラム画像において表されている棚の最前部を特定する方法の一例のフロー図である。
【００１３】
【図７Ｂ】リアログラム画像において表されている棚の最前部を特定する方法の一例のフロー図であり、図７Ａの続きである。
【００１４】
【図８】スーパーピクセルを重ね合わされたリアログラムの部分と、棚の外観特徴を決定するためのスーパーピクセル間の関係を表す矢印とを例示する。
【００１５】
【図９】可能な棚の境界を表すためのプロセスを表す例図である。
【００１６】
【図１０】スーパーピクセルのリストをそれらの夫々の角度で表す例図である。
【００１７】
【図１１】棚の外観特徴を決定するためのスーパーピクセル間の関係を表す例図である。
【００１８】
【図１２Ａ】スーパーピクセル境界での量子化された勾配を表す例図である。
【００１９】
【図１２Ｂ】一対のスーパーピクセルについての量子化された勾配を示すデータ構造の例である。
【００２０】
【図１３】リアログラム画像において表されている棚の最前部でのラベルの位置を検出及び決定する方法の一例のフロー図である。
【００２１】
【図１４Ａ】棚セグメントのクラスタを表すために番号を付されたスーパーピクセルを重ね合わされたリアログラムの部分を例示する。
【００２２】
【図１４Ｂ】棚セグメントのクラスタを表すために番号を付されたスーパーピクセルを重ね合わされたリアログラムの部分を例示する。
【００２３】
【図１５】スーパーピクセルが最も少ないスーパーピクセルのクラスタと、水平でない直線が最も多いスーパーピクセルのクラスタとの間の共通集合を表す例図である。
【００２４】
【図１６】棚のスーパーピクセルのクラスタを表すために番号を付されたスーパーピクセルの接続された成分を重ね合わされており且つ仮定のラベル位置を示すリアログラムの部分を例示する。
【００２５】
【図１７】リアログラム画像において複数の特定のオブジェクトの存在及び位置を決定する方法の一例のフロー図である。
【００２６】
【図１８】画像内の複数の対応する点についての記述子の差の棒グラフを例示する。
【００２７】
【図１９Ａ】同じ高さのアイテムの積み重ねの例図を表す。
【００２８】
【図１９Ｂ】画像内のインデックスを付されていないオブジェクトを特定する境界ボックスを重ね合わされたリアログラムの部分を例示する。
【００２９】
【図２０】リアログラム画像において棚の下にある空きスペースを見つける方法の一例のフロー図である。
【００３０】
【図２１Ａ】セグメンテーションアルゴリズムによってセグメント化された“品切れ”領域及び“他”領域を特定するリアログラムの部分を例示する。
【００３１】
【図２１Ｂ】“品切れ”領域及び“他”領域を特定するリアログラムの部分を例示する。
【００３２】
【図２２】スーパーピクセルをシードされた“品切れ”領域及び“他”領域を特定するリアログラムの部分を例示する。
【００３３】
【図２３Ａ】１回のセグメンテーションアルゴリズムの後の、“品切れ”領域及び“他”領域を示すスーパーピクセルを重ね合わされたリアログラムの例を表す。
【００３４】
【図２３Ｂ】１０回のセグメンテーションアルゴリズムの後の、“品切れ”領域及び“他”領域を示すスーパーピクセルを重ね合わされたリアログラムの例を表す。
【００３５】
【図２４】潜在的な未知の製品についての接続されたコンポーネントポリゴンを重ね合わされたリアログラムの例を表す。
【００３６】
【図２５】画像から値段を抽出するための方法の一例のフロー図である。
【００３７】
【図２６】表において棚の仮定の一例を表す。
【発明を実施するための形態】
【００３８】
図１は、小売り棚の画像を解析するシステム１００の実施形態の一例を表すハイレベルブロック図である。表されているシステム１００は、イメージングデバイス１１５と、リアログラム解析サーバ１０１とを含む。表されている実施形態では、システム１００のエンティティは、ネットワーク１０５を介して通信上結合されている。
【００３９】
ネットワーク１０５は、従来型の有線又は無線であることができ、星形構成、トークンリング構成又は他の構成を含む多種多様な構成を有してよい。更に、ネットワーク１０５は、ローカルエリアネットワーク（ＬＡＮ；Local  Area  Network）、ワイドエリアネットワーク（ＷＡＮ；Wide  Area  Network）（例えば、インターネット）、及び／又は複数のデバイスが通信し得る他の相互接続されたデータパスを含んでよい。幾つかの実施形態では、ネットワーク１０５は、ピア・ツー・ピアネットワークであってよい。ネットワーク１０５はまた、様々な異なった通信プロトコルにおいてデータを送信する電気通信ネットワークの部分へ結合されるか、あるいは、そのような部分を含んでよい。幾つかの実施形態では、ネットワーク１０５は、ショート・メッセージング・サービス（ＳＭＳ；Short  Messaging  Service）、マルチメディア・メッセージング・サービス（ＭＭＳ；Multimedia  Messaging  Service）、ハイパーテキスト・トランスファ・プロトコル（ＨＴＴＰ；HyperText  Transfer  Protocol）、ダイレクトデータ接続、ＷＡＰ、電子メール、等を介することを含め、データを送信及び受信するために、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信ネットワーク又はセルラー通信ネットワークを含む。図１は、イメージングデバイス１１５及びリアログラム解析サーバ１０１へ結合された１つのネットワーク１０５しか表していないが、実際には、１つ以上のネットワークがそれらのエンティティへ接続され得る。
【００４０】
表されている実施形態では、システム１００は、ネットワーク１０５へ結合されているリアログラム解析サーバ１０１を含む。リアログラム解析サーバ１０１は、プロセッサ、メモリ、ネットワーク通信機能、及びデータストレージ（例えば、データストレージ１４３）を含むコンピューティング装置であってよい。図１の例では、リアログラム解析サーバ１０１の構成要素は、以下で更に詳細に記載されるリアログラム解析アプリケーションを実装するよう構成される。リアログラム解析サーバ１０１は、イメージングデバイス１１５から又は他のソースから解析のための１つ以上の画像を受け取ってよく、例えば、インターネット・ブラウザ、電子メール、又は同様のものを介してアップロードされる。図１の例は１つのリアログラム解析サーバ１０１しか含まないが、システム１００は１つ以上のリアログラム解析サーバ１０１を含んでよい。
【００４１】
データストレージ１４３は、ここで記載される機能を提供するためのデータを記憶する非一時的なメモリである。データストレージ１４３は、動的ランダムアクセスメモリ（ＤＲＡＭ；Dynamic  Random  Access  Memory）デバイス、静的ランダムアクセスメモリ（ＳＲＡＭ；Static  Random  Access  Memory）デバイス、フラッシュメモリ又は何らかの他のメモリデバイスであってよい。幾つかの実施形態では、データストレージ１４３は、ハードディスクドライブ、フロッピー（登録商標）ディスクドライブ、ＣＤ−ＲＯＭデバイス、ＤＶＤ−ＲＡＭデバイス、ＤＶＤ−ＲＷデバイス、フラッシュメモリデバイス、又はより永続的に情報を記憶する何らかの他の大容量記憶デバイスを含む不揮発性メモリ又は同様の永久記憶デバイス及び媒体を更に含んでよい。
【００４２】
一実施形態において、データストレージ１４３は、リアログラム解析サービスのユーザによるアクセスのために、リアログラム解析サーバ１０１が受け取った画像及びそれらの画像に関連するデータを記憶する。例えば、データストレージ１４３は、受け取られた画像とともに画像解析結果を記憶してよく、ネットワーク１０５を介してアクセスされてよい。図１の例は、リアログラム解析サーバ１０１の部分として１つのデータストレージ１４３しか含まないが、データストレージは、システム１００においてどこにでも設置されてよいことが理解されるべきである。例えば、別個のストレージデバイスが、局所接続を介して又はネットワーク１０５上でリアログラム解析サーバ１０１と結合されてよい。
【００４３】
一実施形態において、リアログラム解析アプリケーション１０３は、小売り棚にある１つ以上のアイテムの画像においてオブジェクトを検出及び特定し、棚の最前部及びそこにあるラベルを特定し、棚の下にある空きスペースを特定し、特定されていない製品がある可能性がある領域を特定し、且つ空きの棚スペース（例えば、製品が“品切れ”である領域）を特定するソフトウェア及び／又はロジックを含む。幾つかの実施形態では、リアログラム解析アプリケーション１０３は、ここで記載されるようにハードウェア及びソフトウェアの組み合わせを用いて実装され得る。
【００４４】
図１に表されているイメージングデバイス１１５は、一例として使用される。幾つかの実施形態では、イメージングデバイス１１５は、メモリ、プロセッサ及びカメラを含むコンピューティング装置、例えば、ラップトップ・コンピュータ、タブレット・コンピュータ、携帯電話機、パーソナル・デジタル・アシスタント（ＰＤＡ；Personal  Digital  Assistant）、携帯型電子メール装置、ウェブカム又は同様のものであってよい。他の実施形態では、画像捕捉装置は、デジタルカメラ、又は同様のものであってよい。図１は、１つの画像捕捉装置１１５しか表していないが、本開示は、１つ以上の画像捕捉装置１１５を備えたシステムアーキテクチャに適用される。
【００４５】
図２は、リアログラム解析アプリケーション１０３を含むリアログラム解析システム２００の一例のブロック図を表す。例えば、リアログラム解析システム２００は、上記のリアログラム解析サーバ１０１であってよい。図２の例では、リアログラム解析システム２００は、リアログラム解析アプリケーション１０３、プロセッサ２３５、メモリ２３７、通信ユニット２４１、及びデータストレージ２４３を含む。リアログラム解析アプリケーション１０３は、オブジェクト認識モジュール２０１、セグメンテーションモジュール２０３、棚／ラベル検出モジュール２０５、空きスペースモジュール２０７、及びマルチプルスモジュール２０９を含む。一実施形態において、バス２２０は、リアログラム解析システム２００の構成要素を通信上結合する。バス２２０は、業界標準アーキテクチャ（ＩＳＡ；Industry  Standard  Architecture）バス、ペリフェラル・コンポーネント・インターコネクト（ＰＣＩ；Peripheral  Component  Interconnect）バス、ユニバーサル・シリアル・バス（ＵＳＢ；Universal  Serial  Bus）、又は同様の機能を提供する当該技術で知られている何らかの他のバスを含む１つ以上のバスを表してよい。
【００４６】
プロセッサ２３５は、様々な入力／出力、論理、及び／又は数学的動作を実行することによってソフトウェア命令を実行してよい。プロセッサ２３５は、例えば、複数命令セットコンピュータ（ＣＩＳＣ；Complex  Instruction  Set  Computer）アーキテクチャ、縮小命令セットコンピュータ（ＲＩＳＣ；Reduced  Instruction  Set  Computer）アーキテクチャ、グラフィクス・プロセッシング・ユニット（ＧＰＵ；Graphics  Processing  Unit）、及び／又は命令セットの組み合わせを実装するアーキテクチャを含む、データ信号を処理するための様々な計算アーキテクチャを有してよい。プロセッサ２３５は、単一のプロセッシングユニット、あるいは、複数のプロセッシングユニット及び／又はコアを含んでよい。幾つかの実施形態では、プロセッサ２３５は、電子表示信号を生成して表示装置へ供給すること、画像の表示を支援すること、画像を捕捉し送信すること、種々のタイプの特徴抽出及びサンプリングを含む複雑なタスクを実行すること、等が可能であってよい。幾つかの実施形態では、プロセッサ２３５は、バス２２０を介してメモリ２３７へ結合されてよく、そのデータ及び命令にアクセスするとともに、そこにデータを格納する。バス２２０は、例えば、オブジェクト認識モジュール２０１、セグメンテーションモジュール２０３、棚／ラベル検出モジュール２０５、空きスペースモジュール２０７、マルチプルスモジュール２０９、メモリ２３７、通信ユニット２４１、及びデータストレージ２４３を含むリアログラム解析システム２００の他の構成要素へプロセッサ２３５を結合してよい。明らかなように、他のプロセッサ、センサ、ディスプレイ及び物理構成が可能である。
【００４７】
メモリ２３７は、リアログラム解析システム２００の他の構成要素のためのデータを記憶し、そのデータへのアクセスを提供してよい。メモリ２３７は、ここで別なところで論じられるように、単一のコンピューティング装置又は複数のコンピューティング装置において含まれてよい。幾つかの実施形態では、メモリ２３７は、プロセッサ２３５によって実行され得る命令及び／又はデータを記憶してよい。例えば、一実施形態において、メモリ２３７は、プロセッサによって実行される場合に、プロセッサに、オブジェクト認識モジュール２０１、セグメンテーションモジュール２０３、棚／ラベル検出モジュール２０５、空きスペースモジュール２０７、及びマルチプルスモジュール２０９を含むリアログラム解析アプリケーション１０３を実装させる命令を記憶してよい。メモリ２３７はまた、例えば、オペレーティングシステム、ハードウェアドライバ、他のソフトウェアアプリケーション、データベース、等を含む他の命令及びデータを記憶することが可能であってよい。メモリ２３７は、プロセッサ２３５及びリアログラム解析システム２００の他の構成要素との通信のためにバス２２０へ結合されてよい。
【００４８】
メモリ２３７は、１つ以上の非一時的なコンピュータ使用可能（例えば、読み取り可能、書き込み可能、等）な媒体を含んでよい。この媒体は、プロセッサ２３５による処理のために、又はそれと接続されて、命令、データ、コンピュータプログラム、ソフトウェア、コード、ルーチン、等を含むことができる如何なる有形な装置又はデバイスであることもできる。幾つかの実施形態では、メモリ２３７は、揮発性メモリ及び不揮発性メモリの１つ以上を含んでよい。例えば、メモリ２３７は、制限なしに、動的ランダムアクセスメモリ（ＤＲＡＭ）デバイス、静的ランダムアクセスメモリ（ＳＲＡＭ）デバイス、埋込メモリデバイス、ディスクリートメモリデバイス（例えば、ＰＲＯＭ、ＦＰＲＯＭ、ＲＯＭ）、ハードディスク、光ディスク（ＣＤ、ＤＶＤ、ブルーレイ、等）の１つ以上を含んでよい。メモリ２３７は、単一のデバイスであってよく、あるいは、複数種類のデバイス及び構成を含んでよいことが理解されるべきである。
【００４９】
通信ユニット２４１は、プロセッサ２３５及びリアログラム解析システム２００の他の構成要素をネットワーク１０５及び他のプロセッシングシステムへ結合することによってデータを受信及び送信するハードウェアである。通信ユニット２４１は、例えば、イメージングデバイス１１５からの１つ以上の画像、及び／又は解析結果を受信するよう構成される。一実施形態において、通信ユニット２４１は、ネットワーク１０５への又は他の通信チャネルへの直接的な物理接続のためのポートを含んでよい。例えば、通信ユニット２４１は、ネットワーク１０５との有線接続のためにＲＪ４５又は同様のポートを含んでよい。他の実施形態では、通信ユニット２４１は、１つ以上の無線通信方法、例えば、ＩＥＥＥ８０２．１１、ＩＥＥＥ８０２．１６、Ｂｌｕｅｔｏｏｔｈ（登録商標）、又は他の適切な無線通信方法を用いてネットワーク１０５又は何らかの他の通信チャネルを介してデータを交換するための無線トランシーバ（図示せず。）を含んでよい。
【００５０】
更なる他の実施形態では、通信ユニット２４１は、セルラー通信ネットワーク上で、例えば、ショート・メッセージング・サービス（ＳＭＳ）、マルチメディア・メッセージング・サービス（ＭＭＳ）、ハイパーテキスト・トランスファ・プロトコル（ＨＴＴＰ）、ダイレクトデータ接続、ＷＡＰ、電子メール、又は他の適切なタイプの電子通信を介して、データを送信及び受信するためのセルラー通信トランシーバを含んでよい。更なる他の実施形態では、通信ユニット２４１は、有線ポート及び無線トランシーバを含んでよい。通信ユニット２４１はまた、例えばＴＣＰ／ＩＰ、ＨＴＴＰ、ＨＴＴＰＳ及びＳＭＴＰなどの標準ネットワークプロトコルによるファイル及び／又はメディアオブジェクトの分配のためにネットワーク１０５への他の従来の接続を提供する。
【００５１】
データストレージ２４３は、ここで記載される機能を提供する際に使用されるデータを記憶する非一時的なメモリである。例えば、データストレージ２４３は、画像捕捉装置又は他のソースから受信された画像、画像の解析結果、画像解析で使用されるデータ構造、例えば、画像においてオブジェクトを特定するために使用される特徴点を持った機知のオブジェクトインデックス、及び同様のものを記憶してよい。データストレージ２４３は、動的ランダムアクセスメモリ（ＤＲＡＭ）デバイス、静的ランダムアクセスメモリ（ＳＲＡＭ）デバイス、フラッシュメモリ又は何らかの他のメモリデバイスであってよい。幾つかの実施形態では、データストレージ２４３は、ハードディスク、フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭデバイス、ＤＶＤ−ＲＯＭデバイス、ＤＶＤ−ＲＡＭデバイス、ＤＶＤ−ＲＷデバイス、フラッシュメモリデバイス、又はより永久的に情報を記憶する何らかの他の大容量記憶デバイスを含む不揮発性メモリ又は同様の永久記憶デバイス及び媒体を更に含んでよい。
【００５２】
オブジェクト認識モジュール２０１は、画像においてオブジェクトを検出及び特定するソフトウェア及び／又はロジックを含む。小売り棚又はディスプレイの画像における製品がオブジェクトの例として本明細書を通じて使用される一方で、オブジェクトは、例えば、文書、本、又は同様のものなどの、あらゆる環境の画像における他の認識可能な特徴であってよい。オブジェクト認識モジュール２０１は、既存の公の及び／又は独自仕様の画像認識アルゴリズムに従って画像においてオブジェクトを検出及び特定してよい。例えば、オブジェクト認識モジュール２０１は、検出されたオブジェクトを、データストレージ２４３にある検索データベースに記憶されている既知のオブジェクトの画像と照合するために、コンピュータビジョンＢｏＷ（Bag  of  Words）を使用してよい。例えば、スケールが不変の特徴変換（ＳＩＦＴ；Scale-Invariant  Feature  Transform）アルゴリズムを用いると、オブジェクト認識モジュール２０１は、検出されたオブジェクトについて特徴点を抽出し、それらの特徴点を検索データベースと比較する。比較のために、検出されたオブジェクトからの特徴点及び検索データベース内の画像は、ｋ最近傍点（ＫＮＮ；K-nearest  Neighbors）又は同様のアルゴリズムに基づき照合される。
【００５３】
幾つかの実施形態では、オブジェクト認識モジュール２０１は、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ；Field  Programmable  Gate  Array）又は特定用途向け集積回路（ＡＳＩＣ；Application-Specific  Integrated  Circuit）を含むプログラム可能な又は特殊化されたハードウェアを用いて実装されてよい。幾つかの実施形態では、オブジェクト認識モジュール２０１は、プロセッサ２３５によって実行可能なソフトウェア及びハードウェアの組み合わせを用いて実装されてよい。幾つかの実施形態では、オブジェクト認識モジュール２０１は、プロセッサ２３５によって実行可能な命令の組である。幾つかの実施形態では、オブジェクト認識モジュール２０１は、メモリ２３７に記憶されている命令であり、プロセッサ２３５によってアクセス可能であり且つ実行される。幾つかの実施形態では、オブジェクト認識モジュール２０１は、バス２２０を介したプロセッサ２３５、メモリ２３７及びリアログラム解析システム２００の他の構成要素との協調及び通信のために適応される。
【００５４】
図２の例において表されているリアログラム解析アプリケーション１０３は、１つのオブジェクト認識モジュール２０１しか含まないが、１つ以上の更なるオブジェクト認識モジュールが製品の検出及び特定のために使用されてよいことが認識されるべきである。同様に、オブジェクト認識モジュール２０１は、連続的に又は並行して個々の画像を処理してよい。更に、イメージングデバイス１１５から受信された複数の画像を処理のための単一の画像にまとめてよい。幾つかの実施形態では、オブジェクト認識モジュール２０１は、イメージングデバイス１１５が最終のリアログラムを生成することにおいて使用される画像を依然として捕捉している最中に、イメージングデバイス１１５から受信された画像に対する認識の実行を開始してよい。
【００５５】
セグメンテーションモジュール２０３は、以下で更に詳細に記載されるように、画像解析における使用のために夫々の画像において複数の画像セグメントを生成するソフトウェア及び／又はロジックを含む。ここで論じられる技術は、例えば、粗格子、スーパーピクセル、等の様々な画像セグメント及びセグメンテーション方法に適用可能であることが認識されるであろう。なお、以下の例では、１つ又は他が、記述的目的のために使用され得る。
【００５６】
棚／ラベル検出モジュール２０５は、以下で更に詳細に記載されるように、棚の最前部及び棚の最前部にある製品ラベル（例えば、値札、バーコード、等）を特定するソフトウェア及び／又はロジックを含む。空きスペースモジュール２０７は、以下で更に詳細に記載されるように、製品が“品切れ”である領域を決定するためにリアログラム画像において棚上の空きスペースを特定するソフトウェア及び／又はロジックを含む。マルチプルスモジュール２０９は、オブジェクト認識モジュール２０１によって認識されない類似した特徴を持った複数のオブジェクト検出し、それらのオブジェクトを未知又は未確認製品として特定するソフトウェア及び／又はロジックを含む。
【００５７】
リアログラム解析アプリケーション１０３の様々なモジュールは、プログラム可能な又は特殊化されたハードウェア（例えば、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）又は特定用途向け集積回路（ＡＳＩＣ））を用いて、あるいは、プロセッサ２３５によって実行可能なソフトウェア及びハードウェアの組み合わせを用いて、実装されてよい。例えば、モジュールは、メモリ２３７において記憶され、プロセッサ２３５によってアクセス可能であり且つ実行される命令の組であってよい。様々なモジュールの機能は、以下で更に詳細に記載される。
【００５８】
図３は、スーパーピクセルに基づくリアログラムシーン解析のための方法３００の一例のフロー図である。幾つかの実施形態では、画像は、スーパーピクセルに分割されてよい。幾つかの実施形態では、方法３００は、例えば、店内の棚のリアログラムなどの画像において特徴を特定するために使用される。リアログラム（realogram）（例えば、図４において表される。）は、プラノグラム（planogram）の対象の現実の実施の画像である。プラノグラムは、例えば、棚ユニットにある製品の場所及び量などの、小売り環境でディスプレイされる製品の視覚表現である。ここで使用されるフェイシング（facing）は、製品の積み重ね（又は積み重ねの部分でない単一の製品）である。プラノグラム（例えば、計画された製品レイアウトの描写）において、フェイシングが１つよりも多い製品を有する場合に、それらの製品は同一である。リアログラム（例えば、店舗内の実際の製品レイアウトの画像）において、フェイシングは、入り交じった製品を有してよい。方法３００は、例えば、棚の位置、ラベル、インデックス付きの製品（例えば、画像認識アルゴリズムによる識別のためにインデックスを付された製品）、インデックス無しの製品（例えば、画像認識アルゴリズムによる識別のためにインデックスを付されていない製品）、及び空きスペース（例えば、製品が品切れである領域）等をリアログラムにおいて決定するために使用されてよい。
【００５９】
図４は、一例となるリアログラム（例えば、店舗の棚にある製品の画像）を表す。図４の例では、画像内の製品は、様々なデンタルケア製品の多数の箱を含む。なお、画像は、リアログラム解析アプリケーション１０３によって検出及び特定される如何なる数、サイズ、及び範囲の製品（又は他のオブジェクト）も含むことができることが認識されるべきである。例となるリアログラムはまた、インデックス無し製品４０２、インデックス付き製品（例えば、境界ボックスを有して表される製品）、及び品切れ領域４０４を表す。幾つかの実施形態では、会計検査官／販売員代表は、イメージングデバイス１１５（例えば、ラップトップ・コンピュータ、タブレット・コンピュータ、携帯電話機、パーソナル・デジタル・アシスタント（ＰＤＡ）、携帯型電子メール装置、ウェブカム、デジタルカメラ、又は同様もの）を用いてリアログラム画像を捕捉してよい。一実施形態において、会計検査官／販売員代表は、小売店にある大きな棚の複数の画像を捕捉し、夫々の画像は棚の一部分をカバーし、画像は、ここで別なところで記載されるように、リアログラム解析アプリケーション１０３によって連続的に又は並行して縫合又は解析され得る。他の実施形態では、リアログラムは、自動画像捕捉装置によって自動的に捕捉されてよい。この自動画像捕捉は、例えば、周期的に行われてよい。ここでの例は、リアログラムを、例えば小売りオブジェクトなどの棚の画像として記載するが、画像は、整理されたオブジェクトの如何なる配置も含んでよいことが理解されるべきである。例えば、画像は、問屋、倉庫、保管室、キャビネット等の画像であってよい。同様に、オブジェクトは、小売り製品に加えて、ツール、製造、建築又は保守において使用される部品、薬、応急手当物資、非常又は安全設備、等であってよい。
【００６０】
図３の例に戻ると、３０２で、リアログラム解析アプリケーション１０３は、整理されたオブジェクトのリアログラム画像（例えば、小売ディスプレイ）を受け取る。例えば、画像は、イメージングデバイス１１５（例えば、デジタルカメラ、携帯電話機、ロボット搭載カメラ、等）によって捕捉され、解析のためにリアログラム解析アプリケーション１０３へアップロードされてよい。
【００６１】
３０４で、オブジェクト認識モジュール２０１は、既存の公の及び／又は独自仕様の画像認識アルゴリズムに従って、画像内のオブジェクトを検出及び特定して、検出されたオブジェクトを、データストレージ２４３上の検索データベースに記憶されている既知のオブジェクトの画像と照合してよい。幾つかの実施形態では、オブジェクト認識モジュール２０１は、１つ以上の画像内の夫々の特定されたオブジェクトについて識別領域又は境界ボックスを生成し、認識結果を出力する。幾つかの実施形態では、オブジェクト認識モジュール２０１は、画像内の特徴が検索データベースに記憶されている特徴と一致するピクセル位置であるインライアのリストを生成する。小売り棚上の製品の例では、夫々の製品についての認識結果は、例えば、オブジェクトＩＤ（例えば、最小管理単位（ＳＫＵ；Stock  Keeping  Unit））を含んでよい。夫々の特定された対象についての認識結果はまた、製品を特定することにおけるオブジェクト認識モジュール２０１のコンフィデンスを含む他の情報を含んでよい。
【００６２】
３０６で、セグメンテーションモジュール２０３は、リアログラム画像からスーパーピクセルを生成する。様々な実施形態において、セグメンテーションモジュール２０３は、同時に捕捉されるか又は以前に捕捉されてデータストレージに記憶されたリアログラム画像からスーパーピクセルを入手及び生成してよい。ここで使用されるように、スーパーピクセルは、ピクセルの組を含む画像のセグメントである。スーパーピクセルはまた、部分（part）、部分（portion）又は領域（region）と呼ばれることがある。例えば、スーパーピクセルは、通常のピクセルよりも大きい、デジタル画像のコンパクトな部分であり、夫々の部分は、おおよそ同じ色及び輝度のピクセルを含む。リアログラム画像のセグメンテーションのためにスーパーピクセルを使用する利点は、解析を必要とする離散的なデータ点の数を制限することによって（例えば、スーパーピクセル対個々のピクセル）、画像の解析を簡単にすることである。スーパーピクセルは、ソリッドカラーを表す粗グリッドとソリッドカラー領域間のエッジとの間の好ましい妥結点である。粗グリッドと同じく、画像のスーパーピクセル・セグメンテーションは、オブジェクトを良好にモデリングするスケールを選択することを可能にし、有用な数の仮定を生成するのを助ける。スーパーピクセル・アルゴリズムは、異なったソリッドカラーにより領域を分け且つ画像内のドミナントのエッジと整列する境界を生成するよう試みる。故に、スーパーピクセル・アルゴリズムによって生成された境界は、実際のオブジェクト境界についての良好な候補である。スーパーピクセルは、点、ラインセグメント、境界ボックス等である観測結果を互いに且つ局所的な画像領域にマッピングするのに特に有用である。スーパーピクセルは、以下で更に詳細に記載されるように、小近傍モデルにより確率を推定し且つ決定を行うのにも有用である。
【００６３】
セグメンテーションモジュール２０３は、基礎を成す画像の特徴に基づき画像をコンパクトな部分にセグメント化することによって、整理されたオブジェクトの画像、例えば、リアログラムからスーパーピクセルを生成する。様々な実施形態において、セグメンテーションモジュール２０３は、様々な既知のアルゴリズムによりスーパーピクセルを生成してよい。例えば、セグメンテーションモジュール２０３は、Simple  Linear  Iterative  Clustering（ＳＬＩＣ）アルゴリズム、Superpixels  Extracted  via  Energy-Driven  Sampling（ＳＥＥＤＳ）アルゴリズム、Superpixel  Contourアルゴリズム、又は他の既知の公の若しくは独自仕様のスーパーピクセル生成アルゴリズムを使用してよい。
【００６４】
幾つかの実施形態では、スーパーピクセルを生成することにおいて計算効率を高め且つピクセルごとのノイズを低減するよう、リアログラム解析アプリケーション１０３は、受信されたリアログラム画像を低減された解像度にスケーリングする。幾つかの実施形態では、１０００ピクセル以上の最小寸法を持った画像は、その最小寸法が５００から１０００ピクセルの間にあるように、夫々の次元において、それらの約数の最大値を用いて、２、３、４等の係数によってスケーリングされてよい。例えば、３２６４×２４４８ピクセル（例えば、最小寸法は２４４８）の解像度を持った画像について、４の係数が、８１６×６１２ピクセルのサイズへと画像をスケーリングするために使用されてよい。
【００６５】
一実施形態において、スケーリング係数は、リアログラム画像における製品のピクセル寸法に対する物理的な製品サイズの比に基づき決定される。特定の製品についての画像認識結果からの情報（製品を特定するとともに、ピクセルにおいて画像位置を与えることができる。）及びそれらの製品に関するサイズの知識は、おおよそのサイズを決定するために使用され得る。例えば、画像は、１４ピクセルが約１インチに対応するようにスケーリングされ得る。
【００６６】
図５Ａは、棚及び棚上の製品を含むリアログラムの一例を表す。図５Ｂは、セグメンテーションエンジン２０３によって生成されたスーパーピクセルを重ね合わされたリアログラム（例えば、スーパーピクセル）の例を表す。
【００６７】
図３の例に戻ると、３０７で、リアログラム解析アプリケーション１０３は、他の観測結果を用いてスーパーピクセルにラベルを付す。幾つかの実施形態では、セグメンテーションモジュール２０３は、更なる情報又は観測結果を用いてスーパーピクセルにラベルを付してよい。例えば、セグメンテーションモジュール２０３は、例えば、サイズ（高さ、幅、奥行き）及び／又は、製品が棚上に又は吊すことでディスプレイされているかどうかなどの、期待される製品に関する知識、特定の製品についての画像認識結果、フェイシング（facing）（例えば、積み重ね（stack））にグループ分けされている特定の製品についての画像認識結果、並びに画像において検出されたラインセグメントを更に含んでよい。幾つかの実施形態では、特徴（例えば、スーパーピクセルにラベルを付すために使用される他の観測結果）はソリッドカラー領域、ソリッドカラー領域間のエッジ、ドミナントのエッジ、点、ラインセグメント、境界ボックス、類似した色又は輝度の領域、等である。一実施形態において、スーパーピクセルは、特定の製品認識結果からの結果を用いてラベルを付されてよい。例えば、認識された製品についての境界ボックス内にあるか、認識された製品についてインライアを有する（例えば、スーパーピクセルの中の１つ以上のピクセルは、製品認識に使用される特徴の位置に対応する。）か、フェイシングの下にあるか、あるいは、長い水平なラインセグメントと交差するスーパーピクセルは、然るべくラベルを付される。一実施形態において、リアログラム解析アプリケーション１０３は、リアログラム画像においてラインセグメントを検出するためにLine  Segment  Detector（ＬＳＤ）アルゴリズムを使用する。ラインセグメントは、水平方向における範囲が垂直方向における範囲の少なくとも２倍である場合に、水平であると決定される。一実施形態において、セグメンテーションモジュール２０３は、認識された製品にないラインセグメントを有するスーパーピクセルにのみラベルを付す。他の実施形態では、セグメンテーションモジュール２０３は、最長の期待される製品よりも長いラインセグメントを有するスーパーピクセルにのみラベルを付す。他の実施形態では、セグメンテーションモジュール２０３は、最長の認識される製品よりも長いラインセグメントを有するスーパーピクセルにのみラベルを付す。
【００６８】
３０８で、リアログラム解析アプリケーション１０３は、スーパーピクセル及び幾つかの実施形態では他の観測結果に基づきリアログラムの領域を特定する。例えば、他の観測結果は、リアログラム属性、例えば、オブジェクト特定結果、リアログラム画像において検出されたラインセグメント、スーパーピクセルのクラスタ（例えば、色に基づくクラスタ）、又はリアログラムの領域等を含んでよい。なお、他の観測結果が可能である。リアログラム解析アプリケーション１０３は、例えば、棚、棚にあるラベル、インデックス無し製品が仕入れられた領域、品切れ領域、及び／又はリアログラム画像において存在する他の領域等の領域を、スーパーピクセル及び他の観測結果を用いて特定してよい。リアログラムの領域を特定する方法及び動作は、以下で更に詳細に記載される。
【００６９】
幾つかの実施形態では、リアログラム解析アプリケーション１０３によって特定された領域は、小売り実施のための重要業績評価指標（ＫＰＩ；Key  Performance  Indicator(s)）であり、あるいは、他の目的のために有用であり得る。領域はまた、ＫＰＩを決定するために使用されてよい。例えば、棚領域は、インデックス付きオブジェクトを棚によって線形なグループにグループ分けするために使用されてよい。棚、インデックス付きオブジェクト、及びインデックス無しオブジェクトの各領域は、例えば、棚の共有及び品揃えの共有等のメトリクスを推定するために使用されてよい。
【００７０】
幾つかの実施形態では、画像セグメンテーション及びラベル付けは任意であってよく、リアログラム解析アプリケーション１０３は、それらのステップを省略し、画像において検出された特徴点に基づき画像の領域を分類してよい。画像解析アプリケーション１０３は、例えば、スケールが不変の特徴変換（ＳＩＦＴ；Scale-Invariant  Feature  Transform）アルゴリズム、畳み込みニューラルネットワーク（ＣＮＮ；Convolutional  Neutral  Network）、深層学習（deep  learning）、機械学習（machine  learning）、又は同様のものを用いて画像において特徴点を特定してよい。
【００７１】
図６は、スーパーピクセル及び幾つかの実施形態では他の観測結果に基づきリアログラムの領域を特定する方法３０８の一例のフロー図である。様々な実施形態において、スーパーピクセルに基づきリアログラムの領域を特定するよう、リアログラム解析エンジン１０３及びその構成要素は、観測結果をスーパーピクセルへ属性として割り当て、スーパーピクセルに基づくモデルにより仮定を生成し、スーパーピクセルに基づくモデルにより仮定をバリデートし、解析結果を出力する。リアログラムシーン解析のこのような生成は、後続の図において詳細に説明される。６０２で、棚／ラベル検出モジュール２０５は、整理されたオブジェクトの画像において表される棚の最前部を特定する。幾つかの実施形態では、棚／ラベル検出モジュール２０５は、画像においてピクセルのグループに基づき特徴を特定し、可能な棚位置に関する仮定を生成及び評価してよい。例えば、棚／ラベル検出モジュール２０５は、以下で更に詳細に記載される方法により棚の位置を決定してよい。
【００７２】
６０４で、棚／ラベル検出モジュール２０５は、棚の最前部にあるラベルの位置を決定する。幾つかの実施形態では、棚／ラベル検出モジュール２０５は、棚の最前部（例えば、ブロック６０２で見つけられる。）に関連するスーパーピクセルを色及び他の観測結果（例えば、画像において検出されるラインセグメント）に基づき様々なグループにクラスタ化することによって、棚の最前部にあるラベルの存在及び位置を決定してよい。他の実施形態では、棚／ラベル検出モジュール２０５は、画像において特定された特徴点を用いて棚の最前部にあるラベルの存在及び位置を決定してよい。例えば、棚／ラベル検出モジュール２０５は、図７及び図１３を参照して記載される方法を用いてラベルの存在及び位置を決定してよい。情報は、例えば値段、ＵＰＣ、製品名又は同様のもの等のラベルから抽出されてよい。
【００７３】
６０６で、マルチプルスモジュール２０９は、類似した特徴を備える複数のオブジェクトの存在及び位置を決定する。この動作は、インデックスを付されていないリアログラム画像内のオブジェクト（例えば、上述されたように画像プロセッサによって特定されたオブジェクトの中にないもの）を見つけるのに特に有用である。幾つかの実施形態では、マルチプルスモジュール２０９は、同じ画像（例えば、リアログラム）内の特徴点を照合し、点の対をクラスタ化し、そして、幾つかの実施形態では、製品の積み重ね（例えば、垂直グループ）、水平グループ及び／又は同じ若しくは類似した製品の孤立したインスタンスを見つける。例えば、マルチプルスモジュール２０９は、図１７を参照して更に詳細に記載される方法を用いて複数のものの存在及び位置を決定してよい。
【００７４】
６０８で、空きスペースモジュール２０７は、棚の下にある空きスペースの存在及び位置を決定する。幾つかの実施形態では、空きスペースモジュール２０７は、オブジェクトを欠いている領域（例えば、暗領域、同色領域、及び／又は棚の背面に対応する領域、例えばペグボード）を決定することによって、品切れ領域を特定する。例えば、空きスペースモジュール２０７は、図２０を参照して更に詳細に記載される方法を用いて棚の下にある空きスペースの存在及び位置を決定してよい。
【００７５】
図７Ａ及び７Ｂは、リアログラム画像において表されている棚及びラベルを決定するための方法７００の一例のフロー図を表す。７０１で、棚／ラベル検出モジュール２０５は、複数の整理されたオブジェクトの画像を受け取る。上述されたように、画像は、小売り棚又はディスプレイのリアログラム画像であってよい。
【００７６】
７０２で、棚／ラベル検出モジュール２０５は、画像においてピクセルのグループに基づき特徴を特定する。例えば、画像解析アプリケーション１０３は、例えば、スケールが不変の特徴変換（ＳＩＦＴ；Scale-Invariant  Feature  Transform）アルゴリズム、畳み込みニューラルネットワーク（ＣＮＮ；Convolutional  Neutral  Network）、深層学習（deep  learning）、機械学習（machine  learning）、又は同様のものを用いて画像において特徴点を特定してよい。他の実施形態では、特徴は、隣接したスーパーピクセル間の勾配に基づくスーパーピクセル棚特徴であってよい。ここで使用されるスーパーピクセル棚特徴は、スーパーピクセル境界の幾らかがそのスーパーピクセルと直ぐ隣のスーパーピクセルとの境界の特性に基づき棚最前部の部分のトップ又はボトムエッジに対応し得るスーパーピクセルである。棚／ラベル検出モジュール２０５は、スーパーピクセルがスーパーピクセル棚特徴であるかどうかを、水平エッジで４つの隣接したスーパーピクセルのグループを見つけることに基づき判定する。
【００７７】
夫々のスーパーピクセルについて、その隣にあるものは他のスーパーピクセルであり、スーパーピクセルを有するピクセルが（８個接続された）隣接スーパーピクセルである。一実施形態において、棚／ラベル検出モジュール２０５は、スーパーピクセルラベルの画像サイズの２Ｄアレイのラスタースキャンを用いて、隣接するスーパーピクセルを見つける。３×３近傍の中心がいずれの周囲とも異なる夫々のラスター位置で、中心に対応するスーパーピクセル及び夫々の一意の異なった周囲に対応する１つ以上のスーパーピクセルは、隣どうしである。この対又は隣接するスーパーピクセルどうしの対について、その／夫々の対についての隣接スーパーピクセルのリストは、その対の他方のスーパーピクセルが隣接スーパーピクセルのリストに既にない場合に更新される。
【００７８】
一実施形態において、夫々のスーパーピクセルについて、その隣どうしの９つのリストは、そのスーパーピクセル及び夫々の隣接スーパーピクセルについての重心の関係に基づき生成される。直ぐそばにある重心については１つのリストが存在する。目下の実施では、直ぐそばとは、Ｘ方向の距離が全てのスーパーピクセルのＸ方向の平均幅よりも小さく、Ｙ方向の距離が全てのスーパーピクセルの平均高さよりも小さいことをいう。直ぐそばにない隣どうしのスーパーピクセルについて、スーパーピクセルからその隣のスーパーピクセルへのベクトルの角度は、０、４５、９０、１３５、１８０、２２５、２７０又は３１５度に量子化され、スーパーピクセルの８つのリストはそれら８つの角度に対応する。図１０は、それらの夫々の角度でスーパーピクセルのリストを表す例図である。
【００７９】
一実施形態において、ソーベル勾配（Sobel  gradient）は、画像のＸ及びＹ方向において計算され、極（大きさ及び角度）座標に変換される。一実施形態において、棚／ラベル検出モジュール２０５は、この勾配をＲ、Ｇ及びＢの各成分について個々に計算し、最大の大きさを持った成分についての大きさ及び角度を使用する。図１２Ａは、スーパーピクセル境界での量子化された勾配を表す例図である。図１２Ｂは、スーパーピクセルの対についての量子化された勾配を示すデータ構造の例である。１つのインデックス（“小さい大きさ”インデックス）は、大きさが閾値（例えば、１６）よりも小さいときに使用される。このインデックスは、スーパーピクセル間に明確な境界を持たないスーパーピクセルを示すために使用される。そうでない場合は、角度は、０、４５、９０、１３５、１８０、２２５、２７０又は３１５度に量子化され、対応するインデックスが、それら８つの角度について使用される。それら８つのインデックスは、スーパーピクセル間に明確な境界を持つスーパーピクセルを示す。
【００８０】
一実施形態において、隣接したスーパーピクセル（例えば、図１２Ａの例におけるＳ１及びＳ０）の各対について、及び勾配量子化値の夫々について、カウントのために整数である、Ｘ座標及びＹ座標は、０に初期化される。スーパーピクセルの画像サイズの２Ｄアレイのラスタースキャンが実行される。３×３近傍の中心がいずれの周囲とも異なる夫々のラスター位置で、隣どうしの対応する対及び勾配量子化値は決定され、夫々の対に対応するデータ構造において２つの位置を特定するために使用される。夫々のデータ構造位置について、カウントは１だけインクリメントされ、ラスター位置のＸ及びＹ座標は、データ構造におけるＸ及びＹ値に夫々加えられる。ラスタースキャンの後、データ構造におけるカウント値は、同じ量子化された勾配を有する一対のスーパーピクセルについての境界ピクセルの数である。最終的に、データ構造におけるＸ及びＹの各値は、対応するカウントによる除算によって正規化される。データ構造におけるＸ及びＹの値は、このとき、同じ量子化された勾配を有する一対のスーパーピクセルについての境界ピクセルの重心である。
【００８１】
夫々のスーパーピクセルがスーパーピクセル棚特徴であるか否かを判定するよう、棚／ラベル検出エンジン２０５は、製品認識結果からのインライアを有するスーパーピクセルとしてラベルを付されたスーパーピクセルを最初に除外する。棚／ラベル検出エンジンは、次いで、明確な境界を持った横の隣接スーパーピクセル（例えば、左手又は右手）を有するスーパーピクセルを除外する。一実施形態において、左右の隣接スーパーピクセル（量子化された角度０又は１８０度を持つ隣接するスーパーピクセル）について、夫々の隣接スーパーピクセルについての量子化された勾配カウントが確認される。最大カウントを持ったインデックスが、少なくとも１つの隣接スーパーピクセルについての“小さい大きさ”インデックスでない場合は、このスーパーピクセルはスーパーピクセル棚特徴でない（例えば、その隣接するスーパーピクセルは、明確な境界を有する。）。最大カウントを有するインデックスが“小さい大きさ”インデックスである隣接スーパーピクセルは、明確な境界を有さない横の隣接スーパーピクセルである。
【００８２】
棚／ラベル検出エンジン２０５は、次いで、残りのスーパーピクセルから“上”及び“下”にあるスーパーピクセル棚特徴を決定する。スーパーピクセルは、上側の隣接スーパーピクセル（例えば、隣接スーパーピクセルに対する角度が４５、９０又は１３５度２量子化されるとき）との境界での勾配が垂直である（例えば、勾配角度は９０又は２７０で量子化された。）場合に“上側のスーパーピクセル棚特徴”である。同じ勾配インデックスを持った異なる上側の隣接スーパーピクセルを有する、明確な境界を持たない横の隣接スーパーピクセルが存在する。スーパーピクセルとその上の隣接スーパーピクセルとの境界のＹ重心及び横の隣接スーパーピクセルとその上の隣接スーパーピクセルとの境界のＹ重心は、閾値（例えば、＜５低解像度ピクセル＞）内で同じである。スーパーピクセルは、下側の隣接スーパーピクセル（例えば、その隣接スーパーピクセルに対する角度が２２５、２７０又は３１５度に量子化されるとき）との境界での勾配が垂直である（例えば、勾配角度は９０又は２７０度に量子化された。）場合に“下側のスーパーピクセル棚特徴”である。同じ勾配インデックスを持った異なる下側の隣接スーパーピクセルを有する、明確な境界を持たない横の隣接スーパーピクセルが存在する。スーパーピクセルとその下の隣接スーパーピクセルとの境界のＹ重心及び横の隣接スーパーピクセルとその下の隣接スーパーピクセルとの境界のＹ重心は、閾値（例えば、＜５低解像度ピクセル＞）内で同じである。この関係は、図１１の例図において表される。
【００８３】
以下は、リアログラム画像においてスーパーピクセル棚特徴を特定するアルゴリズムの例である：
【数１】
2016115348.tif 000003
【００８４】
図８は、スーパーピクセルを重ね合わされたリアログラムの部分及び、スーパーピクセル棚特徴であるスーパーピクセルを示す矢印の例を表す。上にあるスーパーピクセル棚特徴は、スーパーピクセル重心からその上部境界へ上向きの矢印によって示される。下にあるスーパーピクセル棚特徴は、スーパーピクセル重心からその下部境界へ下向きの矢印によって示される。上述されたように、スーパーピクセル棚特徴は、４つの隣接したスーパーピクセルの境界に基づき決定される。図８の例では、スーパーピクセル８０２は、スーパーピクセル８０２とその横の隣接スーパーピクセル８０４との間の勾配が小さく、それらの上の隣接スーパーピクセル８０６どうしの間の境界が水平エッジ（例えば、境界上での最もよく見られる量子化された勾配値はどちらも同じ垂直方向であり、それらの境界ピクセルのＹ重心は同様である。）を示すので、スーパーピクセル棚特徴である。
【００８５】
図７の例に戻ると、７０４で、棚／ラベル検出モジュール２０５は、特徴を用いて外観に基づき、とり得る棚の位置を特定する。一実施形態において、棚／ラベル検出モジュール２０５は、スーパーピクセル棚特徴を色によってクラスタ化し、ラインセグメントに基づき角度を求め、色及び角度を用いて棚の位置の仮定を決定するようスーパーピクセルを探すことによって、棚の位置の仮定を決定する。このプロセスは、以下で更に詳細に記載される。他の実施形態では、棚／ラベル検出モジュール２０５は、棚エッジに対応し得る特徴点を決定することによって、とり得る棚の位置を特定する。
【００８６】
様々な実施形態において、スーパーピクセル棚特徴は、ｋ平均クラスタリング、凝集型（agglomerative）クラスタリング（例えば、ウォード（Ward）クラスタリング）、ガウス混合モデル（ＧＭＭ；Gaussian  Mixture  Model）、他の既知の独自仕様若しくは公のクラスタリング技術、又はカラーパレットを生成及び量子化する技術を用いて、平均色によってクラスタ化される。一実施形態において、棚／ラベル検出モジュール２０５は、５つのクラスタ（例えば、ｋ＝５、５つのＧＭＭコンポーネント）を使用する。クラスタは、様々な色空間、例えば、ＲＧＢ、ＬＡＢ、又は同様のもの等に基づくことができる。一実施形態において、棚／ラベル検出モジュール２０５は、認識された製品境界ボックス内にあるものとしてラベルを付されたスーパーピクセル棚特徴の色を任意に無視してよい。例えば、認識された製品についての境界ボックスにあるスーパーピクセルは、色０としてラベルを付され、他のスーパーピクセル棚特徴は、色１、２、３、４又は５としてラベルを付される。同様に、ぶら下がった製品の下にあるスーパーピクセル棚特徴は、幾つかの実施形態において無視され得る。一実施形態において、棚／ラベル検出モジュール２０５は、夫々のクラスタについてグレースケール又は輝度値を決定する。例えば、棚／ラベル検出モジュール２０５は、グレースケール値を決定するようＧＭＭから平均を決定してよい。色に基づきスーパーピクセル棚特徴をクラスタ化する例は、図９の例の９０６において表される。
【００８７】
とり得る棚の位置を棚／ラベル検出モジュール２０５によって特定されたスーパーピクセル棚特徴から決定するよう、モジュールは、図９の例における９０２で表されるように、水平に近いラインを形成するスーパーピクセル棚特徴を探す。例えば、一実施形態において、棚／ラベル検出モジュール２０５は、０．００５ラジアンのステップで−０．３ラジアンから＋０．３ラジアンまで（おおよそ、０．３度のステップで−１７度から＋１７度まで）の水平に近い角度を探す。棚／ラベル検出モジュール２０５は、長い水平ラインセグメント（例えば、認識された製品になく、期待される製品よりも長い、水平に近い範囲内にある角度を持ったラインセグメント）におけるそれらの発生頻度及び製品のボトムエッジにおける発生頻度に基づき、角度によってソートされる。棚／ラベル検出モジュール２０５は、最初に発生頻度の多い角度の順において角度をソートする。長いラインセグメント又は製品からの情報がない場合は、ソートは最初に０ラジアン（水平０度）である。本明細書の全体を通じて、特定の繰り返しにおける（特定の仮定についての）検索角度はシータ（theta）と呼ばれる。
【００８８】
以下は、シータ及び幅にわたってスーパーピクセル棚特徴を探すアルゴリズムの例である：
【数２】
2016115348.tif 000004
【００８９】
任意に、一実施形態において、棚／ラベル検出モジュール２０５は、シータの古い値でのスーパーピクセル棚特徴のグループの経過を追い、異なるグループを与える角度のみを処理することができる。
【００９０】
棚／ラベル検出モジュール２０５は、図９の例における９０４で表されるように、同じ水平ライン（水平は、シータだけ回転した後の水平を意味する。）にあるスーパーピクセル棚特徴の境界の座標を、その水平ラインに対応するビンにグループ分けするよう、十分なサイズのビンを生成する。一実施形態において、棚／ラベル検出モジュール２０５は、６つの低解像度ピクセルのビンサイズを使用する。例えば、モジュールは、５０％重なり合ったビンを使用する。故に、回転されたＹ座標ごとにビン０．．５，３．．８，６．．１１，９．．１４，等が存在する。
【００９１】
ここで記載されるように、棚のフロントエッジの厚さは、棚のトップエッジと棚のボトムエッジとの間の距離である。一実施形態において、棚／ラベル検出モジュールは、４乃至２０個のビンインデックス（５０％の重なりを持ったビンについてビンサイズ単位のユニットにおいて２乃至１０である。）から検索する。一実施形態において、“目下の仮定は良好である”基準は、見つけられるラベルの数、見つけられる棚の数、及びスコア（幾つかの実施形態において、その重要度の順序における。）に基づく。棚／ラベル検出モジュール２０５は、最小数のラベルが見つけられる場合（例えば、３）に、又は目下の仮定が如何なる前の仮定よりも良い場合に、“目下の仮定は良好である”と決定する。
【００９２】
一実施形態において、仮定をマージする場合に、幅にわたってループすることによる全ての仮定は保持される。代替的に、仮定が、他の仮定に近いと認められる場合は、マージは、以下で記載されるように、グループにおいて１つの仮定を選択することと同様な方法でそれらのうちの幾つかしか保持しなくてよい。
【００９３】
全ての厚さを検討した後、棚／ラベル検出モジュール２０５は、直ぐそばにある仮定の各グループから１つの仮定を選択する。例えば、モジュール２０５は、仮定の対を考えることによって仮定を選択する。対は、直ぐそばにある対が最初に検討されるような順序において考えられる。一実施形態において、棚どうしの間の最小の期待される距離は、棚の仮定の対が極めて直ぐそばにあるかどうか（例えば、上の棚の下部と下の棚の上部との間の距離が期待される距離よりも小さいかどうか）を判定するために使用される。一実施形態において、棚／ラベル検出モジュール２０５は、棚どうしの間の最小の期待される距離として、最小の期待される製品の高さを使用する。最小の期待される製品は、期待される製品（例えば、検索データベース内でインデックスを付されている製品）の中から見つけられる。代替的に、棚どうしの間の最小の期待される距離は、最短の認識された製品の高さであることができる。あるいは、他の実施形態では、最小の期待される高さは、認識されていない製品が認識された製品よりも短いことがある場合を扱うために、最短の認識された製品の高さの分数、例えば、最短の認識された製品の高さの半分であることができる。仮定を選択するとき、同様の厚さ（例えば、ビンサイズの２倍よりも大きくない距離）を有する仮定は、一緒のグループと見なされ得る。任意に、仮定を選択するとき、以下で記載されるようにスーパーピクセル棚特徴のヒストグラムの比較に基づき類似した外観を有する仮定は、一緒のグループと見なされ得る。
【００９４】
極めて直ぐそばにある一対の棚の仮定から一方の仮定を除外する場合に、その対の一方が、７０６に関連して以下で記載されるように外観に基づく（例えば、スーパーピクセル棚特徴のスコアに基づく）評価からであり、一方が、７０８に関連して以下で記載されるようにコンテクストに基づく評価（例えば、フェイシングの下の検索）からであるならば、コンテクストからの一方が除外される。そうでない場合は、低い方の仮定が、よりずっと暗い（例えば、０．．２５５ピクセルについて６４よりもグレースケール値又は輝度が小さい）ならば、それが除外される。さもなければ、以下で記載される、仮定を評価するための他の基準が、どちらを除外すべきかを判断するために使用され得る。代替的に、棚／ラベル検出モジュールが、ラベルの上及び下に関する情報を提供する場合は（以下で更に詳細に記載される。）、ラベルの上下位置は、適合する棚の上下位置に票を投じるために使用されてよく、票が少ない仮定が除外され得る。代替的に、検出されたラベルが少ない仮定は除外される。代替的に、仮定は、棚の色、ラベルの色及び／又は棚の厚さが全ての残りの仮定について一致するように除外され得る。
【００９５】
一実施形態において、選択された仮定に近いスーパーピクセル棚特徴は、シータの他の値についての検討から外される。棚どうしの間の最小の期待される距離は、この場合に、何が近いかについての閾値として使用される。シータにわたる検索は、スーパーピクセル棚特徴の閾数（例えば、６）未満が検討されるべき場合に停止する。これは、異なった棚が画像において異なった角度にある場合を扱う。これは、イメージングデバイスのポジションが棚を画像において平行でないようにする場合に起こり得る。
【００９６】
代替の実施形態では、アルゴリズムはグリーディ（greedy）であり、ラベルがシータについての何らかの値で見つけられると停止する。他の代替の実施形態では、シータにわたる検索は、全てのスーパーピクセル棚特徴にわたって続き、１つ以上の最良のシータ値からの結果が使用される。
【００９７】
棚／ラベル検出モジュールは、とり得る棚の位置（例えば、上記の仮定）から棚の位置を決定する。仮定を評価し選択するためのアルゴリズムの例は、以下で記載される：
【数３】
2016115348.tif 000005
【００９８】
７０６で、棚／ラベル検出モジュール２０５は、外観に基づき棚の位置を評価する。概して、棚の仮定は、２つの平行なラインであって、それらのライン内で同じ色を有する２つの平行なラインを表すとともに、上述されたように、長い水平なエッジを更に有するか、あるいは、フェイシングの下で上側の平行なラインを有するか、あるいは、下側の平行なラインの下でより暗いスーパーピクセル棚特徴を有し得るスーパーピクセル棚特徴に基づき、求められる。任意に、棚エッジは、棚の下にある暗領域よりも明るいと期待され、暗いスーパーピクセル棚特徴は、平行なライン内にあるスーパーピクセル棚特徴と見なされない。５つのクラスタ色（０が黒であり、２５５が白であるところ、０から２５５までのグレースケール値）について、５つの色のうちの最小グレースケール値よりも６４より大きくなく且つ６４から５つの色の最大グレースケール値を引いたもの未満であるとき、色は暗い。
【００９９】
一実施形態において、棚／ラベル検出モジュール２０５は、以下のように一対のビンについてスコアを計算する。夫々の色について（例えば、夫々のＧＭＭコンポーネント１、２、３、４及び５について）、モジュールは、上限ビンについての２つの垂直な勾配方向の夫々について最大数のスーパーピクセル棚特徴（例えば、棚の上部であると仮定されるスーパーピクセル棚特徴）を求める。また、モジュール２０５は、長い水平エッジを有するスーパーピクセル棚特徴及びフェイシングの下にあるスーパーピクセル棚特徴の対応するカウントの最大値を求める。同様に、夫々の色について、棚／ラベル検出モジュール２０５は、下限ビンについての２つの垂直な勾配方向の夫々について下側のスーパーピクセル棚特徴の最大数を求める。また、モジュール２０５は、長い水平エッジを有するスーパーピクセル棚特徴の対応するカウントを求める。任意に、モジュール２０５は、より暗い（例えば、０から２５５のグレースケールについて６４又はそれ以上の異なるグレースケール）下側の平行ラインについて上にあるスーパーピクセル棚特徴の数を求める。更に、夫々の色について、モジュール２０５は、その色についての上下のカウントの最小値を求める。最大値を有する色は最良の色（例えば、棚の仮定の色）であり、最大値は最良のカウントである。棚／ラベル検出モジュール２０５は、最良のカウントの和として仮定についてスコアを決定する。その色についての長いエッジ／フェイシング／より暗いスーパーピクセル棚特徴のカウントのより大きい方は、和が最良のカウントの２倍より大きくないようにクリッピングされる。
【０１００】
他の実施形態では、棚／ラベル検出モジュール２０５は、一対のビンについてヒストグラムを計算する。上限ビンについての上側のスーパーピクセル棚特徴、上限ビンについての下側のスーパーピクセル棚特徴、下限ビンについての上側のスーパーピクセル棚特徴、及び下限ビンについての下側のスーパーピクセル棚特徴の夫々について色に基づく１つのヒストグラムが存在する。異なる棚の仮定は、ヒストグラムを比較することによって比較され得る。
【０１０１】
他の実施形態では、棚／ラベル検出モジュール２０５は、上下のスーパーピクセル棚特徴が近いスーパーピクセル棚特徴のみを考えることによって、一対のビンについて他のスコアを計算する。２つのスーパーピクセル棚特徴は、それらのＸ座標の差が閾値未満である場合に近い。一実施形態において、閾値は、Ｔが棚の厚さであり、Ｂがビン間隔であるとして、Ｔ／ｔａｎ（ａｒｃｓｉｎ（Ｂ／Ｔ））又は同等にＴ２×ｓｑｒｔ（１−（Ｂ／Ｔ）２）／Ｂである。一実施形態において、Ｘ座標は原画像のＸ座標である。他の実施形態では、Ｘ座標は、シータだけ回転された座標系にある。
【０１０２】
７０８で、棚／ラベル検出モジュール２０５は、コンテクストに基づき棚の位置を評価する。様々な実施形態において、コンテクストは、棚の位置を評価するために使用され得る。これは、オブジェクト認識モジュール２０１からの情報、重なり合った画像における棚検出からの情報、棚どうしの間の規則的な間隔を前提とすること又は他の先験的情報に基づく仮定、及び同様のものを含むことができる。最良の仮定の選択を改善するよう、仮定についてのスコアにはボーナスが加えられ得る。製品が棚の上に置かれている場合に、製品のボトムエッジは、棚のトップエッジと同じ位置にある。リアログラム画像（画像内の垂直位置が必ずしも３Ｄ空間における垂直位置にのみ対応するわけではない２Ｄ投影）において、位置の比較は、３Ｄジオメトリを明示的に考慮するか、あるいは、３Ｄ降下を可能にする同じ位置についての近似を使用するべきである。例えば、一実施形態において、棚／ラベル検出モジュールは、フェイシングの下限ビン座標を棚の上限ビン座標と比較し、例えば、Ｔ＝１．５×厚さであり、厚さが目下の棚の仮定についての棚上部と棚下部との間の距離であるとして、Ｔビン内に棚上部を有さない如何なるフェイシングも棚によって支持されていないものと見なされる。
【０１０３】
棚の上にないぶら下がった製品の場合は、棚が見つけられない場合に繰り返しを停止することによって扱われる点に留意されたい。任意に、如何なる認識された製品も、ぶら下がった製品であると知られる場合に、それらの製品は、棚によって支持されていない製品として検討から除外され得る。
【０１０４】
１つの棚があり得る範囲を求めるよう、棚／ラベル検出モジュール２０５は、棚の厚さよりも離れていない下部を有するフェイシングをグループ化し、そのグループの最小ビン座標より小さいもの及び最大ビン座標よりも大きいものを使用する（それらのビンが存在しない場合は、それらの位置よりも小さいもの及び大きいものを無視する。）。
【０１０５】
幾つかの実施形態では、同じシーンの重なり合った画像が使用される。画像どうしの間の幾何学的関係は、既存の公の及び／又は独自仕様のスティッチング・アルゴリズムを用いて決定される。棚検出は、複数の画像に対して実行される。棚の位置の仮定は、スティッチング・アルゴリズムによって決定された座標系に変換される。一実施形態において、仮定は、複数の重なり合った画像において一致した位置にある棚についてのスコアを連帯して最大にするよう選択される。他の実施形態では、１つの画像における棚の仮定は、他の画像における対応する位置で棚の仮定が存在する場合に、ボーナスを付与される。
【０１０６】
幾つかの実施形態では、棚どうしの間の間隔は規則的である。７０６で外観に基づき計算される棚の仮定の各対間の間隔が求められる。それらの間隔についての一意の値（例えば、ビン間隔によって特定される許容範囲内で同じ値）は、棚の間隔についての推定値である。小さい正の整数（例えば、２、３、４、５）によって割られるそれらのスペースは、結果が最小の棚間隔よりも大きいか又はそれと等しい場合に、棚の間隔についての他の推定値である。７０６で外観に基づき計算される棚の仮定から離れて、推定された棚の間隔の倍数である位置は、上述された、棚によって支持されていないフェイシングを見つけることと同じように、棚があるであろう範囲を求めるために使用される。
【０１０７】
７１０で、選択された棚の仮定に基づき、棚／ラベル検出モジュール２０５は棚の境界を決定する。一実施形態において、棚の境界の座標を決定するよう、棚／ラベル検出モジュールは、棚についての原画像のＹ座標（のみ）を返す。それらのＹ座標は、画像の全幅に及ぶ水平な棚を表す。モジュール２０５は、棚の上側座標として、一実施形態において、棚の上部についてのスーパーピクセル棚特徴の上側境界重心Ｙ座標の最大値を選択する（“上側インライア”）。同様に、モジュール２０５は、棚の下側座標として、棚の下部についてのスーパーピクセル棚特徴の下側境界重心Ｙ座標の最小値を選択する（“下側インライア”）。
【０１０８】
任意に、棚の境界は、次の１つ以上を表すことができる。すなわち、水平から離れた角度にある棚、複数のベイ（bay(s)）（ベイは、店舗内の特定の棚構成における相異なるエリアである。）を有するか、又はいずれのベイにもない領域を有する画像などの、画像の幅に満たない棚、３Ｄ又はカメラ効果（例えば、異なる角度での区分線形）により画像において直線でない棚、エッジ部分が塞がされていない棚エッジの可視的な部分がある。一実施形態において、ある角度にある棚は、２つのライン又は一対の平行なラインを上側インライア及び下側インライアに合わせることによって表され得る。画像内の棚は、ピンクッション又は樽形湾曲などの３Ｄ又はカメラ効果に起因して直線でないことがある。区分的に連続している異なった角度ごとの棚の仮定は、棚の境界を表すようポリゴンへと結合され得る。
【０１０９】
棚の仮定からの情報は、棚についてのスーパーピクセル棚特徴の位置及びそれらの色を含む。任意に、特定の認識された製品についての境界ボックスにあるか、又は特定の認識された製品についてのインライアを有するスーパーピクセルなどの、更なる情報が存在する。棚が画像全体に及ばない場合は、全幅の棚の仮定におけるスーパーピクセルに基づき検出され得る。そのようなスーパーピクセルは、スーパーピクセル棚特徴ではなく、色が類似しておらず、及び／又は、特定の認識された製品に関連する。ベイ境界の検索は、全ての棚に適用される画像ごとの単一の境界に制限されてよい（例えば、検索は、単一の垂直ベイ境界についてであってよい。）。一実施形態において、４つの辺を持つポリゴン又は平行四辺形は、棚を表すために使用され得る。
【０１１０】
様々な実施形態において、選択された棚の境界内にある幾つかのスーパーピクセルは、棚の部分としてラベルを付されることから除外されてよい。例えば、棚の仮定のスーパーピクセルにおいて特定の製品の認識から何らかのインライアが存在する場合に、それらのスーパーピクセルは、棚に一致しないものとして扱われ得る。それらのスーパーピクセルは、棚エッジを塞ぐ棚エッジの前にあるオブジェクトからであると期待される。それらのスーパーピクセルの領域は結合されてよく、棚の境界を表すポリゴンは、それらの領域を除外するものとして決定され得る。幾つかの実施形態では、ＧｒａｂＣｕｔなどの画像セグメンテーション方法は、棚の仮定によるスーパーピクセルを前景（仮定からのスーパーピクセル棚特徴であり且つ別な方法で可能であるスーパーピクセルについての特定の前景）として、そして、上下にある隣接サブピクセルを（特定の）背景として、初期化され得る。ＧｒａｂＣｕｔは、次いで、棚と一致しない棚の仮定におけるスーパーピクセルを見つけるために使用され得る。
【０１１１】
７１２で、棚／ラベル検出モジュール２０５は、棚の仮定においてラベル及び値段を検出する。ラベル検出は、図１３に関連して更に詳細に以下で記載される。値段を検出するよう、棚／ラベル検出モジュール２０５は、光学文字認識（ＯＣＲ；Optical  Character  Recognition）により画像から値段を抽出する。画像から値段を抽出するためのアルゴリズムの例は、以下で記載される：
【数４】
2016115348.tif 000006
【０１１２】
幾つかの実施形態では、棚／ラベル検出モジュール２０５は、複数の閾値を使用し、複数のテキスト片（例えば、ラベル上の値段）に対応する領域に対して複数回ＯＣＲを実行してよい。このＯＣＲは、同じテキストについて複数のＯＣＲ結果をしばしばもたらす。このようなことが起こる場合に、最良のＯＣＲ結果（例えば、最も高い信頼を伴う結果）が見つけられ、その後の処理において使用される。論理的に、最良のＯＣＲ結果を選択することは、棚／ラベル検出モジュール２０５が同じテキストについて複数のＯＣＲ結果を生成しない場合は不要である。
【０１１３】
図２５は、画像から値段を抽出するための方法の一例のフロー図である。２５０２で、棚／ラベル検出モジュール２０５は、既知の公の及び／又は独自仕様のテキスト検出方法により画像においてテキストを検出する。ステップ２５０４で、棚／ラベル検出モジュール２０５は、テキストを認識し、テキスト画像を、既知の公の及び／又は独自仕様のＯＣＲ方法によりシンボリックテキストに変換する。
【０１１４】
ＯＣＲ方法は、印刷されたテキストを伴う画像をシンボリックテキストに変換する。幾つかの実施形態では、ＯＣＲ方法は、文書レイアウト解析、シーンテキスト検出、及び／又は同様の前処理ステップを実行して、認識のためのバイナリ画像を生成してよい。文書レイアウト解析は、テキスト、写真、グラフィクス、及び他のコンテンツを含む文書（例えば、新聞、雑誌、等）において、例えば表題、段組等のようなテキストを識別する。シーンテキスト検出は、テキストを見つけるよう画像を解析することを含んでよい。例えば、画像は、テキストを含むオブジェクト（例えば、製品箱／コンテナ、棚ラベル、等）を含んでよい。シーンテキスト検出は、ＯＣＲのためのバイナリ画像を生成するよう、複数の色を有するテキストを同様に扱う。幾つかの実施形態では、ＯＣＲ方法（例えば、文書レイアウト解析、シーンテキスト検出、又は同様の高度な前処理を含まない方法）は、入力として別個の前処理ステップによって生成されたバイナリ画像をとってよい。一実施形態において、ＧｒａｂＣｕｔは、ＯＣＲへの入力のために画像領域を２値化するために使用される。
【０１１５】
ＯＣＲソフトウェアは、通常は、印刷されたテキストの良質の画像（例えば、高分解能、高コントラスト、良好なフォーカス、無モーションブラー、一様な輝度、等）において正確である。しかし、例えば店舗の棚などのシーン画像は、解像度がテキストのサイズに対して低く、コントラストが低く、且つ、例えば、フォーカスの悪さや動きに起因したブラー及び照明に起因したグレアなどの画像劣化を含み得る、より品質が低い画像を含む。店舗の棚の典型的な画像は、多種多様の色において大量のシーンテキストを有する。そのような画像はまた、テキストではないがテキストの低水準の特徴を共有し得る（例えば、ストロークから成ってよい。）大量のグラフィクス又はラインアート（バーコード、ロゴ、等）を更に有する。
【０１１６】
店舗の棚の画像に対して既存のシーンテキスト検出ソフトウェアを用いることは、例えば値札上の値段等のテキストを見つけることができないことがある。テキストを見つける機会を増やすよう、棚／ラベル検出モジュール２０５は、シーンテキスト検出を、棚又は棚の仮定に対応すると決定される（ここでは別なところで記載される。）画像内の領域に制限される。
【０１１７】
２５０６で、ラベル／棚検出モジュール２０５は、認識されたテキストに対して後処理を実行してよい。低解像度、ブラー及び／又は他の劣化に起因して、ＯＣＲは、店舗の棚の画像において、例えば“Ｓ”、“５”及び“＄”といった類似した文字を正確に区別することができないことがある。値段検出のためにそのような文字を区別するよう、ラベル／棚検出モジュール２０５は、ＯＣＲのために認められる文字を、例えば、“＄．０１２３４５６７８９”に制限してよく、例えば字（letter(s)）などの他の文字は除外される。幾つかの値札は、ＯＣＲソフトウェアが扱わないセント記号（“¢”）のような文字を含むことがある。代わりに、ＯＣＲは、扱われない文字を何らかの代替の文字と混同（例えば、“¢”を“ｃ”と混同）することがあり、故に、許容される文字として、代替の実施は、代替の文字、例えば“＄ｃ．０１２３４５６７８９”を含んでよい。
【０１１８】
正規表現又は他のパターンは、期待される文字列を定義することができる。例となる正規表現は、“＄”から始まって、１つ以上の数字と小数点とを有し、２つの数字で終わる文字列に適合する“＾＼＄＼ｄ＋＼．＼ｄ＼ｄ＄”である。他の例となる正規表現は、数字から始まって、任意に２番目の数字を有し、“ｃ”又は“¢”で終わる文字列に適合する“＾＼ｄ＼ｄ？ｃ＄”である。幾つかのＯＣＲ方法は、認識に役立つよう、期待される文字列を使用することへの支援を含んでよい。さもなければ、棚／ラベル検出モジュール２０５は、期待される文字列を後処理ステップとして適用してよい。棚／ラベル検出モジュール２０５は、従って、期待されるパターンに適合しないＯＣＲ出力を拒絶してよい。
【０１１９】
同様に、ＯＣＲ方法は、夫々の文字について代替の認識を提供してよく、棚／ラベル検出モジュール２０５は、期待されるパターンに適合する結果を選択し、そして、代替物のいずれも適合しない場合にのみ認識を拒絶するために、後処理を使用してよい。幾つかの実施形態において、ＯＣＲ方法は、代替の認識のためにスコア又はコンフィデンス値を提供し、棚／ラベル検出モジュール２０５は、最も高いスコア又はコンフィデンス値との一致を選択してよい。
【０１２０】
幾つかの実施形態では、棚／ラベル検出モジュール２０５は、値段テキストを特定するよう、文字境界ボックス内にある他の文字に対する文字の位置を使用することができる。例えば、ラベルが、他の文字（例えば、値段における上付文字）とは異なった位置に“＄”又は“¢”文字を含む場合に、文字境界ボックス位置は、値段を他のテキストと区別するために使用され得る。
【０１２１】
加えて、棚／ラベル検出モジュール２０５によって実行される後処理は、テキスト認識の間に落とされた文字を補正することができる（例えば、小数点“．”が落とされ、ＯＣＲがそれらの位置でワードブレイク（word  break）を返す場合）。例えば、棚／ラベル検出モジュール２０５によって実行される後処理ステップは、落とされた文字について代替物を生成し、パターンマッチングを使用してその代替物の適切な文字を決定し、落とされた文字を置換することができる。
【０１２２】
上記の方法の例において示されるように、キャッシングは任意に使用されてよく、それにより、テキスト決定及びＯＣＲは、同じ棚の仮定について１回より多く実行されない。例えば、個々の棚についての同じ仮定は、幾つかの値段を見つけるための最初の検出と、更なる値段を見つけるよう試みるための後の検出との両方に使用されてよい。棚の仮定についてのラインの座標は、キャッシュキーとして使用され得る。
【０１２３】
幾つかの棚の候補は、画像の上下で画像の外に広がってよい。そのような棚の候補は、クリッピングされた画像領域を生成してテキスト検出へ入力するよう、画像の限界までクリッピングされてよい。ＯＣＲ方法は、通常は、テキストを検出するための最低限の解像度を有する。これは、クリッピングされた領域についての最小サイズを示唆する。最小サイズよりも小さい領域は、テキスト検出又はＯＣＲを実行する必要なしに抽出可能なテキストを有さないと推定され得る。例えば、１０ピクセルに満たない高さの領域は、抽出可能なテキストを有さないと推定される。通常は、高さが小さい画像の上又は下にある棚の候補のみが極めて小さい。
【０１２４】
値段又はラベルが検出されると、棚／ラベル検出モジュール２０５は、ラベル及び／又は値段の位置を確かめるよう、画像において検出された適合する値段及びラベルを特定する。値段は、その値段がラベルと重なり合い、且つ、重なり合いの高さが少なくとも値段の高さの半分であり、重なり合いの幅が少なくとも値段の幅の半分である場合に、ラベルに適合する。幾つかの実施形態では、値段の周りの境界ボックスの高さ及び幅は、値段の高さ及び幅を決定するために使用される。
【０１２５】
幾つかの実施形態では、ラベルが直ぐそばにある場合に、複数のラベルは、個別の別々のラベルではなく、結合されたラベル領域として検出されてよい。単一のラベル領域において水平に可分である複数の値段が存在する場合に、棚／ラベル検出モジュール２０５は、そのラベル領域を分割する。一実施形態において、棚／ラベル検出モジュールは、結合されたラベル領域を、ラベル検出から決定されたラベルのメジアン幅に基づき、別々のラベルに分割する。他の実施形態では、棚／ラベル検出モジュール２０５は、結合されたラベル領域を、値段境界ボックスの位置及び／又はサイズに基づき分割する。
【０１２６】
一実施形態において、外観に基づき棚の位置を評価すること及びコンテクストに基づき棚の位置を評価することは、１つ以上の仮定を検討から外すことを有する。これは、減じられた数の仮定に対してのみラベル検出を実行することによって、必要とされる全体の計算の量を低減するのに有利である。他の実施形態では、ラベル検出は、検討から仮定を外す前に仮定に対して実行される。
【０１２７】
７１４で、棚／ラベル検出モジュール２０５は、外観に基づく棚位置の仮定と、コンテクストに基づく棚位置の仮定と、ラベル及び値段検出とからの情報を用いて、最良の棚及びラベルの位置を選択する。一実施形態において、最良の位置は、見つけられたラベル及び値段の数、見つけられた棚の数、及びスコア（幾つかの実施形態について重要度のその順序における。）に基づき、選択される。他の実施形態では、仮定のグループは、上述されたように、幅及び／又はスーパーピクセル棚特徴ヒストグラムに基づき、まとめて考えられる。他の実施形態では、例えば決定木学習、ブースティング、ランダム木、又はＳＶＭ（Support  Vector  Machine）等の機械学習方法が、位置を選択するために使用される。
【０１２８】
図２６は、表において棚の仮定の例を表す。表は、例えば、データストレージ２４３において記憶されてよい。表中の各行は仮定である。夫々の仮定は、上限ビン値及び下限ビン値によって記載される。他の表中の列は、ビンにおける幅、ラベル検出により見つけられたラベルの数、スコア（スーパーピクセル棚特徴に基づく。）、この仮定についてのスーパーピクセル棚特徴の１乃至５の色インデックス、スーパーピクセル棚特徴の輝度又はグレースケール値、及びフェイシングの下での検索からのフェイシング情報がこの仮定を生成するために使用されたか否かである。別個の棚であるにはあまりにも直ぐそばにある仮定のグループは、黒い太線によって分けられている（例えば、グループごとに１つの棚がある。）夫々のグループについて、最良の仮定として選択された仮定は、（背景を影付きとすることで）ハイライト表示されている。それら４つの最良の仮定は、４つの検出された棚に対応する。
【０１２９】
全ての棚が上記の方法により画像において見つけられるわけではないことが可能であり得る。棚／ラベル検出モジュール２０５は、更なる棚／ラベル検出に役立つよう棚及びラベルモデルを生成することによって、以前に見逃された棚を見つけるよう試みてよい。７１６で、棚／ラベル検出モジュールは、７１４からの最良の棚位置に基づき棚外観についてのモデルを生成する。一実施形態において、棚モデルは、棚の最前部の厚さの推定値である１つの幾何パラメータを有する。推定値は、以前に検出された棚の平均厚さである。他の実施形態では、棚モデルは、更なる幾何又は色パラメータを含んでよい。
【０１３０】
７１８で、棚／ラベル検出モジュール２０５は、７１４からの最良の棚位置に基づきラベル外観についてのモデルを生成する。一実施形態において、ラベルモデルは、幾何パラメータ及び色パラメータの両方を含んでよい。１つの幾何パラメータは、例えば、ラベル及び値段検出７１２の間に決定されたラベルの幅の推定値であってよい。ラベルモデルにおける更なる幾何パラメータは、例えば、値段テキストと棚／ラベルエッジとの間の垂直マージンを含んでよい。
【０１３１】
色パラメータは、ラベルの色についてのガウス混合モデル（ＧＭＭ）、このＧＭＭに関連する確率閾値、及び以前に検出されたラベルがこのＧＭＭと如何にして適合するのかの例を含んでよい。幾つかの実施形態では、ラベルモデルは、例えば“ラベルは赤及び白であるか、あるいは、ラベルは青及び緑である”といった、ラベルについてのドミナント色の間のＡＮＤ−ＯＲ関係を学習し表すことができる。ラベルの色は、ラベル検出７１２によって特定されたラベル領域におけるスーパーピクセルの平均色であってよい。例えば、それらのラベルの色について計算されたＧＭＭは、３要素平均ベクトル及び３×３の共分散行列を夫々が有する５つのコンポーネントを含んでよい。
【０１３２】
一実施形態において、確率閾値は、ＧＭＭを用いてラベルの色の確率を計算することによって決定される。例えば、２５％のパーセンタイル確率は、閾値として使用されてよい（例えば、ラベルの色の確率の２５％以上且つそれらの確率の７５％未満である確率）。
【０１３３】
ＧＭＭにおける検出されたラベルの一致の標本は、夫々の検出されたラベルについてのラベルの色のヒストグラム、バッグ又はマルチセットを計算することによって決定される。夫々のヒストグラムビン（又は同等にバッグ要素若しくはマルチセット要素）は、ＧＭＭコンポーネントインデックスのうちの１つ（通常は、５つのインデックスのうちの１つ）に対応する。夫々のビンのカウント（又は要素のカウント）は、ＧＭＭによってそのＧＭＭコンポーネントへ割り当てられているラベルの色の数である。割り当てのガウス確率は、閾値よりも大きいか又はそれと等しい。一実施形態において、夫々の検出されたラベルの標本は、１回よりも多く現れる全てのＧＭＭインデックスの中の最も頻度が高いＧＭＭインデックス（例えば、最大で３つ）の組によって要約される。代替の実施形態では、同様の要約が使用されてよく、あるいは、ヒストグラム（又はバッグ／マルチセット）が要約の代わりに直接使用されてよい。
【０１３４】
一実施形態において、同じラベルの色は、閾値の確率を計算する目的で且つ標本を計算する目的で、ＧＭＭを構築するために使用される。代替の実施形態では、それらのラベルの色は、異なったラベルの色がそれらの目的のために使用されるように分割されてよい。
【０１３５】
７２０で、棚／ラベル検出モジュール２０５は、棚及びラベルの外観についてのモデルに基づき、可能な棚の位置のコンテクスト及び特徴を用いて、外観に基づく可能な棚の位置を更新する。長い水平ラインセグメントは、時々、棚のエッジを示す。一実施形態において、棚／ラベル検出モジュール２０５は、如何なる棚の仮定にも近くなく且つ可能な棚の位置（７０４から）の角度に適合する長い水平ラインセグメントを特定してよい。そのような長い水平ラインセグメントは、以前に検出されていなかった棚のエッジに対応してよい。棚／ラベル検出モジュール２０５は、更なる棚の仮定を生成するよう、棚が特定された水平ラインの上又は下のいずれに現れるのかを特定しようと試みる。加えて、棚／ラベル検出モジュール２０５は、特徴（例えば、スーパーピクセル棚特徴）が棚の仮定内にない位置を確認して、更なる棚の仮定を生成するよう、棚が特徴の上又は下のいずれに現れるのかを判定する。
【０１３６】
棚／ラベル検出モジュール２０５は、棚の存在を探すために棚モデル（例えば、棚の厚みの推定値）を使用してよい。水平ライン又は他の特徴の上下を探すアルゴリズムの例は、以下で記載される：
【数５】
2016115348.tif 000007
【０１３７】
棚／ラベル検出モジュール２０５がいずれかの仮定（例えば、特徴の上との仮定及び特徴の下との仮定）について値段又はラベルを見つける場合に、より多くの数の値段又はラベルを伴う仮定が、検出された棚の仮定として返される。棚／ラベル検出モジュール２０５がいずれの仮定についても値段又はラベルを見つけられない場合に、仮定は棚に対応せず、結果は返されない。
【０１３８】
７２２で、棚／ラベル検出モジュール２０５は、更新された棚の位置の仮定に基づき棚の境界を決定する。棚／ラベル検出モジュール２０５は、７１０を参照して上述された方法と同様にしてここで棚の境界を決定する。
【０１３９】
７２４で、棚／ラベル検出モジュール２０５は、ラベルモデルに基づきラベル及び値段を検出する。棚／ラベル検出モジュール２０５は、図１３を参照して記載されるように、値段を抽出（し、次いで、値段がラベル上にあることを確認）することによって、ラベル及び値段を検出する。任意に、値段が抽出され得ないラベルの位置は、ラベル検出、如何なる以前に検出されラベルも除外すること、次いで、仮定の中から選ぶようラベルをバリデートすることによって、決定される。７２６で、棚／ラベル検出モジュール２０５は、７１４を参照して上述されたように最終の棚及びラベルの位置を選ぶ。
【０１４０】
図１３は、リアログラム画像において表されている棚の最前部におけるラベルの位置を検出及び決定するための方法６０４の一例のフロー図である。１３０２で、棚／ラベル検出モジュール２０５は、上述されたように、棚に関連したスーパーピクセルを特定する。１３０４で、棚／ラベル検出モジュール２０５は、棚のスーパーピクセルを色によってクラスタに量子化する。例えば、一実施形態において、棚／ラベル検出モジュール２０５は、棚のスーパーピクセルを、ｋ平均クラスタリングにより、５つのクラスタにクラスタ化する。当然ながら、様々な数のクラスタ又はクラスタリングアルゴリズムが棚のスーパーピクセルをクラスタ化するために使用されてよい。図１４Ａは、棚のスーパーピクセルのクラスタを表すために番号を付けられたスーパーピクセルを重ね合わされたリアログラムの例の一部を表す。
【０１４１】
図１３の例に戻ると、１３０６で、棚／ラベル検出モジュール２０５は、任意に、ラベルに対応する可能性があるクラスタを決定する。例えば、棚／ラベル検出モジュール２０５は、ラベルに対応する可能性があるクラスタとして、スーパーピクセルが最も少ない（例えば、一番人気がない色を有する。）クラスタを特定する。一実施形態において、棚／ラベル検出モジュール２０５は、スーパーピクセルが最も少ない３つのクラスタを特定する。図１４Ｂは、棚のスーパーピクセルを表すために番号を付けられたスーパーピクセルを重ね合わされたリアログラムの例の一部を表す。図１４Ｂの例では、クラスタ１は最多のスーパーピクセル（例えば、最も人気のある色）を含み、クラスタ２、４及び５は最少のスーパーピクセルを含む。
【０１４２】
同様に、棚／ラベル検出モジュール２０５は、棚のスーパーピクセルであって、それらの境界内に完全に含まれている非水平ラインを有するスーパーピクセルを特定する。一実施形態において、モジュール２０５は、ＬＳＤ結果（上記）を使用することによってこれを行う。非水平ラインは、そのようなラインが棚のラベル上に印刷された数字及び／又はバーコードにしばしば対応することから、ラベルの部分である可能性があるスーパーピクセルを特定するために使用され得る。一実施形態において、棚／ラベル検出モジュール２０５は、非水平ラインを有する最多のスーパーピクセルを含む３つのクラスタを特定する。図１４Ｂの例では、クラスタ３、４及び５が、非水平ラインを有する最多のスーパーピクセルを含む。
【０１４３】
１３０８で、棚／ラベル検出モジュール２０５は、クラスタに基づきラベルの位置の仮定を形成する。一実施形態において、棚／ラベル検出モジュール２０５は、１つ以上のクラスタにおいて隣接したスーパーピクセルの接続されたコンポーネントを見つけることによって、クラスタに基づきラベルの位置の仮定を形成する。
【０１４４】
他の実施形態では、棚／ラベル検出モジュール２０５は、最少のスーパーピクセルを有する色クラスタ及び最多の非水平ラインを有するクラスタの両方（例えば、それらのクラスタの共通集合）にある棚のスーパーピクセルを決定して、ラベルの位置の仮定を形成する。図１５は、最少のスーパーピクセルを有するスーパーピクセルのクラスタと最多の非水平ラインを有するスーパーピクセルのクラスタとの間の共通集合を表す例図である。図１５の例では、色に基づき最少のスーパーピクセルを有するクラスタのグループは、Ｃ３とラベルを付されており、最多の非水平ラインを有するクラスタのグループは、Ｍ３とラベルを付されている。図１５から明らかなように、クラスタ５及び４は、それら２つのグループの共通集合内にある。棚／ラベル検出モジュール２０５は、この共通集合を使用して、ラベル特徴を含むクラスタについての仮定を決定する。例えば、モジュール２０５は、クラスタ４に含まれるスーパーピクセルが存在する領域、クラスタ５に含まれるスーパーピクセルが存在する領域、並びにクラスタ４及びクラスタ５の両方に含まれるスーパーピクセルが存在する領域の仮定をテストしてよい。他の実施形態では、まさに記載されたように第１の組の仮定を生成することに加えて、棚／ラベル検出モジュール２０５は、最少のスーパーピクセルを有するクラスタにも最多の非水平ラインを有するクラスタにもないクラスタを用いて第２の組の仮定を更に生成する。以下で記載される、ラベルの仮定をバリデートしようとする試みは、最初に第１の組に対して実行され得る。そして、ラベルが見つけられない場合は、バリデーションは第２の組に対して実行され得る。他の実施形態では、色の人気の基準及び／又は非水平ラインの基準は、１つ以上の他の既存の公の及び／又は独自仕様の画像特徴抽出アルゴリズムによって置き換えられ得る。
【０１４５】
１３１０で、棚／ラベル検出モジュール２０５は、ラベルモデルが存在するかどうかを判定する。ラベルモデルが存在する場合は、１３１２で、棚／ラベル検出モジュールは、モデルに適合するコンポーネントを見つける。例えば、棚／ラベル検出モジュール２０５は、モデルに含まれるＧＭＭラベル色に適合するスーパーピクセルを決定する。スーパーピクセルがＧＭＭに適合しない場合は、接続されているコンポーネントはモデルに適合しない。他の例では、接続されたコンポーネントの幅がラベルよりも大きい（例えば、その幅は、モデルに含まれる１．５×メジアンラベル幅よりも大きい）場合、且つ、接続されたコンポーネントにおける全ての位置でメジアンラベル幅の半分内に適合するスーパーピクセルがない場合、接続されたコンポーネントはモデルに適合しない。
【０１４６】
１３１４で、棚／ラベル検出モジュール２０５は、ラベルモデルからメジアン幅を読み出し、１３２０で、以下で更に詳細に記載されるように、メジアン幅に近いラベル候補（例えば、モデルに適合するコンポーネントを有する仮定のラベル位置）を決定する。一実施形態において、棚／ラベル検出モジュール２０５は、メジアン幅の整数倍に近いラベル候補を決定する。
【０１４７】
ラベルモデルが存在しない場合は、棚／ラベル検出モジュール２０５は、１３１６で、１つよりも多いスーパーピクセルを有する画像内のコンポーネントを見つけ、１３１８で、選択されたコンポーネントに基づきメジアン幅を決定する。１３２０で、棚／ラベル検出モジュール２０５は、メジアン幅に近いラベル候補を決定する。
【０１４８】
図１６は、棚のスーパーピクセルのクラスタを表すために番号を付けられたスーパーピクセルの接続されたコンポーネントを重ね合わされ且つ仮定のラベルの位置を示すリアログラムの例の一部を表す。１３２２で、棚／ラベル検出モジュール２０５は、最良のラベル仮定を選ぶ。例えば、棚／ラベル検出モジュール２０５は、夫々の幅とメジアンとの間の差を計算して閾値（例えば、１０又はメジアンの半分の小さい方）と比較し、どれだけの検出されたラベルが同じ幅であるのか及び幾つが閾範囲内に入らないかに基づき夫々の仮定にスコアを付け、最も高いスコアを有する仮定を選択し、棚の最前部に沿って同様の幅を有する少なくとも閾数（例えば、５）の隣接しないラベルが存在することを確認することによって、最良のラベル仮定を決定する。任意に、スーパーピクセルのメジアン幅の２倍よりも幅が大きくないラベル仮定は、拒絶される。任意に、閾量（例えば、メジアン幅の５０％）だけメジアン幅よりも大きいラベル仮定は、複数のラベルであると見なされる。任意に、複数のラベルについての仮定は、単一のラベルについての仮定に分割される。任意に、同様の（重なり合った）仮定について、ラベル検出は、仮定の幾つかに対してのみ実行される。例えば、ラベル検出は、スコアが高い方から低い方へといった順序で、前の仮定が重複する（例えば、上部と下部との間の差がスーパーピクセルのメジアン高さの半分に満たない）か又は以前に検出されたラベルが重複する如何なる仮定もスキップしながら、仮定に対して実行される。
【０１４９】
棚／ラベル検出モジュール２０５は、色及び幾何パラメータに基づき、選択されたラベル仮定をバリデートする。例えば、棚／ラベル検出モジュール２０５は、ラベル仮定について境界ボックスを生成し、境界ボックスの幅をモデルのラベル幅まで広げ、境界ボックス内のスーパーピクセルがモデルに適合するかどうかを判定し、スーパーピクセルがモデルに適合する場合に境界ボックスをラベルとして加えてよい。スーパーピクセルがラベルモデルに適合するかどうかを判定するよう、スーパーピクセルの平均色のヒストグラム（又はバッグ若しくはマルチセット）は、ラベルモデルを構築するために使用されたのと同様にして計算される。いずれかの標本が適合する場合に、スーパーピクセルはラベルモデルに適合する。例えば、標本は、仮定からのインデックスの組がモデル標本におけるインデックスの組と同じである場合にモデルに適合する。照合のためにヒストグラムを使用する代替の実施では、ヒストグラム比較計算は、適合を決定するために使用されてよい。
【０１５０】
一実施形態において、幾何パラメータに基づくバリデーションは、棚／ラベルの垂直位置に対するテキスト垂直位置を制限するパラメータを特定することを含む。例えば、ラベルモデルは、棚／ラベルの上部と値段の上部との間の期待されるマージンと、値段の下部と棚／ラベルの下部との間の期待されるマージンとを特定するパラメータを含んでよい。スケールと無関係であるよう、マージンパラメータは、値段テキストの高さに正規化される。一実施形態において、マージンは、実際のマージンが期待されるマージンのテキストの高さ内にある場合に適合する。例となる棚及びラベルについて、上側マージンは、テキストの高さであり、下側マージングはテキスト高さの２倍である。
【０１５１】
他の実施形態では、ラベル仮定をバリデートすることは、既存の公の及び／又は独自仕様のテキスト検出アルゴリズムを使用し、テキストが検出されなかった仮定を拒絶することを含む。他の実施形態では、ラベル仮定をバリデートすることは、既存の公の及び／又は独自仕様のテキスト認識（ＯＣＲ）アルゴリズムを使用し、テキストが認識されなかった仮定を拒絶することを含む。他の実施形態では、ラベル仮定をバリデートすることは、ラベルを認識するようトレーニングされた既存の公の及び／又は独自仕様のオブジェクト認識又は検出アルゴリズム（例えば、テンプレートがラベルから学習されるテンプレートマッチング）を使用し、オブジェクトが認識又は検出されなかった仮定を拒絶することを含む。
【０１５２】
幾つかの実施形態では、同じシーンの複数の重なり合った画像は、リアログラム解析アプリケーションによって受け取られ、リアログラム解析において使用されてよい。画像間の幾何学的関係は、既存の公の及び／又は独自仕様のスティッチング・アルゴリズムを用いて決定される。ラベル検出は複数の画像に対して実行される。ラベルの位置の仮定は、複数の重なり合った画像を結合するために使用されるスティッチング・アルゴリズムによって決定される座標系に変換される。一実施形態において、重なりを伴った画像領域におけるラベル仮定のバリデーションは、複数の画像における対応する位置においてラベル仮定が存在するかどうかを判定することを含む。
【０１５３】
幾つかの実施形態において、ラベル検出は、同じ画像内の異なった棚仮定に対して、あるいは、異なった重なり合った画像に対して、複数回実行される。最初の回の後、ラベル検出は、新たに推定される幅を計算することに代えて、前の回からで推定された幅（例えば、仮定のメジアン幅）を使用してよい。
【０１５４】
幾つかの実施形態において、複数の重なり合った画像にあるラベル位置について、夫々の画像内の夫々の重なり合ったラベル領域における画像品質が評価される。評価は、ラベルが検出されるサブ画像全体に対して、又はラベルが検出される場所を中心としたサブ画像に対してであってよい。一実施形態において、領域のコントラストは、高いコントラストは高い品質を示すものとして評価される。他の実施形態では、領域のシャープネスは、高いシャープネスは高い品質を示すものとして評価される。他の実施形態では、スペクトル反射は、低いスペクトル反射は高い品質を示すものとして評価される。夫々のラベル領域について、最も高い品質の領域は、更なる解析のために及び／又はユーザへの表示のために使用される。代替的に、十分に品質が高いと判断された全ての領域は、更なる解析のために使用される。例えば、ある領域について０．．２５５グレースケール値を考えると、最も暗いピクセルが１２８に満たない場合は、領域は十分な品質を備えると判断される。複数の重なり合った画像からの１つ以上の最も高い品質の領域の使用は、不拡散照明が１つの画像における特定のラベルに対してスペクトル反射を引き起こすが他の画像では引き起こさない場合に有利である。
【０１５５】
幾つかの実施形態では、ラベルが検出された後、ラベルからの情報（例えば、値段、ＵＣＰコード、製品名、等）が抽出される。情報は、ＯＣＲ、バーコード読み取りソフトウェア、又は他の同様の既存の公の及び／若しくは独自仕様のアルゴリズムを用いて抽出される。ラベル検出は、ラベルの要素（例えば、値段、バーコード、製品名、等）を見つけ、１つ以上の特定の要素を露出し、１つ以上の特定の要素における情報を抽出することを含んでよい。一実施形態において、情報は、クラウドソーシングを使用することを含め、人々によって抽出されてよい。
【０１５６】
図１７は、整理されたオブジェクトの画像において特定のオブジェクトの複数個の存在及び位置を決定するための方法６０６の一例のフロー図である。画像内の特定のオブジェクトの複数個（特に、オブジェクト認識モジュールによって認識されないオブジェクト）は、リアログラム解析アプリケーション１０３が、オブジェクト認識モジュールによって使用される画像検索データベースにおいてインデックスを付されていない製品を含む領域を決定し、様々なインデックス無し製品を区別することを助けるために使用され得る。１７０１で、マルチプルスモジュール２０９は、複数の整理されたオブジェクトの画像を受け取る。上述されたように、画像は、小売り棚又はディスプレイのリアログラム画像であってよい。
【０１５７】
１７０２で、マルチプルスモジュール２０９は、整理されたオブジェクトの画像から特徴を抽出する。様々な既知の特徴抽出アルゴリズムが、画像特徴を抽出するために用いられてよい。１７０４で、マルチプルスモジュール２０９は、画像内の一致する特徴点を見つける。例えば、マルチプルスモジュール２０９は、画像において特徴点を照合するために、ＦＬＡＮＮ、又はＫＤＤ−ツリーアルゴリズムを使用してよい。一実施形態において、マルチプルスモジュールは、ｋ＞２として、ｋ最近傍点アルゴリズムを用いて記述子ベクトルを照合する。一実施形態において、照合が２４個の良好な一致をもたらすように、ｋ＝２５である。
【０１５８】
一実施形態において、マルチプルスモジュール２０９は、良好な一致（複数の一致を可能にするもの）を選択する。図１８は、画像内の複数の一致する点についての記述子距離の棒グラフの例を表す。ここで使用される記述子距離は、２つの特徴点がどの程度類似しているのかを示すものであり、より小さい距離は、より類似した特徴を意味する。Ｄ１，Ｄ２，．．．，Ｄ８は、昇順での特定の特徴点と全ての特徴点との間の距離である。図１８の例では、棒グラフは、８つの最小距離しか表さないが、記述子距離は幾つでも解析において使用されてよいことが認識されるであろう。Ｄ１，Ｄ２，．．．，Ｄ８にわたる棒の高さは距離を表す。同じ画像において一致する場合に、特徴点は常に０距離によりそれ自身と一致するから、Ｄ１は常に０であり、無視される。Ｄ２は、それ自身との一致（Ｄ１）を無視する最小の距離（例えば、最良の一致）である。Ｄ２及びＤ４がＤ２に近く、Ｄ５はＤ２よりもずっと大きいから、良好な一致はＤ２、Ｄ３及びＤ４である（例えば、インデックスｊは２、３又は４である。）。Ｄ２に近いことは、閾値１／β×Ｄ２を用いて決定される。Ｄ２よりもずっと大きいことは、閾値１／α×Ｄ２を用いて決定される。それらの閾値について、０＜α＜β＜１。一実施形態において、αは０．６６７であり、βは０．８００である。１／β×Ｄ２と１／α×Ｄ２との間に距離がなく、少なくとも１つの距離は１／αかけるＤ２よりも大きい場合は、Ｄ２及び１／β×Ｄ２に満たない全ての他の距離は良好な一致に対応する。そうでない場合は、良好な一致は存在しない。
【０１５９】
１７０６で、マルチプルスモジュール２０９は、一致する特徴点を、点間の一致する距離及び角度によりクラスタ化する。一実施形態において、全てのクラスタは少なくとも閾数の対（例えば、１０）を含み、クラスタベクトル間の距離（例えば、Ｌ１又はＬ２距離）は閾値（例えば、２０又は３２）よりも小さい。幾つかの実施形態では、クラスタを見つけるために効率的な緻密な検索を実行することが有利である。一実施形態において、第１のクラスタリングステップは、点をギロチンカット（例えば、ベクトルのＸ又はＹ座標の１つに基づき点をクラスタに孤立的に分割することによって分けること）により少なくとも距離閾値だけ分けられているクラスタに分け、次いで、例えばｋ平均などの既存の公の又は独自仕様のクラスタリング方法を第１のステップからの各クラスタにおいて使用する第２のクラスタリングステップを使用する。一実施形態において、ｋ平均クラスタリングは、ｋの複数の値とともに使用され、２から始まって、閾値よりも大きい距離を持ったベクトルを有する前の使用によるクラスタの数だけ増大させ、全てのクラスタが対の閾数よりも小さいか又は閾値よりも小さい距離を持ったベクトルを有する場合（あるいは、クラスタの最大数（例えば、２００）又は繰り返しの最大数（例えば、２０）が達成される場合）に終わる。一実施形態において、ｋクラスタリングの後、クラスタは、結果として得られるクラスタが、距離閾値に満たないベクトル間距離を有する場合に、マージされる。
【０１６０】
特徴点対の結果として得られるクラスタは、リアログラム画像における類似したオブジェクト間の一致する点を表す。１７０８で、マルチプルスモジュール２０９は、クラスタ情報を用いてスーパーピクセルにラベルを付す。例えば、マルチプルスモジュール２０９は、クラスタにおける夫々の特徴点対について、特徴点を含むスーパーピクセルの対応する対を特定し、スーパーピクセル対についてのカウントをインクリメントする。少なくとも１つの対の部分である夫々のスーパーピクセルについて、マルチプルスモジュール２０９は、そのカウント及び一致が見つけられるスーパーピクセルの識別子を用いて、任意にクラスタベクトル及び特徴点を用いて、スーパーピクセルにラベルを付す。
【０１６１】
ラベルを付されたスーパーピクセルを用いて、マルチプルスモジュール２０９は、１７１０で、クラスタに基づき複数の同一オブジェクト、例えば、同様の寸法の同一オブジェクトの積み重ねを見つける。図１９Ａは、同じ高さのアイテムの積み重ねの例図を表す。一実施形態において、同じ高さのアイテムの積み重ねを見つけるよう、マルチプルスモジュール２０９は、一致間のメジアン垂直距離（図１９Ａの例ではｄとして示される。）を決定し、様々な一致の範囲及び距離に基づき積み重ねにおけるオブジェクトの最大数を見つけ、高さｄを用いて積み重ねにおけるオブジェクトのその数について座標を決定し、同じ製品の積み重ねの数（例えば、図１９Ａの例ではｄ１及びｄ２）を決定する。図１９Ｂは、リアログラム画像においてマルチプルスモジュールによって同じように特定されるインデックス無しオブジェクトの積み重ね（破線境界ボックスによって示される。）を識別する境界ボックス１９０４を重ね合わされたリアログラムの例の一部を表す。
【０１６２】
以下は、積み重ねを特定するための例となるアルゴリズムである：
【数６】
2016115348.tif 000008
【０１６３】
図２０は、棚の最前部及び製品から棚の背景を分割するために例えばＧｒａｂＣｕｔなどのセグメンテーションアルゴリズムを使用することによってリアログラム画像において棚の下の空きスペースを見つけるための方法６０８の一例のフロー図である。２００２で、空きスペースモジュール２０７は、例えば、棚の直ぐ下にある（更に、認識された製品の境界ボックスにない）最も暗いスーパーピクセルを選ぶことによって、棚の下の空きスペースを特定する。図２１Ａは、セグメンテーションアルゴリズムによってセグメント化された“品切れ”領域及び“他”領域を特定するリアログラムの例の一部を表す。２００４で、空きスペースモジュール２０７は、２００２で特定され且つオブジェクト認識モジュール２０１及び棚／ラベル検出モジュール２０５によって特定されたスーパーピクセルにより“品切れ”領域及び“他”領域に対してセグメンテーションアルゴリズムをシードする。例えば、図２１Ｂの例で表されるように、空きスペースモジュール２０７は、“品切れ”スーパーピクセルを有する棚の直ぐ下にある暗ピクセルと、“他”スーパーピクセルを有する棚の最前部及び認識されたオブジェクトの境界ボックスによって特定される領域とをシードする。図２２は、スーパーピクセルをシードされた“品切れ”領域及び“他”領域を特定するリアログラムの例の一部を表す。図２２の例では、ラベルを付されていないスーパーピクセルは分類されておらず、１によりラベルを付されたスーパーピクセルは“品切れ”領域であり、２によりラベルを付されたスーパーピクセルは特定の又は起こり得る“他”領域である。
【０１６４】
２００６で、空きスペースモジュールは、“品切れ”領域の特定を精緻化するよう、スーパーピクセルをシードされたリアログラム画像にわたって、例えばＧｒａｂＣｕｔなどの画像セグメンテーションアルゴリズムを繰り返す。ＧｒａｂＣｕｔは、既知及び起こり得るものとして分類されたスーパーピクセルから選択される色により前景及び背景ガウス混合モデルを生成する。未知のスーパーピクセルは、最初は無視される。ＧＭＭを用いる手、空きスペースモジュール２０７は、未知のスーパーピクセルをおそらく“品切れ”又は“他”であろうと分類する。加えて、空きスペースモジュール２０７は、幾つかの起こり得るスーパーピクセルを再分類する。新しいＧＭＭは、再割り当てされたスーパーピクセルに基づき計算され、スーパーピクセルは、新しいＧＭＭに基づき再び再分類される。空きスペースモジュール２０７は、満足のいく結果を達成するためにこの繰り返しを複数回反復してよい。一実施形態において、空きスペースモジュール２０７は、満足のいく結果を達成するために１０回の繰り返しを実行する。図２３Ａ及び２３Ｂは、夫々セグメンテーションアルゴリズムの１回の繰り返し及び１０回の繰り返しの後に品切れ領域及び多量域を示すスーパーピクセルを重ね合わされたリアログラムの例を表す。
【０１６５】
満足のいく結果が達成された後、空きスペースモジュール２０７は、オブジェクト認識結果、棚、及びセグメンテーションの繰り返し後に残っている“品切れ”領域を全体の領域から減じて、図２４の例で表されるような、潜在的な未知の製品について接続コンポーネントポリゴン２４０１を生成してよい。幾つかの実施形態では、空きスペースモジュール２０７は、ポリゴン２４０１を最小の既知の製品のサイズと比較し、最小の既知の製品よりも小さいものを除外することによって、未知の製品領域を精緻化してよい。
【０１６６】
リアログラムシーン解析のためのシステム及び方法が記載されてきた。前述の記載では、説明を目的として、多数の具体的詳細が、ここで紹介される技術の完全な理解を提供するために説明されている。しかし、当業者に明らかなように、そのような技術は、それらの具体的な詳細によらずとも実施され得る。他の事例では、構造及びデバイスは、記載を不明りょうにしないために且つ理解の簡単のためにブロック図形式で示されている。例えば、技術は、主としてソフトウェア及び特定のハードウェアを参照して先に一実施形態において記載されている。しかし、技術は、データ及びコマンドを受け取り、サービスを提供する如何なるペリフェラルデバイスの部分としても情報を提示することができる如何なるタイプのコンピューティングシステムによっても、実施されてよい。
【０１６７】
「一実施形態」又は「実施形態」との明細書中での言及は、その実施形態に関連して記載される特定の機能、構造、又は特性が本明細書の少なくとも１つの実施形態に含まれることを意味する。明細書中の様々な箇所における「一実施形態において」との言い回しの出現は、必ずしも全てが同じ実施形態に言及しているわけではない。
【０１６８】
上記の詳細な説明の幾つかの部分は、コンピュータメモリ内のデータビットに対する動作のアルゴリズム及び符号表現に関して与えられている。それらのアルゴリズム的な記述及び表現は、データ処理分野における当業者が自身の研究の内容を他の当業者に最も有効に伝えるために使用する手段である。アルゴリズムは、ここで、且つ、一般的に、所望の結果をもたらすセルフコンシステントな一連のステップであると考えられる。ステップは、物量の物理的な操作を要するものである。通常、必ずしもではないが、そのような量は、記憶され、伝送され、結合され、比較され、別なふうに操作されることが可能な電気的又は磁気的信号の形をとる。主として一般的な使用のために、それらの信号をビット、値、要素、シンボル、文字、項、数、又は同様のものと呼ぶことが都合がよい。
【０１６９】
なお、留意されるべき点は、それら及び同様の語の全ては、適切な物理量に関連すべきであり、そのような領域に適用される単に都合のよいラベルにすぎない点である。以下の議論から明らかなように別なふうに具体的に述べられない限りは、本明細書の全体を通して、例えば「処理する（processing）」又は「計算する（computing）」又は「計算する（calculating）」又は「決定する（determining）」又は「表示する（displaying）」又は同様のものなどの語を用いる議論は、コンピュータシステムのレジスタ及びメモリ内の物理（電気）量として表されるデータを操作して、コンピュータシステムメモリ若しくはレジスタ又は他のそのような情報記憶、伝送若しくは表示デバイス内の物理量として同様に表される他のデータへと変換するコンピュータシステム又は同様の電子コンピューティング装置の動作及びプロセスに言及する。
【０１７０】
本仕様はまた、ここでの動作を実行するための装置に関係がある。この装置は、必要とされる目的のために特別に構成されてよく、あるいは、それは、コンピュータに記憶されているコンピュータプログラムによって選択的に作動又は再設定される汎用のコンピュータを有してよい。かかるコンピュータプログラムは、例えば、制限なしに、フロッピー（登録商標）ディスク、光ディスク、ＣＤ−ＲＯＭ、及び磁気ディスクを含むあらゆるタイプのディスク、読出専用メモリ（ＲＯＭ；Read-Only  Memory）、ランダムアクセスメモリ（ＲＡＭ；Random  Access  Memory）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気又は光学式カード、不揮発性メモリを備えたＵＳＢキーを含むフラッシュメモリ、あるいは、電子命令を記憶するのに適したあらゆるタイプの媒体等であって、コンピュータシステムバスへ夫々結合されているコンピュータ可読記憶媒体において記憶されてよい。
【０１７１】
本明細書は、全体としてハードウェアの実施形態、全体としてソフトウェアの実施形態、又はハードウェア及びソフトウェアの両方の要素を含む実施形態の形をとることができる。一実施形態において、本明細書は、ソフトウェアにおいて実装され、ファームウェア、常駐ソフトウェア、マイクロコード、等を含むがそれらに限られない。
【０１７２】
更に、本明細書は、コンピュータ又は何らかの命令実行システムによる使用のために又はそれに関連してプログラムコードを提供するコンピュータ使用可能な又はコンピュータ読出可能な媒体からアクセス可能なコンピュータプログラム製品の形をとることができる。本明細書のために、コンピュータ使用可能な又はコンピュータ読出可能な媒体は、命令実行システム、装置、又はデバイスによる使用のために又はそれに関連してプログラムを含み、記憶し、通信し、伝搬し、又は伝送することができる如何なる装置であることもできる。
【０１７３】
プログラムコードを記憶及び／又は実行するのに適したデータプロセッシングシステムは、直接に又はシステムバスを通じて間接的にメモリ素子へ結合された少なくとも１つのプロセッサを含む。メモリ素子は、プログラムの実際の実行の間に用いられる局所メモリと、バルクストレージと、コードが実行中にバルクストレージから取り出されるべき回数を減らすために少なくとも一部のプログラムコードの一時記憶を提供するキャッシュメモリとを含むことができる。
【０１７４】
入出力（Ｉ／Ｏ；Input/Output）デバイス（キーボード、ディスプレイ、ポインティングデバイス、等を含むがそれらに限られない。）は、直接に又は介在するＩ／Ｏコントローラを通じてシステムへ結合され得る。
【０１７５】
ネットワークアダプタもシステムへ結合されてよく、データプロセッシングシステムが介在するプライベート又はパブリックネットワークを通じて他のデータプロセッシングシステム又は遠隔のプリンタ若しくは記憶デバイスへ結合されるようになることを可能にする。モデム、ケーブルモデム及びＥｔｈｅｒｎｅｔ（登録商標）は、ほんの一握りの現在利用可能なタイプのネットワークアダプタである。
【０１７６】
最後に、ここで与えられているアルゴリズム及び表示は、如何なる特定のコンピュータ又は他の装置とも本質的に関係がない。様々な汎用のシステムが、ここでの教示に従うプログラムとともに使用されてよく、あるいは、必要とされる方法ステップを実行するためにより特殊化された装置を構成することが都合がよいことがある。様々なそれらのシステムのための必要とされる構造は、以下の記載から明らかであろう。加えて、本明細書は、如何なる特定のプログラミング言語も参照して記載されない。明らかなように、様々なプログラミング言語が、ここで記載される明細書の教示を実施するために使用されてよい。
【０１７７】
実施形態の前述の記載は、例示及び説明のために与えられている。それは、包括的であったり、あるいは、開示されている厳密な形態に技術を制限したりするよう意図されない。多くの変更及び変形が上記の教示に照らして可能である。実施形態の適用範囲は、この詳細な説明によってではなく、むしろ本願の特許請求の範囲によって制限されるよう意図される。当業者によって理解されるであろうように、ここで記載される例は、その主旨又は必須の特徴から外れることなしに、他の具体的な形態において具現されてよい。同様に、モジュール、ルーチン、機能、属性、メソッドロジ及び他の態様の特定のネーミング及び分割は、強制的又は重要でなく、技術又は特徴を実装するメカニズムは、異なった名称、分割及び／又はフォーマットを有してよい。更に、当業者に明らかなように、モジュール、ルーチン、機能、属性、メソッドロジ、及び技術の他の態様は、ソフトウェア、ハードウェア、ファームウェア、又はそれらのあらゆる組み合わせとして実施されてよい。また、どこでコンポーネント（その例はモジュールである。）がソフトウェアとして実装されようとも、コンポーネントは、コンピュータプログラミングの分野における当業者に知られる、スタンドアローンのプログラムとして、より大きいプログラムの部分として、複数の別個のプログラムとして、静的若しくは動的にリンクされたライブラリとして、カーネル・ローダブル・モジュールとして、デバイスドライバとして実装され得る。加えて、技術は、如何なる具体的なプログラミング言語における実施形態にも、又は如何なる具体的なオペレーティングシステム若しくは環境についての実施形態にも決して制限されない。然るに、本明細書は、添付の特許請求の範囲の適用範囲を制限なしに例証するよう意図される。
【０１７８】
［関連出願の相互参照］
本願は、２０１４年１２月１０日付けで、「Superpixel  Based  Realogram  Scene  Analysis」と題されて出願された米国特許仮出願第６２／０９０１７７号に基づく優先権を主張するものである。なお、優先権の基礎となる米国出願は、その全文を参照により本願に援用される。
【符号の説明】
【０１７９】
１００  システム
１０１  リアログラム解析サーバ
１０３  リアログラム解析アプリケーション
１０５  ネットワーク
１１５  イメージングデバイス
１４３，２４３  データストレージ
２００  リアログラム解析システム
２０１  オブジェクト認識モジュール
２０３  セグメンテーションモジュール
２０５  棚／ラベル検出モジュール
２０７  空きスペースモジュール
２０９  マルチプルスモジュール
２３５  プロセッサ
２３７  メモリ
８０２  スーパーピクセル
【図１】
2016115348.tif 000009
【図２】
2016115348.tif 000010
【図３】
2016115348.tif 000011
【図５Ａ】
2016115348.tif 000012
【図５Ｂ】
2016115348.tif 000013
【図６】
2016115348.tif 000014
【図７Ａ】
2016115348.tif 000015
【図７Ｂ】
2016115348.tif 000016
【図９】
2016115348.tif 000017
【図１０】
2016115348.tif 000018
【図１１】
2016115348.tif 000019
【図１２Ａ】
2016115348.tif 000020
【図１３】
2016115348.tif 000021
【図１５】
2016115348.tif 000022
【図１６】
2016115348.tif 000023
【図１７】
2016115348.tif 000024
【図１８】
2016115348.tif 000025
【図１９Ａ】
2016115348.tif 000026
【図１９Ｂ】
2016115348.tif 000027
【図２０】
2016115348.tif 000028
【図２１Ａ】
2016115348.tif 000029
【図２１Ｂ】
2016115348.tif 000030
【図２２】
2016115348.tif 000031
【図２３Ａ】
2016115348.tif 000032
【図２３Ｂ】
2016115348.tif 000033
【図２４】
2016115348.tif 000034
【図２５】
2016115348.tif 000035
【図２６】
2016115348.tif 000036
【図４】
2016115348.tif 000037
【図８】
2016115348.tif 000038
【図１２Ｂ】
2016115348.tif 000039
【図１４Ａ】
2016115348.tif 000040
【図１４Ｂ】
2016115348.tif 000041