(57)【要約】【課題】撮像画像から商品を適切に特定することができる商品特定装置等を提供する。【解決手段】商品特定装置１は、撮像画像を取得する取得部と、取得した前記撮像画像に対して標章検出器を用いて、該当する標章を備えた商品か否かを判定する標章検出部と、前記標章を検出した前記撮像画像に対して、前記標章を備えた商品を学習させた第１のニューラルネットワークを用いて複数の商品群のいずれに属するかを特定する商品群特定部と、前記複数の商品群毎に学習させた第２のニューラルネットワークを用いて、商品を特定する商品特定部とを備えることを特徴とする。【選択図】図２
2019212157.tif 000002
【特許請求の範囲】
【請求項１】
撮像画像を取得する取得部と、
取得した前記撮像画像に対して標章検出器を用いて、該当する標章を備えた商品か否かを判定する標章検出部と、
前記標章を検出した前記撮像画像に対して、前記標章を備えた商品を学習させた第１のニューラルネットワークを用いて複数の商品群のいずれに属するかを特定する商品群特定部と、
前記複数の商品群毎に学習させた第２のニューラルネットワークを用いて、商品を特定する商品特定部と
を備えることを特徴とする商品特定装置。
【請求項２】
前記撮像画像の輝度勾配を表す局所特徴量を抽出する局所特徴量抽出部を備え、
前記標章検出部は、特徴空間において対象の前記標章を識別する識別境界を学習した前記標章検出器を用いて、抽出した前記局所特徴量から前記標章を検出する
ことを特徴とする請求項１に記載の商品特定装置。
【請求項３】
前記商品群及び商品の特定後、特定結果を出力する出力部を備える
ことを特徴とする請求項１又は２に記載の商品特定装置。
【請求項４】
前記商品特定部が前記商品の特定に失敗した場合、前記出力部は、前記商品群に関する特定結果を出力する
ことを特徴とする請求項３に記載の商品特定装置。
【請求項５】
前記標章は、前記商品の形状であり、
前記標章検出部は、前記標章検出器を用いて前記撮像画像から前記商品の形状を検出したか否かに基づき、前記標章を備えた前記商品か否かを判定する
ことを特徴とする請求項１〜４のいずれか１項に記載の商品特定装置。
【請求項６】
撮像画像を取得し、
取得した前記撮像画像から該当する標章を検出することで、該標章を備えた商品か否かを判定し、
前記標章を検出した前記撮像画像に対して、前記標章を備えた商品を学習させた第１のニューラルネットワークを用いて複数の商品群のいずれに属するかを特定し、
前記複数の商品群毎に学習させた第２のニューラルネットワークを用いて、商品を特定する
処理をコンピュータに実行させることを特徴とするプログラム。
【請求項７】
商品を撮像した教師用画像と、前記商品、該商品が属する商品群、及び該商品に備わる標章を示す情報とを含む教師データを取得し、
該教師データに基づき、前記商品、商品群、及び標章を識別する識別器を夫々生成する
処理をコンピュータに実行させることを特徴とする学習方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、商品特定装置、プログラム及び学習方法に関する。
【背景技術】
【０００２】
商品を撮像した撮像画像に対して画像認識を行い、撮像された商品を特定する技術がある。例えば特許文献１では、ディープラーニングによる認識モデルを用いて、事前に登録されている商品を撮像画像から認識し、さらに商品の大きさ及び色を検証することで、精度良く商品を特定する情報処理システム等が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第６２０９７１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に係る発明では、撮像された物体は事前登録された商品群のいずれかであることが前提となっている。従って、未登録の商品が撮像された場合、当該商品を登録済みの商品のいずれかに強制的に分類してしまうという問題があった。
【０００５】
一つの側面では、撮像画像から商品を適切に特定することができる商品特定装置等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
一つの側面に係る商品特定装置は、撮像画像を取得する取得部と、取得した前記撮像画像に対して標章検出器を用いて、該当する標章を備えた商品か否かを判定する標章検出部と、前記標章を検出した前記撮像画像に対して、前記標章を備えた商品を学習させた第１のニューラルネットワークを用いて複数の商品群のいずれに属するかを特定する商品群特定部と、前記複数の商品群毎に学習させた第２のニューラルネットワークを用いて、商品を特定する商品特定部とを備えることを特徴とする。
【０００７】
一つの側面に係るプログラムは、撮像画像を取得し、取得した前記撮像画像から該当する標章を検出することで、該標章を備えた商品か否かを判定し、前記標章を検出した前記撮像画像に対して、前記標章を備えた商品を学習させた第１のニューラルネットワークを用いて複数の商品群のいずれに属するかを特定し、前記複数の商品群毎に学習させた第２のニューラルネットワークを用いて、商品を特定する処理をコンピュータに実行させることを特徴とする。
【０００８】
一つの側面に係る学習方法は、商品を撮像した教師用画像と、前記商品、該商品が属する商品群、及び該商品に備わる標章を示す情報とを含む教師データを取得し、該教師データに基づき、前記商品、商品群、及び標章を識別する識別器を夫々生成する処理をコンピュータに実行させることを特徴とする。
【発明の効果】
【０００９】
一つの側面では、撮像画像から商品を適切に特定することができる。
【図面の簡単な説明】
【００１０】
【図１】商品特定システムの構成例を示す模式図である。
【図２】サーバの構成例を示すブロック図である。
【図３】本実施の形態の概要を示す説明図である。
【図４】標章特定処理を説明するための説明図である。
【図５】商品特定処理を説明するための説明図である。
【図６】商品特定画面の一例を示す説明図である。
【図７】学習モデルの学習処理の処理手順の一例を示すフローチャートである。
【図８】商品特定処理の処理手順の一例を示すフローチャートである。
【図９】変形例の概要を示す説明図である。
【図１０】変形例に係る商品特定処理の処理手順の一例を示すフローチャートである。
【図１１】上述した形態のサーバの動作を示す機能ブロック図である。
【発明を実施するための形態】
【００１１】
以下、本発明をその実施の形態を示す図面に基づいて詳述する。
（実施の形態）
図１は、商品特定システムの構成例を示す模式図である。本実施の形態では、ユーザが撮像した商品の撮像画像から、当該画像に映っている商品を特定する商品特定システムについて説明する。商品特定システムは、商品特定装置１と、端末２とを有する。商品特定装置１及び端末２は、インターネット等のネットワークＮを介して通信接続されている。
【００１２】
商品特定装置１は、種々の情報処理、情報の送受信が可能な情報処理装置であり、例えばサーバ装置、パーソナルコンピュータ等である。本実施の形態で商品特定装置１はサーバ装置であるものとし、以下では簡潔のためサーバ１と読み替える。サーバ１は、商品を撮像した撮像画像から、当該画像内の商品を特定する処理を行う。具体的には、サーバ１は教師用の商品画像から商品の特徴量を学習する機械学習処理を行い、画像から商品を特定するための学習モデルを構築しておく。サーバ１は、当該学習モデルを参照して、ユーザが撮像した画像に含まれる商品を特定する。
【００１３】
端末２は、個々のユーザが所持する端末装置であり、例えばスマートフォン、タブレット端末、パーソナルコンピュータ等である。本実施の形態で端末２は、撮像機能を有するスマートフォンであるものとして説明する。端末２は、ユーザによる操作に従って商品を撮像し、撮像した画像をサーバ１へ送信する。サーバ１は、端末２から取得した画像に対して画像認識を行い、商品を特定する。
【００１４】
図２は、サーバ１の構成例を示すブロック図である。サーバ１は、制御部１１、主記憶部１２、通信部１３、補助記憶部１４を備える。
制御部１１は、一又は複数のＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro-Processing Unit）、ＧＰＵ（Graphics Processing Unit）等の演算処理装置を有し、補助記憶部１４に記憶されたプログラムＰを読み出して実行することにより、サーバ１に係る種々の情報処理、制御処理等を行う。主記憶部１２は、ＳＲＡＭ（Static Random Access Memory）、ＤＲＡＭ（Dynamic Random Access Memory）、フラッシュメモリ等の一時記憶領域であり、制御部１１が演算処理を実行するために必要なデータを一時的に記憶する。通信部１３は、通信に関する処理を行うための処理回路等を含み、端末２等と情報の送受信を行う。
【００１５】
補助記憶部１４は大容量メモリ、ハードディスク等であり、制御部１１が処理を実行するために必要なプログラムＰ、その他のデータを記憶している。また、補助記憶部１４は、機械学習処理によって構築した学習モデルのデータを記憶している。具体的には、補助記憶部１４は、商品を撮像した画像から商品容器に付された標章を検出するための標章識別器（標章検出器）１４１、撮像された商品が予め定められている複数の商品群のいずれに属するかを特定するための商品群識別器１４２（第１のニューラルネットワーク）、及び具体的な個々の商品を特定するための商品識別器１４３（第２のニューラルネットワーク）を記憶している。サーバ１は、各識別器を用いて撮像画像から商品を特定する処理を行う。
【００１６】
なお、補助記憶部１４はサーバ１に接続された外部記憶装置であってもよい。また、サーバ１は複数のコンピュータからなるマルチサーバであってもよく、ソフトウェアによって仮想的に構築された仮想マシンであってもよい。
【００１７】
また、本実施の形態においてサーバ１は上記の構成に限られず、例えば操作入力を受け付ける入力部、サーバ１に係る情報を表示する表示部、可搬型記憶媒体に記憶された情報を読み取る読取部等を含んでもよい。
【００１８】
図３は、本実施の形態の概要を示す説明図である。図３では、所定の商品について画像特徴量を学習済みのサーバ１が、端末２より送信される画像内の商品を特定する様子を図示している。
例えばサーバ１は、事前登録されている商品（例えば企業の自社商品）を撮像した教師用の画像データから商品容器の色、形状等の特徴量を学習する機械学習処理を行い、学習モデルを構築しておく。サーバ１は、ユーザが撮像した商品の画像データを端末２から取得し、上記の学習モデルを参照して、撮像画像に含まれる商品が、予め登録されている特定の商品のいずれに該当するかを特定する。例えばサーバ１は、特定した商品の情報をユーザに提供する。
【００１９】
しかしながら、未登録の商品（例えば他社商品）をユーザが撮像する場合もあり得る。この場合、サーバ１は、撮像画像の商品を登録商品のいずれかに分類することになる。このように、不特定多数の画像が入力された場合、登録済みの商品のいずれかに強制分類され、誤って商品を特定する虞がある。
【００２０】
そこでサーバ１は、未登録商品の画像を除外する前処理を行うことで、上記の事態を防止する。具体的には、サーバ１は標章識別器１４１を用いて、登録商品に付された標章を撮像画像から検出する。登録商品の標章が検出されない場合、サーバ１は、当該画像を処理対象から除外する。
【００２１】
図４は、標章特定処理を説明するための説明図である。図４Ａは、撮像画像から局所特徴量を抽出する様子を図示している。図４Ｂでは、抽出した局所特徴量のクラス分類を行う様子を図示している。
例えばサーバ１は、撮像画像から輝度の勾配を示す局所特徴量を抽出し、抽出した局所特徴量に基づき、商品容器に付された標章を検出する。局所特徴量は、例えばＨＯＧ（Histograms of Oriented Gradients）特徴量である。ＨＯＧ特徴量は、撮像画像を所定単位で分割した局所領域（セル）における輝度の勾配方向をヒストグラム化することで、輝度勾配をベクトル表現した特徴量である。ＨＯＧ特徴量は、図４Ａに示すように、５×５のピクセルを１セルとし、３×３のセルを１ブロックとして、１ブロックの輝度勾配を８方向のバイナリ（図４Ａに示す矢印）のヒストグラムで表現する。なお、上記のブロック及びセルの構成単位は一例であり、任意に変更してよい。また、勾配を表現するバイナリは８方向に限定されない。ＨＯＧ特徴量は幾何学変化に強く、画像照明の変動に頑健な特長がある。本実施の形態においてサーバ１は、標章を特定するための特徴量として、ＨＯＧ特徴量を用いる。
【００２２】
例えばサーバ１は、ＨＯＧ特徴量に基づき、ＳＶＭ（Support Vector Machine）のアルゴリズムを用いて標章を特定する。ＳＶＭは、教師あり学習を用いたパターン認識手法であり、入力データ（撮像画像）をクラス分類する手法である。図４Ｂに概念的に示すように、ＳＶＭでは、多次元の特徴量空間に各クラス（図４Ｂでは２クラス）のデータサンプルを射影し、最近傍サンプルからの距離（マージン）が最大となる識別面を求めることで、当該識別面を識別境界としてクラス分類を行う識別器を生成する。ＳＶＭでは当該識別器を用い、識別対象である入力データの特徴量が、識別面を境界とした空間のいずれに位置するかを判定することで、クラス分類を行う。
【００２３】
本実施の形態においてサーバ１は、容器に標章が付された登録商品の教師用画像に、当該画像における標章部分の座標位置の正解値がラベル付けされた教師データを取得（入力）する。標章は、文字、図形、記号等から成る所謂ロゴであり、消費者が商品を識別する際に着目するマークである。なお、後述する変形例で説明するように、本実施の形態における「標章」はロゴに限定されず、消費者が商品を識別する際に特徴となる商品容器等の構造、すなわち商品の形状も標章に含まれる。サーバ１は、教師用画像から、教師データで規定された座標位置のＨＯＧ特徴量を抽出することで、標章部分の輝度勾配を多次元の特徴量ベクトルで表現する。そしてサーバ１は、標章部分のＨＯＧ特徴量を多次元の特徴空間に射影し、マージンが最大となる識別境界を求めることで、ＨＯＧ特徴量から標章を識別する標章識別器１４１を生成する。端末２から撮像画像を取得した場合、サーバ１は標章識別器１４１を用いて、当該画像に映っている商品に付された標章を検出する。
【００２４】
上記の機械学習時に学習対象とした登録商品の標章が撮像された商品に付されていない、又は標章は付されているが登録商品のものではない等の理由で、登録商品の標章が撮像画像から検出されなかった場合、サーバ１は、撮像画像の商品が登録商品ではないものとして、処理対象から除外する。例えばサーバ１は、標章検出に失敗した旨を端末２に通知し、一連の処理を終了する。
【００２５】
図５は、商品特定処理を説明するための説明図である。標章検出に成功した場合、サーバ１は、当該商品が登録商品のいずれに該当するかを特定する。具体的には、サーバ１は、ＲｅｓＮｅｔ（Residual Network）に係るニューラルネットワークである商品群識別器１４２及び商品識別器１４３を教師データから予め生成し、各識別器を用いて個々の商品を特定していく。
【００２６】
ＲｅｓＮｅｔはニューラルネットワークの一種であり、非常に層が深く、識別精度が高いという特長を有する。図５上側に、ＲｅｓＮｅｔの概念的な模式図を示す。ＲｅｓＮｅｔでは、所定数のニューロン層ずつ（図５では２層ずつ）入力値と出力値の残差を計算し、計算した残差を入力値として次の層に入力するネットワーク構造を有する。ＲｅｓＮｅｔでは最終層（出力層）まで上記の残差計算を繰り返す。これにより、層数を多くした場合に生じる勾配消失、勾配発散等の問題を抑止し、高い識別精度を確保することができる。
【００２７】
本実施の形態ではＲｅｓＮｅｔ−１０１を採用し、サーバ１は、１０１層のニューロン層を有するニューラルネットワーク構造の識別器を生成する。より詳細には、サーバ１は、畳み込み演算を実行するニューロン層を含むＣＮＮ（Convolution Neural Network）モデルの識別器を構築する。サーバ１は、生成した識別器を用いて個々の商品を特定していく。
【００２８】
具体的には、サーバ１は、教師用画像と、登録商品が属する商品群、及び商品自体を示す情報とを含む教師データを取得（入力）し、当該教師データから商品群識別器１４２及び商品識別器１４３を夫々生成する。商品群は、例えばシリーズ化されている商品ブランドにつき容器が互いに似ている商品など、特徴量がある程度近似する商品の区分である。サーバ１は、商品群の正解値（例えば商品群の名称。以下、「シリーズ名」と呼ぶ）がラベル付けされた教師用画像を取得する。サーバ１は、教師用画像から商品容器の色、形状、あるいは商品容器に表記されたシリーズ名の文字等の特徴量を抽出することで、商品群識別器１４２を生成する。
【００２９】
また、サーバ１は、教師画像に個々の商品を特定可能な情報（例えば商品名）がラベル付けされた教師データから、個別の商品を識別する商品識別器１４３を生成する。本実施の形態でサーバ１は、商品群毎に異なる商品識別器１４３ａ、１４３ｂ、１４３ｃ…を生成する。外観が似た商品群毎に個々の商品の特徴を学習し、商品群毎に別々の商品識別器１４３を用いることで、画像認識処理が複雑にならず、精度を高めることができる。
【００３０】
サーバ１は、上記の商品群識別器１４２及び商品識別器１４３を用いて商品を特定する。まずサーバ１は、標章識別器１４１で標章を検出した撮像画像を商品群識別器１４２に入力し、商品群を特定する。例えばサーバ１は、撮像画像から商品容器の形状、色、あるいは商品容器に付された文字等に係る特徴量を抽出し、商品容器がどの商品群の容器に近いか、あるいはどの商品群のシリーズ名が付されているか等を識別する。これにより、サーバ１は、撮像画像の商品がどの商品群に属するかを特定する。
【００３１】
商品群を特定後、サーバ１は、撮像された商品が具体的にどの商品に該当するかを、商品群に応じた商品識別器１４３を用いて特定する。例えば図５下側に概念的に示すように、サーバ１は、商品群識別器１４２で商品のシリーズが「シリーズＡ」である旨を特定した場合、「シリーズＡ」の商品を識別するための商品識別器１４３ａを、商品特定に用いる識別器として選択する。サーバ１は商品識別器１４３ａに画像データを入力し、商品容器の色、形状、あるいは商品容器に付された文字等の特徴量を抽出して、撮像された商品が「商品Ａ１」であることを特定する。このように、サーバ１は、商品のシリーズ（商品群）に応じて異なる商品識別器１４３を用い、個別の商品を特定する。
【００３２】
図６は、商品特定画面の一例を示す説明図である。サーバ１は商品の特定結果を出力し、端末２は、図６に示す商品特定画面を表示する。図６に示すように、端末２は、特定した商品のサンプル画像と共に、標章（ロゴ）の検出結果、商品のシリーズ名、及び商品名を表示する。なお、図６でシリーズ名及び商品名に付された数字は、画像認識時に計算された信頼度である。
【００３３】
なお、図６ではシリーズ名及び商品名の双方を表示しているが、例えば画像認識時の信頼度が所定の閾値以下である場合等、サーバ１が個別の商品の認識に失敗し、商品名を特定できない場合もあり得る。この場合にサーバ１は、シリーズ名のみを端末２に表示させる。商品群識別器１４２が識別対象とする商品群は、外観においてある程度似ている商品容器をまとめて識別するものであるため、個々の商品を識別するよりも精度が高い。この商品群の特定結果（シリーズ名）を最低限ユーザに提示することで、個別の商品特定に失敗した場合であっても、ユーザはシリーズ名を手掛かりに商品情報を得ることができる。
【００３４】
なお、商品群特定時の信頼度も低く、商品群の特定にも失敗した場合、サーバ１は、撮像画像から検出した標章の検出結果のみを端末２に出力し、一連の画像認識処理を終了する。
【００３５】
図７は、学習モデルの学習処理の処理手順の一例を示すフローチャートである。図７に基づき、サーバ１が実行する機械学習処理の処理内容について説明する。
サーバ１の制御部１１は、学習対象とする商品の商品容器が撮像された教師用画像と、商品容器に付された標章、商品が属する商品群、及び個々の商品を示す情報とを含む教師データを取得する（ステップＳ１１）。標章は、例えば文字、図形、記号から成る所謂ロゴである。商品群は、例えばシリーズ化されている商品ブランドのように、ある程度特徴量が近似する商品の区分である。制御部１１は、標章、商品群、及び商品自体の正解値が商品画像にラベル付けされた、訓練用の教師データを取得する。例えば制御部１１は、商品容器において標章が付されている座標位置、商品が属する商品群のシリーズ名、個々の商品の商品名等の情報がラベル付けされた教師データを取得する。
【００３６】
制御部１１は、教師用画像から特徴量を抽出する機械学習処理を行い、撮像画像から標章、商品群、及び商品自体を特定する識別器を夫々生成する（ステップＳ１２）。例えば制御部１１は、教師データが示す座標位置の輝度勾配に係る局所特徴量（ＨＯＧ特徴量）を抽出し、抽出した局所特徴量を特徴空間に射影して識別境界を求めることで、対象商品に付された標章を局所特徴量から検出（クラス分類）可能な標章識別器１４１を生成する。また、制御部１１は、商品容器の色、形状、あるいは商品に付された文字等の特徴量を抽出し、商品群及び商品自体を示す情報（例えばシリーズ名及び商品名）と紐付けることで、画像の特徴量から商品群及び商品を特定する商品群識別器１４２及び商品識別器１４３を生成する。具体的には、制御部１１は、所定数のニューロン層毎に入力値と出力値の残差計算を繰り返すＲｅｓＮｅｔのネットワーク構造を有し、かつ、畳み込み演算を実行するニューロン層を含むＣＮＮモデルの識別器を夫々生成する。制御部１１は、商品群毎に異なる商品識別器１４３ａ、１４３ｂ、１４３ｃ…を生成する。制御部１１は、一連の処理を終了する。
【００３７】
図８は、商品特定処理の処理手順の一例を示すフローチャートである。図８に基づき、上記の学習モデルに基づいて商品を特定する商品特定処理の処理内容について説明する。
サーバ１の制御部１１は、ユーザが商品容器を撮像した撮像画像を端末２から取得する（ステップＳ３１）。制御部１１は、撮像画像に対して標章識別器１４１を用いて、画像内の商品の容器に付された標章を検出する（ステップＳ３２）。具体的には、制御部１１は撮像画像を所定単位の局所領域に分割し、各局所領域の輝度勾配を示す局所特徴量（ＨＯＧ特徴量）を抽出する。制御部１１は、抽出した局所特徴量が、特徴空間において識別境界により区分されるいずれの空間に位置するかを判定することで、事前登録された商品の標章を検出する。
【００３８】
制御部１１は、標章の検出に失敗したか否かを判定する（ステップＳ３３）。標章の検出に失敗した場合（Ｓ３３：ＹＥＳ）、制御部１１は、標章検出に失敗した旨を端末２に出力し（ステップＳ３４）、一連の処理を終了する。
【００３９】
標章の検出に失敗しなかった場合（Ｓ３３：ＮＯ）、制御部１１は商品群識別器１４２（第１のニューラルネットワーク）を用いて、撮像された商品が予め定められた複数の商品群のいずれに属するかを特定する（ステップＳ３５）。商品群は、例えばシリーズ化されているブランド商品など、特徴量がある程度近似する商品の区分である。制御部１１は、ＲｅｓＮｅｔに係るニューラルネットワークである商品群識別器１４２を用いて、撮像画像の商品が複数の商品群のいずれに属する商品であるかを特定する。
【００４０】
制御部１１は、商品群の特定に失敗したか否かを判定する（ステップＳ３６）。例えば制御部１１は、画像認識時に計算された信頼度が所定の閾値以下であるか否かに応じて判定を行う。商品群の特定に失敗した場合（Ｓ３６：ＹＥＳ）、制御部１１は、ステップＳ３２における標章の検出結果を端末２に出力し（ステップＳ３７）、一連の処理を終了する。
【００４１】
商品群の特定に失敗しなかった場合（Ｓ３６：ＮＯ）、制御部１１は、特定した商品群に応じて異なる商品識別器１４３（第２のニューラルネットワーク）を用い、個別の商品を特定する（ステップＳ３８）。商品識別器１４３は、複数の商品群毎に個別の商品の特徴量を学習したＲｅｓＮｅｔに係るニューラルネットワークである。制御部１１は、ステップＳ３５で特定した商品群に応じて異なるニューラルネットワークに撮像画像を入力し、個々の商品を特定する。
【００４２】
制御部１１は、ステップＳ３５において個別商品の特定に失敗したか否かを判定する（ステップＳ３９）。例えば制御部１１は、画像認識時の信頼度が所定の閾値以下であるか否かに応じて判定を行う。商品の特定に失敗しなかった場合（Ｓ３９：ＮＯ）、制御部１１は、特定した商品及び商品群を示す商品特定画面を生成し、端末２に出力する（ステップＳ４０）。具体的には図６に示したように、制御部１１は、商品名とシリーズ名とを信頼度付きで示す商品特定画面に出力する。商品の特定に失敗した場合（Ｓ３９：ＹＥＳ）、制御部１１は商品群のみを示す商品特定画面を端末２に出力する（ステップＳ４１）。制御部１１は、一連の処理を終了する。
【００４３】
なお、上記ではＳＶＭ法を用いて標章を検出したが、例えばＯＣＲ（Optical Character Recognition）等の光学的手法によって標章を検出してもよい。つまり、画像認識によって標章を検出可能であればよく、検出アルゴリズムは機械学習によるものに限定されない。
【００４４】
また、標章検出に用いる特徴量としてＨＯＧ特徴量を用いたが、例えばＳＩＦＴ、ＳＵＲＦ等の特徴量を用いてもよい。
【００４５】
また、本実施の形態ではユーザ側の端末２ではなく、クラウド上のサーバ１で処理を実行したが、学習モデルのデータを端末２にインストールし、端末２で一連の特定処理を行うようにしても良い。
【００４６】
以上より、本実施の形態によれば、サーバ１はまず商品に付された標章を撮像画像から特定し、その後に個別の商品を特定していく。標章は多くの商品に付されており、これを基に処理対象を絞り込むことで、撮像画像から認識された物体が対象とすべき商品であるか否か、適切に判断することができる。また、サーバ１は商品群を特定後、個別の商品を特定していく。このように、商品を大まかに分類してから個別に特定していくことで学習内容が複雑にならず、精度を向上することができる。上記より、撮像画像から商品を適切に特定することができる。
【００４７】
また、本実施の形態によれば、サーバ１は、撮像画像から輝度勾配を示す局所特徴量（ＨＯＧ特徴量）を抽出し、ＳＶＭ法を用いて特徴空間で標章を検出する。例えばＯＣＲ技術を用いた場合、容器表面の材質（凹凸や鏡面等）や標章自体のデザイン等の条件によっては、正常な認識が困難になる虞がある。一方で、本実施の形態のように局所特徴量を抽出してパターン認識を行うことで、精度良く標章を検出することができる。
【００４８】
また、本実施の形態によれば、撮像画像から特定した商品及び商品群を示す商品特定画面を端末２に表示することで、ユーザは簡単に商品の情報を取得できるようになり、適切なサービス支援を行うことができる。
【００４９】
また、本実施の形態によれば、具体的な商品の特定に失敗した場合であっても、商品群（例えば商品ブランド）をユーザに提示することでき、より適切なサービス支援を行うことができる。
【００５０】
（変形例）
上述の実施の形態では、商品容器に付されたロゴを標章と捉え、標章識別器１４１を用いてロゴを検出するようにした。変形例ではロゴではなく、商品が有する特徴的な形状を標章として捉え、標章識別器１４１が学習済みの商品形状を有するか否かを検出する形態について説明する。
【００５１】
図９は、変形例の概要を示す説明図である。図９では、撮像された商品の容器の形状（図９で太線で図示）に基づき、当該商品が自社商品等の登録商品であるか否かを判定する様子を図示してある。
【００５２】
変形例においてサーバ１は、教師用の画像から事前に商品容器の形状を学習する学習処理を行い、特定の商品容器の形状を撮像画像から検出（識別）する標章識別器１４１を生成してある。例えばサーバ１は、商品群ごと、あるいは商品毎などの単位で、各商品Ａ、Ｂ、…の標章識別器１４１ａ、１４１ｂ、…を生成してある。
【００５３】
サーバ１は、端末２から取得した撮像画像を各標章識別器１４１に入力し、撮像された商品の容器が、標章として学習済みの形状を有するか否かを判定する。これによりサーバ１は、自社の標章を有する商品であるか否かを判定する。例えば図９に示すように、自社の商品Ａの撮像画像が標章識別器１４１に入力された場合、この画像から商品Ａの容器の形状を検出し、標章に該当する商品形状を有するものと判定する。その結果、サーバ１は当該画像を続く商品群識別器１４２に入力し、上述の実施の形態と同様に個々の商品の特定を行う。一方で、図９に示すように他社商品である商品Ｄの撮像画像が入力された場合、いずれの標章識別器１４１も標章に該当する商品形状を検出しないため、当該画像は処理対象から除外される。
【００５４】
上述の如く、標章は文字、図形、記号等のロゴに限定されず、商品自体の形状であってもよい。
なお、特段説明しなかったが、標章識別器１４１が標章として検出する商品の形状は商品の全体的な形状のみならず、商品の一部の形状であってもよい。例えば上述の例では、容器のキャップ部分に特徴的な形状を有する場合、キャップ部分のみの形状に基づいて標章を有するか否かを判定してもよい。このように、標章識別器１４１が検出する標章は商品の全体的な形状であってもよく、一部の形状であってもよい。
【００５５】
図１０は、変形例に係る商品特定処理の処理手順の一例を示すフローチャートである。商品容器を撮像した画像を取得した後（ステップＳ３１）、サーバ１の制御部１１は、以下の処理を実行する。制御部１１は、商品容器の形状を学習した標章識別器１４１を用い、撮像画像から、標章に該当する商品の形状を検出する（ステップＳ２０１）。制御部１１は、標章に該当する商品形状の検出に失敗したか否かを判定する（ステップＳ２０２）。標章に該当する形状の検出に失敗した場合（Ｓ２０２：ＹＥＳ）、制御部１１は処理をステップＳ３４に移行する。標章に該当する形状の検出に失敗しなかった場合（Ｓ２０２：ＮＯ）、制御部１１は処理をステップＳ３５に移行する。
【００５６】
以上より、撮像画像から商品を特定するにあたり、商品の形状によっても処理対象とすべき画像を絞り込むことができる。
【００５７】
図１１は、上述した形態のサーバ１の動作を示す機能ブロック図である。制御部１１がプログラムＰを実行することにより、サーバ１は以下のように動作する。取得部１１１は、撮像画像を取得する。標章検出部１１２は、取得した前記撮像画像に対して標章検出器を用いて、該当する標章を備えた商品か否かを判定する。商品群特定部１１３は、前記標章を検出した前記撮像画像に対して、前記標章を備えた商品を学習させた第１のニューラルネットワークを用いて複数の商品群のいずれに属するかを特定する。商品特定部１１４は、前記複数の商品群毎に学習させた第２のニューラルネットワークを用いて、商品を特定する。
【００５８】
今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００５９】
１  サーバ（商品特定装置）
１１  制御部
１２  主記憶部
１３  通信部
１４  補助記憶部
Ｐ  プログラム
１４１  標章識別器
１４２  商品群識別器
１４３  商品識別器
２  端末
【図１】
2019212157.tif 000003
【図２】
2019212157.tif 000004
【図３】
2019212157.tif 000005
【図４】
2019212157.tif 000006
【図５】
2019212157.tif 000007
【図６】
2019212157.tif 000008
【図７】
2019212157.tif 000009
【図８】
2019212157.tif 000010
【図９】
2019212157.tif 000011
【図１０】
2019212157.tif 000012
【図１１】
2019212157.tif 000013