(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-07
(45)【発行日】2022-06-15
(54)【発明の名称】食器の識別システムと識別プログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20220608BHJP
G07G 1/12 20060101ALN20220608BHJP
G07G 1/00 20060101ALN20220608BHJP
【FI】
G06T7/00 300B
G07G1/12 361C
G07G1/00 311D
(21)【出願番号】P 2018031822
(22)【出願日】2018-02-26
【審査請求日】2020-12-16
【新規性喪失の例外の表示】特許法第30条第2項適用 (1)展示会における発表 展示会名 中小企業 新ものづくり・新サービス展 開催日 平成29年11月28日~同年11月30日 開催場所 インテックス大阪
(73)【特許権者】
【識別番号】599024540
【氏名又は名称】株式会社ブレイン
(74)【代理人】
【識別番号】100086830
【氏名又は名称】塩入 明
(74)【代理人】
【識別番号】100096046
【氏名又は名称】塩入 みか
(72)【発明者】
【氏名】中道 護仁
【審査官】小池 正彦
(56)【参考文献】
【文献】特開2009-176209(JP,A)
【文献】特開昭62-062752(JP,A)
【文献】特開平09-187038(JP,A)
【文献】西山 学,ロバスト性を向上するロボット技術 人との共存環境に適応するロボット技術の展開,東芝レビュー,第64巻 第1号,株式会社東芝,2009年01月01日
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G07G 1/12
G07G 1/00
(57)【特許請求の範囲】
【請求項1】
食器の種類を識別する食器識別システムであって、
食器の深度画像を撮影する深度カメラと、
食器の輪郭を表す複数の特徴点から成り、各特徴点は、食器の中心からの距離と食器の中心と交わる線分からの方位と深度のデータを有する食器モデルを、複数個記憶するメモリと、
食器モデルの中心を深度画像に対し移動させるスキャン処理部と、
スキャン処理部により移動中の複数の位置において、食器モデルの特徴点の深度と深度画像での対応する点の深度とを、特徴点毎に比較することにより、食器モデルと深度画像とのマッチング度合いを評価し、かつマッチング度合いが所定の条件を充たす際に、食器モデルに従って食器の種類を決定する評価部、とを備えている食器識別システム。
【請求項2】
前記食器モデルは、回転不要または1/n回転で不変(nは1以上の自然数)の属性を備え、
かつ、食器モデルの属性が1/n回転で不変の場合、スキャン処理部により食器モデルの中心を移動させることと同時に、食器モデルを中心回りに1/n回転させる回転制御部をさらに備えていることを特徴とする、請求項1の食器識別システム。
【請求項3】
前記食器モデル
として、特徴点の数が多くかつ少なくとも食器の種類毎に設けられた詳細モデルと、特徴点の数が少なくかつモデルの数が詳細モデルの数よりも少ない簡易モデルとの、少なくとも2種類のモデルを備え、1個の簡易モデルに1個~複数個の詳細モデルが対応し、
前記評価部は、簡易モデルでのマッチング度合いが所定の条件を充たす際に、対応する1個~複数個の詳細モデルとのマッチング度合いを評価することを特徴とする、請求項1または2の食器識別システム。
【請求項4】
背が高い食器モデルから背の低い食器モデルへの順に、食器モデルを用いることを特徴とする、請求項1~3の何れかの食器識別システム。
【請求項5】
深度カメラからの食器の深度画像を入力として、コンピュータにより食器の種類を識別する食器識別プログラムであって、
前記コンピュータを、
食器の輪郭を表す複数の特徴点から成り、各特徴点は、食器の中心からの距離と食器の中心と交わる線分からの方位と深度のデータを有する食器モデルを、複数個記憶するメモリと、
食器モデルの中心を深度画像に対し移動させるスキャン処理部と、
スキャン処理部により移動中の複数の位置において、食器モデルの特徴点の深度と深度画像での対応する点の深度とを、特徴点毎に比較することにより、食器モデルと深度画像とのマッチング度合いを評価し、かつマッチング度合いが所定の条件を充たす際に、食器モデルに従って食器の種類を決定する評価部として、動作させる食器識別プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、食器の識別システムと識別プログラムに関する。
【背景技術】
【0002】
食器の種類を識別できると、カフェテリア等での精算や、食事に含まれる栄養の評価、あるいは摂取した食品の量と栄養の評価などに便利である。例えばカフェテリア等では、食器の種類が決まると、食品の単価も決まるようにすることがある。この場合、トレイ上の食器の種類を画像識別により決定できると、食事の精算ができる。またビーフカレーとカツカレーとを同じ皿に盛る場合でも、皿の種類を識別できると、食品の候補や単価の候補も絞ることができる。
【0003】
食器の識別について、特許文献1(JP3544793B)は、スリット光を液晶プロジェクタから投影することを開示している。スリット光は食器の高低と凹凸のため、食器表面で直線状のスリットから変形して反射される。これをカメラで撮影すると、食器の3D形状を推定できる。従って食器の識別に利用できる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところでトレイ等に食器が多数置かれると、食器が互いに接触するため、食器の輪郭が一部見えなくなることがある。
この発明の課題は、食器の輪郭の一部を撮影できない場合でも、食器の種類を決定できるようにすることにある。
【課題を解決するための手段】
【0006】
この発明の食器識別システムは、食器の種類を識別する食器識別システムであって、
食器の深度画像を撮影する深度カメラと、
食器の輪郭を表す複数の特徴点から成り、各特徴点は、食器の中心からの距離と食器の中心と交わる線分からの方位と深度のデータを有する食器モデルを、複数個記憶するメモリと、
食器モデルの中心を深度画像に対し移動させるスキャン処理部と、
スキャン処理部により移動中の複数の位置において、食器モデルの特徴点の深度と深度画像での対応する点の深度とを、特徴点毎に比較することにより、食器モデルと深度画像とのマッチング度合いを評価し、かつマッチング度合いが所定の条件を充たす際に、食器モデルに従って食器の種類を決定する評価部とを備えている。
【0007】
この発明の食器識別プログラムは、深度カメラからの食器の深度画像を入力として、コンピュータにより食器の種類を識別する食器識別プログラムであって、
前記コンピュータを、
食器の輪郭を表す複数の特徴点から成り、各特徴点は、食器の中心からの距離と食器の中心と交わる線分からの方位と深度のデータを有する食器モデルを、複数個記憶するメモリと、
食器モデルの中心を深度画像に対し移動させるスキャン処理部と、
スキャン処理部により移動中の複数の位置において、食器モデルの特徴点の深度と深度画像での対応する点の深度とを、特徴点毎に比較することにより、食器モデルと深度画像とのマッチング度合いを評価し、かつマッチング度合いが所定の条件を充たす際に、食器モデルに従って食器の種類を決定する評価部として動作させる。
【0008】
この発明では、食器モデルの中心を深度画像に対し移動させながら、食器モデルと深度画像とのマッチング度合いを評価する。食器モデルに対応する食器がその位置にあれば、複数の特徴点に渡って特徴点の深度と深度画像での深度は一致し、そうでなければ、食器モデルと深度画像とで深度が一致しない。この発明は、複数の特徴点の一部が隠れても、残る特徴点でマッチングできるので、食器が重なり輪郭が一部隠れる場合の食器識別に適している。
【0009】
またこの発明では、前処理として食器を1個ずつ切り分ける必要がない。また輪郭の一部が隠れている場合に、輪郭が閉じるように輪郭を延長する必要がない。さらに輪郭上の特徴点を用いるので、食品が特徴点に対応する点を覆うことは少ない。深度は深度カメラからの距離を表し、深度カメラにより得られた深度画像をトレイ等の表面からの高さの画像に変換して用いても良い。なお深度と高さでは大小が反転しているが、意味は同じである。深度カメラは、スリット光のスキャンを用いるもの、赤外光をスキャンした際に反射光が戻るまでの飛行時間を用いるものなど、任意の種類を用いることができる。
【0010】
好ましくは、食器モデルは、回転不要または1/n回転で不変(nは1以上の自然数)の属性を備え、かつ食器モデルの属性が1/n回転で不変の場合、スキャン処理部により食器モデルの中心を移動させることと同時に、食器モデルを中心回りに1/n回転させる回転制御部をさらに備えている。
【0011】
食器モデルの形状が円形で無い場合、食器モデルの向きによって、マッチングの度合いが変化する。しかし正方形の食器モデルであれば、90°回転させると食器モデルは元に戻る。また長方形の食器モデルであれば、180°回転させると食器モデルは元に戻る。そこで食器モデルに回転不要(円形)、1/n回転で不変との属性を持たせ、この属性に従って食器の向きを変化させると、食器モデルと食器とで向きが異なっていてもマッチング度合いを評価できる。
【0012】
好ましくは、食器モデルとして、特徴点の数が多くかつ少なくとも食器の種類毎に設けられた詳細モデルと、特徴点の数が少なくかつモデルの数が詳細モデルの数よりも少ない簡易モデルとの、少なくとも2種類のモデルを設ける。ここで1個の簡易モデルに1個~複数個の詳細モデルを対応させる。評価部は、簡易モデルでのマッチング度合いが所定の条件を充たす際に、対応する1個~複数個の詳細モデルとのマッチング度合いを評価する。
【0013】
最初から詳細モデルを適用すると、マッチング度合いの評価に時間がかかる。これに対して最初に簡易モデルを適用し、有望な場合に詳細モデルを適用すると、評価を高速で行える。特に1個の簡易モデルに複数個の詳細モデルが対応すると、簡易モデルのマッチング度合いが高い際に、複数個の詳細モデルを順に評価できる。すると簡易モデルを適用する回数を減らし、処理をより高速で行える。勿論、1個の詳細モデルのみに対応する簡易モデルがあっても良い。
【0014】
好ましくは、背が高い食器モデルから背の低い食器モデルへの順に食器モデルを用いる。背が高い食器は輪郭が隠れにくく、識別が容易である。容易に識別できる食器から順に特定し、残る食器はその後に識別する。
【図面の簡単な説明】
【0015】
【
図6】食器の種類を約半数決定した状態を模式的に示す図
【
図7】実施例でのモデルの適用順序を模式的に示す図
【発明を実施するための形態】
【0016】
以下に最適実施例を示す。この発明の範囲は、特許請求の範囲の記載に基づき、明細書の記載とこの分野での周知技術とを参酌し、当業者の理解に従って定められるべきである。
【実施例】
【0017】
図1~
図8に実施例を示す。
図1は食器識別システム2の構成を示し、テーブルの上面01に置かれたトレイ02上の食器W1~W3等を識別する。撮像装置3は例えばカラーカメラ4と深度カメラ5とを備え、食器の識別のみであれば深度カメラ5のみでも良い。カラーカメラ4からのカラー画像と、深度カメラ5からの深度画像を、入力インターフェース6を介して、食器識別システム2に入力し、カラー画像をメモリ7に記憶する。深度画像はノイズを伴う場合が多いので、好ましくは平滑化部9により深度を平滑化し、メモリ8に記憶する。ノイズが小さい場合、平滑化せずに深度画像をメモリ8に記憶させても良い。またノイズが大きい場合でも、平滑化せずに深度画像を記憶し、読み出す都度平滑化しても良い。
【0018】
シーケンサー10~評価部14は、食器モデルを用いて深度画像上に食器に割り当てる。またシーケンサー10~評価部14は、図示しないコンピュータのCPUとメモリに記憶した食器識別プログラムとにより実現できる。食器モデルに関して、簡易モデルをメモリ16に、詳細モデルをメモリ17に記憶し、簡易モデルが定まると詳細モデルが1個~複数個定まる。詳細モデルの数は識別する食器の種類の数以上で、簡易モデルの数は詳細モデルの数よりも少なく、例えば食器の種類よりも少ない。メモリ18は、作業データの記憶、識別結果の記憶等に用いる。識別結果等をモニタ20に表示し、出力インターフェース21を介して、レジ装置22等へ食器の識別結果を出力する。
【0019】
シーケンサー10は適用する簡易モデルの順序を定め、一般に背が高い食器モデルから適用する。背が高い食器モデルは、輪郭が隠れにくく、識別が容易である。同じ背の高さの食器モデルが複数ある場合、識別が容易な大きな食器モデルから適用しても、ルールを定めず任意の順序で適用しても良い。
【0020】
スキャン制御部11は、深度画像に対し食器モデルの中心を移動させ、深度画像を食器モデルによりスキャンする。また食器モデルが円形でなく、中心回りの回転により特徴点の配置が変化する場合、スキャンと同時に、回転制御部12により食器モデルをその中心回りに回転させる。食器モデルの中心の位置毎に(スキャンでの1回の移動毎に)、1回転までの範囲で全回転角分、食器モデルを回転させても良い。またスキャン時間を短縮するため、簡易モデルのマッチングでは、食器の中心が次の位置へ移動する毎に、所定角度ずつ回転させても良い。
【0021】
評価部14は、食器のモデルの位置(食器モデルの中心位置)毎に、また回転させる場合には位置と回転角とのペア毎に、食器モデルの各特徴点での深度と、深度画像での対応点の深度とを比較し、これらの誤差を求める。なお深度画像での対応点は、食器モデルの特徴点と画像上の位置が一致する点である。そして例えば誤差の2乗和を求め、食器モデルでの特徴点の総数などで割って、マッチング度合いとする。深度画像での対応点が他の食器により覆われていると推定できる場合、あるいは食器モデルでの対応点が深度画像の視野から外れている場合、食器モデルでの特徴点の総数よりも、比較可能な特徴点の数が少なくなる。このような場合、上記の2乗和を、実際に使用した特徴点の数で割っても良い。マッチング度合いは、2乗和に限らず、誤差の絶対値の和など、適宜の方法で評価できる。
【0022】
図2はトレイ02上の食器W1~W5を示し、実線と破線とで挟んだ範囲が輪郭である。 食器W1が最も背が高く、他の食器により特徴点が隠れていない。食器W1~W5には円形(W1、W3~W5)、角形(W2)などの形状があり、輪郭から食器の中心へ移動すると急激に高さが低下するもの(W4)と、肉厚である等のため高さの低下が小さいもの(W1,W3)がある。何れもの食器も、輪郭よりも外側で高さが急激に低下する。
【0023】
食器モデルの例を
図3~
図5に示す。食器モデルは、モデルの中心Cと複数の特徴点Pとから成り、簡易モデルと詳細モデルの双方に用いる特徴点を記号●で示し、P1~P4等の符号を用いた。○で示し番号の無い符号Pで示す特徴点Pは、詳細モデルでのみ使用する。中心Cから例えば最初の特徴点P1へ向かう線分S1から、例えば反時計回りに特徴点Pの方位θを定め、各特徴点は、中心Cからの距離rと、方位θと、深度dとを備えている。また特徴点から中心Cへの方向を内側、中心Cとは反対への方向を外側とする。特徴点の外側で深度は急増する。特徴点から中心への方向に沿って、輪郭が平坦か急峻かを示すため、例えば特徴点から中心へ一定の距離移動した際の深度の変化分(輪郭の勾配)などのデータを、特徴点に追加しても良い。
【0024】
図3の食器モデルは円形で、回転不要の属性を有する。
図4の食器モデルは1/4回転すると回転前の形状と一致するので、1/4回転の属性を有し、
図5では1/2回転の属性を有する。1回転しないと回転前の形状に戻らない場合、回転に関する属性は1回転である。
【0025】
食器モデルとのマッチングでは、中心Cを移動させて深度画像をスキャンし、回転が必要な属性の場合、所定の角度範囲で食器モデルを中心C回りに回転させる。中心の位置と回転角のペア毎に、特徴点に対応する深度画像上の点の深度を読み出し、特徴点の深度との誤差を評価する。そして誤差を積算し、用いた特徴点の数などで正規化すると、マッチング度合いが得られる。
【0026】
簡易モデルが所定値以上のマッチング度合いを示す場合、詳細モデルとのマッチングを行う。なお簡易モデルが定まると、詳細モデルは1個~複数個定まる。また簡易モデルに比べ、詳細モデルでは中心の1回の移動距離及び1回の回転角を小さくし、より正確なマッチングを行う。ただし中心を移動させる範囲、及び食器モデルを回転させる角度範囲は、簡易モデルのマッチングで得られた値の付近に制限する。そしてマッチング度合いが最高でかつ所定値以上の食器モデルが正しいものとする。
【0027】
図6は5個の食器の内で、3個までマッチングに成功した状態を示す。食器モデルの背の高さを特徴点の深度の平均値等に基づいて定める。背が高い食器は輪郭が隠れにくいので、モデルとのマッチングも容易で、
図6では最も背が高い大皿からマッチングを開始している。
図6で、右下の食器とその下部に示した食器モデルとをマッチングするものとする。食器モデルを配置すると、特徴点P3の対応点は大皿に隠れていると推定できる。そこで特徴点P3をマッチングから除外することが好ましい。同様に、深度画像の視野から外れていると推定できる特徴点があれば、マッチングから除外することが好ましい。
【0028】
図7に食器モデルの適用順序を示す。背が高いモデルから低いモデルへの順に適用し、簡易モデルが高いマッチング度合いを示した場合に、詳細モデルを適用する。
【0029】
図8に実施例のアルゴリズムを示す。ステップ1でカラー画像と深度画像を取得し、カラー画像はモノクロ等でも良く、必須ではない。背が高いモデルから低いモデルへの順にスキャンし、マッチングが容易な食器からマッチングする。また食器モデルが円形で無い場合、回転させながらスキャンする(ステップ2)。マッチングでは、深度画像からの輪郭抽出(食器の切り分け)は行わず、また深度画像から欠落領域を推定する(輪郭が閉じるように延長する)等の処理も行わない。特徴点の一部が深度画像から欠落していても、残る特徴点で識別できる。経験によると、特徴点の50%以上が深度画像内に見えていると、識別に成功した。このように、特徴点の欠落に対する頑健性が高い。
【0030】
そして簡易モデルがマッチングすると、詳細モデルに切り替える。この時、狭い範囲で詳細モデルの中心位置と向きを変化させ、正確なマッチングを行う(ステップ3)。マッチングに成功すると、食器の種類を決定し、例えばワーキングデータに食器の種類と位置及び向きのデータを記憶させる。好ましくは、食器が覆っているエリアをマスクし、以降の食器の識別で、このエリア内の特徴点は利用しないようにする(ステップ4)そして食器の種類と位置及び向きを出力する(ステップ5)。
【0031】
なお食器の識別は、食器内の食品の種類の識別、食品の量の識別等の前処理として行っても良い。
【符号の説明】
【0032】
01 テーブルの上面
02 トレイ
2 食器識別システム
3 撮像装置
4 カラーカメラ
5 深度カメラ
6 入力インターフェース
7,8 メモリ
9 平滑化部
10 シーケンサー
11 スキャン制御部
12 回転制御部
14 評価部
16~18 メモリ
20 モニタ
21 出力インターフェース
22 レジ装置
C 食器の中心
P 特徴点
S1 線分
θ 方位
W 食器