(57)【特許請求の範囲】
【請求項１】
特定領域における荷重分布を計測する荷重センサから、複数種の物品群と該物品群を種別毎に区分するためのセパレータとが前記特定領域に載置された状態での荷重分布の計測データを取得し、
取得した計測データに基づき、前記セパレータにより分割される分割領域内に載置された物品群の総重量を導出し、
前記物品群を撮像して得られる画像データを取得し、
取得した画像データに基づき、前記物品群に含まれる物品の種別を特定し、
前記物品群の総重量と、前記物品の１個あたりの重量とに基づき、前記分割領域内に載置された物品の数を算出する
物品数のカウント方法。
【請求項２】
物品群を撮像して得られる画像データが入力された場合、前記物品群に含まれる物品の種別に関するデータを出力するよう訓練された種別特定用の学習モデルを用いて、前記分割領域に載置された物品群に含まれる物品を特定する
請求項１に記載のカウント方法。
【請求項３】
前記特定領域における前記セパレータの位置を検出し、
前記位置の検出結果に基づき、前記セパレータにより分割される分割領域を特定する
請求項１又は請求項２に記載のカウント方法。
【請求項４】
前記荷重センサからの計測データが入力された場合、前記特定領域内の前記セパレータの位置に関するデータを出力するよう訓練された位置検出用の学習モデルを用いて、前記セパレータの位置を検出する
請求項３に記載のカウント方法。
【請求項５】
前記分割領域内における前記荷重センサの計測値を積算して前記総重量を導出する
請求項１から請求項４の何れか１つに記載のカウント方法。
【請求項６】
コンピュータに、
特定領域における荷重分布を計測する荷重センサから、複数種の物品群と該物品群を種別毎に区分するためのセパレータとが前記特定領域に載置された状態での荷重分布の計測データを取得し、
取得した計測データに基づき、前記セパレータにより分割される分割領域内に載置された物品群の総重量を導出し、
前記物品群を撮像して得られる画像データを取得し、
取得した画像データに基づき、前記物品群に含まれる物品の種別を特定し、
前記物品群の総重量と、前記物品の１個あたりの重量とに基づき、前記分割領域内に載置された物品の数を算出する
処理を実行させるためのコンピュータプログラム。
【請求項７】
特定領域における荷重分布を計測する荷重センサ、
前記特定領域に載置された物品群を撮像する撮像装置、及び
前記荷重センサから出力される計測データと、前記撮像装置から出力される画像データとに基づき、前記物品群に含まれる物品の数を特定する演算装置
を備え、
前記演算装置は、
複数種の物品群と該物品群を種別毎に区分するためのセパレータとが前記特定領域に載置された状態での荷重分布の計測データを前記荷重センサから取得し、
取得した計測データに基づき、前記セパレータにより分割される分割領域内に載置された物品群の総重量を導出し、
前記撮像装置からの画像データに基づき、前記物品群に含まれる物品の種別を特定し、
前記物品群の総重量と、前記物品の１個あたりの重量とに基づき、前記分割領域内に載置された物品の数を算出する
物品数のカウントシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カウント方法、コンピュータプログラム、及びカウントシステムに関する。
【背景技術】
【０００２】
従来、食品や生活用品などを販売する店舗では、棚に配置された物品の情報を管理する際に、非接触データキャリア（ＲＦＩＤ：Radio Frequency Identification）を利用した管理システムが採用されている（例えば、特許文献１を参照）。
【０００３】
このようなＲＦＩＤを使用した管理システムは、物品に付されたＲＦＩＤを読み取ることにより、賞味期限や産地、在庫数等の物品情報を取得することができるシステムである。そのため、物品情報を管理する際の作業効率を上げることができるという点で効果的である。また、ＲＦＩＤを使用した管理システムは、物品に接触しない状態でＲＦＩＤから物品情報を読み取ることができるため、物品の信頼性や安全性の観点からも有効である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２６９７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ＲＦＩＤを使用した管理システムの場合、物品に付されたＲＦＩＤを読み取ることにより初めて物品情報が取得できるため、各物品にＲＦＩＤタグを添付するという作業が必要となる。また、物品情報を管理する際には、読取端末を用いて、各物品に添付されたＲＦＩＤタグを１つずつ読み取る作業が発生する。このように、ＲＦＩＤを使用した管理システムであっても、多くの時間と手間を要してしまうという問題点を有する。
【０００６】
本発明は、物品を種別毎にカウントすることができるカウント方法、コンピュータプログラム、及びカウントシステムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様に係るカウント方法は、特定領域における荷重分布を計測する荷重センサから、複数種の物品群と該物品群を種別毎に区分するためのセパレータとが前記特定領域に載置された状態での荷重分布の計測データを取得し、取得した計測データに基づき、前記セパレータにより分割される分割領域内に載置された物品群の総重量を導出し、前記物品群を撮像して得られる画像データを取得し、取得した画像データに基づき、前記物品群に含まれる物品の種別を特定し、前記物品群の総重量と、前記物品の１個あたりの重量とに基づき、前記分割領域内に載置された物品の数を算出する。
【０００８】
本発明の一態様に係るコンピュータプログラムは、コンピュータに、特定領域における荷重分布を計測する荷重センサから、複数種の物品群と該物品群を種別毎に区分するためのセパレータとが前記特定領域に載置された状態での荷重分布の計測データを取得し、取得した計測データに基づき、前記セパレータにより分割される分割領域内に載置された物品群の総重量を導出し、前記物品群を撮像して得られる画像データを取得し、取得した画像データに基づき、前記物品群に含まれる物品の種別を特定し、前記物品群の総重量と、前記物品の１個あたりの重量とに基づき、前記分割領域内に載置された物品の数を算出する処理を実行させるためのコンピュータプログラムである。
【０００９】
本発明の一態様に係るカウントシステムは、特定領域における荷重分布を計測する荷重センサ、前記特定領域に載置された物品群を撮像する撮像装置、及び前記荷重センサから出力される計測データと、前記撮像装置から出力される画像データとに基づき、前記物品群に含まれる物品の数を特定する演算装置を備え、前記演算装置は、複数種の物品群と該物品群を種別毎に区分するためのセパレータとが前記特定領域に載置された状態での荷重分布の計測データを前記荷重センサから取得し、取得した計測データに基づき、前記セパレータにより分割される分割領域内に載置された物品群の総重量を導出し、前記撮像装置からの画像データに基づき、前記物品群に含まれる物品の種別を特定し、前記物品群の総重量と、前記物品の１個あたりの重量とに基づき、前記分割領域内に載置された物品の数を算出する。
【発明の効果】
【００１０】
本願によれば、物品を種別毎にカウントすることができる。
【図面の簡単な説明】
【００１１】
【図１】本実施の形態に係るカウントシステムの構成を説明する模式図である。
【図２】演算装置の内部構成を示すブロック図である。
【図３】重量テーブルの一例を示す概念図である。
【図４】学習モデルの構成例を示す模式図である。
【図５】荷重センサから得られる荷重分布データの一例を示す概念図である。
【図６】学習モデルの構成例を示す模式図である。
【図７】学習モデルの生成手順を説明するフローチャートである。
【図８】物品数のカウント手順を説明するフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
図１は本実施の形態に係るカウントシステムの構成を説明する模式図である。本実施の形態に係るカウントシステムは、物品棚Ｓに載置された物品の数を種別毎にカウントするためのシステムであり、物品棚Ｓの棚板Ｓ１，Ｓ２に設置される荷重センサ１３０、物品棚Ｓに載置された物品群を撮像する撮像装置１４０、および、荷重センサ１３０及び撮像装置１４０から得られるデータに基づき各種演算を行い、物品群に含まれる物品の数を種別毎に算出する演算装置１０を備える。図１において、符号Ｏ１〜Ｏ４を付して示す物品は、それぞれ種類が異なる物品であることを示している。
【００１３】
物品棚Ｓは、例えば各種商品の陳列のために店舗に設置される商品棚である。物品棚Ｓは、支柱によって水平に支持される複数の棚板Ｓ１，Ｓ２を備える。本実施の形態では、物品棚Ｓが２つの棚板Ｓ１，Ｓ２を備える構成としたが、３つ以上の棚板を備える構成であってもよい。また、図１に示す物品棚Ｓは、前面、背面、及び側面を開放してあるが、背面及び側面の少なくとも１つが閉塞された棚であってもよい。
【００１４】
物品棚Ｓに載置される物品Ｏ１〜Ｏ４は任意であるが、種別毎に決まった重量を有しているものとする。なお、物品Ｏ１〜Ｏ４の重量は種別毎に異なっていてもよく、種別に依らず同一であってもよい。図１では、４種類の物品Ｏ１〜Ｏ４が物品棚Ｓに載置された状態を示しているが、物品棚Ｓに載置される物品の種類は、３種類以下であってもよく、５種類以上であってもよい。
【００１５】
荷重センサ１３０は、シート状の感圧センサであり、荷重分布の計測データ（荷重分布データ）を出力する。荷重センサ１３０は、例えば矩形状の計測領域（特定領域）を有しており、計測領域内に格子状に配置された複数の感圧素子を備える。荷重センサ１３０は、各感圧素子が配置された位置における計測値（圧力値）を荷重分布データとして出力する。すなわち、荷重分布データは、計測領域内の位置の情報と、各感圧素子によって計測された計測値とにより構成される行列データを示す。代替的に、荷重分布データは、各感圧素子において計測された計測値の大きさを濃淡（又は色）により表した表示用のデータであってもよい。
【００１６】
荷重センサ１３０の計測領域内には、物品Ｏ１〜Ｏ４と共に、物品Ｏ１〜Ｏ４を種別毎に区分するためのセパレータＳＰが載置される。換言すれば、荷重センサ１３０の計測領域は、セパレータＳＰによって複数の分割領域に分割され、各分割領域内に物品Ｏ１〜Ｏ４が種別毎に載置される。セパレータＳＰの素材、重量、及び形状は任意に設計することが可能である。セパレータＳＰは、荷重センサ１３０の計測領域内の適宜の場所に載置されるものであり、決まった場所に固定されている必要はない。また、荷重センサ１３０の計測領域内に載置されるセパレータＳＰの数は１つである必要はなく、２つ以上であってもよい。
【００１７】
図１の例では、上段の棚板Ｓ１に設置された荷重センサ１３０の計測領域は、１つのセパレータＳＰによって、２つの分割領域Ｒ１，Ｒ２に分割されている。この２つの分割領域Ｒ１，Ｒ２のうち、正面から向かって左側の分割領域Ｒ１には物品Ｏ１が載置され、右側の分割領域Ｒ２には複数の物品Ｏ２が載置されている。同様に、下段の棚板Ｓ２に設置された荷重センサ１３０の計測領域は、１つのセパレータＳＰによって、２つの分割領域Ｒ３，Ｒ４に分割されている。この２つの分割領域Ｒ３，Ｒ４のうち、正面から向かって左側の分割領域Ｒ３には物品Ｏ３が載置され、右側の分割領域Ｒ４には物品Ｏ４が載置されている。このように、各分割領域Ｒ１〜Ｒ４には物品Ｏ１〜Ｏ４が種別毎に載置され、複数種の物品が混在して載置されないものとする。
【００１８】
撮像装置１４０は、デジタルカメラ又はデジタルビデオカメラであり、物品Ｏ１〜Ｏ４を撮像して得られる画像データを出力する。撮像装置１４０は、物品Ｏ１〜Ｏ４の種別を特定できるような場所に設置される。例えば、物品棚Ｓに向かい側に別の物品棚（不図示）が設置されている場合、撮像装置１４０は物品棚Ｓと向かい合った別の棚に設置されてもよい。
【００１９】
演算装置１０は、専用又は汎用のコンピュータであり、荷重センサ１３０から出力される荷重分布データ、及び撮像装置１４０から出力される画像データが入力される。演算装置１０は、入力された荷重分布データ及び画像データに基づき演算処理を実行し、物品Ｏ１〜Ｏ４の数を種別毎に算出する。
【００２０】
図２は演算装置１０の内部構成を示すブロック図である。演算装置１０は、演算部１１、記憶部１２、第１接続部１３、第２接続部１４、通信部１５、操作部１６、及び表示部１７を備える。
【００２１】
演算部１１は、例えば、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などを備える。演算部１１が備えるＲＯＭには、演算装置１０が備えるハードウェア各部の動作を制御する制御プログラム等が記憶される。演算部１１内のＣＰＵは、ＲＯＭに記憶された制御プログラムや後述する記憶部１２に記憶された各種コンピュータプログラムを実行し、ハードウェア各部の動作を制御することによって、荷重センサ１３０及び撮像装置１４０から得られるデータに基づき演算処理を実行し、物品棚Ｓに載置された物品Ｏ１〜Ｏ４の数を種別毎に算出する機能を実現する。演算部１１が備えるＲＡＭには、演算の実行中に利用されるデータが一時的に記憶される。
【００２２】
演算部１１は、ＣＰＵ、ＲＯＭ、及びＲＡＭを備える構成とした。代替的に、演算部１１は、ＧＰＵ（Graphics Processing Unit）、ＦＰＧＡ（Field Programmable Gate Array）、ＤＳＰ（Digital Signal Processor）、量子プロセッサ、揮発性又は不揮発性のメモリ等を備える１又は複数の演算回路であってもよい。また、演算部１１は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【００２３】
記憶部１２は、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）、ＥＥＰＲＯＭ（Electronically Erasable Programmable Read Only Memory）などの記憶装置を備える。記憶部１２には、演算部１１によって実行されるコンピュータプログラムや各種のデータが記憶される。
【００２４】
記憶部１２に記憶されるコンピュータプログラムは、荷重センサ１３０及び撮像装置１４０から得られるデータに基づき、物品棚Ｓに載置された物品Ｏ１〜Ｏ４の数を種別毎に算出する処理を演算装置１０に実行させるための演算処理プログラム２００を含む。
【００２５】
記憶部１２に記憶されるコンピュータプログラムは、このコンピュータプログラムを読み取り可能に記録した非一時的な記録媒体Ｍにより提供されてもよい。記録媒体Ｍは、例えば、ＣＤ−ＲＯＭ、ＵＳＢメモリ、ＳＤ（Secure Digital）カード、マイクロＳＤカード、コンパクトフラッシュ（登録商標）などの可搬型メモリである。記録媒体Ｍに記録されたコンピュータプログラムは、図に示していない読取装置によって読み取られ、記憶部１２に記憶される。
【００２６】
記憶部１２に記憶されるデータは、各物品の種別と各物品の１個あたりの重量とを関連付けて記憶した重量テーブル２０１を含む。図３は重量テーブル２０１の一例を示す概念図である。重量テーブル２０１では、各物品の種別と、各物品の１個あたりの重量を関連付けて記憶する。図３に例示した重量テーブル２０１は、種別Ａ，Ｂ，Ｃ，Ｄ，…，Ｘの物品の１個あたりの重量がそれぞれＷａグラム，Ｗｂグラム，Ｗｃグラム，Ｗｄグラム，…，Ｗｘグラムであることを示している。このようなテーブルは、物品の種別の情報と、物品の１個あたりの重量とを例えば操作部１６を通じて受付けることにより生成される。物品の種別が特定された場合、演算部１１は、重量テーブル２０１を参照することにより、その物品の１個あたりの重量を把握することができる。
【００２７】
また、記憶部１２には、物品Ｏ１〜Ｏ４の種別を特定する処理に用いられる学習モデル２１０が記憶されてもよい。学習モデル２１０は、撮像装置１４０から得られる画像データの入力に対して、物品Ｏ１〜Ｏ４の種別に関するデータを出力するように構成される。学習モデル２１０の構成は、その定義情報によって定義される。定義情報は、学習モデル２１０の構成（層の数やノードの数など）を定義する構成情報、学習モデル２１０を用いた演算において参照されるノード間の重みやバイアスなどの各種パラメータを含む。
【００２８】
また、記憶部１２には、荷重センサ１３０上のセパレータＳＰの位置を検出する処理に用いられる学習モデル２２０が記憶されてもよい。学習モデル２２０は、荷重センサ１３０から得られる荷重分布データの入力に対して、セパレータＳＰの位置に関するデータを出力するように構成される。学習モデル２２０の構成は、その定義情報によって定義される。定義情報は、学習モデル２２０の構成（層の数やノードの数など）を定義する構成情報、学習モデル２２０を用いた演算において参照されるノード間の重みやバイアスなどの各種パラメータを含む。
【００２９】
学習モデル２１０，２２０は、演算装置１０によって生成されてもよい。また、学習モデル２１０，２２０は、外部のサーバ装置（不図示）によって生成されてもよい。後者の場合、演算装置１０は、外部のサーバ装置と通信し、通信により学習モデル２１０，２２０をダウンロードすればよい。また、学習モデル２１０，２２０は、各種コンピュータプログラムと同様に、記録媒体Ｍにより提供されてもよい。
【００３０】
第１接続部１３は、荷重センサ１３０を接続する接続インタフェースを備える。荷重センサ１３０は、シート状の感圧センサであり、計測領域内で計測した荷重分布のデータ（荷重分布データ）を出力する。荷重分布データは、荷重センサ１３０が備える各感圧素子の位置に対応して計測される計測値の情報が含まれる。第１接続部１３には、物品Ｏ１〜Ｏ４及びセパレータＳＰが荷重センサ１３０の計測領域内に載置された状態での荷重分布データが入力される。入力された荷重分布データは、演算部１１を介して、記憶部１２に記憶されてもよい。
【００３１】
第２接続部１４は、撮像装置１４０を接続する接続インタフェースを備える。撮像装置１４０は、デジタルカメラ又はデジタルビデオカメラであり、撮像対象物を撮像して得られる画像データを出力する。画像データは、例えば各画素がＲＧＢの階調値により表現される。第２接続部１４には、物品棚Ｓに載置された物品Ｏ１〜Ｏ４を撮像して得られる画像データが入力される。入力された画像データは、演算部１１を介して、記憶部１２に記憶されてもよい。
【００３２】
通信部１５は、各種データを送受信する通信インタフェースを備える。通信部１５が備える通信インタフェースは、例えば、ＷｉＦｉ（登録商標）やイーサネット（登録商標）で用いられるＬＡＮ（Local Area Network）の通信規格に準じた通信インタフェースである。通信部１５は、送信すべきデータが演算部１１から入力された場合、指定された宛先へ送信すべきデータを送信する。また、通信部１５は、外部装置から送信されたデータを受信した場合、受信したデータを演算部１１へ出力する。
【００３３】
操作部１６は、各種操作ボタン、スイッチ、タッチパネル等の入力インタフェースを備えており、各種の操作情報及び設定情報を受付ける。演算部１１は、操作部１６から入力される操作情報に基づき適宜の演算を行い、必要に応じて演算結果を記憶部１２に記憶させる。
【００３４】
表示部１７は、液晶パネル又は有機ＥＬ（Electro-Luminescence）パネル等の表示装パネルを備えており、管理者等に報知すべき情報を表示する。このとき、演算部１１において管理者等に報知すべき情報を含む表示データが生成され、生成された表示データが表示部１７へ出力されることによって、各種情報が表示される。
【００３５】
なお、本実施の形態では、演算装置１０が操作部１６及び表示部１７を備える構成としたが、操作部１６及び表示部１７は必須の構成ではなく、演算装置１０の外部に接続されたコンピュータを通じて操作を受付け、管理者等に報知すべき情報を外部のコンピュータへ出力する構成としてもよい。
【００３６】
演算装置１０は、学習モデル２１０を用いて、物品棚Ｓに載置された物品の種別を特定する。以下、物品の種別を特定する際に用いられる学習モデル２１０について説明する。
【００３７】
図４は学習モデル２１０の構成例を示す模式図である。学習モデル２１０は、例えば、ＣＮＮ（Convolutional Neural Networks）による学習モデルであり、入力層２１１、中間層２１２、及び、出力層２１３を備える。学習モデル２１０は、撮像装置１４０によって撮像された画像（撮像画像）が入力された場合、物品の種別に関するデータを出力するように予め学習される。
【００３８】
入力層２１１には、撮像装置１４０によって撮像された撮像画像が入力される。入力層２１１に入力された撮像画像は、中間層２１２へ送出される。
【００３９】
中間層２１２は、例えば、畳み込み層２１２ａ、プーリング層２１２ｂ、及び全結合層２１２ｃにより構成される。畳み込み層２１２ａ及びプーリング層２１２ｂは交互に複数設けられてもよい。畳み込み層２１２ａ及びプーリング層２１２ｂは、各層のノードを用いた演算によって、入力層２１１を通じて入力される撮像画像の特徴を抽出する。全結合層２１２ｃは、畳み込み層２１２ａ及びプーリング層２１２ｂによって特徴部分が抽出されたデータを１つのノードに結合し、活性化関数によって変換された特徴変数を出力する。特徴変数は、全結合層２１２ｃを通じて出力層２１３へ出力される。
【００４０】
出力層２１３は、１つ又は複数のノードを備える。出力層２１３は、中間層２１２の全結合層２１２ｃから入力される特徴変数を基に、ソフトマックス関数を用いて確率に変換し、撮像画像内に含まれる物品がどの種別に該当するかを示す確率を各ノードから出力する。
【００４１】
例えば、出力層２１３を第１ノードから第ｎノードまでのｎ個（ｎは１以上の整数）のノードにより構成し、第１ノードから、分割領域Ｒ１〜Ｒ４に載置された物品の種別がそれぞれ「種別Ａ」、「種別Ｂ」、「種別Ｃ」、「種別Ｄ」である確率Ｐ１を出力し、第２ノードから、分割領域Ｒ１〜Ｒ４に載置された物品の種別がそれぞれ「種別Ｂ」、「種別Ｃ」、「種別Ｄ」、「種別Ａ」である確率Ｐ２を出力し、…、第ｎノードから、分割領域Ｒ１〜Ｒ４に載置された物品の種別がそれぞれ「種別Ｘ」、「種別Ｘ」、「種別Ｘ」、「種別Ｘ」である確率Ｐｎを出力してもよい。なお、出力層２１３を構成するノードの数や各ノードに割り当てる演算結果は、上述の例に限定されるものではなく、適宜設計することが可能である。
【００４２】
演算装置１０の演算部１１は、学習モデル２１０から得られる演算結果を参照し、例えば確率が最も高い種別の組み合わせを選択することにより、各領域に載置された物品の種別を特定することが可能である。
【００４３】
本実施の形態では、撮像装置１４０から得られる撮像画像を学習モデル２１０の入力層２１１に入力する構成としたが、事前に加工を施した撮像画像を学習モデル２１０の入力層２１１に入力する構成としてもよい。例えば、演算部１１は、物品数のカウント対象となる領域に載置された物品のみを含むように撮像画像の他の領域にマスク処理を施し、マスク処理を施した撮像画像を学習モデル２１０の入力層２１１に入力してもよい。この場合、学習モデル２１０は、１種類の物品の種別に関するデータを出力するように学習されるとよい。
【００４４】
なお、図３の例ではＣＮＮによる学習モデル２１０を示したが、学習モデル２１０を構築する機械学習のモデルは任意に設定することができる。例えば、ＣＮＮに代えて、Ｒ−ＣＮＮ（Region-based CNN）、ＹＯＬＯ（You Only Look Once）、ＳＳＤ（Single Shot Detector）等に基づく学習モデルを設定してもよい。
【００４５】
演算装置１０は、荷重センサ１３０より取得した荷重分布データを学習モデル２２０に入力し、学習モデル２２０から演算結果を取得することによって、荷重センサ１３０の計測領域内に置かれたセパレータＳＰの位置を検出する。以下、荷重センサ１３０から得られる荷重分布データについて説明した後、学習モデル２２０の構成について説明する。
【００４６】
図５は荷重センサ１３０から得られる荷重分布データの一例を示す概念図である。荷重センサ１３０は、格子状に配置された複数の感圧素子を備え、各感圧素子の位置に対応した計測値（圧力値）を出力する。荷重センサ１３０が横方向（例えば棚板Ｓ１の幅方向）にｍ個、縦方向（例えば棚板Ｓ１の奥行き方向）にｎ個の感圧素子を備える場合、感圧素子の位置は（Ｘ１，Ｙ１），（Ｘ２，Ｙ１），…，（Ｘｍ，Ｙ１），（Ｘ１，Ｙ２，）…，（Ｘｍ，Ｙｎ）のように位置座標によって表される。ここで、ｍ，ｎは１以上の整数である。荷重センサ１３０は、各位置座標に対応して計測値（圧力値）を出力する。図５の例では、圧力値が低い（重量が軽い）領域を濃淡が薄い領域により示し、圧力値が高い（重量が重い）領域を濃淡が濃い領域により示している。
【００４７】
計測領域内にセパレータＳＰが置かれている場合、荷重センサ１３０は、セパレータＳＰの重量に応じた計測値（濃淡）を出力する。図５の例は、計測領域の中央付近において縦方向にセパレータＳＰが置かれている様子を示している。このセパレータＳＰにより分割される分割領域の一方を分割領域Ｒ１とし、他方を分割領域Ｒ２とする。分割領域Ｒ１，Ｒ２に何らかの物品が置かれている場合、荷重センサ１３０は、物品の重量に応じた計測値（濃淡）を出力する。図５の例は、セパレータＳＰより左側の分割領域Ｒ１に複数個の物品Ｏ１が載置され、セパレータＳＰより右側の分割領域Ｒ２に複数個の物品Ｏ２が載置された状態を示している。ただし、図５の例では、説明のために物品Ｏ１及び物品Ｏ２の符号を明示したが、荷重センサ１３０の計測値のみから物品の種別を特定できるものではない。物品の種別及び個数は、後述する演算装置１０の処理によって特定されることになる。
【００４８】
図６は学習モデル２２０の構成例を示す模式図である。学習モデル２２０は、例えば、ＣＮＮによる学習モデルであり、入力層２２１、中間層２２２、及び、出力層２２３を備える。学習モデル２１０は、荷重センサ１３０によって計測された荷重分布データが入力された場合、セパレータＳＰの位置に関するデータを出力するように予め学習される。
【００４９】
入力層２２１には、荷重センサ１３０によって計測された荷重分布データが入力される。入力層２２１に入力された荷重分布データは、中間層２２２へ送出される。
【００５０】
中間層２２２は、例えば、畳み込み層２２２ａ、プーリング層２２２ｂ、及び全結合層２２２ｃにより構成される。畳み込み層２２２ａ及びプーリング層２２２ｂは交互に複数設けられてもよい。畳み込み層２２２ａ及びプーリング層２２２ｂは、各層のノードを用いた演算によって、入力層２２１を通じて入力される荷重分布データの特徴を抽出する。全結合層２２２ｃは、畳み込み層２２２ａ及びプーリング層２２２ｂによって特徴部分が抽出されたデータを１つのノードに結合し、活性化関数によって変換された特徴変数を出力する。特徴変数は、全結合層２２２ｃを通じて出力層２２３へ出力される。
【００５１】
出力層２２３は、１つ又は複数のノードを備える。出力層２２３は、中間層２２２の全結合層２２２ｃから入力される特徴変数を基に、ソフトマックス関数を用いて確率に変換し、セパレータＳＰの位置に関するデータを各ノードから出力する。例えば、荷重センサ１３０が横方向にｍ個、縦方向にｎ個の感圧素子を備える場合、出力層２２３の各ノードは、各感圧素子の位置座標（Ｘ１，Ｙ１），（Ｘ２，Ｙ１），…，（Ｘｉ，Ｙｊ），…，（Ｘｍ，Ｙｎ）に対応して、セパレータＳＰに該当する確率を出力すればよい。例えば、出力層２２３を第１ノードから第ｎ×ｍノードまでのｎ×ｍ個（ｎ，ｍは１以上の整数）のノードにより構成し、第１ノードからは、位置座標（Ｘ１，Ｙ１）に対応する位置がセパレータＳＰに該当する確率Ｐ11を出力し、第２ノードからは、位置座標（Ｘ１，Ｙ１）に対応する位置がセパレータＳＰに該当する確率Ｐ21を出力し、…、第ｍｎノードからは、位置座標（Ｘｍ，Ｙｎ）に対応する位置がセパレータＳＰに該当する確率Ｐmnを出力してもよい。なお、出力層２２３を構成するノードの数や各ノードに割り当てる演算結果は、上述の例に限定されるものではなく、適宜設計することが可能である。
【００５２】
演算装置１０の演算部１１は、学習モデル２２０から得られる演算結果を参照し、確率が閾値以上（例えば、セパレータＳＰに該当する確率が９０％以上）の位置座標を選択することにより、セパレータＳＰの位置を特定することが可能である。
【００５３】
演算装置１０は、学習フェーズにおいて、学習モデル２１０，２２０を生成する処理を実行する。以下、演算装置１０において学習モデル２１０を生成する手順について説明する。
【００５４】
図７は学習モデル２１０の生成手順を説明するフローチャートである。演算装置１０は、学習モデル２１０を生成する準備段階として、カウント対象となる物品の画像データと、物品の種別を示すラベルデータとを収集し、収集したデータを教師データとして記憶部１２に記憶させる。この準備段階で、十分な数の画像データと、ラベルデータとを収集しておくことで、種別の推定精度を高めることができる。
【００５５】
演算部１１は、記憶部１２にアクセスし、学習モデル２１０の生成に用いる教師データを取得する（ステップＳ１０１）。教師データは、物品の画像データと、当該画像データに含まれる物品の種別を示すラベルデータとを含む。ステップＳ１０１では、教師データとして含まれる多数の画像データ及びラベルデータのうち、１組の画像データ及びラベルデータを取得すればよい。学習モデル２１０を生成する初期段階では、教師データは、演算装置１０の管理者等によって用意されたものが設定される。また、学習が進めば、学習モデル２１０による推定結果と、推定処理に用いた撮像画像とを取得し、取得したデータを教師データとして設定してもよい。
【００５６】
次いで、演算部１１は、教師データとして含まれる画像データを学習モデル２１０へ入力し（ステップＳ１０２）、学習モデル２１０から演算結果を取得する（ステップＳ１０３）。学習が開始される前の段階では、学習モデル２１０を記述する定義情報には、初期設定値が与えられているものとする。学習モデル２１０では、前述のように、各層を構成するノード間において所定の演算が行われる。
【００５７】
次いで、演算部１１は、ステップＳ１０３で得られた演算結果を評価し（ステップＳ１０４）、学習が完了したか否かを判断する（ステップＳ１０５）。具体的には、演算部１１は、ステップＳ１０３で得られる演算結果と教師データとに基づく誤差関数（目的関数、損失関数、コスト関数ともいう）を用いて、演算結果を評価することができる。演算部１１は、最急降下法などの勾配降下法により誤差関数を最適化（最小化又は最大化）する過程で、誤差関数が閾値以下（又は閾値以上）となった場合、学習が完了したと判断する。なお、過学習の問題を避けるために、交差検定、早期打ち切りなどの手法を取り入れ、適切なタイミングにて学習を終了させてもよい。
【００５８】
学習が完了していないと判断した場合（Ｓ１０５：ＮＯ）、演算部１１は、学習モデル２１０のノード間の重み及びバイアスを更新し（ステップＳ１０６）、処理をステップＳ１０１へ戻す。演算部１１は、学習モデル２１０の出力層２１３から入力層２１１に向かって、ノード間の重み及びバイアスを順次更新する誤差逆伝搬法を用いて、各ノード間の重み及びバイアスを更新することができる。
【００５９】
学習が完了したと判断した場合（Ｓ１０５：ＹＥＳ）、演算部１１は、学習済みの学習モデル２１０として記憶部１２に記憶させ（ステップＳ１０７）、本フローチャートによる処理を終了する。
【００６０】
このように、演算装置１０は、カウント対象となる物品の画像データと、物品の種別を示すラベルデータとを収集し、収集したデータを教師データに用いることによって、学習モデル２１０を生成することができる。また、演算装置１０は、図７に示す処理手順と同様の処理手順にてセパレータＳＰの位置検出用の学習モデル２２０を生成することができる。この場合、演算装置１０は、荷重センサ１３０から得られる荷重分布データと、計測領域内のセパレータＳＰの位置を示すラベルデータとを収集し、収集したデータを教師データに用いて、学習モデル２２０を生成すればよい。本実施の形態では、演算装置１０において学習モデル２１０，２２０を生成する手順を説明したが、外部のサーバ装置にて学習モデル２１０，２２０を生成する場合についても、同様の処理手順にて学習モデル２１０，２２０を生成すればよい。
【００６１】
演算装置１０は、学習モデル２１０，２２０が生成された後の運用フェーズにおいて、適宜のタイミングで物品数のカウント処理を実行することが可能である。物品数のカウント処理は、管理者等により実行指示が与えられた場合に実行されてもよく、定期的なタイミングにて実行されてもよい。以下、演算装置１０による物品数のカウント処理について説明する。
【００６２】
図８は物品数のカウント手順を説明するフローチャートである。演算装置１０の演算部１１は、第１接続部１３を通じて、荷重センサ１３０から出力される荷重分布データを取得する（ステップＳ１２１）。荷重分布データは、計測領域内の位置の情報と、各感圧素子によって計測された計測値とにより構成される行列データを示す。
【００６３】
演算部１１は、取得した荷重分布データをセパレータＳＰの位置検出用の学習モデル２２０へ入力する（ステップＳ１２２）。演算部１１は、取得した荷重分布データを学習モデル２２０の入力層２２１に与えることによって、学習モデル２２０による演算を実行させる。学習モデル２２０の入力層２２１に与えられた荷重分布データは中間層２２２へ送出される。中間層２２２では、ノード間の重み及びバイアスを含む活性化関数を用いた演算が実行される。中間層２２２の畳み込み層２２２ａ及びプーリング層２２２ｂでは荷重分布データの特徴が抽出される。畳み込み層２２２ａ及びプーリング層２２２ｂによって抽出された特徴部分のデータは、全結合層２２２ｃの構成する各ノードに結合され、活性化関数によって特徴変数に変換される。変換された特徴変数は、全結合層２２２ｃを通じて出力層２２３へ出力される。出力層２２３は、中間層２２２の全結合層２２２ｃから入力される特徴変数を基に、ソフトマックス関数を用いて確率に変換し、感圧素子の位置座標に対応してセパレータＳＰに該当する確率を各ノードから出力する。
【００６４】
演算部１１は、学習モデル２２０から演算結果を取得し、取得した演算結果に基づき、分割領域を特定する（ステップＳ１２３）。演算部１１は、学習モデル２２０から得られる演算結果に基づき、計測領域内に置かれたセパレータＳＰの位置を検出することができる。演算部１１は、検出したセパレータＳＰの位置座標に基づき、分割領域を特定すればよい。例えば、図５に示すように、セパレータＳＰが縦方向（棚板Ｓ１の奥行き方向）に延びている場合、セパレータＳＰより左側（Ｘ座標がセパレータＳＰのＸ座標より小さい領域）を１つの分割領域（分割領域Ｒ１）として特定し、セパレータＳＰより右側（Ｘ座標がセパレータＳＰのＸ座標より大きい領域）を１つの分割領域（分割領域Ｒ２）として特定することができる。
【００６５】
次いで、演算部１１は、分割領域内の総重量を導出する（ステップＳ１２４）。演算部１１は、荷重センサ１３０からの計測値のうち、分割領域内の計測値の和を求めることにより、分割領域内の総重量を導出することができる。演算部１１は、分割領域のそれぞれについて、総重量を導出すればよい。
【００６６】
次いで、演算部１１は、第２接続部１４を通じて、撮像装置１４０から出力される画像データを取得する（ステップＳ１２５）。画像データは、例えば各画素がＲＧＢの階調値により表現されるデータである。
【００６７】
演算部１１は、取得した画像データを物品の種別特定用の学習モデル２１０へ入力する（ステップＳ１２６）。演算部１１は、取得した画像データを学習モデル２１０の入力層２１１に与えることによって、学習モデル２１０による演算を実行させる。学習モデル２１０の入力層２１１に与えられた画像データは中間層２１２へ送出される。中間層２１２では、ノード間の重み及びバイアスを含む活性化関数を用いた演算が実行される。中間層２１２の畳み込み層２１２ａ及びプーリング層２１２ｂでは画像の特徴が抽出される。畳み込み層２１２ａ及びプーリング層２１２ｂによって抽出された特徴部分のデータは、全結合層２１２ｃの構成する各ノードに結合され、活性化関数によって特徴変数に変換される。変換された特徴変数は、全結合層２１２ｃを通じて出力層２１３へ出力される。出力層２１３は、中間層２１２の全結合層２１２ｃから入力される特徴変数を基に、ソフトマックス関数を用いて確率に変換し、各分割領域内に含まれる物品がどの種別に該当するかを示す確率を各ノードから出力する。
【００６８】
演算部１１は、学習モデル２１０から演算結果を取得し、取得した演算結果に基づき、物品の種別を特定する（ステップＳ１２７）。演算部１１は、学習モデル２１０から得られる演算結果に基づき、例えば、確率が最も高い物品の組み合わせを選択することによって、各分割領域内に置かれた物品の種別を特定することができる。
【００６９】
次いで、演算部１１は、ステップＳ１２７において種別が特定された物品に関して、重量テーブル２０１から、物品１個あたりの重量を読み出す（ステップＳ１２８）。例えば、ステップＳ１２７で特定した種別が「種別Ａ」である場合、演算部１１は、重量テーブル２０１を参照し、「種別Ａ」に関連付けて記憶されている物品１個あたりの重量「Ｗａ」を読み出せばよい。他の種別を特定した場合も同様である。ステップＳ１２８では、分割領域のそれぞれにおいて種別に対応した物品１個あたりの重量を読み出せばよい。
【００７０】
次いで、演算部１１は、ステップＳ１２４で導出した分割領域内の総重量と、ステップＳ１２８で特定した分割領域内に載置されている物品の１個あたりの重量とに基づき、物品の個数を算出する（ステップＳ１２９）。例えば、ステップＳ１２４で導出した分割領域内の総重量を「ＷＡ」、ステップＳ１２８で特定した１個あたりの重量を「Ｗａ」とした場合、演算部１１は、ＷＡ／Ｗａを算出することによって、分割領域内の個数を算出する。ステップＳ１２９では、分割領域のそれぞれにおいて物品の個数を算出すればよい。
【００７１】
演算部１１は、算出した物品の個数を記憶部１２に記憶させる。また、演算部１１は、算出した物品の個数を表示部１７に表示させてもよく、通信部１５を通じて管理者等が使用する端末装置へ通知してもよい。
【００７２】
このように、本実施の形態では、セパレータＳＰにより分割される分割領域Ｒ１〜Ｒ４内の物品の種別を学習モデル２１０を用いて特定し、各分割領域Ｒ１〜Ｒ４における物品の個数を算出することができる。
【００７３】
なお、本実施の形態では、荷重センサ１３０からの荷重分布データに基づき分割領域を特定し、その後に、撮像装置１４０からの画像データに基づき種別を特定する手順としたが、先に種別を特定した後に、分割領域を特定する手順としてもよい。
【００７４】
また、本実施の形態では、学習モデル２１０を用いて、各分割領域に載置されている物品の種別を特定する構成としたが、撮像画像において物品の種別を特定し、種別が特定された物品の画像内の位置と、学習モデル２２０を用いて検出されるセパレータＳＰの位置情報とに基づき、各分割領域における物品の種別を特定してもよい。後者の場合、撮像装置１４０から出力される画像データが入力された場合、画像内で特定した物品の種別に関するデータを出力するように学習された学習モデルを用いるとよい。この場合の学習モデルの学習手順は、学習モデル２１０における学習手順と同様の手順を用いることができる。
【００７５】
また、本実施の形態では、荷重センサ１３０からの荷重分布データに基づき、分割領域を特定する構成としたが、撮像装置１４０から得られる画像データに基づき、分割領域を特定する構成としてもよい。後者の場合、撮像装置１４０から出力される画像データが入力された場合、セパレータＳＰの位置に関するデータを出力するように学習された学習モデルを用いるとよい。この場合の学習モデルの学習手順は、学習モデル２２０における学習手順と同様の手順を用いることができる。
【００７６】
また、本実施の形態では、学習モデル２２０を用いてセパレータＳＰの位置を検出する構成としたが、セパレータＳＰの位置を検出する位置検出センサを用いてもよい。位置検出センサとしては、光学センサや磁気センサなどを用いることができる。光学センサを用いる場合、セパレータＳＰに向けて光を出射する発光素子と、セパレータＳＰによって反射される光を受光する受光素子とを用いて、受光素子における光の受光強度を計測することによって、セパレータＳＰの位置を検出することができる。また、磁気センサを用いる場合、セパレータＳＰに磁石を貼着し、この磁石の位置を磁気センサによって検出することによってセパレータＳＰの位置を検出することができる。
【００７７】
また、本実施の形態では、学習フェーズにおいて、学習モデル２１０，２２０を生成する構成としたが、運用開始後の任意のタイミングにて、再学習を実行してもよい。この場合、演算部１１は、学習モデル２１０，２２０の推定結果を表示部１７に表示し、学習モデル２１０，２２０による推定結果が正しいか否かの選択を受付けるとよい。演算部１１は、推定処理を行った際に用いた画像データと、種別の推定結果が正しいか否かを示すラベルデータとを教師データに用いて、学習モデル２１０を再学習することができる。また、演算部１１は、推定処理を行った際に用いた計測分布データと、セパレータＳＰの位置の推定結果が正しいか否かを示すラベルデータとを教師データに用いて、学習モデル２２０を再学習することができる。なお、再学習の手順は、図７に示す学習手順と全く同様であるため、その説明を省略することとする。
【００７８】
今回開示された実施形態は、全ての点において例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【００７９】
１０  演算装置
１１  演算部
１２  記憶部
１３  第１接続部
１４  第２接続部
１５  通信部
１６  操作部
１７  表示部
１３０  荷重センサ
１４０  撮像装置
【要約】
【課題】カウント方法、コンピュータプログラム、及びカウントシステムの提供。
【解決手段】特定領域における荷重分布を計測する荷重センサから、複数種の物品群と物品群を種別毎に区分するためのセパレータとが特定領域に載置された状態での荷重分布の計測データを取得し、取得した計測データに基づき、セパレータにより分割される分割領域内に載置された物品群の総重量を導出し、物品群を撮像して得られる画像データを取得し、取得した画像データに基づき、物品群に含まれる物品の種別を特定し、物品群の総重量と、物品の１個あたりの重量とに基づき、分割領域内に載置された物品の数を算出する。
【選択図】図６【図１】
0006598182.tif 000002
【図２】
0006598182.tif 000003
【図３】
0006598182.tif 000004
【図４】
0006598182.tif 000005
【図５】
0006598182.tif 000006
【図６】
0006598182.tif 000007
【図７】
0006598182.tif 000008
【図８】
0006598182.tif 000009