JP2023064439A - 学習プログラム、学習方法および情報処理装置 - Google Patents

学習プログラム、学習方法および情報処理装置 Download PDF

Info

Publication number
JP2023064439A
JP2023064439A JP2021174725A JP2021174725A JP2023064439A JP 2023064439 A JP2023064439 A JP 2023064439A JP 2021174725 A JP2021174725 A JP 2021174725A JP 2021174725 A JP2021174725 A JP 2021174725A JP 2023064439 A JP2023064439 A JP 2023064439A
Authority
JP
Japan
Prior art keywords
learning
data
target image
machine learning
model
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
JP2021174725A
Other languages
English (en)
Inventor
琢麿 山本
Takuma Yamamoto
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2021174725A priority Critical patent/JP2023064439A/ja
Priority to EP22181859.4A priority patent/EP4174788A1/en
Priority to US17/857,083 priority patent/US20230130674A1/en
Priority to KR1020220087406A priority patent/KR20230059711A/ko
Publication of JP2023064439A publication Critical patent/JP2023064439A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

【課題】背景画像に存在しないで対象画像に存在する物体を検出可能な学習プログラム、学習方法及び情報処理装置を提供する。【解決手段】情報処理装置は、物体が配置すべきエリアが撮影された背景画像と、物体とエリアとが撮影された対象画像とを入力データとし、背景画像には存在しないが対象画像には存在する物体に関連する情報を正解データとする学習データを取得する取得部と、学習データを基にして、対象画像と対象画像とを機械学習モデルに入力した際に機械学習モデルから出力される結果と、正解データとに基づいて、機械学習モデルに対する機械学習を実行する学習処理部と、を有する。【選択図】図6

Description

本発明は、学習プログラム等に関する。
スーパーマーケットやコンビニエンスストア等の店舗において、セルフレジが普及している。セルフレジは、商品を購入するユーザ自身が、商品のバーコードの読み取りから精算までを行うPOS(Point Of Sale)レジシステムである。たとえば、セルフレジを導入することで、人件費の抑制、店員による精算ミスを防止することができる。
一方、セルフレジでは、バーコードの読み取りを行わない等のユーザの不正を検出することが求められる。
図21は、従来技術を説明するための図である。図21に示す例では、ユーザ1は、仮置台6に置かれた商品2を手に取り、セルフレジ5に対して商品2のバーコードをスキャンする操作を行い、包装するものとする。従来技術では、カメラ10の画像データを解析して、仮置台6に置かれた商品の物体検出を行い、商品点数を特定する。特定した商品点数と、実際にスキャンされた点数とが一致するか否かをチェックすることで、不正を検知することができる。従来技術では、図21で説明したような物体検出を行う際、Deep Learning(以下、DL)等の技術を用いる。
DLを用いた物体検出を行う場合、人手によって大量のラベルデータを準備し、このラベルデータを用いて、物体検出を行うための物体検出モデルに対して機械学習を実行する。ここで、物体検出モデルは、予め学習した物体のみ検出するため、上記の店舗のように商品の種類が膨大で、日々商品が入れ替わる条件下において、ラベルデータを準備し、物体検出モデルを再度機械学習することを繰り返すことは、現実的ではない。
なお、事前に学習していない未知の物体でも、かかる物体の領域を特定することができる従来技術がある。図22は、未知の物体の領域を特定する従来技術を説明するための図である。図22で説明する従来技術では、背景画像15aと、対象画像15bとから、背景とは異なる領域を示すマスク画像16を出力するDNN(Deep Neural Network)20を、様々な大量の画像を用いて機械学習することにより獲得する。
背景画像15aの撮影エリアと、対象画像15bの撮影エリアとは同じ撮影エリアであるが、背景画像15aには、対象画像15bに存在する物体3a,3b,3cが含まれていない。マスク画像16には、物体3a,3b,3cに対応する領域4a,4b,4cが示される。たとえば、マスク画像16の領域4a,4b,4cのピクセルには「1」が設定され、その他の領域のピクセルには「0」が設定される。
図22の従来技術では、背景と異なる領域を特定しているため、未知の物体であってもその領域を特定できる。このため、図22の従来技術を、図21の従来技術に適用することで、未知の商品の領域を特定し、商品点数を特定することが考えられる。
特開2019-153057号公報
しかしながら、上述した従来技術では、背景画像に存在しないで対象画像に存在する物体を検出することができないという問題がある。
図22で説明した従来技術では、背景とは異なる領域の全体を特定する技術であり、個々の物体の位置や大きさ等を特定するものではない。このため、複数の物体が近接している場合には、一つの塊になってしまう。
図23は、従来技術の問題を説明するための図である。図23に示す例では、機械学習済みのDNN20に、背景画像17aと、対象画像17bとを入力すると、マスク画像18が出力される。対象画像17bには、商品7a,7b,7cが含まれる。対象画像17bの商品7a~7cが近接しているため、マスク画像18には、一つの塊の領域8が示される。マスク画像18の領域8を基にして、商品7a,7b,7cに相当する領域を特定し、商品点数「3」を特定することは難しい。
1つの側面では、本発明は、背景画像に存在しないで対象画像に存在する物体を検出することができるモデルを提供可能な学習プログラム、学習方法および情報処理装置を提供することを目的とする。
第1の案では、コンピュータに次の処理を実行させる。コンピュータは、物体が配置すべきエリアが撮影された背景画像と、物体とエリアとが撮影された対象画像とを入力データとし、背景画像には存在しないが対象画像には存在する物体に関連する情報を正解データとする学習データを取得する。コンピュータは、学習データを基にして、対象画像と対象画像とを機械学習モデルに入力した際に機械学習モデルから出力される結果と、正解データとに基づいて、機械学習モデルに対する機械学習を実行する。
背景画像に存在しないで対象画像に存在する物体を検出可能なモデルを提供できる。
図1は、本実施例1に係るシステムを示す図である。 図2は、本実施例1に係る情報処理装置の基本部分の処理を説明する図である。 図3は、特徴的な処理1を説明するための図である。 図4は、特徴的な処理1を補足説明するための図である。 図5は、特徴的な処理2を補足説明するための図である。 図6は、本実施例1に係る情報処理装置の構成を示す機能ブロック図である。 図7は、本実施例1に係る学習データのデータ構造の一例を示す図である。 図8は、本実施例1に係る学習処理部の処理を説明するための図である。 図9は、本実施例1に係る推論処理部の処理を説明するための図である。 図10は、本実施例1に係る学習処理の処理手順を示すフローチャート(1)である。 図11は、本実施例1に係る学習処理の処理手順を示すフローチャート(2)である。 図12は、本実施例1に係る推論処理の処理手順を示すフローチャートである。 図13は、本実施例2に係る情報処理装置の構成を示す機能ブロック図である。 図14は、本実施例2に係る学習データのデータ構造の一例を示す図である。 図15は、本実施例2に係る学習処理部の処理を説明するための図である。 図16は、本実施例2に係る推論処理部の処理を説明するための図である。 図17は、本実施例2に係る学習処理の処理手順を示すフローチャートである。 図18は、本実施例2に係る推論処理の処理手順を示すフローチャートである。 図19は、本実施例3に係るシステムを示す図である。 図20は、情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。 図21は、従来技術を説明するための図である。 図22は、未知の物体の領域を特定する従来技術を説明するための図である。 図23は、従来技術の問題を説明するための図である。
以下に、本願の開示する学習プログラム、学習方法および情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
本実施例1に係るシステムの一例について説明する。図1は、本実施例1に係るシステムを示す図である。図1に示すように、このシステムは、カメラ10と、情報処理装置100とを有する。カメラ10と、情報処理装置100とは、ネットワーク11を介して相互に接続される。カメラ10と、情報処理装置100とは、有線または無線によって直接接続されていてもよい。
カメラ10は、店舗内や店舗外の様子を撮影するカメラであってもよいし、図21に示した商品の置かれる仮置台6を撮影するカメラであってもよい。カメラ10は、撮像範囲の画像データを、情報処理装置100に送信する。
以下の説明では、カメラ10が撮影した画像データであって、検出対象となる物体を含まない画像データを「背景画像データ」と表記する。たとえば、背景画像データは、図22で説明した背景画像15aに対応する。カメラ10が撮影した画像データであって、検出対象となる物体を含む画像データを「対象画像データ」と表記する。たとえば、対象画像データは、図22で説明した対象画像15bに対応する。対象画像15bには、物体3a~3cが含まれている。背景画像15aの撮影エリアは、対象画像15bの撮影エリアと同一であるが、背景画像15aには、物体3a~3cが含まれていない。
情報処理装置100は、背景画像データと、対象画像データとを基にして、対象画像データに含まれる個々の物体の領域を推論する装置である。情報処理装置100は、推論を開始する前に、予め、カメラ10から背景画像データを受信しておき、推論を開始する際に、カメラ10から対象画像データを順次受信する。
以下では、情報処理装置100の基本部分の処理と、かかる基本部分の処理に追加される特徴的な処理1,2とを順に説明する。
図2は、本実施例1に係る情報処理装置の基本部分の処理を説明する図である。図2に示すように、基本部分の処理を実行する情報処理装置100は、特徴抽出部50a,50bと、合成部51aと、推定部52とを有する。
特徴抽出部50a,50bは、一般的な畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)に対応する。特徴抽出部50aは、背景画像データ25aが入力されると、機械学習によって訓練されたパラメータに基づいて、画像特徴量を合成部51aに出力する。特徴抽出部50bは、対象画像データ25bが入力されると、機械学習によって訓練されたパラメータに基づく、画像特徴量を合成部51aに出力する。
特徴抽出部50a,50bから出力される画像特徴量は、ソフトマックス関数等に基づく確率値に変換される前の値とする。以下の説明では、背景画像データ25aの画像特徴量を「背景画像特徴量」と表記する。対象画像データ25bの画像特徴量を「対象画像特徴量」と表記する。背景画像特徴量および対象画像特徴量は、中間特徴量に対応する。
特徴抽出部50a,50bには、同一のパラメータが設定される。図2では、説明の便宜的に、特徴抽出部50a,50bに分けて図示しているが、特徴抽出部50a,50bを、同一のCNNとする。
合成部51aは、背景画像特徴量と、対象画像特徴とを合成し、合成した特徴量を推定部52に出力する。
推定部52は、一般的な畳み込みニューラルネットワーク(CNN)に対応する。推定部52は、背景画像特徴量と対象画像特徴量とを合成した特徴量が入力されると、機械学習によって訓練されたパラメータに基づいて、各物体のBBOXを特定する。たとえば、BBOX(Bounding Box)は、物体を囲む領域情報であり、位置およびサイズの情報を有する。図2に示す例では、3つのBBOX30a,30b,30cが特定されている。
続いて、図2に示した情報処理装置100の基本部分の処理に追加される「特徴的な処理1」について説明する。図3は、特徴的な処理1を説明するための図である。図3では、図2で説明した特徴抽出部50a,50b、合成部51a、推定部52に加えて、位置座標特徴量出力部53と、合成部51bとを有する。
特徴抽出部50a,50bに関する説明は、図2で説明した特徴抽出部50a,50bに関する説明と同様である。
合成部51aは、背景画像特徴量と、対象画像特徴量とを合成し、合成した特徴量を合成部51bに出力する。
位置座標特徴量出力部53は、座標値を画像平面状に配置した複数の座標特徴量を出力する。たとえば、図3に示すように、位置座標特徴量出力部53は、x座標特徴量53aと、y座標特徴量53bと、距離特徴量53cとを、合成部51bに出力する。
x座標特徴量53aの各ピクセルには、左から右への行方向に「-1」~「+1」までの座標値が、昇順で設定される。列方向の各ピクセルには、同一の座標値が設定される。たとえば、x座標特徴量53aの左端の列の各ピクセルには「-1」が設定される。
y座標特徴量53bの各ピクセルには上から下への列方向に、「-1」~「+1」までの座標値が、昇順で設定される。行方向の各ピクセルには、同一の座標値が設定される。たとえば、y座標特徴量53bの上端の行の各ピクセルには「-1」が設定される。
距離特徴量53cは、中心のピクセルから外側の方向に、「0」~「+1」までの座標値が、昇順で設定される。たとえば、距離特徴量53cの中心のピクセルには「0」が設定される。
合成部51bは、背景画像特徴量と、対象画像特徴量と、x座標特徴量53aと、y座標特徴量53bと、距離特徴量53cとを合成した情報を、推定部52に出力する。
推定部52は、背景画像特徴量と、対象画像特徴量と、x座標特徴量53aと、y座標特徴量53bと、距離特徴量53cとを合成した情報が入力されると、機械学習によって訓練されたパラメータに基づいて、各物体のBBOXを特定する。
図4は、特徴的な処理1を補足説明するための図である。たとえば、図4に示す画像21に対して、ニューラルネットワークによる畳み込みを行う場合を想定する。通常の畳み込み処理では、位置不変のため、同じ外観の物体を別々のものとして弁別することが難しい。たとえば、画像21に含まれる物体22、23は同じ外観である。このため、領域22aに対して畳み込み処理を行った結果22bと、領域23aに対して畳み込み処理を行った結果23bとが同一になってしまう。
これに対して、図3で説明した特徴的な処理1では、画像特徴量に、x座標特徴量53aと、y座標特徴量53bと、距離特徴量53cとを合成した情報に対して、畳み込みを実行することとなる。たとえば、領域22aに対して畳み込みを実行する場合に、領域53a-1,領域53b-1,領域53c-1も合わせて畳み込みが行われる。同様に、領域23aに対して畳み込みを実行する場合に、領域53a-2,領域53b-2,領域53c-2も合わせて畳み込みが行われる。これによって、領域22aに対して畳み込み処理を行った結果22bと、領域23aに対して畳み込み処理を行った結果23bとが同一とはならず、物体22,23を弁別することが可能となる。
続いて、図2に示した情報処理装置100の基本部分の処理に追加される「特徴的な処理2」について説明する。図5は、特徴的な処理2を説明するための図である。図5では、図3で説明した特徴抽出部50a,50b、合成部51a,51b、推定部52、位置座標特徴量出力部53に加えて、マスク生成部54を有する。
特徴抽出部50a,50b、位置座標特徴量出力部53に関する説明は、図2、図3で行った説明と同様である。
合成部51aは、背景画像特徴量と、対象画像特徴量とを合成し、合成した特徴量を合成部51bと、マスク生成部54に出力する。
マスク生成部54は、一般的な畳み込みニューラルネットワーク(CNN)に対応する。マスク生成部54は、背景画像特徴量と対象画像特徴量とを合成した特徴量が入力されると、機械学習によって訓練されたパラメータに基づいて、マスク画像40を生成する。マスク画像40は、背景画像データ25aに存在せず、対象画像データ25bに存在する物体の領域を示す情報である。たとえば、マスク画像40は、ビットマップであり、物体の領域に対応するピクセルには「1」が設定され、他の領域に対応するピクセルには「0」が設定される。
合成部51bは、背景画像特徴量と、対象画像特徴と、x座標特徴量53aと、y座標特徴量53bと、距離特徴量53cと、マスク画像40とを合成した合成情報45を、推定部52に出力する。
推定部52は、合成情報45が入力されると、機械学習によって訓練されたパラメータに基づいて、各物体のBBOXを特定する。たとえば、合成情報45は、背景画像特徴量と、対象画像特徴と、x座標特徴量53aと、y座標特徴量53bと、距離特徴量53cと、マスク画像40とが重なった情報である。推定部52は、各情報が重なった合成情報45に、パラメータの設定されたカーネル(kernel)を配置し、カーネルの位置を移動させながら、畳み込みを行う。
ここで、特徴的な処理2に関する補足説明を行う。たとえば、マスク生成部54を用いない場合の機械学習を想定すると、学習用の背景画像データ、学習用の対象画像データを入力データとし、学習用の対象画像データに含まれる物体のBBOXを正解データ(GT:Ground Truth)とする学習データを用いて、機械学習を行うことになる。
このような機械学習を行うと、対象画像データに含まれる個々の物体の特徴を覚えて、背景画像データを使わずに、対象画像データのみから物体のBBOXを推定する場合がある。すなわち、学習用の対象画像データに含まれる物体をそのまま覚えてしまい、未知の物体に対応できず、オーバーフィット(過学習)といえる。
上記のオーバーフィットを抑止するために、背景画像データも使わないと解けないタスクを補助タスクとして機械学習させることで、NNが背景画像を活用するようにする。たとえば、図5に示すマスク生成部54を機械学習する処理が、補助タスクとなる。たとえば、上述したBBOXの推定がメインのタスクであり、マスク画像を生成するタスクが補助タスクとなる。
また、マスク生成部54が生成したマスク画像40を更に、推定部52に入力して、物体のBBOXを推定するような機械学習を実行する。これによって、検出する物体をマスク画像の物体の領域に限定する効果を期待することができる。
図5において、情報処理装置100は、特徴抽出部50a,50bに入力データを入力し、推定部52が出力されるBBOXと正解データ(BBOXの正解値)との誤差と、マスク生成部54から出力されるマスク画像と正解データ(マスク画像の正解値)との誤差が小さくなるように、特徴抽出部50a,50b、推定部52、マスク生成部54のパラメータを訓練する。
次に、図2~図4で説明した処理を実行する情報処理装置100の構成の一例について説明する。図6は、本実施例1に係る情報処理装置の構成を示す機能ブロック図である。図6に示すように、この情報処理装置100は、通信部110と、入力部120と、表示部130と、記憶部140と、制御部150とを有する。
通信部110は、カメラ10や、外部装置(図示略)との間で、データ通信を実行する。たとえば、通信部110は、カメラ10から画像データ(背景画像データ、対象画像データ)を受信する。通信部110は、外部装置から、機械学習に用いる学習データ141等を受信する。
入力部120は、各種の情報を情報処理装置100に入力するための入力装置に対応する。
表示部130は、制御部150からの出力結果を表示する。
記憶部140は、学習データ141と、画像テーブル142と、特徴抽出モデル143と、生成モデル144と、推定モデル145を有する。記憶部140は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子や、HDD(Hard Disk Drive)などの記憶装置に対応する。
学習データ141は、機械学習を実行する場合に用いられるデータである。図7は、本実施例1に係る学習データのデータ構造の一例を示す図である。図7に示すように、学習データ141は、項番と、入力データと、正解データ(GT)とを対応付けて保持する。入力データには、学習用の背景画像データと、学習用の対象画像データが含まれる。正解データには、マスク画像のGTと、BBOXのGT(物体の領域の座標)が含まれる。
画像テーブル142は、推論時に利用する背景画像データ、対象画像データを保持するテーブルである。
特徴抽出モデル143は、特徴抽出部50a,50bで実行される機械学習モデル(CNN)である。特徴抽出モデル143に、画像データを入力すると、画像特徴量が出力される。
生成モデル144は、マスク生成部54で実行される機械学習モデル(CNN)である。生成モデル144に、背景画像特徴量と対象画像特徴とを合成した情報を入力すると、マスク画像が出力される。
推定モデル145は、推定部52で実行される機械学習モデル(CNN)である。推定モデル145に、合成情報45を入力すると、BBOXが出力される。
制御部150は、取得部151、学習処理部152、推論処理部153を有する。制御部150は、CPU(Central Processing Unit)等に対応する。
取得部151は、外部装置等から、学習データ141を取得した場合に、取得した学習データ141を、記憶部140に登録する。
取得部151は、カメラ10から、背景画像データを事前に取得し、画像テーブル142に登録する。取得部151は、カメラ10から、対象画像データを取得し、画像テーブル142に登録する。
学習処理部152は、学習データ141を基にして、特徴抽出部50a,50b(特徴抽出モデル143)、マスク生成部54(生成モデル144)、推定部52(推定モデル145)の機械学習を実行する。
図8は、本実施例1に係る学習処理部の処理を説明するための図である。たとえば、学習処理部152は、特徴抽出部50a,50b、合成部51a,52b、推定部52、マスク生成部54、位置座標特徴量出力部53を有する。また、学習処理部152は、誤差算出部60a,60bと、合成部61と、重み更新値算出部62とを有する。以下の説明では、適宜、特徴抽出部50a,50b、推定部52、位置座標特徴量出力部53、マスク生成部54をまとめて、「ニューラルネットワーク」と表記する。
特徴抽出部50a,50bの処理は、図5で行った説明と同様である。たとえば、特徴抽出部50a,50bは、特徴抽出モデル143を読み出して実行する。特徴抽出部50a,50bは、特徴抽出モデル143に、画像データを入力し、特徴抽出モデル143のパラメータに基づいて、画像特徴量を算出する。
合成部51a,51bの説明は、図5で行った説明と同様である。
位置座標特徴量出力部53の処理は、図3で行った説明と同様である。
マスク生成部54の処理は、図5で行った説明と同様である。たとえば、マスク生成部54は、生成モデル144を読み出して実行する。マスク生成部54は、生成モデル144に、背景画像特徴量と、対象画像特徴量とを合成した特徴量を入力し、生成モデル144のパラメータに基づいて、マスク画像を生成する。マスク生成部54は、マスク画像を、合成部51bと、誤差算出部60aに出力する。
推定部52の処理は、図5で説明した説明と同様である。たとえば、推定部52は、推定モデル145を読み出して実行する。推定部52は、推定モデル145を読み出して実行する。推定部52は、推定モデル145に、合成情報を入力し、推定モデル145のパラメータに基づいて、各物体のBBOXを特定する。推定モデル145は、BBOXを誤差算出部60bに出力する。
学習処理部152は、学習データ141から、学習用の背景画像データ26aを取得し、特徴抽出部50aに入力する。学習処理部152は、学習データ141から、学習用の対象画像データ26bを取得し、特徴抽出部50bに入力する。また、学習処理部152は、学習データ141から、マスク画像のGTを取得し、誤差算出部60aに入力する。学習処理部152は、学習データ141から、BBOXのGTを取得し、誤差算出部60bに入力する。
誤差算出部60aは、マスク生成部54から出力されるマスク画像41と、学習データ141のマスク画像のGTとの誤差を算出する。以下の説明では、マスク画像41と、マスク画像のGTとの誤差を「第1誤差」と表記する。誤差算出部60aは、第1誤差を合成部61に出力する。
誤差算出部60bは、推定部52から出力されるBBOXと、学習データ141のBBOXのGTとの誤差を算出する。以下の説明では、推定部52から出力されるBBOXと、学習データ141のBBOXのGTとの誤差を「第2誤差」と表記する。誤差算出部60bは、第2誤差を合成部61に出力する。
合成部61は、第1誤差と第2誤差との和を算出する。以下の説明では、第1誤差と第2誤差との和を「合計誤差」と表記する。合成部61は、重み更新値算出部62に出力する。
重み更新値算出部62は、合計誤差が小さくなるように、ニューラルネットワークのパラメータ(重み)を更新する。たとえば、重み更新値算出部62は、誤差逆伝播法等を用いて、特徴抽出部50a,50b(特徴抽出モデル143)、マスク生成部54(生成モデル144)、推定部52(推定モデル145)のパラメータを更新する。
学習処理部152は、学習データ141に格納された各入力データ、正解データを用いて、上記処理を繰り返し実行する。学習処理部152は、機械学習済みの特徴抽出モデル143、生成モデル144、推定モデル145を、記憶部140に登録する。
図6の説明に戻る。推論処理部153は、機械学習済みの特徴抽出部50a,50b(特徴抽出モデル143)、マスク生成部54(生成モデル144)、推定部52(推定モデル145)を用いて、背景画像データには存在しないで、対象画像データに存在する物体の領域を特定する。
図9は、本実施例1に係る推論処理部の処理を説明するための図である。たとえば、推論処理部153は、特徴抽出部50a,50b、合成部51a,52b、推定部52、マスク生成部54、位置座標特徴量出力部53を有する。
特徴抽出部50a,50bの処理は、図5で行った説明と同様である。たとえば、特徴抽出部50a,50bは、機械学習済みの特徴抽出モデル143を読み出して実行する。特徴抽出部50a,50bは、特徴抽出モデル143に、画像データを入力し、特徴抽出モデル143のパラメータに基づいて、画像特徴量を算出する。
合成部51a,51bの説明は、図5で行った説明と同様である。
位置座標特徴量出力部53の処理は、図3で行った説明と同様である。
マスク生成部54の処理は、図5で行った説明と同様である。たとえば、マスク生成部54は、機械学習済みの生成モデル144を読み出して実行する。マスク生成部54は、生成モデル144に、背景画像特徴量と、対象画像特徴量とを合成した特徴量を入力し、生成モデル144のパラメータに基づいて、マスク画像を生成する。マスク生成部54は、マスク画像を、合成部51bに出力する。
推定部52の処理は、図5で説明した説明と同様である。たとえば、推定部52は、学習済みの推定モデル145を読み出して実行する。推定部52は、推定モデル145を読み出して実行する。推定部52は、推定モデル145に、合成情報45を入力し、推定モデル145のパラメータに基づいて、各物体のBBOXを特定する。
推論処理部153は、画像テーブル142から、背景画像データ25aを取得し、特徴抽出部50aに入力する。推論処理部153は、画像テーブル142から、対象画像データ25bを取得し、特徴抽出部50bに入力する。推論処理部153は、推定部52によって特定されるBBOXの情報を、表示部130に出力してもよいし、外部装置に出力してもよい。
次に、本実施例1に係る情報処理装置100の処理手順の一例について説明する。以下では、情報処理装置100が実行する学習処理の処理手順と、推論処理の処理手順について順に説明を行う。
学習処理の処理手順について説明する。図10および図11は、本実施例1に係る学習処理の処理手順を示すフローチャートである。図10に示すように、情報処理装置100の学習処理部152は、学習データ141から背景画像データを取得する(ステップS101)。学習処理部152の特徴抽出部50aは、背景画像データを基にして、背景画像特徴量を抽出する(ステップS102)。
学習処理部152は、学習データ141から対象画像データを取得する(ステップS103)。学習処理部152の特徴抽出部50bは、対象画像データを基にして、対象画像特徴量を抽出する(ステップS104)。
学習処理部152の合成部51aは、背景画像特徴量と、対象画像特徴量とを合成する(ステップS105)。学習処理部152のマスク生成部54は、合成された特徴量を基にして、マスク画像を生成する(ステップS106)。
学習処理部152の位置座標特徴量出力部53は、位置座標特徴量を生成する(ステップS107)。学習処理部152の合成部51bは、各特徴量を合成した合成情報を生成する(ステップS108)。
学習処理部152の推定部52は、合成情報を基にして、BBOXを推定する(ステップS109)。学習処理部152は、図11のステップS110に移行する。
図11の説明に移行する。学習処理部152は、学習データ141からマスク画像のGTを取得する(ステップS110)。学習処理部152の誤差算出部60aは、マスク画像と、マスク画像のGTとを基にして、第1誤差を算出する(ステップS111)。
学習処理部152は、学習データ141からBBOXのGTを取得する(ステップS112)。誤差算出部60bは、BBOXと、BBOXのGTとを基にして、第2誤差を算出する(ステップS113)。
学習処理部152の合成部61は、第1誤差と第2誤差との合計誤差を算出する(ステップS114)。学習処理部152の重み更新値算出部62は、ニューラルネットワークのパラメータの更新値を算出する(ステップS115)。学習処理部152は、ニューラルネットワークのパラメータを更新する(ステップS116)。
学習処理部152は、機械学習を継続する場合には(ステップS117,Yes)、図10のステップS101に移行する。機械学習を継続しない場合には(ステップS117,No)、ニューラルネットワークの機械学習を終了する。
続いて、推論処理の処理手順について説明する。図12は、本実施例1に係る推論処理の処理手順を示すフローチャートである。図12に示すように、情報処理装置100の推論処理部153は、画像テーブル142から背景画像データを取得する(ステップS201)。推論処理部153の特徴抽出部50aは、背景画像データを基にして、背景画像特徴量を抽出する(ステップS202)。
推論処理部153は、画像テーブル142から対象画像データを取得する(ステップS203)。推論処理部153の特徴抽出部50bは、対象画像データを基にして、対象画像特徴量を抽出する(ステップS204)。
推論処理部153の合成部51aは、背景画像特徴量と、対象画像特徴量とを合成する(ステップS205)。推論処理部153のマスク生成部54は、合成された特徴量を基にして、マスク画像を生成する(ステップS206)。
推論処理部153の位置座標特徴量出力部53は、位置座標特徴量を生成する(ステップS207)。推論処理部153の合成部51bは、各特徴量を合成した合成情報を生成する(ステップS208)。
推論処理部153の推定部52は、合成情報を基にして、BBOXを推定する(ステップS209)。
次に、本実施例1に係る情報処理装置100の効果について説明する。情報処理装置100は、背景画像データを特徴抽出部50aに入力し、対象画像データを特徴抽出部50bに入力することで、背景画像特徴量、対象画像特徴量を抽出する。情報処理装置100は、背景画像特徴量、対象画像特徴量を合成した特徴量をマスク生成部54に入力し、マスク画像を生成する。情報処理装置100は、マスク画像と、各特徴量を合成した情報を、推定部52に入力することで、物体の領域を特定する。これによって、対象画像データに含まれる物体が事前に学習していない未知の物体でも、各物体を弁別して検出することができる。
情報処理装置100は、背景画像特徴量、対象画像特徴量、マスク画像、座標特徴量を合成した情報を、推定部52に入力し、物体の領域を特定する。これによって、対象画像データに同じ外観の物体が含まれている場合でも、それぞれの物体を区別可能に畳み込み処理を実行することができる。
情報処理装置100は、学習データ141を基にして、特徴抽出部50a,50b、マスク生成部54、推定部52の機械学習を実行する。これによって、対象画像データに含まれる物体が事前に学習していない未知の物体でも、各物体を弁別して検出可能なニューラルネットワークを機械学習することができる。
情報処理装置100は、各特徴量に加えて、座標特徴量を更に合成した情報を、推定部52に入力して、機械学習を実行する。これによって、対象画像データに同じ外観の物体が含まれている場合でも、それぞれの物体を区別して、ニューラルネットワークを機械学習することができる。
情報処理装置100は、各特徴量に加えて、マスク画像を更に合成した情報を、推定部52に入力して、機械学習を実行する。これによって、検出する物体をマスク画像の物体の領域に限定する効果を期待することができる。
実施例2に係るシステムの構成は、実施例1で説明したシステムと同様である。本実施例2に係る情報処理装置は、実施例1と同様にして、ネットワーク11を介して、カメラ10に接続されているものとする。
本実施例2に係る情報処理装置は、図2で説明した基本部分となる特徴抽出部50a,50bと、推定部52とについて機械学習を行う。情報処理装置は、機械学習を行った特徴抽出部50a,50bと、推定部52とを用いて、各物体を特定する。
図13は、本実施例2に係る情報処理装置の構成を示す機能ブロック図である。図13に示すように、この情報処理装置200は、通信部210と、入力部220と、表示部230と、記憶部240と、制御部250とを有する。
通信部210、入力部220、表示部230に関する説明は、実施例1で説明した通信部110、入力部120、表示部130に関する説明と同様である。
記憶部240は、学習データ241と、画像テーブル242と、特徴抽出モデル243と、推定モデル244とを有する。記憶部240は、RAM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
学習データ241は、機械学習を実行する場合に用いられるデータである。図14は、本実施例2に係る学習データのデータ構造の一例を示す図である。図14に示すように、学習データ241は、項番と、入力データと、正解データ(GT)とを対応付けて保持する。入力データには、学習用の背景画像データと、学習用の対象画像データが含まれる。正解データには、BBOXのGT(物体の領域の座標)が含まれる。
画像テーブル242は、推論時に利用する背景画像データ、対象画像データを保持するテーブルである。
特徴抽出モデル243は、特徴抽出部50a,50bで実行される機械学習モデル(CNN)である。特徴抽出モデル243に、画像データを入力すると、画像特徴量が出力される。
推定モデル244は、推定部52で実行される機械学習モデル(CNN)である。推定モデル244に、背景画像特徴量と、対象画像特徴量とを入力すると、BBOXが出力される。
制御部250は、取得部251、学習処理部252、推論処理部253を有する。制御部250は、CPU等に対応する。
取得部251は、外部装置等から、学習データ241を取得した場合に、取得した学習データ241を、記憶部240に登録する。
取得部251は、カメラ10から、背景画像データを事前に取得し、画像テーブル242に登録する。取得部251は、カメラ10から、対象画像データを取得し、画像テーブル242に登録する。
学習処理部252は、学習データ241を基にして、特徴抽出部50a,50b(特徴抽出モデル243)、推定部52(推定モデル244)の機械学習を実行する。
図15は、本実施例2に係る学習処理部の処理を説明するための図である。たとえば、学習処理部252は、特徴抽出部50a,50b、合成部51a、推定部52を有する。また、学習処理部252は、誤差算出部80と、重み更新値算出部81とを有する。以下の説明では、適宜、特徴抽出部50a,50b、推定部52をまとめて、「ニューラルネットワーク」と表記する。
特徴抽出部50a,50bの処理は、図2で行った説明と同様である。たとえば、特徴抽出部50a,50bは、特徴抽出モデル143を読み出して実行する。特徴抽出部50a,50bは、特徴抽出モデル243に、画像データを入力し、特徴抽出モデル243のパラメータに基づいて、画像特徴量を算出する。
合成部51aは、背景画像特徴量と、対象画像特徴量とを合成し、合成した特徴量を推定部52に出力する。
推定部52は、推定モデル244を読み出して実行する。推定部52は、推定モデル244を読み出して実行する。推定部52は、推定モデル244に、合成した特徴量を入力し、推定モデル244のパラメータに基づいて、各物体のBBOXを特定する。推定モデル244は、BBOXを誤差算出部80に出力する。
学習処理部252は、学習データ241から、学習用の背景画像データ26aを取得し、特徴抽出部50aに入力する。学習処理部252は、学習データ241から、学習用の対象画像データ26bを取得し、特徴抽出部50bに入力する。学習処理部252は、学習データ241から、BBOXのGTを取得し、誤差算出部80に入力する。
誤差算出部80は、推定部52から出力されるBBOXと、学習データ241のBBOXのGTとの誤差を算出する。誤差算出部80は、算出した誤差を、重み更新値算出部81に出力する。
重み更新値算出部81は、誤差が小さくなるように、ニューラルネットワークのパラメータ(重み)を更新する。たとえば、重み更新値算出部81は、誤差逆伝播法等を用いて、特徴抽出部50a,50b(特徴抽出モデル243)、推定部52(推定モデル244)のパラメータを更新する。
学習処理部252は、学習データ241に格納された各入力データ、正解データを用いて、上記処理を繰り返し実行する。学習処理部252は、機械学習済みの特徴抽出モデル243、推定モデル244を、記憶部240に登録する。
図13の説明に戻る。推論処理部253は、機械学習済みの特徴抽出部50a,50b(特徴抽出モデル243)、推定部52(推定モデル244)を用いて、背景画像データには存在しないで、対象画像データに存在する物体の領域を特定する。
図16は、本実施例2に係る推論処理部の処理を説明するための図である。たとえば、推論処理部253は、特徴抽出部50a,50b、合成部51a、推定部52を有する。
特徴抽出部50a,50bの処理は、図2で行った説明と同様である。たとえば、特徴抽出部50a,50bは、機械学習済みの特徴抽出モデル243を読み出して実行する。特徴抽出部50a,50bは、特徴抽出モデル243に、画像データを入力し、特徴抽出モデル243のパラメータに基づいて、画像特徴量を算出する。
合成部51aは、背景画像特徴量と、対象画像特徴量とを合成し、合成した特徴量を推定部52に出力する。
推定部52の処理は、図2で説明した説明と同様である。たとえば、推定部52は、学習済みの推定モデル244を読み出して実行する。推定部52は、推定モデル244を読み出して実行する。推定部52は、推定モデル244に、背景画像特徴量と、対象画像特徴量とを合成した情報を入力し、推定モデル244のパラメータに基づいて、各物体のBBOXを特定する。
推論処理部253は、画像テーブル242から、背景画像データ25aを取得し、特徴抽出部50aに入力する。推論処理部253は、画像テーブル242から、対象画像データ25bを取得し、特徴抽出部50bに入力する。推論処理部253は、推定部52によって特定されるBBOXの情報を、表示部230に出力してもよいし、外部装置に出力してもよい。
次に、本実施例2に係る情報処理装置200の処理手順の一例について説明する。以下では、情報処理装置200が実行する学習処理の処理手順と、推論処理の処理手順について順に説明を行う。
学習処理の処理手順について説明する。図17は、本実施例2に係る学習処理の処理手順を示すフローチャートである。図17に示すように、情報処理装置200の学習処理部252は、学習データ241から背景画像データを取得する(ステップS301)。学習処理部252の特徴抽出部50aは、背景画像データを基にして、背景画像特徴量を抽出する(ステップS302)。
学習処理部252は、学習データ241から対象画像データを取得する(ステップS303)。学習処理部252の特徴抽出部50bは、対象画像データを基にして、対象画像特徴量を抽出する(ステップS304)。
学習処理部252の合成部51aは、背景画像特徴量と、対象画像特徴量とを合成する(ステップS305)。学習処理部252の推定部52は、合成した特徴量を基にして、BBOXを推定する(ステップS306)。
学習処理部252は、学習データ241からBBOXのGTを取得する(ステップS307)。誤差算出部80は、BBOXと、BBOXのGTとを基にして、誤差を算出する(ステップS308)。
学習処理部252の重み更新値算出部81は、ニューラルネットワークのパラメータの更新値を算出する(ステップS309)。学習処理部252は、ニューラルネットワークのパラメータを更新する(ステップS310)。
学習処理部252は、機械学習を継続する場合には(ステップS311,Yes)、ステップS301に移行する。機械学習を継続しない場合には(ステップS311,No)、ニューラルネットワークの機械学習を終了する。
続いて、推論処理の処理手順について説明する。図18は、本実施例2に係る推論処理の処理手順を示すフローチャートである。図18に示すように、情報処理装置200の推論処理部253は、画像テーブル242から背景画像データを取得する(ステップS401)。推論処理部253の特徴抽出部50aは、背景画像データを基にして、背景画像特徴量を抽出する(ステップS402)。
推論処理部253は、画像テーブル242から対象画像データを取得する(ステップS403)。推論処理部253の特徴抽出部50bは、対象画像データを基にして、対象画像特徴量を抽出する(ステップS404)。
推論処理部253の合成部51aは、背景画像特徴量と、対象画像特徴量とを合成する(ステップS405)。
推論処理部253の推定部52は、合成された特徴量を基にして、BBOXを推定する(ステップS406)。
次に、本実施例2に係る情報処理装置200の効果について説明する。情報処理装置200は、背景画像データを特徴抽出部50aに入力し、対象画像データを特徴抽出部50bに入力することで、背景画像特徴量、対象画像特徴量を抽出する。情報処理装置100は、背景画像特徴量、対象画像特徴量を合成した特徴量を、推定部52に入力することで、物体の領域を特定する。これによって、対象画像データに含まれる物体が事前に学習していない未知の物体でも、各物体を弁別して検出することができる。
次に、本実施例3に係るシステムの一例について説明する。図19は、本実施例3に係るシステムを示す図である。図19に示すように、このシステムは、セルフレジ5と、カメラ10と、情報処理装置300とを有する。セルフレジ5、カメラ10、情報処理装置300は、有線または無線によって接続されている。
ユーザ1は、仮置台6に置かれた商品2を手に取り、セルフレジ5に対して、商品2のバーコードをスキャンする操作を行い、包装するものとする。
セルフレジ5は、商品を購入するユーザ1が、商品のバーコードの読み取りから精算までを行うPOS(Point of sale)レジシステムである。たとえば、ユーザ1が、購入対象の商品を、セルフレジ5のスキャン領域に移動させると、セルフレジ5は、商品のバーコードをスキャンする。セルフレジ5は、ユーザ1によるスキャンが完了した際に、スキャンした商品の点数の情報を、情報処理装置300に通知する。以下の説明では、スキャンされた商品の点数の情報を、「スキャン情報」と表記する。
カメラ10は、セルフレジ5の仮置台6を撮影するカメラである。カメラ10は、撮影範囲の画像データを、情報処理装置300に送信する。カメラ10は、予め、商品が置かれていない仮置台6の画像データ(背景画像データ)を、情報処理装置300に送信しておくものとする。カメラ10は、仮置台6に購入対象となる商品が置かれた場合に、仮置台6の画像データ(対象画像データ)を、情報処理装置300に送信する。
情報処理装置300は、実施例1で説明した情報処理装置100と同様にして、ニューラルネットワークの機械学習を行っておく。ニューラルネットワークには、特徴抽出部50a,50b、合成部51a,51b、推定部52、位置座標特徴量出力部53、マスク生成部54が含まれる。
情報処理装置300は、背景画像データと、対象画像データとを機械学習済みのニューラルネットワークに入力することで、対象画像データに含まれる各物体を特定する。情報処理装置300は、特定した物体をカウントして、商品点数を特定する。情報処理装置300は、特定した商品点数と、スキャン情報に含まれる商品点数とが一致しない場合に、スキャン漏れを検出する。
たとえば、情報処理装置300は、背景画像データと、対象画像データとをニューラルネットワークに入力した結果を出力結果70とする。出力結果70には、BBOX70a,70b,70cの3つのBBOXが含まれているため、情報処理装置300は、商品点数を「3」として特定する。情報処理装置300は、スキャン情報に含まれる商品点数が「3」未満の場合には、スキャン漏れを検知する。情報処理装置300は、スキャン漏れを、図示しない管理サーバ等に通知してもよい。
上記のように、実施例1,2で説明した情報処理装置100(200)を、図19に示すシステムに適用することで、バーコードの読み取りを行わない等のユーザの不正を検出することができる。
次に、上記実施例に示した情報処理装置100(200,300)と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図20は、情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
図20に示すように、コンピュータ400は、各種演算処理を実行するCPU401と、ユーザからのデータの入力を受け付ける入力装置402と、ディスプレイ403とを有する。また、コンピュータ400は、カメラ10から距離画像のデータを受信する通信装置404と、各種の装置と接続するインタフェース装置405とを有する。コンピュータ400は、各種情報を一時記憶するRAM406と、ハードディスク装置407とを有する。そして、各装置401~407は、バス408に接続される。
ハードディスク装置407は、取得プログラム407a、学習処理プログラム407b、推論処理プログラム407cを有する。CPU401は、取得プログラム407a、学習処理プログラム407b、推論処理プログラム407cを読み出してRAM406に展開する。
取得プログラム407aは、取得プロセス406aとして機能する。学習処理プログラム407bは、学習処理プロセス406bとして機能する。推論処理プログラム407cは、推論処理プロセス406cとして機能する。
取得プロセス406aの処理は、取得部151,251の処理に対応する。学習処理プロセス406bの処理は、学習処理部152,252の処理に対応する。推論処理プロセス406cの処理は、推論処理部153,253の処理に対応する。
なお、各プログラム407a~407cについては、必ずしも最初からハードディスク装置407に記憶させておかなくてもよい。例えば、コンピュータ400に挿入されるフレキシブルディスク(FD)、CD-ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ400が各プログラム407a~407cを読み出して実行するようにしてもよい。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)物体が配置すべきエリアが撮影された背景画像と、物体とエリアとが撮影された対象画像とを入力データとし、前記背景画像には存在しないが前記対象画像には存在する物体に関連する情報を正解データとする学習データを取得し、
前記学習データを基にして、前記対象画像と前記対象画像とを機械学習モデルに入力した際に前記機械学習モデルから出力される結果と、前記正解データとに基づいて、前記機械学習モデルに対する機械学習を実行する
処理をコンピュータに実行させることを特徴とする学習プログラム。
(付記2)前記機械学習モデルは、前記背景画像と、前記対象画像とが入力された場合に、中間特徴量を出力する特徴抽出モデルと、前記中間特徴量が入力された場合に、前記背景画像には存在しないが、前記対象画像には存在する物体の領域を出力する推定モデルを有し、
前記機械学習を実行する処理は、前記正解データに基づいて、前記特徴抽出モデルと、前記推定モデルに対する機械学習を実行することを特徴とする付記1に記載の学習プログラム。
(付記3)前記機械学習モデルは、前記中間特徴量が入力された場合に、前記背景画像には存在しないが前記対象画像には存在する物体の領域を示すマスク画像を出力する生成モデルを更に含み、前記正解データは、前記マスク画像に関する正解データを更に含み、
前記推定モデルは、前記中間特徴量および前記マスク画像が入力された場合に、物体の領域を出力し、
前記機械学習を実行する処理は、前記正解データに基づいて、前記生成モデルに対する機械学習を更に実行することを特徴とする付記2に記載の学習プログラム。
(付記4)前記推定モデルは、前記中間特徴量と、前記マスク画像と、座標値を画像平面状に配置した座標特徴量とが入力された場合に、物体の領域を出力し、
前記機械学習を実行する処理は、前記正解データに基づいて、前記推定モデルに対する機械学習を実行することを特徴とする付記3に記載の学習プログラム。
(付記5)物体が配置すべきエリアが撮影された背景画像と、物体とエリアとが撮影された対象画像とを入力データとし、前記背景画像には存在しないが前記対象画像には存在する物体に関連する情報を正解データとする学習データを取得し、
前記学習データを基にして、前記対象画像と前記対象画像とを機械学習モデルに入力した際に前記機械学習モデルから出力される結果と、前記正解データとに基づいて、前記機械学習モデルに対する機械学習を実行する
処理をコンピュータが実行することを特徴とする学習方法。
(付記6)前記機械学習モデルは、前記背景画像と、前記対象画像とが入力された場合に、中間特徴量を出力する特徴抽出モデルと、前記中間特徴量が入力された場合に、前記背景画像には存在しないが、前記対象画像には存在する物体の領域を出力する推定モデルを有し、
前記機械学習を実行する処理は、前記正解データに基づいて、前記特徴抽出モデルと、前記推定モデルに対する機械学習を実行することを特徴とする付記5に記載の学習方法。
(付記7)前記機械学習モデルは、前記中間特徴量が入力された場合に、前記背景画像には存在しないが前記対象画像には存在する物体の領域を示すマスク画像を出力する生成モデルを更に含み、前記正解データは、前記マスク画像に関する正解データを更に含み、
前記推定モデルは、前記中間特徴量および前記マスク画像が入力された場合に、物体の領域を出力し、
前記機械学習を実行する処理は、前記正解データに基づいて、前記生成モデルに対する機械学習を更に実行することを特徴とする付記6に記載の学習方法。
(付記8)前記推定モデルは、前記中間特徴量と、前記マスク画像と、座標値を画像平面状に配置した座標特徴量とが入力された場合に、物体の領域を出力し、
前記機械学習を実行する処理は、前記正解データに基づいて、前記推定モデルに対する機械学習を実行することを特徴とする付記7に記載の学習方法。
(付記9)物体が配置すべきエリアが撮影された背景画像と、物体とエリアとが撮影された対象画像とを入力データとし、前記背景画像には存在しないが前記対象画像には存在する物体に関連する情報を正解データとする学習データを取得する取得部と、
前記学習データを基にして、前記対象画像と前記対象画像とを機械学習モデルに入力した際に前記機械学習モデルから出力される結果と、前記正解データとに基づいて、前記機械学習モデルに対する機械学習を実行する学習処理部と
を有することを特徴とする情報処理装置。
(付記10)前記機械学習モデルは、前記背景画像と、前記対象画像とが入力された場合に、中間特徴量を出力する特徴抽出モデルと、前記中間特徴量が入力された場合に、前記背景画像には存在しないが、前記対象画像には存在する物体の領域を出力する推定モデルを有し、
前記学習処理部は、前記正解データに基づいて、前記特徴抽出モデルと、前記推定モデルに対する機械学習を実行することを特徴とする付記9に記載の情報処理装置。
(付記11)前記機械学習モデルは、前記中間特徴量が入力された場合に、前記背景画像には存在しないが前記対象画像には存在する物体の領域を示すマスク画像を出力する生成モデルを更に含み、前記正解データは、前記マスク画像に関する正解データを更に含み、
前記推定モデルは、前記中間特徴量および前記マスク画像が入力された場合に、物体の領域を出力し、
前記学習処理部は、前記正解データに基づいて、前記生成モデルに対する機械学習を更に実行することを特徴とする付記10に記載の情報処理装置。
(付記12)前記推定モデルは、前記中間特徴量と、前記マスク画像と、座標値を画像平面状に配置した座標特徴量とが入力された場合に、物体の領域を出力し、
前記学習処理部は、前記正解データに基づいて、前記推定モデルに対する機械学習を実行することを特徴とする付記11に記載の情報処理装置。
50a,50b 特徴抽出部
51a,51b,61 合成部
52 推定部
53 位置座標特徴量出力部
54 マスク生成部
60a,60b 誤差算出部
62 重み更新値算出部
100,200,300 情報処理装置
110,210 通信部
120,220 入力部
130,230 表示部
140,240 記憶部
141 学習データ
142 画像テーブル
143 特徴抽出モデル
144 生成モデル
145 推定モデル
150,250 制御部
151,251 取得部
152,252 学習処理部
153,253 推論処理部

Claims (6)

  1. 物体が配置すべきエリアが撮影された背景画像と、物体とエリアとが撮影された対象画像とを入力データとし、前記背景画像には存在しないが前記対象画像には存在する物体に関連する情報を正解データとする学習データを取得し、
    前記学習データを基にして、前記対象画像と前記対象画像とを機械学習モデルに入力した際に前記機械学習モデルから出力される結果と、前記正解データとに基づいて、前記機械学習モデルに対する機械学習を実行する
    処理をコンピュータに実行させることを特徴とする学習プログラム。
  2. 前記機械学習モデルは、前記背景画像と、前記対象画像とが入力された場合に、中間特徴量を出力する特徴抽出モデルと、前記中間特徴量が入力された場合に、前記背景画像には存在しないが、前記対象画像には存在する物体の領域を出力する推定モデルを有し、
    前記機械学習を実行する処理は、前記正解データに基づいて、前記特徴抽出モデルと、前記推定モデルに対する機械学習を実行することを特徴とする請求項1に記載の学習プログラム。
  3. 前記機械学習モデルは、前記中間特徴量が入力された場合に、前記背景画像には存在しないが前記対象画像には存在する物体の領域を示すマスク画像を出力する生成モデルを更に含み、前記正解データは、前記マスク画像に関する正解データを更に含み、
    前記推定モデルは、前記中間特徴量および前記マスク画像が入力された場合に、物体の領域を出力し、
    前記機械学習を実行する処理は、前記正解データに基づいて、前記生成モデルに対する機械学習を更に実行することを特徴とする請求項2に記載の学習プログラム。
  4. 前記推定モデルは、前記中間特徴量と、前記マスク画像と、座標値を画像平面状に配置した座標特徴量とが入力された場合に、物体の領域を出力し、
    前記機械学習を実行する処理は、前記正解データに基づいて、前記推定モデルに対する機械学習を実行することを特徴とする請求項3に記載の学習プログラム。
  5. 物体が配置すべきエリアが撮影された背景画像と、物体とエリアとが撮影された対象画像とを入力データとし、前記背景画像には存在しないが前記対象画像には存在する物体に関連する情報を正解データとする学習データを取得し、
    前記学習データを基にして、前記対象画像と前記対象画像とを機械学習モデルに入力した際に前記機械学習モデルから出力される結果と、前記正解データとに基づいて、前記機械学習モデルに対する機械学習を実行する
    処理をコンピュータが実行することを特徴とする学習方法。
  6. 物体が配置すべきエリアが撮影された背景画像と、物体とエリアとが撮影された対象画像とを入力データとし、前記背景画像には存在しないが前記対象画像には存在する物体に関連する情報を正解データとする学習データを取得する取得部と、
    前記学習データを基にして、前記対象画像と前記対象画像とを機械学習モデルに入力した際に前記機械学習モデルから出力される結果と、前記正解データとに基づいて、前記機械学習モデルに対する機械学習を実行する学習処理部と
    を有することを特徴とする情報処理装置。
JP2021174725A 2021-10-26 2021-10-26 学習プログラム、学習方法および情報処理装置 Pending JP2023064439A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021174725A JP2023064439A (ja) 2021-10-26 2021-10-26 学習プログラム、学習方法および情報処理装置
EP22181859.4A EP4174788A1 (en) 2021-10-26 2022-06-29 Learning program, learning method, and information processing apparatus
US17/857,083 US20230130674A1 (en) 2021-10-26 2022-07-04 Computer-readable recording medium storing learning program, learning method, and information processing apparatus
KR1020220087406A KR20230059711A (ko) 2021-10-26 2022-07-15 학습 프로그램, 학습 방법 및 정보 처리 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021174725A JP2023064439A (ja) 2021-10-26 2021-10-26 学習プログラム、学習方法および情報処理装置

Publications (1)

Publication Number Publication Date
JP2023064439A true JP2023064439A (ja) 2023-05-11

Family

ID=82799936

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021174725A Pending JP2023064439A (ja) 2021-10-26 2021-10-26 学習プログラム、学習方法および情報処理装置

Country Status (4)

Country Link
US (1) US20230130674A1 (ja)
EP (1) EP4174788A1 (ja)
JP (1) JP2023064439A (ja)
KR (1) KR20230059711A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11928660B2 (en) * 2022-03-18 2024-03-12 Toshiba Global Commerce Solutions Holdings Corporation Scanner swipe guidance system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019153057A (ja) 2018-03-02 2019-09-12 富士通株式会社 画像処理装置、学習装置、画像処理方法、学習方法、画像処理プログラムおよび学習プログラム

Also Published As

Publication number Publication date
US20230130674A1 (en) 2023-04-27
KR20230059711A (ko) 2023-05-03
EP4174788A1 (en) 2023-05-03

Similar Documents

Publication Publication Date Title
CN109376631B (zh) 一种基于神经网络的回环检测方法及装置
US20240013541A1 (en) Computer-readable recording medium, information processing method, and information processing apparatus
CN106203225A (zh) 基于深度的图像元素删除
EP4174788A1 (en) Learning program, learning method, and information processing apparatus
EP4174796A1 (en) Inference program, learning program, inference method, and learning method
TWI734054B (zh) 資訊處理裝置、顯示位置調整方法及儲存媒體
JP6623851B2 (ja) 学習方法、情報処理装置および学習プログラム
TW201926194A (zh) 處理系統、處理方法及程式
EP4125056A1 (en) Information processing program, information processing method, and information processing device
US20210241356A1 (en) Information processing apparatus, control method, and program
US20230351412A1 (en) Information processing apparatus, information processing method, information processing program, and information processing system
JP7343047B2 (ja) 処理装置、処理方法及びプログラム
JP6769555B2 (ja) 物品識別装置、物品識別方法、計算装置、システムおよびプログラム
JP2022187215A (ja) 動作判別プログラム、動作判別方法および動作判別装置
US20240193993A1 (en) Non-transitory computer-readable recording medium, information processing method, and information processing apparatus
EP4390875A1 (en) Alert output program, alert output method, and information processing device
EP4160533A1 (en) Estimation program, estimation method, and estimation device
US20240193573A1 (en) Storage medium and information processing device
JP7322945B2 (ja) 処理装置、処理方法及びプログラム
JP7509238B2 (ja) 情報処理装置、情報処理方法およびプログラム
WO2023175767A1 (ja) 商品確認装置、商品確認方法、及び記録媒体
WO2021171553A1 (ja) 処理装置、処理方法及びプログラム
CN111310585B (zh) 用于生成信息的方法和装置
JP7318683B2 (ja) 情報処理プログラム、情報処理方法、および情報処理装置
US20240193389A1 (en) Non-transitory computer-readable recording medium, information processing method, and information processing apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240711