JP2020198054A - プログラム、情報処理システム、情報処理装置及び情報処理方法 - Google Patents

プログラム、情報処理システム、情報処理装置及び情報処理方法 Download PDF

Info

Publication number
JP2020198054A
JP2020198054A JP2019105635A JP2019105635A JP2020198054A JP 2020198054 A JP2020198054 A JP 2020198054A JP 2019105635 A JP2019105635 A JP 2019105635A JP 2019105635 A JP2019105635 A JP 2019105635A JP 2020198054 A JP2020198054 A JP 2020198054A
Authority
JP
Japan
Prior art keywords
product code
product
control unit
price
distance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019105635A
Other languages
English (en)
Inventor
浩志 脇森
Hiroshi Wakimori
浩志 脇森
若菜 石田
Wakana Ishida
若菜 石田
祐城 小松
Yuki Komatsu
祐城 小松
建 阿部
Ken Abe
建 阿部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nihon Unisys Ltd
Original Assignee
Nihon Unisys Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nihon Unisys Ltd filed Critical Nihon Unisys Ltd
Priority to JP2019105635A priority Critical patent/JP2020198054A/ja
Publication of JP2020198054A publication Critical patent/JP2020198054A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Character Discrimination (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】商品コードの認識精度を向上することが可能なプログラム等を提供すること。【解決手段】一つの側面に係るプログラムは、撮影した値札の商品コードを含む画像を取得し、取得した前記画像を入力した場合に商品コードの認識結果を出力する深層学習モデルを用いて、商品コードを認識し、認識した商品コードと、商品マスタデータベースに記憶された商品コードとの相関を示す距離を算出する処理をコンピュータに実行させる。これにより、商品コードの認識精度を向上することが可能となる。【選択図】図1

Description

本発明は、プログラム、情報処理システム、情報処理装置及び情報処理方法に関する。
特許文献1には、バーコードから商品コードを認識することにより、重量チェック処理を提供するセルフチェックアウト端末が開示されている。
特開2013−101708号公報
しかしながら、特許文献1に係る発明は、バーコードスキャナによって商品コードを認識できない場合に、商品コードを特定することができない恐れがある。
一つの側面では、商品コードの認識精度を向上することが可能なプログラム等を提供することにある。
一つの側面に係るプログラムは、撮影した値札の商品コードを含む画像を取得し、取得した前記画像を入力した場合に商品コードの認識結果を出力する深層学習モデルを用いて、商品コードを認識し、認識した商品コードと、商品マスタデータベースに記憶された商品コードとの相関を示す距離を算出する処理をコンピュータに実行させる。
一つの側面では、商品コードの認識精度を向上することが可能となる。
商品コード選択システムの概要を示す説明図である。 サーバの構成例を示すブロック図である。 商品マスタDBのレコードレイアウトの一例を示す説明図である。 選択結果DBのレコードレイアウトの一例を示す説明図である。 ロボットの構成例を示すブロック図である。 画像DBのレコードレイアウトの一例を示す説明図である。 閾値DBのレコードレイアウトの一例を示す説明図である。 距離DBのレコードレイアウトの一例を示す説明図である。 端末の構成例を示すブロック図である。 値札画像から認識された商品コードに基づいて商品コードを選択する動作を説明する説明図である。 商品コード認識モデルを説明する説明図である。 距離算出処理を示す動作を説明する説明図である。 値札画像から認識された商品コードに基づいて商品コードを選択する際の処理手順を示すフローチャートである。 最短距離算出のサブルーチンの処理手順を示すフローチャートである。 実施形態2のロボットの構成例を示すブロック図である。 文字セットDBのレコードレイアウトの一例を示す説明図である。 文字セットによる最短距離算出のサブルーチンの処理手順を示すフローチャートである。 文字補完による最短距離算出のサブルーチンの処理手順を示すフローチャートである。 実施形態3の商品コードを選択する際の処理手順を示すフローチャートである。 選択成功の回数に応じた商品コードを特定する際の処理手順を示すフローチャートである。 実施形態5のロボットの構成例を示すブロック図である。 売価チェック結果DBのレコードレイアウトの一例を示す説明図である。 商品コード及び商品の価格両方により売価をチェックする際の処理手順を示すフローチャートである。 実施形態6のサーバの構成例を示すブロック図である。 マップDBのレコードレイアウトの一例を示す説明図である。 実施形態6の選択結果DBのレコードレイアウトの一例を示す説明図である。 商品コードを選択した選択結果を表示する画面の一例である。 施設でカテゴリごとに商品が置かれた場所を示すマップ画面の一例である。 画面操作を受け付ける際の処理手順を示すフローチャートである。
以下、本発明をその実施形態を示す図面に基づいて詳述する。
(実施形態1)
実施形態1は、撮影した値札の商品コードを含む画像から該商品コードを認識し、認識した商品コードによる商品コードの選択処理を行う形態に関する。
図1は、商品コード選択システムの概要を示す説明図である。本実施形態のシステムは、情報処理装置1、情報処理装置2及び情報処理端末3を含み、各装置はインターネット等のネットワークNを介して情報の送受信を行う。
本実施形態のシステムは、撮影した値札の商品コードを含む画像から商品コードを認識し、認識した商品コードと、商品マスタデータベースに記憶された商品コードとの相関を示す距離を算出する。算出された距離に応じて、商品コードの選択処理が行われる。
情報処理装置1は、種々の情報に対する処理、記憶及び送受信を行う情報処理装置である。情報処理装置1は、例えばサーバ装置、パーソナルコンピュータ等である。本実施形態において、情報処理装置1はサーバ装置であるものとし、以下では簡潔のためサーバ1と読み替える。
情報処理装置2は、実空間内で移動させる移動機構が設置され、値札の撮影、商品コードの認識、及び商品コードの選択等を行う情報処理装置である。情報処理装置2は、例えば移動型の棚監視ロボット、空撮用のドローン等であっても良い。例えば店舗の営業終了後22時から翌日の開店前5時の間に、カメラ等のセンサを備えた棚監視ロボットが店舗内を自動で巡回する。棚監視ロボットが、商品棚に掲載されている商品コード、及び商品価格等を認識し、売価チェック等を自動的に行っても良い。以下では簡潔のため、情報処理装置2をロボット2と読み替える。
情報処理端末3は、商品コードの選択結果等を表示する端末装置である。情報処理端末3は、例えばスマートフォン、携帯電話、アップルウォッチ(Apple Watch:登録商標)等のウェアラブルデバイス、タブレット、パーソナルコンピュータ端末等の情報処理機器である。以下では簡潔のため、情報処理端末3を端末3と読み替える。
続けて、値札画像から認識された商品コードに基づいて商品コードを選択する処理の流れを説明する。ロボット2は、撮影した値札の商品コードを含む値札画像を取得して記憶する。ロボット2は、取得した値札画像に基づき、該値札画像中のバーコード(縞模様状の線)の下側に記された商品コードを認識する。
商品コードは、商品用の流通コードであり、数字、文字、記号等を含んでも良い。商品コードは、例えばJAN(Japanese Article Number)コード、EAN(European Article Number)コード、UPC(Universal Product Code)コード等であっても良い。なお、本実施形態では、数字形式の商品コードの例を説明する。本実施形態での商品コードは、国コード、商品メーカーコード、商品アイテムコード、チェックデジット等それぞれを示す数字から構成される。
ロボット2は、認識した商品コードと、商品マスタデータベースに記憶された各々の商品コードとの相関を示す距離(距離値)を算出する。ロボット2は、算出した複数の距離から最短距離を取得し、取得した最短距離により商品コードを選択する。ロボット2は、商品コードを選択した選択結果をサーバ1または端末3に送信する。
図2は、サーバ1の構成例を示すブロック図である。サーバ1は、制御部11、記憶部12、通信部13、入力部14、表示部15、読取部16及び大容量記憶部17を含む。各構成はバスBで接続されている。
制御部11はCPU(Central Processing Unit)、MPU(Micro-Processing Unit)、GPU(Graphics Processing Unit)等の演算処理装置を含み、記憶部12に記憶された制御プログラム1Pを読み出して実行することにより、サーバ1に係る種々の情報処理、制御処理等を行う。なお、図2では制御部11を単一のプロセッサであるものとして説明するが、マルチプロセッサであっても良い。
記憶部12はRAM(Random Access Memory)、ROM(Read Only Memory)等のメモリ素子を含み、制御部11が処理を実行するために必要な制御プログラム1P又はデータ等を記憶している。また、記憶部12は、制御部11が演算処理を実行するために必要なデータ等を一時的に記憶する。通信部13は通信に関する処理を行うための通信モジュールであり、ネットワークNを介して、ロボット2、端末3との間で情報の送受信を行う。
入力部14は、マウス、キーボード、タッチパネル、ボタン等の入力デバイスであり、受け付けた操作情報を制御部11へ出力する。表示部15は、液晶ディスプレイ又は有機EL(electroluminescence)ディスプレイ等であり、制御部11の指示に従い各種情報を表示する。
読取部16は、CD(Compact Disc)−ROM又はDVD(Digital Versatile Disc)−ROMを含む可搬型記憶媒体1aを読み取る。制御部11が読取部16を介して、制御プログラム1Pを可搬型記憶媒体1aより読み取り、大容量記憶部17に記憶しても良い。また、ネットワークN等を介して他のコンピュータから制御部11が制御プログラム1Pをダウンロードし、大容量記憶部17に記憶しても良い。さらにまた、半導体メモリ1bから、制御部11が制御プログラム1Pを読み込んでも良い。
大容量記憶部17は、例えばHDD(Hard disk drive:ハードディスク)、SSD(Solid State Drive:ソリッドステートドライブ)等の記録媒体を備える。大容量記憶部17は、商品マスタDB171及び選択結果DB172を含む。商品マスタDB171は、商品コード、価格、品名等の商品に関する情報を記憶している。選択結果DB172は、商品コードの選択結果を記憶している。選択結果は、認識された商品コード、選択された商品コード、選択処理の成否情報等を含む。
なお、本実施形態において記憶部12及び大容量記憶部17は一体の記憶装置として構成されていても良い。また、大容量記憶部17は複数の記憶装置により構成されていても良い。更にまた、大容量記憶部17はサーバ1に接続された外部記憶装置であっても良い。
なお、本実施形態では、サーバ1は一台の情報処理装置であるものとして説明するが、複数台により分散して処理させても良く、または仮想マシンにより構成されていても良い。
図3は、商品マスタDB171のレコードレイアウトの一例を示す説明図である。商品マスタDB171は、商品ID列、分類列、品名列、商品コード列及び単価列を含む。商品ID列は、各商品を識別するために、一意に特定される商品のIDを記憶している。分類列は、商品の分類情報を記憶している。品名列は、商品の品名を記憶している。商品コード列は、商品用の流通コードを記憶している。単価列は、商品の価格を記憶している。
図4は、選択結果DB172のレコードレイアウトの一例を示す説明図である。選択結果DB172は、結果ID列、認識商品コード列、選択商品コード列、結果列及び選択日時列を含む。結果ID列は、各選択結果を識別するために、一意に特定される選択結果を記憶している。認識商品コード列は、認識された商品コードを記憶している。選択商品コード列は、選択された商品コードを記憶している。結果列は、商品コードの選択結果(例えば、成功または失敗)を記憶している。選択日時列は、商品コードが選択された日時情報を記憶している。
図5は、ロボット2の構成例を示すブロック図である。ロボット2は、制御部21、記憶部22、無線通信部23、撮影部24、自律移動部25、移動機構26、読取部27及び大容量記憶部28を含む。各ハードウェアはバスBで接続されている。
制御部21はCPU、MPU、GPU等の演算処理装置を含み、記憶部22に記憶された制御プログラム2Pを読み出して実行することにより、ロボット2に係る種々の情報処理、制御処理及び推定処理等を行う。なお、推定処理はサーバ1側で行われても良い。なお、図5では制御部21を単一のプロセッサであるものとして説明するが、マルチプロセッサであっても良い。記憶部22はRAM、ROM等のメモリ素子を含み、制御部21が処理を実行するために必要な制御プログラム2P又はデータ等を記憶している。また、記憶部22は、制御部21が演算処理を実行するために必要なデータ等を一時的に記憶する。
無線通信部23は通信に関する処理を行うための無線通信モジュールであり、ネットワークNを介して、サーバ1及び端末3等と情報の送受信を行う。撮影部24は、例えばCCD(Charge Coupled Device)カメラ、CMOS(Complementary Metal Oxide Semiconductor)カメラ等の撮影装置である。なお、撮影部24は、複数の撮影装置により構成されても良い。なお、撮影部24はロボット2の中に内蔵せず、外部で直接にロボット2と接続し、撮影可能な構成としても良い。
自律移動部25は、環境地図データ及び撮影部24から取得した画像データ等を参照し、バッテリー(図示せず)からの電力供給を得て自律移動制御を実行する。移動機構26は、車輪261及び車輪261を駆動するモータ262を含み、自律移動部25により駆動される。また、車輪261は複数であっても良い。すなわち、車輪型の移動型ロボットにおいて、自律移動部25と移動機構26とにより、自律的移動手段が構成される。なお、施設に設置された磁気テープに従い移動するロボットであっても良い。
読取部27は、CD−ROM又はDVD−ROMを含む可搬型記憶媒体2aを読み取る。制御部21が読取部27を介して、制御プログラム2Pを可搬型記憶媒体2aより読み取り、大容量記憶部28に記憶しても良い。また、ネットワークN等を介して他のコンピュータから制御部21が制御プログラム2Pをダウンロードし、大容量記憶部28に記憶しても良い。さらにまた、半導体メモリ2bから、制御部21が制御プログラム2Pを読み込んでも良い。
大容量記憶部28は、例えばHDD、SSD等の記録媒体を備える。大容量記憶部28には、画像DB281、閾値DB282、商品コード認識モデル283及び距離DB284が記憶されている。画像DB281は、撮影した値札の商品コードを含む画像を記憶している。閾値DB282は、各種の閾値を記憶している。商品コード認識モデル283は、商品コードを認識する認識器であり、機械学習により生成された学習済みモデルである。距離DB284は、値札画像から認識された商品コードと、商品マスタデータベースに記憶された商品コードとの相関を示す距離(距離値)を記憶している。
なお、本実施形態において記憶部22及び大容量記憶部28は一体の記憶装置として構成されていても良い。また、大容量記憶部28は複数の記憶装置により構成されていても良い。更にまた、大容量記憶部28はロボット2に接続された外部記憶装置であっても良い。
図6は、画像DB281のレコードレイアウトの一例を示す説明図である。画像DB281は、画像ID列、値札画像列、棚画像列及び棚画像撮影日時列を含む。画像ID列は、各画像を識別するために、一意に特定される画像のIDを記憶している。値札画像列は、商品コードを含む値札画像を記憶している。棚画像列は、当該値札画像を含む棚の画像を記憶している。棚画像撮影日時列は、棚画像の撮影日時情報を記憶している。
図7は、閾値DB282のレコードレイアウトの一例を示す説明図である。閾値DB282は、閾値ID列、名称列及び閾値列を含む。閾値ID列は、各閾値を識別するために、一意に特定される閾値のIDを記憶している。名称列は、閾値の名称を記憶している。閾値列は、各種の判定処理用の閾値を記憶している。なお、閾値列に記憶された閾値を変更することができる。例えば、ロボット2の制御部21は、変更の閾値を無線通信部23により受け付け、受け付けた閾値で閾値DB282の閾値列を更新しても良い。
図8は、距離DB284のレコードレイアウトの一例を示す説明図である。距離DB284は、第1商品コード列、第2商品コード列及び距離列を含む。第1商品コード列は、値札画像から認識された商品コードを記憶している。第2商品コード列は、商品マスタデータベースに記憶された商品コードを記憶している。距離列は、算出された第1商品コードと第2商品コードとの距離を記憶している。
図9は、端末3の構成例を示すブロック図である。端末3は、制御部31、記憶部32、通信部33、入力部34及び表示部35を含む。各構成はバスBで接続されている。
制御部31はCPU、MPU等の演算処理装置を含み、記憶部32に記憶された制御プログラム3Pを読み出して実行することにより、端末3に係る種々の情報処理、制御処理等を行う。なお、図9では制御部31を単一のプロセッサであるものとして説明するが、マルチプロセッサであっても良い。記憶部32はRAM、ROM等のメモリ素子を含み、制御部31が処理を実行するために必要な制御プログラム3P又はデータ等を記憶している。また、記憶部32は、制御部31が演算処理を実行するために必要なデータ等を一時的に記憶する。
通信部33は通信に関する処理を行うための通信モジュールであり、ネットワークNを介して、サーバ1及びロボット2等と情報の送受信を行う。入力部34は、キーボード、マウスまたは表示部35と一体化したタッチパネルでも良い。表示部35は、液晶ディスプレイ又は有機ELディスプレイ等であり、制御部31の指示に従い各種情報を表示する。
図10は、値札画像から認識された商品コードに基づいて商品コードを選択する動作を説明する説明図である。
ロボット2の制御部21は、撮影した値札の商品コードを含む値札画像を取得する。値札画像の取得処理に関しては、例えば制御部21は、物体検出技術を用いて、撮影部24により撮影した棚画像から値札画像を抽出しても良い。物体検出技術は、例えば、パターンマッチングの他、A−KAZE(Accelerated KAZE)、SIFT(Scale Invariant Feature Transform)等であり、局所特徴量抽出方法を用いて特徴量を抽出することにより、物体を検出する。また、制御部21は、棚画像を深層学習の物体検出モデルに入力し、物体検出モデルを用いて、棚画像から値札領域の特徴量を抽出することで値札画像を検出した検出結果を出力しても良い。
制御部21は、取得した値札画像を大容量記憶部28の画像DB281に記憶する。具体的には、制御部21は、画像IDを割り振って、値札画像、該値札画像を含む棚画像、及び棚画像の撮影日時を一つのレコードとして画像DB281に記憶する。
制御部21は、取得した値札画像中のバーコードの下側に記された商品コード(数字)を認識する。制御部21は、値札画像を商品コード認識モデル283に入力し、商品コード認識モデル283を用いて、商品コード中の数字を認識した認識結果を出力する。なお、商品コードの認識処理に関しては後述する。
制御部21は、認識した商品コードと、商品マスタDB171に記憶された各々の商品コードとの相関を示す距離を算出する。なお、距離算出処理に関して後述する。制御部21は、算出した複数の距離から最短距離を取得し、取得した最短距離に対応する商品マスタDB171に記憶された商品コードを選択する。
また、取得した最短距離による商品マスタDB171に記憶された商品コードの選択処理の他に、最短距離の閾値により商品コードを選択することができる。制御部21は、大容量記憶部28の閾値DB282から最短距離の閾値を取得し、取得した最短距離と最短距離の閾値とを比較する。制御部21は、最短距離が閾値未満であると判定した場合、該最短距離に対応する商品マスタDB171に記憶された商品コードを選択する。
なお、最短距離の閾値が予め閾値DB282に記憶されても良く、または無線通信部23によりサーバ1若しくは外部装置から受け付けられても良い。制御部21は、最短距離の閾値を受け付けた場合、閾値IDを割り振って、名称及び閾値を一つのレコードとして大容量記憶部28の閾値DB282に記憶する。制御部21は、商品コードを選択した選択結果を無線通信部23によりサーバ1に送信する。なお、本実施形態では、選択結果をサーバ1に送信する例を示したが、これに限るものではない。例えば、端末3に選択結果を送信しても良い。
サーバ1の制御部11は、通信部13を介して、ロボット2から送信された選択結果を受信し、受信した選択結果を大容量記憶部17の選択結果DB172に記憶する。具体的には、制御部11は、結果IDを割り振って、認識された商品コード、選択された商品コード、選択結果及び選択日時を一つのレコードとして選択結果DB172に記憶する。なお、本実施形態では、選択結果をサーバ1に記憶する例を示したが、これに限るものではない。例えばロボット2に選択結果を記憶しても良い。
図11は、商品コード認識モデル283を説明する説明図である。商品コード認識モデル283は、人工知能ソフトウェアの一部であるプログラムモジュールとして利用される。なお、説明を容易にするため、商品コード認識モデル283に入力する値札画像に対するバーコードと商品コードとの画像領域のみを図示している。商品コード認識モデル283は、撮影した値札画像中の商品コード画像を入力とし、該値札画像中のバーコードの下側に記された商品コードを認識した認識結果を出力とするニューラルネットワークを構築(生成)済みの認識器である。ニューラルネットワークは、例えばCNN(Convolutional Neural Network)であり、撮影画像の入力を受け付ける入力層と、商品コードを認識した認識結果を出力する出力層と、バックプロパゲーションにより学習済の中間層とを有する。本実施形態では、認識した1つの数字の画像を商品コード認識モデル283に入力し、1つ目の数字の認識結果を出力する例を示す。制御部21は、全ての桁の数字画像について認識処理を順次行う。
入力層は、撮影画像に含まれる各画素の画素値の入力を受け付ける複数のニューロンを有し、入力された画素値を中間層に受け渡す。中間層は、撮影画像の画像特徴量を抽出する複数のニューロンを有し、抽出した画像特徴量を出力層に受け渡す。例えば商品コード認識モデル283がCNNである場合を例にして説明する。中間層は、入力層から入力された各画素の画素値を畳み込むコンボリューション層と、コンボリューション層で畳み込んだ画素値をマッピングするプーリング層とが交互に連結された構成により、撮影画像の画素情報を圧縮しながら最終的に画像の特徴量を抽出する。その後中間層は、バックプロパゲーションによりパラメータが学習された全結合層により、商品コード中の各数字が「0」〜「9」それぞれに当たる確率を予測する。予測結果は、複数のニューロンを有する出力層に出力される。
なお、撮影画像は、交互に連結されたコンボリューション層とプーリング層とを通過して特徴量が抽出された後に、入力層に入力されても良い。
ロボット2の制御部21は、上述した各数字の予想結果に応じて、出力層から出力した複数の確率から、所定の閾値(例えば、80%)よりも高い確率に対応する数字を特定することにより、商品コードを取得する。
なお、上述した機械学習により商品コードを識別する処理に限るものではない。例えば、ロボット2の制御部21は、Fast RCNN、YOLO(You Look Only Once)、SSD(Single Shot MultiBox Detector)を用いて値札画像中の商品コードを認識しても良い。
図12は、距離算出処理を示す動作を説明する説明図である。以下では簡潔のため、値札画像から認識された商品コードは第1商品コードと読み替え、商品マスタDB171に記憶された各々の商品コードは第2商品コードと読み替える。
制御部21は、無線通信部23を介して、サーバ1の大容量記憶部17の商品マスタDB171から第2商品コードを取得する。なお、商品マスタDB171が予めロボット2に記憶されても良い。制御部21は、第1商品コードと、第2商品コードとを比較する。制御部21は、両者が一致していないと判定した場合、第2商品コードと照合し、第2商品コードと一致させるように、第1商品コードに対する数字(文字)操作を実行して距離を算出する。
数字操作は、例えば数字に対する置換、挿入、削除等の操作である。数字操作ごとに所定ルールによる距離を算出することができる。例えば、制御部21は予め定められたルールにより、数字ごとの置換、挿入または削除等のいずれかの操作を実行した場合、距離に1を加算しても良い。
図12Aは、挿入操作に応じた距離を算出する例を示す。制御部21は、第1商品コードの桁数と、第2商品コードの桁数とを比較する。制御部21は、第1商品コードの桁数と第2商品コードの桁数とが一致し、かつ、各桁の数字が完全に一致すると判定した場合、距離を0とする。制御部21は、第1商品コードの桁数が第2商品コードの桁数未満であると判定した場合、第1商品コードに対する数字の挿入操作を実行する。
図示のように、第1商品コードが「9854」であり、第2商品コードが「98754」である場合、制御部21は、第1商品コードの桁数と、第2商品コードの桁数とを比較する。制御部21は、第1商品コードの桁数(4桁)が第2商品コードの桁数(5桁)未満であると判定した場合、第2商品コードと照合し、第1商品コード中の漏れた桁を判定する。制御部21は、第1商品コードにおける「8」と「5」との間に「7」を漏れたと判定した場合、「7」を挿入する。制御部21は、該挿入操作を実行した後に、距離に1を加算する。
図12Bは、削除操作に応じた距離を算出する例を示す。制御部21は、第1商品コードの桁数と、第2商品コードの桁数とを比較する。制御部21は、第1商品コードの桁数が第2商品コードの桁数以上であると判定した場合、第1商品コードに対する数字の削除操作を実行する。
図示のように、第1商品コードが「98754」であり、第2商品コードが「9854」である場合、制御部21は、第1商品コードの桁数と、第2商品コードの桁数とを比較する。制御部21は、第1商品コードの桁数(5桁)が第2商品コードの桁数(4桁)以上であると判定した場合、第2商品コードと照合し、第1商品コード中の余計な桁を判定する。制御部21は、第1商品コードにおける「8」と「5」との間に「7」が不要と判定した場合、「7」を削除する。制御部21は、該削除操作を実行した後に、距離に1を加算する。
図12Cは、置換操作に応じた距離を算出する例を示す。制御部21は、第1商品コードの桁数と、第2商品コードの桁数とが一致すると判定した場合、桁ごとの数字が一致するか否かを判定する。制御部21は、桁ごとの数字が一致していないと判定した場合、第2商品コードと照合し、第1商品コードにおける該桁の数字に対して置換操作を実行する。
図示のように、第1商品コードが「98654」であり、第2商品コードが「98754」である場合、制御部21は、第1商品コードの桁数と、第2商品コードの桁数とを比較する。制御部21は、第1商品コードの桁数(5桁)と第2商品コードの桁数(5桁)とが一致すると判定した場合、先頭から順次に第1商品コードの数字と、第2商品コードの数字とを比較する。制御部21は、第1商品コードの3桁の数字「6」と、第2商品コードの3桁の数字「7」とが一致していないと判定した場合、第1商品コードにおける「6」に「7」を置換する。制御部21は、該置換操作を実行した後に、距離に1を加算する。
図13は、値札画像から認識された商品コードに基づいて商品コードを選択する際の処理手順を示すフローチャートである。サーバ1の制御部11は、大容量記憶部17の商品マスタDB171から商品マスタ情報を取得する(ステップS101)。制御部11は、通信部13を介して、取得した商品マスタ情報をロボット2に送信する(ステップS102)。ロボット2の制御部21は、無線通信部23を介して、サーバ1から送信された商品マスタ情報を受信する(ステップS201)。なお、本実施形態では、商品マスタ情報をサーバ1に記憶する例を示したが、これに限るものではない。ロボット2の大容量記憶部28に商品マスタ情報を記憶しても良い。
制御部21は、撮影した値札の商品コードを含む値札画像を取得する(ステップS202)。なお、値札画像の取得処理に関しては、上述した物体検出技術を用いて取得しても良い。制御部21は、取得した値札画像を大容量記憶部28の画像DB281に記憶する(ステップS203)。
制御部21は、取得した値札画像を商品コード認識モデル283に入力し、商品コード認識モデル283を用いて商品コードを認識した認識結果を出力することで、商品コードを認識する(ステップS204)。制御部21は、認識した商品コードと、商品マスタデータベースに記憶された商品コードとの最短距離を算出する(ステップS205)。なお、最短距離算出処理をサーバ1で行っても良い。なお、最短距離算出のサブルーチンに関しては後述する。
制御部21は、大容量記憶部28の閾値DB282から、最短距離の閾値を取得する(ステップS206)。制御部21は、取得した最短距離と閾値とを比較し、取得した最短距離が閾値未満であるか否かを判定する(ステップS207)。制御部21は、取得した最短距離が閾値未満であると判定した場合(ステップS207でYES)、該最短距離に対応する第2商品コードを選択する(ステップS208)。
制御部21は、商品コードの選択結果を無線通信部23によりサーバ1に送信する(ステップS209)。サーバ1の制御部11は、通信部13を介して、ロボット2から送信された選択結果を受信する(ステップS103)。制御部11は、受信した選択結果を大容量記憶部17の選択結果DB172に記憶する(ステップS104)。制御部21は、取得した最短距離が閾値未満でないと判定した場合(ステップS207でNO)、ステップS209に遷移する。
図14は、最短距離算出のサブルーチンの処理手順を示すフローチャートである。ロボット2の制御部21は、サーバ1から送信された複数の第2商品コードから一つの第2商品コードを取得する(ステップS221)。制御部21は、抽出した第1商品コードと、取得した第2商品コードとの距離を算出する(ステップS222)。
距離は、2つの文字列の間で、それぞれ一文字の挿入、削除、置換することによって、一方の文字列を、もう一方の文字列に変形するのに必要な手順を数値化するものである。つまり、距離は、二つの文字列がどの程度異なっているかを示す。距離の値が小さければ小さいほど、文字列と、比較対象の文字列との類似度が高いことを示している。距離の算出処理に関しては、例えば文字列同士の距離を計算する尺度であるレーベンシュタイン距離(Levenshtein Distance)等を利用しても良い。
制御部21は、算出した距離を大容量記憶部28の距離DB284に記憶する(ステップS223)。具体的には、制御部21は、第1商品コード、第2商品コード及び算出した距離を一つのレコードとして距離DB284に記憶する。制御部21は、該第2商品コードが商品マスタDB171から取得された複数の商品コード中の最後の商品コードであるか否かを判定する(ステップS224)。
制御部21は、該第2商品コードが最後の商品コードでないと判定した場合(ステップS224でNO)、ステップS221に戻り、複数の第2商品コードから次の第2商品コードを取得する。制御部21は、該第2商品コードが最後の商品コードであると判定した場合(ステップS224でYES)、距離DB284に記憶した第1商品コードと、各々の第2商品コードとの距離から、最短距離を取得する(ステップS225)。制御部21は、処理を終了する。
本実施形態によると、撮影した値札画像から認識された商品コードと、商品マスタデータベースに記憶された商品コードとの距離を算出することができる。算出された最短距離による商品コードの選択処理を実行することにより、商品コード選択の精度を向上することが可能となる。
(実施形態2)
実施形態2は、商品コードの操作処理に対し、距離を割り引く形態に関する。なお、実施形態1と重複する内容については説明を省略する。
数字には誤認識しやすい文字があり、例えば「1」と「7」、「3」と「2」等がある。深層学習による文字認識モデルにおいて、例えばCNNの畳み込みフィルタにも誤認識の恐れがある。この場合、実施形態1での商品コードの選択処理に対し、商品コード選択の精度に影響を与えるため、距離を割り引いて算出する。
図15は、実施形態2のロボット2の構成例を示すブロック図である。なお、図5と重複する内容については同一の符号を付して説明を省略する。大容量記憶部28には、文字セットDB285が記憶されている。文字セットDB285は、誤認識しやすい文字セット情報を記憶している。
図16は、文字セットDB285のレコードレイアウトの一例を示す説明図である。文字セットDB285は、文字1列、文字2列及び割引ルール列を含む。文字1列及び文字2列は、それぞれに置換元、置換先の文字を記憶している。割引ルール列は、距離を割り引く基準を記憶している。置換元の文字と置換後の文字とが文字セットDB285に記憶した組み合わせのいずれかに該当する場合、距離が所定の割引ルールで割り引かれる。例えば、置換元の文字と置換後の文字とが文字セットDB285に記憶した組み合わせのいずれかに該当する場合、該文字セットに対応する割引ルール(例えば、50%割引等)に応じて、算出した距離を割り引いても良い。
図17は、文字セットによる最短距離算出のサブルーチンの処理手順を示すフローチャートである。なお、図14と重複する内容については同一の符号を付して説明を省略する。制御部21は、大容量記憶部28の文字セットDB285から文字セット情報を取得する(ステップS241)。制御部21は、ステップS221〜S222を実行し、距離を算出する。制御部21は、置換元の文字と置換後の文字とが文字セットDB285に記憶した組み合わせのいずれかに該当するか否かを判定する(ステップS242)。
制御部21は、置換元の文字と置換後の文字とが文字セット情報に該当すると判定した場合(ステップS242でYES)、該文字セットに対応する割引ルール(例えば、50%割引等)に応じて、算出した距離を割り引く(ステップS243)。制御部21は、置換元の文字と置換後の文字とが文字セット情報に該当しないと判定した場合(ステップS242でNO)、ステップS223に遷移する。
なお、本実施形態では、文字セットDB285を用いて距離を割り引く処理が行われたが、これに限るものではない。例えば、商品コード認識モデル283の学習時の誤認識実績を基に自動抽出した文字セットを用いて、割り引く処理を行っても良い。
続けて、商品コード中の相互に隣接する文字同士の間に補完した文字数に応じて、距離を割り引く処理を説明する。商品コード中の相互に隣接する文字同士が離れたことがある。その他、撮影された値札画像が不鮮明であるため、商品コード中の一部文字を認識することができない場合がある。これにより、離れた文字同士の間に、該文字と異なる文字(例えば、ダミー文字等)を補完(挿入)する。
具体的には、制御部21は、商品コード中の相互に隣接する文字同士の間隔に応じて、離れた文字同士の間に補完するための文字数を算出する。例えば制御部21は、商品コードから認識した1文字ごとの座標データに基づき、お互いに隣接する文字同士の間隔が所定間隔以上であるか否かを判定する。制御部21は、文字同士の間隔が所定間隔以上であると判定した場合、商品コードの文字サイズに応じて、離れた文字同士の間に補完するための文字数を算出しても良い。
制御部21は、離れた文字同士の間に、算出した文字数で該文字と異なる文字を補完する。制御部21は、補完した文字における置換または削除操作処理に対し、距離を算出する。制御部21は所定割引ルールに応じて、算出した距離を割り引く。
図18は、文字補完による最短距離算出のサブルーチンの処理手順を示すフローチャートである。なお、図17と重複する内容については同一の符号を付して説明を省略する。制御部21は、商品コード中の相互に隣接する文字同士の間隔を取得する(ステップS251)。制御部21は、お互いに隣接する文字同士の間隔が所定間隔以上であるか否かを判定する(ステップS252)。
制御部21は、文字同士の間隔が所定間隔以上であると判定した場合(ステップS252でYES)、取得した文字同士の間隔に応じて、離れた文字同士の間に補完するための文字数を算出する(ステップS253)。制御部21は、離れた文字同士の間に、算出した文字数で前記文字と異なる文字を補完する(ステップS254)。制御部21は、ステップS241及びステップS221〜S222を実行する。制御部21は、文字同士の間隔が所定間隔以上でないと判定した場合(ステップS252でNO)、ステップS241に遷移する。
制御部21は、ステップS254での文字補完処理に基づき、補完対象文字であるか否かを判定する(ステップS255)。制御部21は、補完対象文字であると判定した場合(ステップS255でYES)、算出した距離を所定の割引ルールで割り引く(ステップS256)。制御部21は、補完対象文字でないと判定した場合(ステップS255でNO)、ステップS242に遷移する。
本実施形態によると、誤認識しやすい文字で置換元の文字を置換した場合、距離を割り引くことにより、商品コードの選択処理におけるミスを防止することが可能となる。
本実施形態によると、商品コード中の離れた文字同士の間に補完された文字に対する文字操作に応じて、距離を割り引くことができる。よって、商品コードの選択処理におけるミスを防止することが可能となる。
(実施形態3)
実施形態3は、商品コードに対応するバーコードの認識処理に失敗した場合、該商品コードによる商品コードの選択処理を行う形態に関する。なお、実施形態1と重複する内容については説明を省略する。
制御部21は、撮影した値札画像から商品コードに対応するバーコードを認識する。制御部21は、バーコードの認識処理に失敗し、または認識したバーコードに対応する商品コードが商品マスタDB171に存在しないと判定した場合、値札画像から認識した商品コードによる商品コードの選択処理を実行する。
図19は、実施形態3の商品コードを選択する際の処理手順を示すフローチャートである。ロボット2の制御部21は、撮影した値札画像に基づいて取得したバーコードから、商品コードを抽出する(ステップS261)。例えば、制御部21は、バーコード読み取りライブラリ(アルゴリズム)を利用し、商品コードを抽出しても良い。制御部21は、商品コードの抽出処理に成功したか否かを判定する(ステップS262)。
制御部21は、商品コードの抽出処理に成功していないと判定した場合(ステップS262でNO)、商品コードを認識し(ステップS263)、実施の形態1及び2で示した商品コードの選択処理を行う(ステップS264)。なお、商品コードの認識処理及び商品コードの選択処理に関しては、実施形態1と同様であるため、説明を省略する。
制御部21は、商品コードの抽出処理に成功したと判定した場合(ステップS262でYES)、抽出した商品コードが商品マスタDB171に存在するか否かを判定する(ステップS265)。制御部21は、抽出した商品コードが商品マスタDB171に存在していると判定した場合(ステップS265でYES)、処理を終了する。制御部21は、抽出した商品コードが商品マスタDB171に存在していないと判定した場合(ステップS265でNO)、ステップS263に遷移する。
本実施形態によると、商品コードに対応するバーコードの認識処理に失敗した場合、該商品コードによる商品コードの選択処理を実行することにより、商品コードの選択処理における成功率を高めることが可能となる。
(実施形態4)
実施形態4は、商品コードの選択に成功した回数に応じて、商品コードを特定する形態に関する。なお、実施形態1〜3と重複する内容については説明を省略する。商品コードの選択処理を複数回実行し、商品コードの選択に成功した回数が所定回数(閾値)以上である場合、該商品コードを出力する。
具体的には、ロボット2の制御部21は、移動しながら同じエリアに対する複数の棚画像を撮影部24により撮影し、撮影した複数の棚画像の枚数に応じた回数の商品コードの選択処理を実行する。制御部21は、商品コードの選択に成功した回数が所定回数以上であると判定した場合、該商品コードを出力する。なお、上述した処理に限るものではない。例えば、ロボット2の巡回の回数ごとに商品コードの選択処理を実行しても良い。
図20は、選択成功の回数に応じた商品コードを特定する際の処理手順を示すフローチャートである。なお、図13と重複する内容については同一の符号を付して説明を省略する。ロボット2の制御部21は、取得した最短距離が閾値未満でないと判定した場合(ステップS207でNO)、ステップS202に戻る。制御部21は、取得した最短距離が閾値未満であると判定した場合(ステップS207でYES)、ステップS208を実行し、商品コードの選択に成功した回数をカウントする(ステップS271)。
制御部21は、カウントした成功回数が所定回数以上であるか否かを判定する(ステップS272)。所定回数は、例えば予め大容量記憶部28の閾値DB282に記憶されても良い。制御部21は、カウントした成功回数が所定回数以上であると判定した場合(ステップS272でYES)、該商品コードを特定する(ステップS273)。制御部21は、該商品コードを出力し(ステップS274)、処理を終了する。制御部21は、カウントした成功回数が所定回数以上でないと判定した場合(ステップS272でNO)、ステップS202に戻る。なお、ステップS207の閾値もオペレータにより変更することが可能である。
本実施形態によると、商品コードを選択する処理を複数回に実行し、成功回数が所定回数上である場合、該商品コードを特定することにより、高い精度を確保することが可能となる。
(実施形態5)
実施形態5は、商品コード及び商品の価格両方により売価をチェックする形態に関する。なお、実施形態1〜4と重複する内容については説明を省略する。売価チェックは、売価登録ミス、売価変更等に対する商品コード及び価格等の情報をチェックする作業である。値札の売価と、商品マスタDB171の売価との不一致は主に以下の2つのパターンで生じる。一つは、値札の売価の印刷ミスにより生じる。もう一つは、適切に売価が値札に印刷されていたものの、キャンペーン終了後、キャンペーン前の売価に戻し損ねた場合に生じる。例えば、キャンペーンにより売価を半額の500円としていたところ、キャンペーンが終了したとする。本来であればキャンペーン後は、元の1000円に戻した値札を配置すべきであったのに、これを失念していた場合である。なお、本実施形態では、売価チェックの例を説明するが、これに限らず、例えば在庫チェック等の処理にも適用しても良い。
売価チェックを行った場合、選択された商品コード及び該商品コードに対応する商品の価格と、商品マスタDB171に記憶された商品コード及び該商品コードに対応する商品の価格とが、一致するか否かを判定する。判定された判定結果が出力される。なお、実施形態4のように、撮影された複数の棚画像中の商品コード及び価格と、商品マスタDB171に記憶された商品コード及び価格とが、一致した回数が所定回数(例えば、1回)以上である場合、該商品コードに対応する商品の価格が商品マスタDB171と一致したとみなしても良い。
図21は、実施形態5のロボット2の構成例を示すブロック図である。なお、図15と重複する内容については同一の符号を付して説明を省略する。大容量記憶部28には、売価チェック結果DB286が記憶されている。売価チェック結果DB286は、商品コード及び商品の価格両方により売価をチェックした結果情報を記憶している。
図22は、売価チェック結果DB286のレコードレイアウトの一例を示す説明図である。売価チェック結果DB286は、結果ID列、認識商品コード列、認識商品価格列、マスタ商品コード列、マスタ商品価格列、チェック結果列及びチェック日時列を含む。結果ID列は、各売価チェックの結果を識別するために、一意に特定される売価チェックの結果を記憶している。認識商品コード列は、認識された商品コードを記憶している。認識商品価格列は、認識された商品の価格を記憶している。
マスタ商品コード列は、商品マスタデータベースに記憶された商品コードを記憶している。マスタ商品価格列は、商品マスタデータベースに記憶された商品の価格を記憶している。チェック結果列は、認識された商品コード及び商品の価格と、商品マスタデータベースに記憶された商品コード及び商品の価格とが一致するか否かを判定したチェック結果を記憶している。チェック日時列は、売価をチェックした日時情報を記憶している。
図23は、商品コード及び商品の価格両方により売価をチェックする際の処理手順を示すフローチャートである。なお、図13と重複する内容については同一の符号を付して説明を省略する。ロボット2の制御部21は、ステップS208を実行した後、ステップS202で取得した値札画像から商品の価格を認識する(ステップS281)。
具体的には、制御部21は、値札画像を学習済みの深層学習による価格認識モデルに入力し、価格認識モデルを用いて、価格を認識した認識結果を出力する。価格認識モデルは、人工知能ソフトウェアの一部であるプログラムモジュールとして利用される。価格認識モデルは、値札画像を入力とし、商品の価格を認識した結果を出力とするニューラルネットワークを構築(生成)済みの認識器である。
なお、本実施形態では、価格認識モデルを用いて、商品の価格を認識した例を説明したが、これに限るものではない。例えば、A−KAZE等の物体検出技術を用いて、商品の価格を認識しても良い。
制御部21は、選択した商品コード及び認識した商品の価格と、商品マスタDB171に記憶された商品コード及び該商品コードに対応する商品の価格とが、一致するか否かを判定する(ステップS282)。制御部21は、判定した判定結果を大容量記憶部28の売価チェック結果DB286に記憶する(ステップS283)。具体的には、制御部21は、結果IDを割り振って、認識された商品コード及び商品の価格、マスタデータベースに記憶された商品コード及び商品の価格、チェック結果及びチェック日時情報を一つのレコードとして売価チェック結果DB286に記憶する。制御部21は、判定した判定結果を出力し(ステップS284)、処理を終了する。
本実施形態によると、商品コード及び商品の価格の両者に基づいて、売価チェックを行うことにより、業務効率化を実現することが可能となる。
(実施形態6)
実施形態6は、商品コードを選択した選択結果を表示する形態に関する。なお、実施形態1〜5と重複する内容については説明を省略する。
図24は、実施形態6のサーバ1の構成例を示すブロック図である。なお、図2と重複する内容については同一の符号を付して説明を省略する。大容量記憶部17には、マップDB173が記憶される。マップDB173は、施設でカテゴリごとに商品が置かれた場所を示す情報を記憶している。
図25は、マップDB173のレコードレイアウトの一例を示す説明図である。マップDB173は、施設ID列、棚1列及び棚2列を含む。施設ID列は、各施設を識別するために、一意に特定される施設のIDを記憶している。棚1列は、カテゴリ列及びアイコン列を含む。カテゴリ列は、棚1に置かれた商品のカテゴリを記憶している。アイコン列は、棚1に置かれた商品のカテゴリを示すアイコンを記憶している。棚2列は、棚1列の構成と同様であるため、説明を省略する。なお、本実施形態では、棚1列及び棚2列の例を説明したが、棚列の数量は特に制限されない。
図26は、実施形態6の選択結果DB172のレコードレイアウトの一例を示す説明図である。なお、図4と重複する内容については同一の符号を付して説明を省略する。選択結果DB172は、位置情報列、座標列、値札画像列及び棚画像列を含む。位置情報列は、商品が棚に置かれた位置を記憶している。座標列は、商品が棚に置かれた位置の座標情報を記憶している。なお、座標はディスプレイ上の絶対座標であっても良く、または後述するマップにおける相対座標であっても良い。値札画像列は、商品コードを含む値札の撮影画像を記憶している。棚画像列は、商品が施設に置かれた位置を示す棚画像を記憶している。
図27は、商品コードを選択した選択結果を表示する画面の一例である。なお、選択結果がサーバ1の表示部15により表示されても良く、または端末3の表示部35により表示されても良い。更にまた、選択結果がロボット2に接続された表示装置により表示されても良い。以下では、選択結果を端末3で表示する例を説明する。
端末3の制御部31は、通信部33を介して、サーバ1の大容量記憶部17の選択結果DB172から商品コードの選択結果を取得する。なお、端末3の制御部31は、通信部33を介して、商品コードの選択結果をロボット2から取得しても良い。制御部31は、取得した選択結果を表示部35により表示する。
選択結果は、例えば、結果ID、商品コードを含む値札画像、該値札画像を含む棚画像(商品が施設に置かれた棚画像)、棚画像中の該値札画像の位置情報(例えば、座標等)、選択日時及び選択結果の正誤情報を含む。図示のように、26aは、商品コードの選択結果IDを示す。26bは、商品コードを含む値札画像を示す。26cは、商品マスタデータベースに記憶された価格を示す。
26dは、「完了」ボタンであり、店員の人目でチェックし売価に誤りがある場合にフィードバックするためのボタンである。端末3の制御部31は、店員から「完了」ボタン26dのタッチ操作を入力部34により受け付けた場合、通信部33を介して、店員により現場対応を終了した旨をサーバ1またはロボット2に送信する。26eは、「適正」ボタンであり、店員の人目でチェックし売価に誤りがない場合にフィードバックするためのボタンである。端末3の制御部31は、店員から「適正」ボタン26eのタッチ操作を入力部34により受け付けた場合、売価に誤りがない旨を通信部33によりサーバ1またはロボット2に送信する。
26fは、26bで示された値札画像に対応する商品が、施設に置かれた棚画像を示す。26gは、26bで示された値札画像の表示領域を結果IDに対応付けて、棚画像中の値札の位置を示すバウンディングボックスである。
なお、上述した画面の表示形式は一例として説明したが、これに限るものではない。例えば、認識された商品の価格及び商品コードと、商品マスタDB171に記憶された商品の価格及び商品コードとが一致していない場合、「売価違い」ボタンを画面に表示しても良い。制御部31は、「売価違い」ボタンのタッチ操作を入力部34により受け付けた場合、商品マスタDB171における該商品の価格をチェックする旨を通信部33によりサーバ1またはロボット2に送信する。
図28は、施設でカテゴリごとに商品が置かれた場所を示すマップ画面の一例である。端末3の制御部31は、通信部33を介して、サーバ1の大容量記憶部17のマップDB173から商品が施設に置かれた場所を示すマップ情報を取得する。制御部31は、入力部34を介して、値札画像、または位置画像のタップ操作を受け付けた場合、取得したマップ情報に基づいてマップを生成する。
なお、上述した方式に限らず、例えば、制御部31は商品が施設に置かれた場所を示すマップボタンを画面に表示し、該マップボタンのタップ操作を入力部34により受け付けた場合、マップを生成しても良い。
制御部21は、マップ情報に基づいて生成したマップを表示部35により表示する。マップ情報は、施設ID、各棚に置かれた商品のカテゴリ、及び各棚を区別するためのアイコン等を含む。図示のように、施設の各棚と一致する商品のカテゴリ、カテゴリを示すアイコン等が表示される。27aは、例えば適正の対象商品が置かれた場所を示すマークである。制御部31は、マークのタッチ操作を入力部34により受け付けた場合、該商品の棚画像または値札画像の表示画面に戻り、該商品に対応する棚画像または値札画像を表示しても良い。
図29は、画面操作を受け付ける際の処理手順を示すフローチャートである。端末3の制御部31は、通信部33を介して、サーバ1の大容量記憶部17の選択結果DB172から選択結果を取得する(ステップS20a)。制御部31は、取得した選択結果を表示部35により表示する(ステップS20b)。制御部31は、「完了」ボタンのタッチ操作を受け付けるか否かを判定する(ステップS20c)。
制御部31は、「完了」ボタンのタッチ操作を受け付けたと判定した場合(ステップS20cでYES)、店員により現場対応を終了した旨を含む情報を送信する(ステップS20j)。制御部31は、「完了」ボタンのタッチ操作を受付けていないと判定した場合(ステップS20cでNO)、制御部31は、「適正」ボタンのタッチ操作を受け付けるか否かを判定する(ステップS20d)。
制御部31は、「適正」ボタンのタッチ操作を受け付けたと判定した場合(ステップS20dでYES)、ステップS20jに遷移し、売価に誤りがない旨を含む情報を送信する。制御部31は、「適正」ボタンのタッチ操作を受付けていないと判定した場合(ステップS20dでNO)、制御部31は、「マップ」を表示させる操作を受け付けるか否かを判定する(ステップS20e)。
制御部31は、「マップ」を表示させる操作を受け付けたと判定した場合(ステップS20eでYES)、通信部33を介して、サーバ1からマップ情報を取得する(ステップS20f)。なお、「マップ」を表示させる操作は、例えば値札画像、若しくは棚画像のタップ操作であっても良く、または「マップ」へ遷移するためのボタンのタッチ操作であっても良い。制御部31は、取得したマップ情報に基づき、マップを生成する(ステップS20g)。
制御部31は、適正等の対象商品が置かれた場所を示すマークを、ステップS20gで生成したマップ上で表示する場所情報を取得する(ステップS20h)。具体的には、制御部31は、選択結果DB172からマークを表示するための座標を取得し、取得した座標を基づいてマークを生成する。制御部31は、表示部35を介して、座標情報に合わせて、生成したマークをマップに重ねて表示し(ステップS20i)、処理を終了する。制御部31は、「マップ」を表示させる操作を受付けていないと判定した場合(ステップS20eでNO)、処理を終了する。
本実施形態によると、商品コードの選択結果、及び該商品コードに対応する商品が施設に置かれた位置を表示することにより、売価チェック等の業務を支えることが可能となる。
今回開示された実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
1 情報処理装置(サーバ)
11 制御部
12 記憶部
13 通信部
14 入力部
15 表示部
16 読取部
17 大容量記憶部
171 商品マスタDB
172 選択結果DB
173 マップDB
1a 可搬型記憶媒体
1b 半導体メモリ
1P 制御プログラム
2 情報処理装置(ロボット)
21 制御部
22 記憶部
23 無線通信部
24 撮影部
25 自律移動部
26 移動機構
261 車輪
262 モータ
27 読取部
28 大容量記憶部
281 画像DB
282 閾値DB
283 商品コード認識モデル
284 距離DB
285 文字セットDB
286 売価チェック結果DB
2a 可搬型記憶媒体
2b 半導体メモリ
2P 制御プログラム
3 情報処理端末(端末)
31 制御部
32 記憶部
33 通信部
34 入力部
35 表示部
3P 制御プログラム

Claims (15)

  1. 撮影した値札の商品コードを含む画像を取得し、
    取得した前記画像を入力した場合に商品コードの認識結果を出力する深層学習モデルを用いて、商品コードを認識し、
    認識した商品コードと、商品マスタデータベースに記憶された商品コードとの相関を示す距離を算出する
    処理をコンピュータに実行させるプログラム。
  2. 認識した商品コードと、商品マスタデータベースに記憶されたそれぞれの商品コードとの距離を算出した場合、算出した複数の距離から最短距離を取得し、
    取得した最短距離に対応する商品マスタデータベースに記憶された商品コードを選択する
    処理を実行させる請求項1に記載のプログラム。
  3. 認識した商品コードと、商品マスタデータベースに記憶されたそれぞれの商品コードとの距離を算出した場合、算出した複数の距離から最短距離を取得し、
    取得した最短距離が所定閾値未満である場合、該最短距離に対応する商品マスタデータベースに記憶された商品コードを選択する
    処理を実行させる請求項1又は2に記載のプログラム。
  4. 前記閾値の設定を受け付ける
    処理を実行させる請求項3に記載のプログラム。
  5. 前記画像から認識した商品コードに対し、商品マスタデータベースに記憶された商品コードと一致させるために文字ごとに置換、挿入または削除を含む操作処理を実行し、
    前記操作処理の内容に応じて、距離を算出する
    処理を実行させる請求項1から4までのいずれかひとつに記載のプログラム。
  6. 前記商品コード中の文字に対する置換操作処理に対し、置換元の文字と置換後の文字とが指定された文字セットに該当する場合、距離を割り引く
    処理を実行させる請求項1から5までのいずれかひとつに記載のプログラム。
  7. 前記商品コード中相互に隣接する文字同士の間隔に応じて、離れた文字同士の間に補完するための文字数を算出し、
    算出した文字数に応じて、距離を算出する
    処理を実行させる請求項1から6までのいずれかひとつに記載のプログラム。
  8. 前記値札の撮影画像から前記商品コードに対応するバーコードの認識処理に失敗した場合、または認識したバーコードに対応する商品コードが前記商品マスタデータベースに存在しない場合、前記撮影画像から認識した商品コードによる商品コードの選択処理を行う
    処理を実行させる請求項2から7までのいずれかひとつに記載のプログラム。
  9. 同一値札の商品コードを含む画像を複数取得し、
    前記商品コードの選択に成功した回数をカウントし、
    カウントした選択成功の回数が所定閾値以上である場合、選択した商品コードを出力する
    処理を実行させる請求項2から8までのいずれかひとつに記載のプログラム。
  10. 前記値札の商品コードに対応する商品の価格を含む画像を取得し、
    取得した前記商品の価格を含む画像を入力した場合に商品の価格を認識した認識結果を出力する第2深層学習モデルを用いて、商品の価格を認識し、
    前記商品コード及び認識した前記商品の価格と、商品マスタデータベースに記憶された商品コード及び該商品コードに対応する商品の価格とが、一致するか否かを判定し、
    判定した判定結果を出力する
    処理を実行させる請求項1から9までのいずれかひとつに記載のプログラム。
  11. 情報処理装置と、表示装置とを有し、
    前記情報処理装置は、
    撮影した値札の商品コードを含む画像を取得する取得部と、
    取得した前記画像を入力した場合に商品コードの認識結果を出力する深層学習モデルを用いて、商品コードを認識する認識部と、
    認識した商品コードと、商品マスタデータベースに記憶された商品コードとの相関を示す距離を算出する算出部と
    前記算出部が算出した距離に応じて、前記商品マスタデータベースから該当する商品コードを選択する選択部とを備え、
    前記表示装置は、
    前記取得部により取得した前記値札の撮影画像、前記値札の撮影画像を含む棚画像、前記棚画像中の前記値札の位置を示すバウンディングボックス、および、前記選択部が商品コードを選択した選択結果に対し、前記選択結果の正誤に関する操作を受け付けるオブジェクトを表示する第1表示部
    を備える情報処理システム。
  12. 前記表示装置は、前記値札の撮影画像、または前記棚画像に対する操作に応じて、前記商品コードに対応する商品の場所を示すマップを表示する第2表示部
    を備える前記請求項11に記載の情報処理システム。
  13. 撮影した値札の商品コードを含む画像を取得する取得部と、
    取得した前記画像を入力した場合に商品コードの認識結果を出力する深層学習モデルを用いて、商品コードを認識する認識部と、
    認識した商品コードと、商品マスタデータベースに記憶された商品コードとの相関を示す距離を算出する算出部と
    を備える情報処理装置。
  14. 実空間内で前記情報処理装置を移動させる移動機構
    を備える前記請求項13に記載の情報処理装置。
  15. 撮影した値札の商品コードを含む画像を取得し、
    取得した前記画像を入力した場合に商品コードの認識結果を出力する深層学習モデルを用いて、商品コードを認識し、
    認識した商品コードと、商品マスタデータベースに記憶された商品コードとの相関を示す距離を算出する
    情報処理方法。
JP2019105635A 2019-06-05 2019-06-05 プログラム、情報処理システム、情報処理装置及び情報処理方法 Pending JP2020198054A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019105635A JP2020198054A (ja) 2019-06-05 2019-06-05 プログラム、情報処理システム、情報処理装置及び情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019105635A JP2020198054A (ja) 2019-06-05 2019-06-05 プログラム、情報処理システム、情報処理装置及び情報処理方法

Publications (1)

Publication Number Publication Date
JP2020198054A true JP2020198054A (ja) 2020-12-10

Family

ID=73649219

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019105635A Pending JP2020198054A (ja) 2019-06-05 2019-06-05 プログラム、情報処理システム、情報処理装置及び情報処理方法

Country Status (1)

Country Link
JP (1) JP2020198054A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4057198A1 (en) 2021-03-09 2022-09-14 OMRON Corporation Product management system, product management method, and product management program
JP7213387B1 (ja) 2022-08-09 2023-01-26 株式会社セブン&アイ・ホールディングス 照合装置、照合システム、照合プログラム
JP7490028B2 (ja) 2022-09-09 2024-05-24 三菱マテリアル株式会社 推定装置、推定システム、推定方法、およびプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014048752A (ja) * 2012-08-29 2014-03-17 Teraoka Seiko Co Ltd 表示札処理システム
JP2016066290A (ja) * 2014-09-25 2016-04-28 大日本印刷株式会社 商品陳列位置登録装置、通信システム及びプログラム
JP2018067306A (ja) * 2016-10-20 2018-04-26 東芝テック株式会社 画像処理装置及び画像処理方法
JP2018170044A (ja) * 2018-07-27 2018-11-01 株式会社マーケットヴィジョン 商品情報取得システム
JP2019045909A (ja) * 2017-08-29 2019-03-22 株式会社マーケットヴィジョン 画像認識システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014048752A (ja) * 2012-08-29 2014-03-17 Teraoka Seiko Co Ltd 表示札処理システム
JP2016066290A (ja) * 2014-09-25 2016-04-28 大日本印刷株式会社 商品陳列位置登録装置、通信システム及びプログラム
JP2018067306A (ja) * 2016-10-20 2018-04-26 東芝テック株式会社 画像処理装置及び画像処理方法
JP2019045909A (ja) * 2017-08-29 2019-03-22 株式会社マーケットヴィジョン 画像認識システム
JP2018170044A (ja) * 2018-07-27 2018-11-01 株式会社マーケットヴィジョン 商品情報取得システム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
成沢 淳史: "CNNによる商品札文字認識", 第19回 画像の認識・理解シンポジウム, JPN7023001676, 1 August 2016 (2016-08-01), JP, ISSN: 0005051309 *
成沢 淳史: "値札文字認識による実世界価格比較サイトの実現", 第8回データ工学と情報マネジメントに関するフォーラム (第14回日本データベース学会年次大会) [O, JPN6023017531, 2 March 2016 (2016-03-02), JP, ISSN: 0005051308 *
成田 和世 KAZUYO NARITA: "編集距離制約下におけるトライを用いた高速並列類似結合 Parallel String Similarity Joins using a Trie", 第3回データ工学と情報マネジメントに関するフォーラム 論文集 [ONLINE] PROCEEDINGS OF THE 3, JPN6023017530, 27 July 2011 (2011-07-27), JP, ISSN: 0005051310 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4057198A1 (en) 2021-03-09 2022-09-14 OMRON Corporation Product management system, product management method, and product management program
JP7213387B1 (ja) 2022-08-09 2023-01-26 株式会社セブン&アイ・ホールディングス 照合装置、照合システム、照合プログラム
JP2024024392A (ja) * 2022-08-09 2024-02-22 株式会社セブン&アイ・ホールディングス 照合装置、照合システム、照合プログラム
JP7490028B2 (ja) 2022-09-09 2024-05-24 三菱マテリアル株式会社 推定装置、推定システム、推定方法、およびプログラム

Similar Documents

Publication Publication Date Title
CN108416403B (zh) 商品与标签的自动关联方法、系统、设备及存储介质
US11055557B2 (en) Automated extraction of product attributes from images
CN108389316B (zh) 自动售货方法、装置和计算机可读存储介质
CN110705666A (zh) 人工智能云计算展示架货架货物和标签监控与存储货物方法
RU2613734C1 (ru) Захват видео в сценарии ввода данных
JP2020198054A (ja) プログラム、情報処理システム、情報処理装置及び情報処理方法
WO2020156108A1 (en) System and methods for monitoring retail transactions
CN111310706B (zh) 一种商品价签识别方法及装置、电子设备、存储介质
CN112052813B (zh) 染色体间易位识别方法、装置、电子设备及可读存储介质
WO2020227845A1 (en) Compressed network for product recognition
CN110942035A (zh) 一种用于获取商品信息的方法、系统、装置和存储介质
CN110032654B (zh) 一种基于人工智能的超市商品录入方法及系统
CN113935774A (zh) 图像处理方法、装置、电子设备及计算机存储介质
CN111241961B (zh) 人脸检测方法、装置及电子设备
JP2019174959A (ja) 商品棚位置登録プログラム、及び情報処理装置
CN115457458A (zh) 一种非接触式智能盘点系统和方法
EP3629276A1 (en) Context-aided machine vision item differentiation
Zhang et al. Fine detection and classification of multi-class barcode in complex environments
US20230130674A1 (en) Computer-readable recording medium storing learning program, learning method, and information processing apparatus
CN110580299B (zh) 生成对象的推荐语的配图的方法、系统、设备及存储介质
US20220207584A1 (en) Learning device, computer-readable information storage medium, and learning method
CN112686300B (zh) 一种数据处理方法、装置及设备
WO2021232333A1 (en) System and methods for express checkout
CN114078299A (zh) 一种商品结算方法、装置、电子设备及介质
CN114120281A (zh) 一种车道线跟踪方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220415

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230509

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20231031