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

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

▶ 富士通株式会社の特許一覧

特開2024-82190情報処理プログラム、情報処理方法および情報処理装置
<>
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図1
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図2
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図3
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図4
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図5
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図6
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図7
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図8
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図9
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図10
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図11
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図12
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図13
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図14
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図15
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図16
  • 特開-情報処理プログラム、情報処理方法および情報処理装置 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024082190
(43)【公開日】2024-06-19
(54)【発明の名称】情報処理プログラム、情報処理方法および情報処理装置
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240612BHJP
   G07G 1/00 20060101ALI20240612BHJP
   G06V 20/52 20220101ALI20240612BHJP
   H04N 7/18 20060101ALI20240612BHJP
【FI】
G06T7/00 660Z
G06T7/00 350B
G07G1/00 331B
G06V20/52
H04N7/18 D
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2022195979
(22)【出願日】2022-12-07
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】石田 諒
(72)【発明者】
【氏名】内田 大輔
(72)【発明者】
【氏名】青木 康洋
【テーマコード(参考)】
3E142
5C054
5L096
【Fターム(参考)】
3E142AA01
3E142AA03
3E142BA16
3E142EA04
3E142EA25
3E142FA25
3E142GA41
3E142JA01
3E142KA01
5C054CA04
5C054CC02
5C054FC12
5C054FC14
5C054FE28
5C054HA19
5L096AA06
5L096BA02
5L096CA04
5L096DA03
5L096FA16
5L096KA04
5L096MA07
(57)【要約】
【課題】会計機における、ユーザの誤りや不正を検出することを課題とする。
【解決手段】情報処理装置は、商品のコードを会計機にスキャンする人物の映像データを取得する。情報処理装置は、取得した映像データを分析することで、商品のコードを会計機にスキャンするために設定されたエリアの範囲内において前記人物が把持した商品を特定する。情報処理装置は、会計機が商品のコードをスキャンすることで会計機に登録された商品情報を取得する。情報処理装置は、取得した商品情報と、特定された人物が把持した商品とを比較することで、会計機に商品を登録する行動の異常に関連するアラートを生成する。
【選択図】図2
【特許請求の範囲】
【請求項1】
コンピュータに、
商品のコードを会計機にスキャンする人物の映像データを取得し、
取得した前記映像データを分析することで、前記商品のコードを前記会計機にスキャンするために設定されたエリアの範囲内において前記人物が把持した商品を特定し、
前記会計機が前記商品のコードをスキャンすることで前記会計機に登録された商品情報を取得し、
取得した前記商品情報と、特定された前記人物が把持した商品とを比較することで、前記会計機に商品を登録する行動の異常に関連するアラートを生成する、
処理を実行させることを特徴とする情報処理プログラム。
【請求項2】
前記特定する処理は、
取得した前記映像データを第一の機械学習モデルに入力することで、前記商品のコードを前記会計機にスキャンするために設定されたエリアの範囲内において前記人物が把持した商品を特定する、
ことを特徴とする請求項1に記載の情報処理プログラム。
【請求項3】
前記特定する処理は、
取得した前記映像データを第二の機械学習モデルに入力することで、前記人物が把持した商品の外観に関する属性を特定し、
前記アラートを生成する処理は、
前記会計機から取得された前記商品情報に基づいて、商品の属性を推定し、
推定された前記商品の属性と、前記第二の機械学習モデルを用いて特定された前記人物が把持した商品の属性とが異なる場合に、前記アラートを生成する、
ことを特徴とする請求項2に記載の情報処理プログラム。
【請求項4】
取得した前記映像データを第三の機械学習モデルに入力することで、人物の手を含む第一の領域と、商品を含む第二の領域と、第一領域と第二の領域の関係性を特定し、
特定された前記第一の領域と、前記第二の領域と、前記関係性とに基づいて、前記人物が商品を把持したことを特定する、処理を前記コンピュータにさらに実行させ、
前記特定する処理は、
前記第三の機械学習モデルを用いて前記人物が商品を把持したことが特定された前記映像データを、前記第一の機械学習モデルに入力することで、前記エリアの範囲内において前記人物が把持した商品を特定する、
ことを特徴とする請求項2に記載の情報処理プログラム。
【請求項5】
前記アラートを生成する処理は、
前記会計機に商品を登録する行動の異常に関連するアラートとして、前記人物が前記会計機に登録していない商品があること、または、前記人物が前記会計機に登録した商品が異常であることを示すアラートを生成する、
ことを特徴とする請求項1に記載の情報処理プログラム。
【請求項6】
前記会計機に商品を登録する行動の異常に関するアラートが生成されたときに、店員の有する端末に対して、前記会計機の識別情報と生成された前記アラートとを対応づけて通知する、処理を前記コンピュータに実行させることを特徴とする請求項1に記載の情報処理プログラム。
【請求項7】
前記アラートを生成する処理は
前記会計機に商品を登録する行動の異常に関するアラートが生成された場合に、前記会計機に位置する前記人物に前記商品の登録漏れを促す音声または画面を、前記会計機から出力する、
ことを特徴とする請求項1に記載の情報処理プログラム。
【請求項8】
前記会計機に商品を登録する行動の異常に関するアラートが生成されたときに、前記会計機の有するカメラにて、前記人物を撮影させ、
撮影された前記人物の画像データと、前記アラートを対応づけて記憶部に記憶する、処理を前記コンピュータに実行させることを特徴とする請求項1に記載の情報処理プログラム。
【請求項9】
取得した前記映像データを前記第三の機械学習モデルに入力することで、前記第一の領域と、前記第二の領域と、前記関係性を識別する処理を、前記コンピュータに実行させ、
前記第三の機械学習モデルは、商品を購入する人物を示す第1クラスおよび人物が出現する領域を示す第1領域情報と、商品を含む物体を示す第2クラスおよび物体が出現する領域を示す第2領域情報と、第1クラスと第2クラスとの相互作用と、を識別するように機械学習が実行されたHOID(Human Object Interaction Detection)用のモデルである、ことを特徴とする請求項4に記載の情報処理プログラム。
【請求項10】
前記アラートを生成する処理は、
取得した前記商品情報と、特定された前記人物が把持した商品とが一致しないときに、前記会計機に商品を登録する行動の異常に関連するアラートを生成する、
ことを特徴とする請求項1に記載の情報処理プログラム。
【請求項11】
前記会計機は、セルフレジ端末であることを特徴とする請求項1に記載の情報処理プログラム。
【請求項12】
コンピュータが、
商品のコードを会計機にスキャンする人物の映像データを取得し、
取得した前記映像データを分析することで、前記商品のコードを前記会計機にスキャンするために設定されたエリアの範囲内において前記人物が把持した商品を特定し、
前記会計機が前記商品のコードをスキャンすることで前記会計機に登録された商品情報を取得し、
取得した前記商品情報と、特定された前記人物が把持した商品とを比較することで、前記会計機に商品を登録する行動の異常に関連するアラートを生成する、
処理を実行することを特徴とする情報処理方法。
【請求項13】
商品のコードを会計機にスキャンする人物の映像データを取得し、
取得した前記映像データを分析することで、前記商品のコードを前記会計機にスキャンするために設定されたエリアの範囲内において前記人物が把持した商品を特定し、
前記会計機が前記商品のコードをスキャンすることで前記会計機に登録された商品情報を取得し、
取得した前記商品情報と、特定された前記人物が把持した商品とを比較することで、前記会計機に商品を登録する行動の異常に関連するアラートを生成する、
制御部を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理プログラム、情報処理方法および情報処理装置に関する。
【背景技術】
【0002】
スーパーマーケットやコンビニエンスストア等の店舗において、セルフレジが普及している。セルフレジは、商品を購入するユーザ自身が、商品のバーコードの読み取りから精算までを行うPOS(Point Of Sale)レジシステムである。たとえば、セルフレジを導入することで、人口減少による人手不足の改善、人件費を抑制することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2020-53019号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記技術では、不正を検出することが難しい。例えば、セルフレジなどの会計機では、ユーザによる不可抗力の誤りや故意の不正などがあり、未払い金などが発生する。
【0005】
不可抗力の誤りとしては、商品のスキャンを忘れてカゴからレジ袋に商品を移動させてしまうスキャン漏れなどがある。また、故意の不正としては、ユーザがバーコードだけを指で隠しながら商品をスキャンするフリをするバーコード隠しや、例えば6缶で1セットのビール箱にはビール箱と各缶にバーコードがついており誤って缶のバーコードを読み取らせる読み取り誤りなどがある。
【0006】
なお、各セルフレジに重量センサなどを導入することで、自動で商品数を計数して不正を検出することも考えられるが、コストが過大であり、特に大型店舗や全国展開する店舗にとっては現実的ではない。
【0007】
また、セルフレジでは、商品コードのスキャンや精算がユーザ自身に委ねられるので、不正行為を検出することが困難である側面がある。たとえば、上記の不正行為を検出する側面から画像認識AI(Artificial Intelligence)を適用しようにも、画像認識AIの訓練には大量の訓練データが必要となる。ところが、スーパーマーケットやコンビニエンスストア等の店舗では、多数の種類の商品が存在する上、個々の商品のライフサイクルも短いので、商品の入れ替えが頻繁に起こる。このような商品のライフサイクルに合わせて画像認識AIをチューニングしたり、あるいは新たな画像認識AIを訓練したりすることは困難である。
【0008】
一つの側面では、会計機における、ユーザの誤りや不正を検出することができる情報処理プログラム、情報処理方法および情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【0009】
第1の案では、情報処理プログラムは、コンピュータに、商品のコードを会計機にスキャンする人物の映像データを取得し、取得した前記映像データを分析することで、前記商品のコードを前記会計機にスキャンするために設定されたエリアの範囲内において前記人物が把持した商品を特定し、前記会計機が前記商品のコードをスキャンすることで前記会計機に登録された商品情報を取得し、取得した前記商品情報と、特定された前記人物が把持した商品とを比較することで、前記会計機に商品を登録する行動の異常に関連するアラートを生成する、処理を実行させることを特徴とする。
【発明の効果】
【0010】
一実施形態によれば、会計機における、ユーザの誤りや不正を検出することができる。
【図面の簡単な説明】
【0011】
図1図1は、実施例1にかかるセルフレジシステムの全体構成例を示す図である。
図2図2は、実施例1にかかる異常行動の検出例を説明する図である。
図3図3は、実施例1にかかる情報処理装置の機能構成を示す機能ブロック図である。
図4図4は、訓練データを説明する図である。
図5図5は、第一の機械学習モデルの機械学習を説明する図である。
図6図6は、第二の機械学習モデルの機械学習を説明する図である。
図7図7は、第三の機械学習モデルの機械学習を説明する図である。
図8図8は、実施例1にかかる異常行動の検出例1を説明する図である。
図9図9は、実施例1にかかる異常行動の検出例2を説明する図である。
図10図10は、商品の検出を説明する図である。
図11図11は、実施例1にかかる異常行動の検出例3を説明する図である。
図12図12は、アラートの報知例を説明する図である。
図13図13は、セルフレジへのアラート表示例を示す図である。
図14図14は、店員へのアラート表示例を示す図である。
図15図15は、処理の流れを示すフローチャートである。
図16図16は、ハードウェア構成例を説明する図である。
図17図17は、セルフレジのハードウェア構成例を説明する図である。
【発明を実施するための形態】
【0012】
以下に、本願の開示する情報処理プログラム、情報処理方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
【実施例0013】
<セルフレジシステムの説明>
図1は、実施例1にかかるセルフレジシステム5の全体構成例を示す図である。図1に示すように、セルフレジシステム5は、カメラ30と、セルフレジ50と、管理者端末60と、情報処理装置100とを有する。
【0014】
情報処理装置100は、カメラ30およびセルフレジ50に接続されるコンピュータの一例である。情報処理装置100は、有線や無線を問わず様々な通信網を採用できるネットワーク3を介して、管理者端末60に接続される。カメラ30およびセルフレジ50は、ネットワーク3を介して、情報処理装置100に接続されてもよい。
【0015】
カメラ30は、セルフレジ50を含む領域の映像を撮影するカメラの一例である。カメラ30は、映像のデータを、情報処理装置100に送信する。以下の説明では、映像のデータを「映像データ」または単に「映像」と表記する場合がある。
【0016】
映像データには、時系列の複数の画像フレームが含まれる。各画像フレームには、時系列の昇順に、フレーム番号が付与される。1つの画像フレームは、カメラ30があるタイミングで撮影した静止画像の画像データである。以下の説明では、画像データを単に「画像」と表記する場合がある。
【0017】
セルフレジ50は、商品を購入するユーザ2が、商品のバーコードの読み取りから精算までを行うPOSレジシステムや会計機の一例である。例えば、ユーザ2が、購入対象の商品を、セルフレジ50のスキャン領域に移動させると、セルフレジ50は、商品のバーコードをスキャンして、購入対象の商品として登録する。
【0018】
なお、セルフレジ50は、上述したように、お客様自身が購入商品の登録(レジ作業)および支払いを行うセルフレジの一例であり、例えばSelf checkout、automated checkout、self-checkout machineやself-check-out registerなどと呼ばれる。バーコードとは、縞模様状の線の太さによって数値や文字を表す識別子の一種であり、セルフレジ50がスキャンする(読み込む)ことで、商品の金額や種別(例えば食品)などを特定することができる。バーコードは、コードの一例であり、バーコード以外にも、同じ機能を有するQR(Quick Response)コードなどの2次元コードを用いることもできる。
【0019】
ユーザ2は、上記商品登録の動作を繰り返し実行し、商品のスキャンが完了すると、セルフレジ50のタッチパネル等を操作し、精算要求を行う。セルフレジ50は、精算要求を受け付けると、購入対象の商品の数、購入金額等を提示し、精算処理を実行する。セルフレジ50は、ユーザ2がスキャンを開始してから、精算要求を行うまでの間にスキャンした商品の情報を、記憶部に格納しておき、セルフレジデータ(商品情報)として、情報処理装置100に送信する。ユーザ2は、店内で選択した購入対象の商品を入れてセルフレジまで、運ぶ買い物カゴや商品カートなどの運搬道具を用いて運搬する。
【0020】
管理者端末60は、店舗の管理者が利用する端末装置の一例である。管理者端末60は、情報処理装置100から、商品の購入に関して不正が行われたことを示すアラートの通知等を受け付ける。
【0021】
このような構成において、情報処理装置100は、商品のバーコードをセルフレジ50にスキャンする人物の映像データを取得する。情報処理装置100は、取得した映像データを第一の機械学習モデルに入力することで、商品のバーコードをセルフレジ50にスキャンするために設定されたエリアの範囲内において人物が把持した商品を特定する。なお、機械学習モデルではなく、画像分析等を用いて、人物が把持した商品を特定することもできる。情報処理装置100は、セルフレジ50が商品のバーコードをスキャンすることでセルフレジ50に登録された商品情報を取得し、取得をした商品情報と、人物が把持した商品とを比較することで、セルフレジ50に商品を登録する行動の異常に関連するアラートを生成する。
【0022】
図2は、実施例1にかかる異常行動の検出例を説明する図である。図2に示すように、情報処理装置100は、セルフレジ50において商品のバーコードを読み取るスキャン位置を撮像する映像データから、AI(Artificial Intelligence)を用いてスキャン対象の商品を特定する。一方で、情報処理装置100は、セルフレジ50から、セルフレジ50に実際に登録された商品を取得する。そして、情報処理装置100は、映像データから特定した商品と、セルフレジ50から取得した商品とを比較することにより、不正な行動の即時検出を実現する。
【0023】
すなわち、情報処理装置100は、ユーザ2がセルフレジ50で把持する商品とは異なる商品がセルフレジ50に登録されたか否かを判定する。この結果、情報処理装置100は、高額な商品の代わりに低額な商品をスキャンして高額な商品のスキャンが完了したフリをする行動を検出することで、セルフレジ50における不正を検出することができる。
【0024】
<機能構成>
図3は、実施例1にかかる情報処理装置100の機能構成を示す機能ブロック図である。図3に示すように、情報処理装置100は、通信部101、記憶部102、制御部110を有する。
【0025】
通信部101は、他の装置との間の通信を制御する処理部であり、例えば通信インタフェースなどにより実現される。例えば、通信部101は、カメラ30から映像データを受信し、制御部110による処理結果を管理者端末60に送信する。
【0026】
記憶部102は、各種データや制御部110が実行するプログラムなどを記憶する処理部であり、メモリやハードディスクなどにより実現される。記憶部102は、訓練データDB103、第一の機械学習モデル104、第二の機械学習モデル105、第三の機械学習モデル106、映像データDB107を記憶する。
【0027】
訓練データDB103は、各機械学習モデルの訓練に使用される訓練データを記憶するデータベースである。例えば、図4を用いて、第三の機械学習モデル106にHOID(Human Object Interaction Detection)用のモデルが採用されている例で説明する。図4は、訓練データを説明する図である。図4に示すように、各訓練データは、入力データとなる画像データと、当該画像データに対して設定された正解情報(ラベル)とを有する。
【0028】
正解情報には、検出対象であるヒトとモノのクラスと、ヒトとモノの相互作用を示すクラスと、各クラスの領域を示すBbox(Bounding Box:物体の領域情報)とが設定される。例えば、正解情報として、商品等の物体であってレジ袋以外の物体を示すSomethingクラスの領域情報、商品を購入するユーザを示すヒトのクラスの領域情報、Somethingクラスとヒトのクラスとの相互作用を示す関係性(把持クラス)とが設定される。すなわち、正解情報として、人が把持している物体に関する情報が設定される。なお、ヒトのクラスは、第1クラスの一例であり、Somethingクラスは、第2クラスの一例であり、ヒトのクラスの領域情報は、第1の領域の一例であり、Somethingのクラスの領域情報は、第2の領域の一例であり、ヒトとモノの関係性は、相互作用の一例である。
【0029】
また、正解情報として、レジ袋を示すレジ袋のクラスの領域情報と、レジ袋を使用するユーザを示すヒトのクラスの領域情報と、レジ袋のクラスとヒトのクラスとの相互作用を示す関係性(把持クラス)とが設定される。すなわち、正解情報として、人が把持しているレジ袋に関する情報が設定される。
【0030】
一般的に、通常の物体識別(物体認識)でSomethingクラスを作ると、すべての背景、服装品、小物などタスクと関係ないものをすべて検出することになる。かつ、それらはすべてSomethingなので、画像データ内に大量のBboxが識別されるだけで何も分からない。HOIDの場合は、ヒトが持っているモノという特殊な関係性(座っている、操作している、など他の関係の場合もある)であることが分かるので、意味のある情報としてタスク(例えばセルフレジの不正検出タスク)に利用することができる。物体をSomethingで検出した上で、レジ袋などをBag(レジ袋)という固有のクラスとして識別する。このレジ袋は、セルフレジの不正検出タスクでは価値のある情報だが、他のタスクでは重要な情報ではないので、商品はカゴ(買い物かご)から取り出され袋に収納されるというセルフレジの不正検出タスクの固有の知見に基づいて利用することに価値があり、有用な効果が得られる。
【0031】
図3に戻り、第一の機械学習モデル104は、画像データに写っている人物が把持した商品を識別するように訓練された機械学習モデルの一例である。例えば、第一の機械学習モデル104は、映像データの入力に応じて、商品のコードをセルフレジ50にスキャンするために設定されたエリアの範囲内(例えばスキャン位置)において人物が把持した商品を特定して出力する。
【0032】
第二の機械学習モデル105は、画像データに写っている人物が把持する商品の外観に関する属性を識別するように訓練された機械学習モデルの一例である。例えば、第二の機械学習モデル105は、映像データの入力に応じて、人物が把持した商品の外観に関する属性として、商品の大きさ、商品の形状、商品の色、商品の質感、商品の重さ、商品の個数などを特定して出力する。
【0033】
第三の機械学習モデル106は、画像データに写っている人物と物(例えば、人物と収納、人物と商品など)を識別するように訓練された機械学習モデルの一例である。具体的には、第三の機械学習モデル106は、入力された画像データから、ヒト、商品、ヒトと商品の関係性を識別して識別結果を出力する機械学習モデルである。例えば、第三の機械学習モデル106は、HOID用のモデルを採用することができ、各種ニューラルネットワークなどを用いた機械学習モデルを採用することもできる。HOIDの場合は、「ヒトのクラスと領域情報、商品(モノ)のクラスと領域情報、ヒトと商品の相互作用」が出力される。
【0034】
映像データDB107は、セルフレジ50に設置されるカメラ30により撮像された映像データを記憶するデータベースである。例えば、映像データDB107は、セルフレジ50ごと、または、カメラ30ごとに、映像データを記憶する。
【0035】
制御部110は、情報処理装置100全体を司る処理部であり、例えばプロセッサなどにより実現される。この制御部110は、機械学習部111、映像取得部112、不正処理部113、警告制御部114を有する。なお、機械学習部111、映像取得部112、不正処理部113、警告制御部114は、プロセッサが有する電子回路やプロセッサが実行するプロセスなどにより実現される。
【0036】
(機械学習)
機械学習部111は、訓練データDB103に記憶される各訓練データを用いて、各機械学習モデルの機械学習を実行する処理部である。
【0037】
図5は、第一の機械学習モデル104の機械学習を説明する図である。図5に示すように、機械学習部111は、「画像データ」を説明変数、「商品」を目的変数とする訓練データを第一の機械学習モデル104に入力し、第一の機械学習モデル104の出力結果「商品」を取得する。そして、機械学習部111は、第一の機械学習モデル104の出力結果「商品」と目的変数「商品」との誤差情報を算出する。その後、機械学習部111は、誤差逆伝播により、誤差が小さくなるように第一の機械学習モデル104のパラメータ更新を行う機械学習を実行する。なお、ここでいう商品とは、商品そのもの、商品名、商品の種別や種類、商品の項目など商品を特定する様々な情報が含まれる。
【0038】
図6は、第二の機械学習モデル105の機械学習を説明する図である。図6に示すように、機械学習部111は、「画像データ」を説明変数、「商品の属性」を目的変数とする訓練データを第二の機械学習モデル105に入力し、第二の機械学習モデル105の出力結果「商品の属性」を取得する。そして、機械学習部111は、第二の機械学習モデル105の出力結果「商品の属性」と目的変数「商品の属性」との誤差情報を算出する。その後、機械学習部111は、誤差逆伝播により、誤差が小さくなるように第二の機械学習モデル105のパラメータ更新を行う機械学習を実行する。
【0039】
図7は、第三の機械学習モデル106の機械学習を説明する図である。図7では、第三の機械学習モデル106にHOIDを用いた例を図示している。図7に示すように、機械学習部111は、訓練データの入力データをHOIDに入力し、HOIDの出力結果を取得する。この出力結果には、HOIDが検出したヒトのクラスと、モノのクラスと、ヒトとモノの相互作用などが含まれる。そして、機械学習部111は、訓練データの正解情報と、HOIDの出力結果との誤差情報を算出し、誤差逆伝播により、誤差が小さくなるようにHOIDのパラメータ更新を行う機械学習を実行する。
【0040】
(不正検知処理)
不正処理部113は、商品特定部113a、スキャン情報取得部113b、不正検知部113cを有し、セルフレジ50で発生するユーザの不正な行動を検知する処理部である。
【0041】
(不正検知処理:商品の特定)
商品特定部113aは、映像取得部112により取得された映像データから、人物が把持した商品や人物が把持した商品の属性などを特定する処理部である。そして、商品特定部113aは、特定した情報を不正検知部113cに出力する。
【0042】
例えば、商品特定部113aは、映像データを第一の機械学習モデル104に入力することで、商品のバーコードをセルフレジ50にスキャンするために設定されたエリアの範囲内において人物が把持した商品を特定する。すなわち、商品特定部113aは、買い物かごから取り出されてスキャン位置まで把持されていた商品、スキャン位置で把持される商品、または、スキャン位置周辺に置かれた商品を特定する。
【0043】
なお、商品特定部113aは、映像データ内の各画像データから、第三の機械学習モデル106を用いて商品がスキャン位置に位置する状態を撮像した画像データを特定する。そして、商品特定部113aは、スキャン位置に位置する状態を撮像した画像データを第一の機械学習モデル104に入力することで、スキャン位置において人物が把持した商品を特定することもできる。
【0044】
また、商品特定部113aは、映像データを第二の機械学習モデル105に入力することで、人物が把持した商品の外観に関する属性を特定する。すなわち、商品特定部113aは、買い物かごから取り出されてスキャン位置まで把持されていた商品について、商品の大きさ、商品の形状、商品の色、商品の質感、商品の重さ、商品の個数などを特定する。言い換えると、商品特定部113aは、把持された商品の外観的特徴を特定する。
【0045】
(不正検知処理:スキャン情報)
スキャン情報取得部113bは、セルフレジ50が商品のバーコードをスキャンすることでセルフレジ50に登録された商品情報を取得する処理部である。例えば、スキャン情報取得部113bは、商品情報として、商品名、金額、商品の属性(例えば商品の大きさ、商品の形状、商品の色、商品の質感、商品の重さ、商品の個数など)を取得する。
【0046】
なお、スキャン情報取得部113bは、商品名、金額などから商品の属性を推定することもでき、商品名と金額と少なくとも1つの商品の属性から他の商品の属性を推定することもできる。例えば、スキャン情報取得部113bは、商品名と金額と商品の属性とを対応付けた表や、商品名、金額などから商品の属性を推定する機械学習モデルなどを用いて、商品の属性を推定することもできる。
【0047】
なお、スキャン情報取得部113bは、バーコードがスキャンされたことでセルフレジ50に登録されたスキャン情報に限らず、例えばセルフレジ50のタッチパネルで選択されて登録された商品情報をスキャン情報として取得することもできる。
【0048】
(不正検知処理:不正検知)
不正検知部113cは、スキャン情報取得部113bにより取得された商品情報と、商品特定部113aにより特定された人物が把持した商品とを比較することで、セルフレジ50に商品を登録する行動の異常(不正)を検知する処理部である。例えば、不正検知部113cは、商品が不一致の場合に不正な行動が発生したと検知し、不正が発生したセルフレジ50に関する情報や不正の情報などを警告制御部114に通知する。ここで、不正検知の具体例を説明する。
【0049】
(不正検知処理:具体例1)
具体例1は、画像データの解析とスキャン情報とに基づく不正検知の手法である。図8は、実施例1にかかる異常行動の検出例1を説明する図である。図8に示すように、不正処理部113は、カメラ30により撮像された画像データを取得し、取得された画像データを第一の機械学習モデル104に入力して、スキャン位置で人物が把持した商品を特定する。一方、不正処理部113は、セルフレジ50から、実際にスキャンされた商品の情報を取得する。そして、不正処理部113は、両商品を比較し、商品が不一致の場合に不正な行動を検知する。
【0050】
(不正検知処理:具体例2)
具体例2は、具体例1で不正ではないと判定された場合に、詳細な不正判定を行うことで、不正な行動をより強固に検出する手法である。なお、具体例1を実行した後に限らず、具体例2だけを実行してもよい。図9は、実施例1にかかる異常行動の検出例2を説明する図である。図9に示すように、不正処理部113は、具体例1の手法により商品が一致した場合に、カメラ30により撮像された画像データであって第一の機械学習モデル104に入力された画像データを第二の機械学習モデル105に入力して、スキャン位置で人物が把持した商品の属性を特定する。一方、不正処理部113は、スキャン情報取得部113bを介して、セルフレジ50に実際にスキャンされた商品の属性を取得する。そして、不正処理部113は、両商品の属性を比較し、商品の属性が不一致の場合に、不正な行動を検知する。
【0051】
(不正検知処理:具体例3)
具体例3は、映像データの各画像データからHOIDを用いてモデルに入力することで、不正検知処理の高速化を図る手法である。
【0052】
図10は、商品の検出を説明する図である。図10は、HOIDに入力される画像データと、HOIDの出力結果とが示されている。さらに、図10には、ヒトのBboxが実線の枠で示されると共に、モノのBboxが破線の枠で示されている。図10に示すように、HOIDの出力結果には、ヒトのBbox、モノのBbox、ヒトとモノの相互作用の確率値およびクラス名などが含まれる。これらのうちモノのBboxを参照して、不正処理部113は、画像データからモノのBbox、すなわち図10の破線の枠に対応する部分画像を切り出すことにより、人物が把持している商品の領域を抽出する。
【0053】
つまり、不正処理部113は、画像データをHOIDに入力することで、既知であるスキャン位置で、人物の領域と、商品の領域と、人物と商品の関係性や人物が商品を把持している行動とを検出することができる。このようにして、不正処理部113は、随時取得される映像データ内の複数の画像データのうち、既知であるスキャン位置で人物が商品を把持している行動が検出された画像データを特定することができる。
【0054】
図11は、実施例1にかかる異常行動の検出例3を説明する図である。図11では、HOIDへの入力データである画像データ1から7と、画像データ1から7が順に入力されたときのHOIDの検出内容を図示している。なお、図11において、画像データに上に書かれている説明は、画像データに写っている情報であって、HOIDへの入力としては未知の情報であり、HOIDによる検出対象の情報である。
【0055】
図11に示すように、不正処理部113は、買い物かごから商品を取り出す人物が写っている画像データ1を取得してHOIDに入力し、出力結果を取得する。そして、不正処理部113は、人物の領域、商品の領域、人物と商品の関係性(把持)、商品を取り出したユーザ2の行動を検出する。
【0056】
続いて、不正処理部113は、買い物かごから取り出した商品を把持する人物が写っている画像データ2を取得してHOIDに入力し、出力結果を取得する。そして、不正処理部113は、人物の領域、商品の領域、人物と商品の関係性(把持)、商品を把持するユーザ2の行動を検出する。
【0057】
続いて、不正処理部113は、商品をスキャン位置で把持する人物が写っている画像データ3を取得してHOIDに入力し、出力結果を取得する。そして、不正処理部113は、人物の領域、商品の領域、人物と商品の関係性(把持)、スキャン位置で商品を把持するユーザ2の行動を検出する。ここで、不正処理部113は、「スキャン位置で商品を把持するユーザ2」が検出されたことから、画像データ3をHOIDによる判定対象に特定する。
【0058】
そして、不正処理部113は、特定された画像データ3を第一の機械学習モデル104に入力して、スキャン位置で人物が把持した商品を特定する。一方、不正処理部113は、セルフレジ50から、画像データ3と同じタイミング(例えば時間差が所定時間内)で実際にスキャンされた商品の情報を取得する。そして、不正処理部113は、両商品を比較し、商品が不一致の場合に不正な行動を検知する。なお、具体例3と具体例2を組み合わせることもできる。
【0059】
(アラート報知)
警告制御部117は、不正検知部116により不正な行動(不正な動作)が検知された場合に、アラートを生成して、アラートの報知制御を実行する処理部である。例えば、警告制御部117は、人物がセルフレジ50に登録した商品が異常であることを示すアラートを生成して、セルフレジ50や管理者端末60に出力する。
【0060】
例えば、警告制御部117は、アラートとして、セルフレジ50にメッセージを表示する。図12は、アラートの報知例を説明する図である。図12に示すように、警告制御部117は、セルフレジ50のタッチパネルなどの表示画面に、「スキャン忘れの商品がありませんか?再度、商品のスキャンをお願いします。」などのメッセージを表示させる。
【0061】
また、警告制御部117は、高額な商品をスキャンせずに、セルフレジ50のタッチパネルで低額な商品を手入力することで、低額で高額な商品を買ったことにする不正(いわゆるバナナトリック)を検知した場合に、セルフレジ50に、具体的な情報を示すアラートを報知することもできる。
【0062】
図13は、セルフレジ50へのアラート表示例を示す図である。図13には、バナナトリック検出時にセルフレジ50に表示されるアラートが示されている。図13に示すように、セルフレジ50のタッチパネル51には、アラートウィンドウ230が表示される。このアラートウィンドウ230には、手動入力を介してレジ登録された商品アイテム「バナナ」と、各機械学習モデルの画像解析により特定された商品アイテム「ワイン」とが対比できる状態で表示される。この他、アラートウィンドウ230には、訂正入力のやり直しを促す通知を含めることができる。このようなアラートウィンドウ230の表示によれば、「ワイン」を手動入力すべきレジ登録の代わりに「バナナ」の手動入力でレジ登録するバナナトリックの検知をユーザに警告できる。このため、バナナトリックによる精算の中止を促すことができる結果、バナナトリックによる店舗の被害を抑制できる。なお、警告制御部117は、図13に示したアラートの内容を音声で出力することもできる。
【0063】
また、警告制御部117は、セルフレジ50に設置されている警告灯を点灯させたり、管理者端末60に該当セルフレジ50の識別子と不正発生の可能性があるメッセージとを表示させたり、店内にいる店員の端末に該当セルフレジ50の識別子と不正発生と確認の必要性を示すメッセージとを送信させたりする。
【0064】
図14は、店員へのアラート表示例を示す図である。図14には、バナナトリック検出時に管理者端末60の表示部に表示されるアラートが示されている。図14に示すように、管理者端末60の表示部には、アラートウィンドウ250が表示される。このアラートウィンドウ250には、手動入力を介してレジ登録された商品アイテム「バナナ」及び価格「350円」と、画像解析により特定された商品アイテム「ワイン」及び価格「4500円」とが対比できる状態で表示される。さらに、アラートウィンドウ250には、不正種別「バナナトリック」と、バナナトリックが発生しているレジ番号「2」と、バナナトリックでの精算で発生する被害予想額「4150円(=4500円-350円)」とが表示される。この他、アラートウィンドウ250には、レジ番号「2」のセルフレジ50を利用するユーザ2の顔などが撮影された顔写真の表示、店内放送、あるいは警察などへの通報などのリクエストを受け付けるGUI部品241~243などが表示される。このようなアラートウィンドウ240の表示によれば、バナナトリックの被害発生の報知、被害度合いの把握、さらには、被害への各種の対策の提示を実現できる。このため、ユーザ2によるバナナトリックへの対応を促すことができる結果、バナナトリックによる店舗の被害を抑制できる。
【0065】
また、警告制御部117は、セルフレジ50に商品を登録する行動の異常に関するアラートを生成した場合に、セルフレジ50が有するカメラ30にて人物を撮影させ、撮影された人物の画像データと、アラートを対応づけて記憶部に記憶する。このようにすることで、不正な行動を行う不正な人物の情報を収集することができるので、店舗の入り口で不正な行動を行ったことがある来店者を検知するなど、不正行動を未然に防ぐための各種施策に役立てることができる。また、警告制御部117は、不正な人物の画像データを用いた教師あり学習により、機械学習モデルを生成することで、セルフレジ50を使用する人物の画像データから不正な人物の検出や店舗の入り口での不正な人物の検出などを行うことができる。また、警告制御部117は、不正な行動を行った人物のクレジットカードの情報をセルフレジ50から取得して保持することもできる。
【0066】
<処理の流れ>
図15は、処理の流れを示すフローチャートである。図15に示すように、情報処理装置100は、映像データを随時取得する(S101)。
【0067】
続いて、情報処理装置100は、処理開始が指示されると(S102:Yes)、映像データ内のフレームを取得する(S103)。ここで、情報処理装置100は、映像データが存在しない場合は、処理を終了する。一方、情報処理装置100は、映像データが存在する場合は、第三の機械学習モデル106を用いて人物の領域や商品の領域などを特定する(S104)。
【0068】
ここで、情報処理装置100は、スキャン位置に商品の領域が検出されない場合(S105:No)、S103以降を繰り返す。一方、情報処理装置100は、スキャン位置に商品の領域が検出された場合(S105:Yes)、スキャン位置に商品の領域が検出されたフレーム(画像データ)を第一の機械学習モデル104に入力して、スキャン位置の商品を特定する(S106)。
【0069】
そして、情報処理装置100は、セルフレジ50からスキャン情報を取得してスキャンされた商品を特定し(S107)、スキャン情報から特定された商品と第一の機械学習モデル104により特定された商品とを比較する(S108)。
【0070】
その後、情報処理装置100は、比較した商品が不一致の場合(S108:No)、アラートを報知し(S109)、比較した商品が一致する場合(S108:Yes)、処理を終了する。
【0071】
<効果>
上述したように、情報処理装置100は、商品のコードをセルフレジ50にスキャンする人物の映像データを取得する。情報処理装置100は、取得した映像データを第一の機械学習モデルに入力することで、商品のコードをセルフレジ50にスキャンするために設定されたエリアの範囲内において人物が把持した商品を特定する。情報処理装置100は、セルフレジ50が商品のコードをスキャンすることでセルフレジ50に登録された商品情報を取得し、取得をした商品情報と、人物が把持した商品とを比較することで、不正な行動を検知する。この結果、情報処理装置100は、セルフレジ50における不正を検出することができる。また、情報処理装置100は、複雑な処理を行わずに不正を検知することができるので、不正検知処理の高速化を図ることができる。
【0072】
また、情報処理装置100は、商品の属性の比較により不正な行動を検知する。この結果、情報処理装置100は、2段階で不正を検出することができるので、商品だけでは不正と判定できない行動や未だに行われていない未知の不正が発生しても、当該不正の検出漏れを削減することができる。
【0073】
また、情報処理装置100は、セルフレジ50に商品を登録する行動の異常に関するアラートが生成されたときに、セルフレジ50の有するカメラにて、人物を撮影させ、撮影された人物の画像データと、アラートを対応づけて記憶部に記憶する。したがって、情報処理装置100は、不正な行動を行う不正な人物の情報を収集して保持することができるので、来店者を撮像するカメラの撮像データから不正な人物の来店を検出することで、不正行動を未然に防ぐための各種施策に役立てることができる。
【0074】
また、情報処理装置100は、不正な行動を行った人物のクレジットカードの情報をセルフレジ50から取得して保持することもできるので、不正な行動が確定した場合、クレジットカード会社を介して料金を請求することができる。
【0075】
また、情報処理装置100は、HOIDを用いて商品がスキャン位置に位置したことを特定するので、商品の特定に利用する画像データの絞り込みを実行でき、処理の高速化と精度の向上の両方の側面で、セルフレジ50における不正を検出することができる。
【0076】
また、情報処理装置100は、人物がセルフレジ50に登録していない商品があること、または、人物がセルフレジ50に登録した商品が異常であることを示すアラートを生成する。したがって、店員等は、情報処理装置100を用いることで、不正な行動を起こした人物が店外に出るまでに事情を聞くなどの対応を行うことができる。
【0077】
また、情報処理装置100は、セルフレジ50に商品を登録する行動の異常に関するアラートが生成された場合に、セルフレジ50に位置する人物に商品の登録漏れを促す音声または画面を、セルフレジ50から出力する。したがって、情報処理装置100は、不可抗力のミスであっても故意の不正であっても、スキャン中の人物に直接注意を促すことができるので、ミスや故意の不正を削減することができる。
【実施例0078】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
【0079】
(数値等)
上記実施例で用いたセルフレジやカメラの台数、数値例、訓練データ例、訓練データ数、機械学習モデル、各クラス名、クラス数、データ形式等は、あくまで一例であり、任意に変更することができる。また、各フローチャートで説明した処理の流れも矛盾のない範囲内で適宜変更することができる。また、各モデルは、ニューラルネットワークなどの様々なアルゴリズムにより生成されたモデルを採用することができる。
【0080】
また、情報処理装置100は、スキャン位置や買い物かごの位置については、位置を検出する別の機械学習モデル、物体検知技術、位置検出技術など公知の技術を用いることもできる。例えば、情報処理装置100は、フレーム(画像データ)間差分、フレームの時系列の変化に基づき、買い物かごの位置を検出することができるので、それを用いて検出してもよく、それを用いて別のモデルを生成してもよい。また、情報処理装置100は、予め買い物かごの大きさを指定しておくことで、画像データからその大きさの物体が検出された場合に、買い物かごの位置として識別することもできる。なお、スキャン位置は、ある程度固定された位置なので、情報処理装置100は、管理者等が指定した位置をスキャン位置として識別することもできる。
【0081】
(システム)
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更されてもよい。
【0082】
また、各装置の構成要素の分散や統合の具体的形態は図示のものに限られない。例えば、不正処理部113と警告制御部114とが統合されてもよい。つまり、その構成要素の全部または一部は、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合されてもよい。さらに、各装置の各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0083】
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0084】
(ハードウェア)
図16は、ハードウェア構成例を説明する図である。ここでは、一例として、情報処理装置100について説明する。図16に示すように、情報処理装置100は、通信装置100a、HDD(Hard Disk Drive)100b、メモリ100c、プロセッサ100dを有する。また、図16に示した各部は、バス等で相互に接続される。
【0085】
通信装置100aは、ネットワークインタフェースカードなどであり、他の装置との通信を行う。HDD100bは、図3に示した機能を動作させるプログラムやDBを記憶する。
【0086】
プロセッサ100dは、図3に示した各処理部と同様の処理を実行するプログラムをHDD100b等から読み出してメモリ100cに展開することで、図3等で説明した各機能を実行するプロセスを動作させる。例えば、このプロセスは、情報処理装置100が有する各処理部と同様の機能を実行する。具体的には、プロセッサ100dは、機械学習部111、映像取得部112、不正処理部113、警告制御部114等と同様の機能を有するプログラムをHDD100b等から読み出す。そして、プロセッサ100dは、機械学習部111、映像取得部112、不正処理部113、警告制御部114等と同様の処理を実行するプロセスを実行する。
【0087】
このように、情報処理装置100は、プログラムを読み出して実行することで情報処理方法を実行する情報処理装置として動作する。また、情報処理装置100は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、情報処理装置100によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、上記実施例が同様に適用されてもよい。
【0088】
このプログラムは、インターネットなどのネットワークを介して配布されてもよい。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)などのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行されてもよい。
【0089】
図17は、セルフレジ50のハードウェア構成例を説明する図である。図17に示すように、セルフレジ50は、通信インタフェース400a、HDD400b、メモリ400c、プロセッサ400d、入力装置400e、出力装置400fを有する。また、図17に示した各部は、バスなどで相互に接続される。
【0090】
通信インタフェース400aは、ネットワークインタフェースカードなどであり、他の情報処理装置との通信を行う。HDD400bは、セルフレジ50の各機能を動作させるプログラムやデータを記憶する。
【0091】
プロセッサ400dは、セルフレジ50の各機能の処理を実行するプログラムをHDD400bなどから読み出してメモリ400cに展開することで、セルフレジ50の各機能を実行するプロセスを動作させるハードウェア回路である。すなわち、このプロセスは、セルフレジ50が有する各処理部と同様の機能を実行する。
【0092】
このように、セルフレジ50は、セルフレジ50の各機能の処理を実行するプログラムを読み出して実行することで動作制御処理を実行する情報処理装置として動作する。また、セルフレジ50は、媒体読取装置によって記録媒体からプログラムを読み出し、読み出されたプログラムを実行することでセルフレジ50の各機能を実現することもできる。なお、この他の実施例でいうプログラムは、セルフレジ50によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本実施形態が同様に適用されてよい。
【0093】
また、セルフレジ50の各機能の処理を実行するプログラムは、インターネットなどのネットワークを介して配布できる。また、このプログラムは、ハードディスク、FD、CD-ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行できる。
【0094】
入力装置400eは、プロセッサ400dによって実行されるプログラムに対する入力操作など、ユーザによる各種入力操作を検知する。当該入力操作には、例えば、タッチ操作などが含まれる。タッチ操作の場合、セルフレジ50はさらに表示部を備え、入力装置400eによって検知される入力操作は、当該表示部に対するタッチ操作であってよい。入力装置400eは、例えば、ボタン、タッチパネル、近接センサなどであってよい。また、入力装置400eは、バーコードの読み取りをする。入力装置400eは、例えば、バーコードリーダである。バーコードリーダは、光源と光センサを持ち、バーコードをスキャンする。
【0095】
出力装置400fは、プロセッサ400dによって実行されるプログラムから出力されるデータをセルフレジ50に接続された外部装置、例えば、外部ディスプレイ装置などを介して出力する。なお、セルフレジ50が表示部を備える場合、セルフレジ50は出力装置400fを備えなくてもよい。
【符号の説明】
【0096】
30 カメラ
50 セルフレジ
60 管理者端末
100 情報処理装置
101 通信部
102 記憶部
103 訓練データDB
104 第一の機械学習モデル
105 第二の機械学習モデル
106 第三の機械学習モデル
107 映像データDB
110 制御部
111 機械学習部
112 映像取得部
113 不正処理部
113a 商品特定部
113b スキャン情報取得部
113c 不正検知部
114 警告制御部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17