(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023169922
(43)【公開日】2023-12-01
(54)【発明の名称】情報処理システム及びその制御方法、プログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20231124BHJP
G06V 10/774 20220101ALI20231124BHJP
【FI】
G06T7/00 350B
G06V10/774
【審査請求】有
【請求項の数】19
【出願形態】OL
(21)【出願番号】P 2022081259
(22)【出願日】2022-05-18
(11)【特許番号】
(45)【特許公報発行日】2023-06-28
(71)【出願人】
【識別番号】390002761
【氏名又は名称】キヤノンマーケティングジャパン株式会社
(71)【出願人】
【識別番号】592135203
【氏名又は名称】キヤノンITソリューションズ株式会社
(74)【代理人】
【識別番号】100189751
【弁理士】
【氏名又は名称】木村 友輔
(72)【発明者】
【氏名】高見澤 亮
(72)【発明者】
【氏名】布施 竜一
(72)【発明者】
【氏名】片岡 新
(72)【発明者】
【氏名】田路 賢太郎
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096BA08
5L096CA02
5L096DA02
5L096HA09
5L096KA04
5L096KA15
(57)【要約】
【課題】 内側に認識すべき対象とは異なるものが存在する可能性のある認識すべき対象を、より精度よく認識できるようにする仕組みを提供する
【解決手段】 画像のうち容器を含む容器領域を取得する取得手段と、
前記取得手段で取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工手段と、
前記加工手段で加工された画像を用いて学習処理を行うように制御する制御手段と
を備えることを特徴とする。
【選択図】
図6
【特許請求の範囲】
【請求項1】
画像のうち容器を含む容器領域を取得する取得手段と、
前記取得手段で取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工手段と、
前記加工手段で加工された画像を用いて学習処理を行うように制御する制御手段と
を備えることを特徴とする情報処理システム。
【請求項2】
前記制御手段は、前記加工手段で加工した画像と、前記加工手段で加工していない画像とを用いて学習処理を行うように制御することを特徴とする請求項1に記載の情報処理システム。
【請求項3】
前記制御手段は、前記加工手段で加工していない画像を用いることなく、前記加工手段で加工した画像を用いて学習処理を行うように制御することを特徴とする請求項1に記載の情報処理システム。
【請求項4】
前記一部領域は、前記容器領域の内側に容器とは異なる物がある画像と、前記容器領域の内側に容器とは異なる物がない画像との差分に基づく、前記物に対応する領域であることを特徴とする請求項1に記載の情報処理システム。
【請求項5】
前記学習処理は、画像から容器の種別を識別するための学習済みモデルを生成する処理であることを特徴とする請求項1に記載の情報処理システム。
【請求項6】
前記制御手段は、前記学習処理で生成された学習済みモデルに容器が写った認識対象の画像を入力して、画像に含まれる容器の種別を判別する推論処理を行うように制御することを特徴とする請求項5に記載の情報処理システム。
【請求項7】
前記加工手段は、前記認識対象の画像のうち容器を含む容器領域に対しても前記特定の加工を施し、
前記制御手段は、前記加工手段で加工された画像を前記学習済みモデルに入力して推論処理を行うように制御することを特徴とする請求項6に記載の情報処理システム。
【請求項8】
画像のうち容器を含む容器領域を取得する取得手段と、
前記取得手段で取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工手段と、
前記加工手段で加工された画像を用いて推論処理を行うように制御する制御手段と
を備えることを特徴とする情報処理システム。
【請求項9】
前記制御手段は、前記推論処理によって特定された容器の種別が、アスペクト比に係る条件とサイズに係る条件との少なくとも一方を満たす場合に、認識対象の画像に含まれる容器の種別として前記推論処理によって特定された容器の種別を示す情報を出力するように制御することを特徴とする請求項6または8に記載の情報処理システム。
【請求項10】
前記加工手段は、1または複数の画像から前記取得手段で取得された複数の容器領域のそれぞれの一部領域に対して、前記特定の加工として同じ加工を施すことを特徴とする請求項1乃至8のいずれか1項に記載の情報処理システム。
【請求項11】
前記特定の加工は、特定の色またはパターンで塗りつぶす処理であることを特徴とする請求項1乃至8のいずれか1項に記載の情報処理システム。
【請求項12】
前記特定の色は黒であることを特徴とする請求項11に記載の情報処理システム。
【請求項13】
前記加工手段は、前記容器領域の中心から所定の割合の一部領域に対して前記特定の加工を施すことを特徴とする請求項1乃至8のいずれか1項に記載の情報処理システム。
【請求項14】
前記加工手段は、前記容器領域の形状に応じて異なる形状の一部領域に対して前記特定の加工を施すことを特徴とする請求項1乃至8のいずれか1項に記載の情報処理システム。
【請求項15】
画像のうち容器を含む容器領域を取得する取得ステップと、
前記取得ステップで取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工ステップと、
前記加工ステップで加工された画像を用いて学習処理を行うように制御する制御ステップと
を備えることを特徴とする情報処理システムの制御方法。
【請求項16】
画像のうち容器を含む容器領域を取得する取得ステップと、
前記取得ステップで取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工ステップと、
前記加工ステップで加工された画像を用いて推論処理を行うように制御する制御ステップと
を備えることを特徴とする情報処理システムの制御方法。
【請求項17】
少なくとも1つのコンピュータを、請求項1乃至8のいずれか1項に記載の情報処理システムの各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像を用いて、画像に含まれる認識すべき対象を認識するための技術に関する。
【背景技術】
【0002】
従来、識別対象の物体を含む画像(訓練画像、教師データ)を用いた機械学習により学習済みモデルを生成し、生成された学習済みモデルに画像を入力することで、画像に含まれる物体を認識する技術が知られている。
【0003】
先行技術文献1には、画像を物体領域と背景領域と分離したマスク画像を生成することで、未知の物体(訓練画像中にない物体など)の検出精度を向上させることが提案されている。マスク画像の生成の際には、フレーム画像の画素ごとに、画素に「1」(白色に相当する値)又は「0」(黒色に相当する値)を対応付け、物体領域(白色範囲)と背景領域(黒色範囲)とに分類することが開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の開示】
【発明が解決しようとする課題】
【0005】
食堂における食後の会計の際に、画像から食器を認識し、認識した食器に応じた会計処理を行うなどのユースケースが考えられる。このように、食器を画像認識の対象とするときに、食器の中に食べ残しがあると、認識精度が下がってしまう。すなわち、認識すべき対象の内側に認識すべき対象とは異なるものが存在すると、それが認識精度の低下要因となる場合がある。先行技術文献1では、認識すべき対象の内側に認識すべき対象とは異なるものが存在する可能性については考慮されていない。
【0006】
そこで本発明は、内側に認識すべき対象とは異なるものが存在する可能性のある認識すべき対象を、より精度よく認識できるようにする仕組みを提供することを目的とする。
【課題を解決するための手段】
【0007】
画像のうち容器を含む容器領域を取得する取得手段と、
前記取得手段で取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工手段と、
前記加工手段で加工された画像を用いて学習処理を行うように制御する制御手段と
を備えることを特徴とする。
【発明の効果】
【0008】
本発明によれば、内側に認識すべき対象とは異なるものが存在する可能性のある認識すべき対象を、より精度よく認識できる。
【図面の簡単な説明】
【0009】
【
図1】本実施形態に係る情報処理装置を適用可能なシステムを説明する図である。
【
図2】各種装置のハードウェア構成の一例を示す図である。
【
図3】AI学習時の一例を示すフローチャートである。
【
図4】AI推論時の一例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【0011】
まず、
図1を参照して、本発明の実施形態における情報処理システムの構成の一例について説明する。
【0012】
本発明における情報処理システムは、カメラ103とディスプレイ104と精算台105で構成されている食堂精算レーン102が、所定のコントローラ106(例えばPoEハブ)からネットワーク107(例えばイーサネット)を介して、クライアント端末101と通信可能に接続されて構成されている。なおクライアント端末101に対して、複数の食堂精算レーン102が接続されてもよい。
【0013】
カメラ103は、精算台105のトレー全体が写る範囲を撮影可能な位置に設置されている。
【0014】
精算台105には、会計のために食後の食器が載ったトレーが置かれる。なお、食器が載ったトレーは、食前の状態でもよい。
【0015】
クライアント端末101は、例えばパーソナルコンピューター(以下、PC)であり、カメラ103で撮像された画像から食器を識別し、決済等の処理を行う。クライアント端末101は深層距離学習(ディープメトリックラーニング(Deep Metric Learning))の技術を用いて、精算台105に置かれた食器の種類を識別する。
【0016】
深層距離学習とは、画像の特徴量のみを抽出し、抽出した特徴量からアルゴリズムによって画像の特徴量ベクトルを算出し、その距離を測定することでどの商品に最も近いかを求める手法である。予めサンプル画像を用意しておき、各画像から特徴量ベクトルを抽出する。入力画像について、各サンプル画像と特養量ベクトルの距離を測定し、最も近い距離にあるサンプルと同一種類であると判定する。本実施例では、深層距離学習を用いて説明をするが、Deep Learning Classification等の他の手法を用いても良い。
【0017】
ディスプレイ104は、クライアント端末101で処理された決済の情報を表示し、食事を行った支払い者に精算を指示する。なお、ディスプレイ104には、カメラ103の映像を表示してもよい。
【0018】
次に
図2を参照して、本発明を適用可能な装置の一例としてのクライアント端末101の構成の一例を示す。
【0019】
図2において、内部バス250に対してCPU201、メモリ202、不揮発性メモリ203、画像処理部204、ディスプレイ205、操作部206、記録媒体I/F207、外部I/F209、通信I/F210が接続されている。内部バス250に接続される各部は、内部バス250を介して互いにデータのやりとりを行うことができるようにされている。
【0020】
メモリ202は、例えばRAM(半導体素子を利用した揮発性のメモリなど)からなる。CPU201は、例えば不揮発性メモリ203に格納されるプログラムに従い、メモリ202をワークメモリとして用いて、クライアント端末101の各部を制御する。不揮発性メモリ203には、画像データや音声データ、その他のデータ、CPU201が動作するための各種プログラムなどが格納される。不揮発性メモリ203は例えばハードディスク(HD)やROMなどで構成される。
【0021】
画像処理部204は、CPU201の制御に基づいて、不揮発性メモリ203や記録媒体208に格納された画像データや、外部I/F209を介して取得した映像信号、通信I/F210を介して取得した画像データ、撮像された画像などに対して各種画像処理を施す。画像処理部204が行う画像処理には、A/D変換処理、D/A変換処理、画像データの符号化処理、圧縮処理、デコード処理、拡大/縮小処理(リサイズ)、ノイズ低減処理、色変換処理などが含まれる。画像処理部204は特定の画像処理を施すための専用の回路ブロックで構成しても良い。また、画像処理の種別によっては画像処理部204を用いずにCPU201がプログラムに従って画像処理を施すことも可能である。画像から認識すべき対象(食器)を認識する処理は、CPU201が画像処理部204と協働して行う。
【0022】
ディスプレイ205は、CPU201の制御に基づいて、画像やGUI(Graphical User Interface)を構成するGUI画面などを表示する。CPU201は、プログラムに従い表示制御信号を生成し、ディスプレイ205に表示するための映像信号を生成してディスプレイ205に出力するようにクライアント端末101の各部を制御する。ディスプレイ205は出力された映像信号に基づいて映像を表示する。なお、クライアント端末101自体が備える構成としてはディスプレイ205に表示させるための映像信号を出力するためのインターフェースまでとし、ディスプレイ205は外付けのモニタ(テレビなど)で構成してもよい。
【0023】
操作部206は、キーボードなどの文字情報入力デバイスや、マウスやタッチパネルといったポインティングデバイス、ボタン、ダイヤル、ジョイスティック、タッチセンサ、タッチパッドなどを含む、ユーザー操作を受け付けるための入力デバイスである。なお、タッチパネルは、ディスプレイ205に重ね合わせて平面的に構成され、接触された位置に応じた座標情報が出力されるようにした入力デバイスである。
【0024】
記録媒体I/F207は、メモリーカードやCD、DVDといった記録媒体208が装着可能とされ、CPU201の制御に基づき、装着された記録媒体208からのデータの読み出しや、当該記録媒体208に対するデータの書き込みを行う。外部I/F209は、外部機器と有線ケーブルや無線によって接続し、映像信号や音声信号の入出力を行うためのインターフェースである。通信I/F210は、外部機器やインターネット211などと通信して、ファイルやコマンドなどの各種データの送受信を行うためのインターフェースである。
【0025】
カメラ部212は、光学像を電気信号に変換するCCDやCMOS素子等で構成される撮像素子(撮像センサー)等で構成されるカメラユニットである。
【0026】
次に
図3を参照して、本発明の実施形態における、食器認識に係る学習処理(AI:Artificial Intelligenceを用いた学習処理)の基本処理について説明する。なお、各ステップの処理は、各装置のCPU201が実行する。食堂の客が食堂精算レーン102を利用する前の処理として、クライアント端末101で画像を学習するときに、
図3の処理が開始される。
【0027】
S301では、CPU201は、カメラ103で撮影された食器を含む画像から食器毎の画像を外接矩形で切り出して取得し、記録媒体208に保存する。具体的には、カメラ103で撮影した画像から、食器の領域を検出する。この検出処理は、後述する食器の種別の検出とは異なる検出処理であり、種別は不明であるが、食器がある(あるいは、トレーではない物体がある)ということまでがわかる検出処理である。この検出処理で検出された食器の領域に対して、食器の外形に接するように矩形(以下、外接矩形)を設定する。元の画像から設定された外接矩形の領域の部分画像(すなわち、単一の食器を含む画像)を切り出して取得し、記録媒体208に保存する。
【0028】
S302では、CPU201は、S301で取得して保存した切り出し画像の内側の一部分を黒塗りする割合を設定する。このとき、黒塗りする割合は任意に設定可能であるが、100%にしてしまうと、全て塗りつぶしてしまうことになるので、100%未満とする。また、塗りつぶす色は黒に限らず、他の色を使用しても良い。
【0029】
S303では、CPU201は、S302で設定した割合に基づいて、S301で取得して保存した切り出し画像(食器を含む領域)のそれぞれの内側の一部分を黒塗りし、記録媒体208に保存する。この黒塗り処理は、
図6で後述する推論フェーズでの黒塗りと同様の処理である。ただし、教師データの作成過程であるS303の処理では、料理(食べ物)や食べ残しがない、食器だけを撮影した画像を用いた処理であってもよい。食器だけの画像であっても、内側を黒塗りにしたものを学習させることで、推論フェーズで食器自体ではなく食べ残しの画像が写る可能性のある食器の内側部分を、特徴と見なさないような学習をさせることができる。すなわち、S303の処理は、食器を含む容器領域の内側の一部分に対して、他の画像との差分を低下させる加工を施す処理である。
【0030】
S304では、CPU201は、外接矩形で切り出したオリジナル画像(S301で取得した黒塗り前の切り出し画像、教師画像)と、S303で保存した黒塗り画像(教師画像)の双方と、それぞれの画像の食器の種別を示すラベル情報を用いた学習処理を行い、学習済モデルを作成する。作成した学習済みモデルを記録媒体208に記録する。なお、オリジナル画像を使用せずに、学習させる教師画像としては黒塗り画像のみを使用してもよい。その場合、推論フェーズで使用する画像も黒塗り画像のみとするのが好ましい。
【0031】
【0032】
次に
図4を参照して、本実施形態における、食器の認識処理の一例を示す。この処理は、
図3の学習処理で生成された学習済みモデルを用いた推論フェーズの処理であり、食堂の客が食堂精算レーン102を利用する際に行われる処理である。なお、各ステップの処理は、CPU201が実行する。なお、
図3の処理と
図4の処理を同じクライアント端末101が行う例を説明するが、
図3の処理で生成された学習済みモデルを使うのであれば、
図4の処理は
図3の処理を行うクライアント端末101とは別の個体の情報処理装置(例えばPC)で実行するようにしてもよい。
【0033】
S401では、CPU201は、カメラ103で精算台105の範囲を撮影する。カメラ103で清算台を撮影する際、常に撮影し続けてもいいし、撮影範囲内に何らかの動く物体を検知した場合に、撮影を開始しても良い。
【0034】
S402では、CPU201は、撮影画像から、所定の範囲にトレーが置かれているかを判定するトレー配置判定処理を実行する。S403でトレーが置かれていると判断された場合はS404の食器位置検出処理を行い、トレーが置かれていないと判断された場合はS402のトレー配置判定が再度実行される。
【0035】
S404では、CPU201は、カメラ103による撮影を行い、撮影された画像から、S301と同様に、食器毎の画像を外接矩形で切り出して取得する。
図5に、カメラ103で撮影された画像の例を示す。撮影画像501には、精算台105に置かれたトレー502と食器503a~503dが写っている。トレー上の食器の位置を検出し、それぞれの食器に対して外接矩形504a~504dを算出する。なお、
図5は食べ残しが無い食器の画像の例であるが、食べ残しがある場合には、各食器の内側に食べ残しが写ったものとなる。
【0036】
S405では、CPU201は、S404によって取得した食器ごとの部分画像の内部を、予め設定しておいた割合で黒塗りする。
【0037】
図6に、食器の黒塗り加工を行う方法の一例を示す。外接矩形(容器領域)で切り出した切り出し画像601a~601cには、それぞれ食器602a~602cと食べ残し603a~603cや汚れが写っている。食べ残しや汚れがあると食器識別の精度に影響があるため、食べ残しや汚れ等の画像認識に不要な部分を黒塗りする処理を行う。本実施例では、黒塗りする割合を50%に設定していた場合について説明する。外接矩形で切り出した切り出し画像601a~601cに対し、それぞれの中心から、それぞれ横50%、縦50%の割合で楕円(外接矩形が正方形の場合は真円となる)を黒塗りして黒塗領域604a~604cを生成する。形状が横長の食器602bや長方形の食器602cに関しては、外接矩形(切り出し画像601b、601c)の中心(C2,C3)から、それぞれ横50%、縦50%の割合で黒塗りした場合は、図示したような横長の楕円の黒塗り領域604b、604cが生成される。このように、食べ残しや汚れ等の不要な部分を黒塗りすることによって、食べ残し等を誤って検出してしまうことを防ぎ、認識精度の向上が期待できる。また、食器があると認識(検出)された領域の形状(切り出し画像601a~601cの形状)に合わせて黒塗りする領域が変わる(真円か、横長の楕円か、など)。すなわち、食器の形状に合わせて食品などの検出対象物と異なるものが置かれている可能性が高い領域を黒塗りするため、より精度良く、検出対象物である食器の種類を検出することが可能となる。なお、不要な部分について、ある対象を検出する際に特徴のない部分(不要部分)であれば、食べ残しや汚れに限らない。
【0038】
S406では、CPU201は、AIによる食器の種類判別を実行する。具体的には、S304で作成された学習済モデル(記録媒体208に記憶されている学習済みモデル)に、S406で作成した加工済みの切り出し画像を入力し、推論処理を行う。S404で複数の切り出し画像を取得していた場合は、それらの全てについてそれぞれ推論処理を行う。推論処理の結果として、各切り出し画像について、複数の食器種別毎のスコア(該当する食器種別に対する確からしさ)が出力される。CPU201は、このうち、スコアが所定の閾値を超えているものを抽出し、判別結果の候補種別とする。候補種別として抽出される種別の数は、0、1、複数のいずれの場合もあり得る。
【0039】
S407では、S406の推論処理の結果、候補種別が抽出されたか否かを判定する。候補種別が1つ以上抽出された場合はS408に進み、そうでない場合、すなわち候補種別が0であった(スコアが閾値を超える種別が無かった)場合にはS414へ進む。
【0040】
S408~S412の処理は、候補種別の1つずつについて行われる。以下、例として、1つの切り出し画像についてS406で候補種別が吸い物椀、茶碗、焼き魚皿の3つが抽出された例を説明する。この場合、S408~S412の処理は、吸い物椀、茶碗、焼き魚皿それぞれについて行われる。
【0041】
S408では、CPU201は、S406で抽出された候補種別であって、S408での処理対象の候補種別に対応するサンプル画像を取得する。サンプル画像は、検出結果としてあり得る食器の正解データ(教師データ)に含まれる画像であり、S301で予め記録媒体208に記録されていた画像である。
【0042】
S409では、CPU201は、候補種別の取得元となった認識対象画像である切り出し画像(外接矩形)のアスペクト比と、S408で取得したサンプル画像のアスペクト比とを比較する処理を実行する。
【0043】
S410では、CPU201は、S409の比較の結果、アスペクト比の差が許容範囲以内であるかを判定する。許容範囲内であればS411に処理を進め、許容範囲外であればS414に進む。例えば、焼き魚皿のサンプル画像において、食器の外接矩形のアスペクト比は横長の2:3であるものとする。これに対して、候補種別である焼き魚皿の取得元となった認識対象画像である切り出し画像(外接矩形)のアスペクト比が1:1であれば、焼き魚皿はアスペクト比が許容範囲外となるため、このステップでNoと判定され、焼き魚皿は候補種別から除外される。
【0044】
S411では、CPU201は、候補種別の取得元となった認識対象画像である切り出し画像(外接矩形)のサイズと、S408で取得したサンプル画像のサイズとを比較する処理を実行する。具体的には、面積(ピクセル数)を比較する。S404の食器位置検出で検出された外接矩形の面積(ピクセル数)とS410で絞り込まれたサンプル画像群の候補の面積(ピクセル数)を比較する処理を実行する。
【0045】
S412では、CPU201は、S411の比較の結果、サイズの差が許容範囲以内であるかを判定する。許容範囲内であればS413に処理を進め、許容範囲外であればS414に進む。例えば、茶碗のサンプル画像のサイズが、吸い物椀のサンプル画像のサイズ1よりも大きい、サイズ2であるものとする。これに対して、候補種別である茶碗の取得元となった認識対象画像である切り出し画像(外接矩形)のサイズがサイズ1であり、サイズ1とサイズ2の差が許容範囲を超える差であれば、このステップでNoと判定され、茶碗は候補種別から除外される。このように、同じような形状の食器であっても大きさが異なる場合があるため、食器の大きさを比較して、異なる大きさの食器を候補から除外する処理を行う。例えば、茶碗の中でも、大きいものから小さいものまで大きさは様々であり、これらを識別するために、食器の画像の面積を比較することで候補を絞り込むことができる。
【0046】
S413では、CPU201は、候補種別の全てについて処理済みであるか否かを判定する。全て処理済みであればS415に進み、そうでない場合にはS408に進んで次の候補種別についての処理を行う。
【0047】
S414では、CPU201は、処理対象の候補種別を候補から除外する。すなわちその種別は認識結果としては確定しない。
【0048】
S415では、CPU201は、S406で抽出された候補種別のうち、S408からS414の処理で候補から除外されなかった種別が存在するか否かを判定する。存在する場合にはS416に進み、存在しない場合(全ての種別が除外された場合)にはS417へ進む。
【0049】
S416では、CPU201は、S406で抽出された候補種別のうち、S408からS412の処理で候補から除外されなかった残りの種別のうち、スコアが最も高い食器の種別を1つ特定し、認識結果として確定する。すなわち、1つの容器領域に対して1つの食器の種別を特定する。
【0050】
一方、S417では、CPU201は、検出対象の食器が、未登録の食器(未登録物品)として判定する。その場合、未登録物品は会計に含めないように処理を行う。例えば、トレー上に食器以外のタオル等が置かれていた場合、それを未登録物品として認識し、会計には含めないようにする。また、未登録物品であると識別できるように、当該物品に対して、「Unknown」等の通知をしてもよい。
【0051】
こうしてS416,S417で食器の種別が特定されると、CPU201は、その日のメニュー(献立)情報を参照し、特定された食器に対応する料理(メニュー)と値段を取得する。そして、1つのトレー画像に含まれる全ての食器に対応する料理と値段を取得すると、ディスプレイ104に、検出結果として、各料理名、値段、合計金額を表示するように制御する。その後、ユーザーからの清算操作に応じて、表示された合計金額での清算を行う。
【0052】
【0053】
以上説明したように、本実施形態によれば、認識対象の食器とは異なるもの(食品)が写る可能性の高い食器の内側の一部領域を黒塗りする加工を施した画像を学習させ、また、推論に用いるようにする。このようにすることで、黒塗りした領域はどの種別の食器の画像でも同じ特徴(黒一色という特徴)を持つ画像となる。従って、学習フェーズにおいては、黒塗りした領域は食器の種別を判別するために有効な特徴(差異)を示すデータが得られる領域とはならないため、黒塗りされた領域に関して食器の種別の判断の根拠とする程度が低い学習済みモデルが生成されることとなる。こうして生成された学習済みモデルには、食器のうち、学習時に黒塗りされていた領域に相当する領域にどんな異物があっても、食器の種別判断に与える影響は低い。すなわち、食べ残しによる影響で誤った判断をする可能性が低減し、より精度よく食器の種別を判別することが可能となる。このように生成された学習済みモデルには、推論を行う食器の種別の検出対象画像として、食べ残しのある領域を黒塗りにせずにそのままの状態の画像を入力しても、学習時に黒塗りされていた領域に対応する領域は、食器の種別の判断の根拠となる程度が低い。すなわち、食べ残しの部分の画像の影響による認識精度の低下はないか、限定的となる。従って、推論時には黒塗り加工を行わず、
図3のように、学習時に教師画像として食器の画像の内側の一部を黒塗りした画像を用いた学習を行うだけでも認識精度向上の効果を得ることができる。そのため、
図4のS405の黒塗りの処理は行わなくてもよい。その分、推論時に処理にかける処理時間や処理負荷を低下させることができ、高い応答性で推論結果を通知することができる。もちろん、S405の処理を行えば、より高い精度が期待できる。
【0054】
なお、上述の実施形態では、食器のある領域の外接矩形で切り出した画像に対して、食器の内部を黒塗りする割合を設定する例を説明したが、これに限るものではない。検出した食器の食べ残し部分のみをAIで領域抽出し、その領域にのみ黒塗りするようにしてもよい。
【0055】
また、次のように処理してもよい。S404の処理の後、S405を省略し、S404で検出された黒塗りしていない認識対象画像の容器領域の画像に対してS406の食器の種類判別を実行する。そして、複数の候補種別にそれぞれ対応する複数のサンプル画像(予め記憶された、食べ残し等の異物がのっていない食器の画像)と、S404で検出された黒塗りしていない認識対象画像の容器領域の画像とのそれぞれの差分抽出を行う。そして、S404で検出された黒塗りしていない認識対象画像の容器領域の画像のうち、差分となった差分領域(すなわち、食器ではない領域で、食べ残し等と推定される領域)を黒塗りした画像を、複数の食器の候補種別の分作成し、それらに対してもう一度S406の食器の種類判別を実行する。その結果得られた食器の種別として一番スコアの高い1つの種別を、検出された食器の種別として確定するようにしてもよい。すなわち、検出対象の画像(認識対象画像)と候補画像との差分から食べ残し部分を特定し、その部分を黒塗りして、推論処理を行うことも可能である。
【0056】
なお、上述の実施形態では、
図6のように食器を黒塗りする際、楕円形になるように黒塗りする例を説明したが、これに限るものではない。食器の形状に合わせて、黒塗りの形状を変更してもよい。例えば、食器の形状が四角形606である場合、それに合わせて黒塗りの形状を四角形にしてもよい。
【0057】
さらに、認識対象の食器とは異なるもの(食品)が写る可能性の高い食器の内側の一部領域を黒塗りする加工を施す例を説明したが、認識の根拠となる可能性を低減させることが可能な、画像別の特徴(差異)を低減させる加工であればこれに限るものではない。例えば、黒塗りすると説明した領域について、白一色や、青一色などの、任意の色の単色で塗りつぶす処理としてもよい。また、数ドットおきに黒と灰色が交互に現れるなどの、単純なパターン画像に置き換える処理などでもよい。
【0058】
また、黒塗りすると説明した領域について、画像の無い無画像領域としてもよい。食器の外接矩形に含まれる黒塗りすると説明した領域を除く中央に穴の開いた状態の画像を学習や推論に用いても良い。なお、学習時に用いた食器の画像と、推論時に用いる食器の画像における食器の形状が異なると、同じ種別であるはずの食器が別の種別であると判定される可能性が出てきてしまう。例えば、中央に穴の開いた食器の画像を学習させると、推論時に中央に穴の開いていない画像は異なる食器であると判定される可能性が高まる。その点で言えば、学習時に単色やパターンで塗りつぶす処理とすれば、形状自体は変わらないため、推論時に用いる画像の自由度が高まる(黒塗りを施さないそのままの画像を用いても効果的な推論を行える)。黒塗りの代わりに無画像領域としようとした場合、推論前には検出対象の画像に含まれる食器の種別は正確にはわかっていないわけであるから、推論時に学習時と同じ形状で無画像領域を切り出すことは難しい。すなわち、無画像領域としてしまうよりは、黒塗りなどの特徴のないパターンでの置き換えの方が効果的であると想定される。
【0059】
なお、上述の実施形態は、食器の種別の認識を行う例を説明したが、食器の種別の認識に限らず、検出対象の内側に、検出対象とは異なるものが存在する可能性がある場合に適用可能である。例えば、鍋の内部の食品や料理にかかわらず鍋自体の種別を画像から判別する学習済みモデルを生成したり、推論したりする際にも適用可能である。また、ビーカー、シャーレなどの実験に使う容器、薬品・化粧品・食品・飲料などが入れられる容器(瓶やコップなど)、荷物の容器(木箱・段ボール・樹脂容器など)の認識(検出)を行う場合にも適用可能である。いずれも、容器の中身にかかわらず、容器自体を精度良く認識(検出)することに寄与する。
【0060】
本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0061】
なお、CPU201が行うものとして説明した上述の各種制御は1つのハードウェアが行ってもよいし、複数のハードウェア(例えば、複数のプロセッサーや回路)が処理を分担することで、装置全体の制御を行ってもよい。
【0062】
また、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。さらに、上述した各実施形態は本発明の一実施形態を示すものにすぎず、各実施形態を適宜組み合わせることも可能である。
【0063】
また、上述した実施形態においては、本発明をPCに適用した場合を例にして説明したが、これはこの例に限定されず黒塗り画像を生成できる装置であれば適用可能である。すなわち、本発明はPDA、携帯電話端末(スマートフォン)、タブレット端末などに適用可能である。
【0064】
(他の実施形態)
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【0065】
101 クライアント端末
107 ネットワーク
【手続補正書】
【提出日】2023-05-10
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
画像のうち容器を含む容器領域を取得する取得手段と、
前記取得手段で取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工手段と、
前記加工手段で加工された画像を用いて学習処理を行うように制御する制御手段と
を備え、
前記加工手段は、前記容器領域の中心から所定の割合の一部領域に対して前記特定の加工を施すことを特徴とする情報処理システム。
【請求項2】
画像のうち容器を含む容器領域を取得する取得手段と、
前記取得手段で取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工手段と、
前記加工手段で加工された画像を用いて学習処理を行うように制御する制御手段と
を備え、
前記加工手段は、前記容器領域の形状に応じて異なる形状の一部領域に対して前記特定の加工を施すことを特徴とする情報処理システム。
【請求項3】
前記制御手段は、前記加工手段で加工した画像と、前記加工手段で加工していない画像とを用いて学習処理を行うように制御することを特徴とする請求項1又は2に記載の情報処理システム。
【請求項4】
前記制御手段は、前記加工手段で加工していない画像を用いることなく、前記加工手段で加工した画像を用いて学習処理を行うように制御することを特徴とする請求項1又は2に記載の情報処理システム。
【請求項5】
前記一部領域は、前記容器領域の内側に容器とは異なる物がある画像と、前記容器領域の内側に容器とは異なる物がない画像との差分に基づく、前記物に対応する領域であることを特徴とする請求項1又は2に記載の情報処理システム。
【請求項6】
前記学習処理は、画像から容器の種別を識別するための学習済みモデルを生成する処理であることを特徴とする請求項1又は2に記載の情報処理システム。
【請求項7】
前記制御手段は、前記学習処理で生成された学習済みモデルに容器が写った認識対象の画像を入力して、画像に含まれる容器の種別を判別する推論処理を行うように制御することを特徴とする請求項6に記載の情報処理システム。
【請求項8】
前記加工手段は、前記認識対象の画像のうち容器を含む容器領域に対しても前記特定の加工を施し、
前記制御手段は、前記加工手段で加工された画像を前記学習済みモデルに入力して推論処理を行うように制御することを特徴とする請求項7に記載の情報処理システム。
【請求項9】
画像のうち容器を含む容器領域を取得する取得手段と、
前記取得手段で取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工手段と、
前記加工手段で加工された画像を用いて推論処理を行うように制御する制御手段と
を備え、
前記加工手段は、前記容器領域の中心から所定の割合の一部領域に対して前記特定の加工を施すことを特徴とする情報処理システム。
【請求項10】
画像のうち容器を含む容器領域を取得する取得手段と、
前記取得手段で取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工手段と、
前記加工手段で加工された画像を用いて推論処理を行うように制御する制御手段と
を備え、
前記加工手段は、前記容器領域の形状に応じて異なる形状の一部領域に対して前記特定の加工を施すことを特徴とする情報処理システム。
【請求項11】
前記制御手段は、前記推論処理によって特定された容器の種別が、アスペクト比に係る条件とサイズに係る条件との少なくとも一方を満たす場合に、認識対象の画像に含まれる容器の種別として前記推論処理によって特定された容器の種別を示す情報を出力するように制御することを特徴とする請求項9または10に記載の情報処理システム。
【請求項12】
前記加工手段は、1または複数の画像から前記取得手段で取得された複数の容器領域のそれぞれの一部領域に対して、前記特定の加工として同じ加工を施すことを特徴とする請求項1、2、9又は10に記載の情報処理システム。
【請求項13】
前記特定の加工は、特定の色またはパターンで塗りつぶす処理であることを特徴とする請求項1、2、9又は10に記載の情報処理システム。
【請求項14】
前記特定の色は黒であることを特徴とする請求項13に記載の情報処理システム。
【請求項15】
画像のうち容器を含む容器領域を取得する取得ステップと、
前記取得ステップで取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工ステップと、
前記加工ステップで加工された画像を用いて学習処理を行うように制御する制御ステッ
プと
を備え、
前記加工ステップは、前記容器領域の中心から所定の割合の一部領域に対して前記特定の加工を施すことを特徴とする情報処理システムの制御方法。
【請求項16】
画像のうち容器を含む容器領域を取得する取得ステップと、
前記取得ステップで取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工ステップと、
前記加工ステップで加工された画像を用いて学習処理を行うように制御する制御ステッ
プと
を備え、
前記加工ステップは、前記容器領域の形状に応じて異なる形状の一部領域に対して前記特定の加工を施すことを特徴とする情報処理システムの制御方法。
【請求項17】
画像のうち容器を含む容器領域を取得する取得ステップと、
前記取得ステップで取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工ステップと、
前記加工ステップで加工された画像を用いて推論処理を行うように制御する制御ステッ
プと
を備え、
前記加工ステップは、前記容器領域の中心から所定の割合の一部領域に対して前記特定の加工を施すことを特徴とする情報処理システムの制御方法。
【請求項18】
画像のうち容器を含む容器領域を取得する取得ステップと、
前記取得ステップで取得した前記容器領域の内側の一部領域に対して、他の画像との差異を低減する特定の加工を施す加工ステップと、
前記加工ステップで加工された画像を用いて推論処理を行うように制御する制御ステッ
プと
を備え、
前記加工ステップは、前記容器領域の形状に応じて異なる形状の一部領域に対して前記特定の加工を施すことを特徴とする情報処理システムの制御方法。
【請求項19】
少なくとも1つのコンピュータを、請求項1、2、9又は10に記載の情報処理システムの各手段として機能させるためのプログラム。