(57)【要約】      （修正有）【課題】食事に含まれる個々の食品をより正確に切り分け、かつ、食品の体積をより正確に測定できるようにする食事の識別システムと識別方法及び識別プログラムを提供する。【解決手段】2.5Dカメラにより、複数の視点から食事に含まれる食品の距離画像とカラー画像とを撮像し、複数の距離画像を用いて食事に含まれる個々の食品を切り分ける。複数の距離画像を用いて個々の食品の体積を求め、距離画像とカラー画像を用いて、個々の食品の種類を識別する。【選択図】図４
2018147416.tif 000002
【特許請求の範囲】
【請求項１】
食品の距離画像と食品のカラー画像とを撮像する、少なくとも１台の2.5Dカメラと、
複数の視点から2.5Dカメラにより撮像した、食事に含まれる食品の距離画像とカラー画像とを入力として、
複数の距離画像により、食事に含まれる個々の食品を切り分ける切り分け部と、
複数の距離画像により、個々の食品の体積を求める体積計算部と、
距離画像とカラー画像とから、個々の食品の種類を識別する食品識別部、とを有する食事識別システム。
【請求項２】
前記複数の視点の各々に前記2.5Dカメラが設置されていることを特徴とする、請求項１の食事識別システム。
【請求項３】
2.5Dカメラにより、複数の視点から、食事に含まれる食品の距離画像と食品のカラー画像とを撮像するステップと、
食事識別システムにより、複数の距離画像を用いて、食事に含まれる個々の食品を切り分ける切り分けステップと、
食事識別システムにより、複数の距離画像を用いて、個々の食品の体積を求める体積計算ステップと、
食事識別システムにより、距離画像とカラー画像を用いて、個々の食品の種類を識別する食品識別ステップ、とを行う食事識別方法。
【請求項４】
複数の視点で撮像した、食事に含まれる食品の距離画像と食品のカラー画像を入力として、コンピュータにより、食事に含まれる食品の種類と量とを求めるプログラムであって、
前記コンピュータに、
複数の距離画像を用いて、食事に含まれる個々の食品を切り分ける切り分けステップと、
複数の距離画像を用いて、個々の食品の体積を求める体積計算ステップと、
距離画像とカラー画像を用いて、個々の食品の種類を識別する食品識別ステップ、とを実行させる食事識別プログラム。  
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は画像認識を用いた食事の識別に関する。
【背景技術】
【０００２】
食事に含まれる食品の種類と量を画像から識別できれば、人などが摂取している栄養価を推定でき、健康の増進に有効である。またアレルギーの有無、咀嚼能力等に応じて、人ごとに異なる食事を提供している場合、食品の種類等を識別すると、その人に応じた正しい食事であることを確認できる。食事の識別は、カフェテリア、食堂などでの精算にも有効である。カフェテリアなどでの精算では、食器にRFIDを取り付けて食器の種類を識別すると共に、食器の種類毎に価格を統一することにより、精算を容易にしている。しかしRFID付きの食器は高価であるし、同じ種類の食器には同じ価格の料理を載せることにも無理がある。  
【０００３】
特許文献１は、食事を撮像し、画像から食品を識別すると共に、食品量も識別し、食事に含まれる栄養価を解析することを提案している。特許文献２は、複数の視点から食事を撮像し、特徴点を互いに対応付けることにより、食品の立体形状と食品の量を求めることを提案している。また特許文献３は、食品の種類と量の識別を不要にしながら、栄養価を解析することを提案している。特許文献３では、食事の画像を複数の参照画像と比較し、類似する画像の栄養価を統計的に当てはめることにより、食事の栄養価を求める。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2007-122311
【特許文献２】USP8439683
【特許文献３】特開2012-14678
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献２で食品の立体形状を認識できるのは、複数の視点から同時に見える範囲に限られる。このため食品の側面がどのような形をしているかは識別しにくい。そしてこのため、食品の体積推定での誤差が生じる。
【０００６】
この発明の課題は、食事に含まれる個々の食品をより正確に切り分け、かつ食品の体積をより正確に測定できるようにすることにある。
【課題を解決するための手段】
【０００７】
この発明の食事識別システムは、
食事に含まれる食品の距離画像とカラー画像とを撮像する、少なくとも１台の2.5Dカメラと、
複数の視点から2.5Dカメラにより撮像した、食事に含まれる食品の距離画像とカラー画像とを入力として、
複数の距離画像により、食事に含まれる個々の食品を切り分ける切り分け部と、
複数の距離画像により、個々の食品の体積を求める体積計算部と、
距離画像とカラー画像とから、個々の食品の種類を識別する食品識別部、とを備えている。
【０００８】
この発明の食事識別方法は、
2.5Dカメラにより、複数の視点から、食事に含まれる食品の距離画像と食品のカラー画像とを撮像するステップと、
食事識別システムにより、複数の距離画像を用いて、食事に含まれる個々の食品を切り分ける切り分けステップと、
食事識別システムにより、複数の距離画像を用いて、個々の食品の体積を求める体積計算ステップと、
食事識別システムにより、距離画像とカラー画像を用いて、個々の食品の種類を識別する食品識別ステップ、とを実行する。
【０００９】
この発明の食事識別プログラムは、複数の視点で撮像した、食事に含まれる食品の距離画像とカラー画像を入力として、コンピュータにより、食事に含まれる食品の種類と量とを求めるプログラムであって、  
前記コンピュータに、
複数の距離画像を用いて、食事に含まれる個々の食品を切り分ける切り分けステップと、
複数の距離画像を用いて、個々の食品の体積を求める体積計算ステップと、
距離画像とカラー画像を用いて、個々の食品の種類を識別する食品識別ステップ、とを実行させる。
【００１０】
この発明では、複数の距離画像を用いて食事に含まれる個々の食品を切り分ける。このため１つの視点からでは食品の輪郭を識別しがたい場合でも、他の視点からの距離画像により食品の輪郭を識別できる。このため食品が互いに重なっている場合でも、食品の境界をより正確に測定できる。また複数の距離画像を用いると、食品の立体的な形状をより正確に認識できる。例えば上面視では食品の側面は不明で、食品の側面は柱状か半球状かなどを識別できない。このため食品の体積推定があやふやになる。これに対して、複数の視点からの距離画像を用いることにより、食品の立体的な形状を正確に識別し、食品の体積を正確に求めることができる。
【００１１】
好ましくは、複数の視点の各々に2.5Dカメラが設置されている。このようにすると、複数の視点から食事を撮像するために、2.5Dカメラを移動させる必要がなく、また2.5Dカメラの位置は食事識別システムにとって既知となる。従って、撮像に要する時間を短縮でき、食堂や配膳用の台車などに設置して食事を識別するのが容易になる。2.5Dカメラの配置は既知なので、カメラ毎の距離画像の統合が容易になり、かつ距離画像の統合に伴う誤差も小さい。従って、個々の食品への切り分け、個々の食品の体積の計算、食品の種類の判別もより正確になる。
【００１２】
なお2.5Dカメラとして、スマートフォンなどに内蔵のものを用いても良い。個々の人が自分の食事を識別するためであれば、これでも良いが、多数の利用者の食事を識別する場合、撮像に時間がかかる。またカメラの位置が一定ではないため、複数の距離画像を統合する際の処理が複雑になり、かつ統合の精度も低くなる。さらに食事に含まれる食品をなるべく広い範囲で撮像することが好ましいが、その都度カメラを動かして撮像するので、それも難しい。
【図面の簡単な説明】
【００１３】
【図１】実施例の食事識別システムのハードウェアを示す図
【図２】2.5Dセンサを示す図
【図３】スマートフォンを用いる食事識別システムのブロック図
【図４】実施例での食事識別アルゴリズムの前半を示すフローチャート
【図５】実施例での食事識別アルゴリズムの後半を示すフローチャート
【図６】食品の切り分けを示す図
【図７】重なり合った食品の切り分けを示す図
【図８】食品の側面の撮像を示す図
【図９】食品の体積推定を示す図
【発明を実施するための形態】
【００１４】
以下に最適実施例を示す。この発明の範囲は、特許請求の範囲の記載に基づき、明細書の記載とこの分野での周知技術とを参酌し、当業者の理解に従って定められるべきである。
【実施例】
【００１５】
図１〜図９に実施例とその変形とを示す。図１は、配膳用のワゴン車１２に２台の2.5Dカメラ４，４'を取り付けた例を示す。ワゴン車１２は通路１０に沿って移動し、配膳及び食器の回収などを行い、食事はトレー１４上の食器１７に盛られている。１６はトレー１４の上面となる平面で、平面１６を高さの基準面として用い、また複数の距離画像を統合する際の基準面として用いる。なおこの明細書で、食事は人などが食べる食物を意味する。2台の2.5Dカメラ４，４'の一方は、トレー１４を直上部付近から撮像するように配置し、他方はトレー１４を斜めに撮像するように配置する。なお１台の2.5Dカメラ４のみを設け、視点を変えて２回以上食品を撮像しても良く、あるいは３台以上の2.5Dカメラを設けても良い。
【００１６】
カメラ４，４'は、図２に示すように、カラーカメラ５と、線分状のパターン光を線分と直角な方向にスキャンするように食品８へ照射するIRレーザ６と、パターン光の像を撮像するIRカメラ７とを備えている。IRレーザ６はパターン光を図の矢印のようにスキャンし、IRカメラ７は受光したパターン光の歪み（線分からの歪み）を検出して、食品表面までの距離画像を作成する。パターン光を撮像する代わりに、レーザ光で食品表面をスキャンし、反射光を受光するまでの時間から、距離画像を作成しても良い。
【００１７】
情報処理装置２には、2.5Dカメラ４，４'から、視点が異なる複数の距離画像と複数のカラー画像とが入力され、食事を構成する食品の種類と、食品毎の量を識別する。情報処理装置２は2.5Dカメラ４，４'と一体でも良く、あるいはサーバとして別の位置に設けられていても良い。必要に応じて、カメラ４等によりトレー１４のバーコードなどを読み取り、図示しないサーバに問い合わせて、トレー１４の食事を食べる人を確認する。これは、病院などで個々の人に合わせて食事の内容が異なる場合の処理である。
【００１８】
２０はバスである。平面検出部２１は、トレー１４の距離画像からトレー１４上部の平面１６を検出する。そして後で食器に食品を盛付る面を求める際に、平面１６を基準とする食器の形状が既知であることを利用する。
【００１９】
2.5Dカメラ４，４'は複数あるが、それらの位置は既知であり、各カメラ毎の座標系に基づく距離画像を、共通の座標系に基づく距離画像に統合できるように、予め統合パラメータを求めて、記憶しておく。そして統合処理部２２により、複数の距離画像を共通の座標系での距離画像に統合し、食品と食器の３次元形状をカメラから見える範囲で求める。なお１台のスマートフォンの2.5Dカメラを用いる場合、例えば距離画像を平面１６からの高さの画像に変換し、例えば特徴的な点が互いに一致するように平行移動と鉛直軸回りの回転をすることにより、共通の座標系に統合する。
【００２０】
切り分け部２３は、視点の異なる複数の距離画像に基づき、複数の食品が重なっている場合でも、個々の食品に切り分けるように、個々の食品の輪郭を抽出する。揚げ物と付け合わせのキャベツなどのように、食品によりカラー画像の特徴が異なる場合、切り分け部２３はカラー画像も使用する。
【００２１】
体積計算部２４は、複数の視点からの食品の距離画像を用い、食品の体積を求める。例えば図１の2.5Dカメラ４では、食品の側面は見え難く、食品の正確な体積を求めることは難しい。しかし他方の2.5Dカメラ４'では食品の側面が見えるので、2台のカメラ４，４'の距離画像を統合すると、食品の立体的な形状を認識できる。このため、食品の体積をより正確に測定できる。なお２台のカメラ４，４'では、食品の４側面全てが見えるわけではない。しかし1つの側面の距離画像が得られれば、他の側面の形状も推測できる。  
【００２２】
特徴量抽出部２５は、食品の距離画像とカラー画像での特徴量を抽出する。特徴量を抽出する目的は、食品の種類を識別することである。もう一つの目的は、食品表面が平坦であるか、それとも起伏に富んでいるかを識別することである。表面が平坦な場合、食品は中実で、見かけの体積当たりの重量が大きいと推定でき、表面の起伏に富んでいる場合、食品は中実ではなく、見かけの体積当たりの重量は小さいと推定できる。特徴量の抽出では、複数の視点からの距離画像とカラー画像を併用しても良く、あるいは1つの視点からの距離画像とカラー画像のみを用いても良い。
【００２３】
中実かどうかを識別するために距離画像から抽出する特徴量は、食品の重心等、食品の中心を表す点から表面までの距離の分布、特にその平均値と標準偏差などである。これらの特徴量は、食品の見かけの面積の平方根など、食品の大きさを表す量との比として用いても良い。また食品表面での法線の向きが保たれる距離、例えば法線の向きの自己相関距離、食品表面での凹凸の程度、シワの程度なども特徴量となる。自己相関距離、凹凸の程度、シワの程度は、大きな食品であれば自然と大きくなるものではないので、食品の大きさで正規化する必要はない。これらの特徴量は、食品表面の形態が球、直方体などの中実で平坦な形状に近いか、凹凸や空隙が多い複雑な形状に近いかを表している。そして中実な形状では見かけの体積当たりの重量が大きく、凹凸や空隙の多い形状では見かけの体積当たりの重量が小さい。なお中実度の処理は省略しても良い。
【００２４】
食品の種類を識別するために抽出する特徴量は、距離画像では、食品の縦、横、高さ等の比、表面の凹凸の周期等によるテクスチャーがある。カラー画像から抽出する特徴量には、食品の色相、彩度、これらのテクスチャー等があり、一般的な画像識別で用いる特徴量を用いればよい。
【００２５】
中実度計算部２６は、距離画像の特徴量に基づいて食品の中実度を求める。ここに中実度は、食品が見かけの体積の内部を中実に充たしていると大きく、空隙が多いと小さくなるパラメータである。見かけの体積に中実度と比重を乗算し、あるいは見かけの体積を第１主成分、中実度を第２主成分とする主成分分析を行い、比重を乗算すると、食品の重量が得られる。比重を乗算せずに、見かけの体積を中実度で補正し、真の体積を推定するだけにしても良い。また中実度の処理は省略しても良い。
【００２６】
食品識別部２７は、前処理として、食器の形状、あるいは形状と色彩により、食品の種類を絞り込み、特徴量抽出部２５で抽出した特徴量により、種類を識別する。なお食器の形状等による前処理は省略しても良い。食品量計算部２８は、体積計算部２４で求めた食品の見かけの体積と、食品の種類で定まる比重の積を、中実度により補正し、食品の量、例えば重量を求める。重量の代わりに、食品の真の体積を求めても良い。
【００２７】
メモリ３０は食器のデータ、例えば食器毎の形状と色彩、及び盛付る食品の種類を記憶する。食器の形状は、円形、長方形、正方形などの輪郭形状の他に、食品を盛る面の形状（皿ではほぼ平面、丼ではほぼ半球面、など）を含んでいる。さらに食器の底部から食品を盛付る面までの、高さのデータを記憶する。食器から対応する食品の種類が制限され、これらを食品識別での食品の種類の候補として使用する。
【００２８】
メモリ３１は学習データを記憶し、複数の距離画像を統合するための統合パラメータ、既知の食品の統合済みの距離画像とカラー画像、食品の種類、量、距離画像とカラー画像の特徴量、中実度などのデータを記憶する。これらのデータを、2.5Dカメラからの距離画像とカラー画像と比較し、食品の種類を識別する。通信部３２は、外部のサーバなどと通信し、例えば食事をする人の画像と、食品の種類と量などを送信する。図示しない外部のサーバは、食事をする人の画像から、食品の種類と量などを確認し、その人に合った食事であることを確認する。あるいは食品の種類と量などのデータを料金に変換し、また利用者毎の食事の内容と栄養価などを記憶する。メモリ３４は食品の種類毎に、重量当たりの栄養価を記憶し、図示しないＣＰＵにより食事に含まれる栄養価を求める。情報処理装置２は、これらの他に、図示しないＣＰＵとプログラムメモリ、作業用データのメモリ、入出力、等を備えている。
【００２９】
図１は病院、介護施設、ホテルなどでの配膳に適したシステムを示している。しかし例えば利用者が食品を取ってトレーに載せ、ワゴン車１２とは独立した固定の2.5Dカメラ４、４'と、情報処理装置２により、食品の種類と量を求めると、料金の精算に利用できる。このようなシステムを、社員食堂、学生食堂など、利用者が固定の食堂に設けると、料金の精算に加えて、利用者毎の栄養の管理に利用できる。利用者が不定の食堂でも、情報処理装置２から利用者のスマートフォンなどに送信し、利用者のスマートフォンで栄養管理を行うことができる。さらに、バイキング形式などの食堂では、皿に取った食品の種類と量毎の課金ができる。
【００３０】
図３は、スマートフォン４０に2.5Dカメラ４を実装し、外部の情報処理装置２と通信する食事識別システムを示している。テーブル４２上のトレー１４を、視点を変えて２回以上、例えば２回、スマートフォン４０の2.5Dカメラ４により撮像し、距離画像とカラー画像を情報処理装置２へ送信すると、図１と同様の処理ができる。そして情報処理システム２から返信される食品の種類と量、及び栄養価を、スマートフォン４０が記憶し表示する。このシステムでは、摂取した食品の種類と量と栄養価を例えば毎食計測し、健康の増進に役立てる。またスマートフォン４０で撮像する場合は、食器データを事前に記憶することが困難なので、食器データによる食品の種類の制限は行わなくても良い。
【００３１】
図４，図５は食事の識別アルゴリズムを示し、図４のステップ１で、トレーあるいはテーブル上の食器などを、2.5Dカメラで撮像する。ステップ２で、トレーの平面あるいはテーブルの平面などを検出し、カメラからの距離画像を、トレーの平面、テーブルの平面などからの高さを表す距離画像に変換する。ステップ１，２を2.5Dカメラの視点を変えて繰り返す。即ち、図１の場合、２台の2.5Dカメラに対して各々ステップ１，２を行い、図３の場合、１台の2.5Dカメラを用い、視点を変えてステップ１，２を各2回実行する。
【００３２】
ステップ３で、複数の距離画像を統合し、食品の３Ｄ形状を推定する。カメラ毎の座標系の距離画像を共通の座標系での距離画像に変換するためのパラメータを、学習データのメモリ３１等から読み出し、座標変換によって複数の距離画像を統合する。なおスマートフォン内蔵の2.5Dカメラの場合、特徴的な点が重なるように画像の平行移動と鉛直軸回りの回転を行うと、座標系を統合できる。このようにして、2枚の距離画像を共通の座標系へ変換し、食品の上面と少なくとも1側面の、トレーの平面を基準とする３Ｄ形状を表す距離画像とする。食品の形状の識別精度が低くても良い場合、距離画像を統合しないことも可能である。個々の食品の切り分けでは、１枚の距離画像を主に用い、切り分けで必要になる都度、他の距離画像を参照しても良い。食品の立体形状の識別でも、１枚の距離画像を主に用い、他の距離画像から見えない部分を推定するようにしても良い。
【００３３】
ステップ４で食器の縁を距離画像から求め、食器の輪郭を高さを含めて抽出する。必要に応じて食器表面のカラー画像を参照し、食器データと比較して、食器の種類を識別する（ステップ５）。
【００３４】
ステップ６で、統合済みの複数の距離画像を用いて、食品の輪郭を抽出する。この処理を図６，図７に示す。図６の場合、カメラ４'からの距離画像のみでは、食品６０，６２の切り分けは難しい。ここで２台の2.5Dカメラ４，４'からの距離画像があると、食品６０，６２の境界とそれらの隙間を観察でき、食品が重なっている場合でも、個々の食品を正確に切り分けることができる。
【００３５】
図７の場合、食品７０の下にキャベツなどの付け合わせ７２がある。カメラ４の距離画像では、付け合わせ７２までの距離を得るのは難しい。しかし他のカメラ４'があると、付け合わせ７２までの距離を容易に求めることができ、食品７０の底部の高さを推測できるので、食品７０の体積を正確に測定できる。    
【００３６】
ステップ７で統合済みの距離画像とカラー画像での食品の特徴量を求め、ステップ８で食品の種類を識別する。ここで統合済みの距離画像と複数のカラー画像があると、より多くの面で食品の特徴量を求めることができる。例えば図８のケーキ８０の場合、側面の生クリームやイチゴなどを識別に用いることができる。
【００３７】
ステップ９で食品の体積を測定し、図９にそのモデルを示す。2.5Dカメラ4のみでは、食品９０の上部が球状であることが分かるが、側面形状は分からない。このため例えば食品９０の側面は柱状であると仮定すると、食品の体積計算に誤差が生じる。これに対して他の2.5Dカメラ４'があると、食品９０の側面も球状で、影９２の部分に食品はないことが分かる。これから影９３等の部分も食品ではないと推定でき、食品９０の体積をより正確に測定できる。
【００３８】
ステップ１０で距離画像から食品の中実度を求める。発明者らは、距離画像から求めた食品（唐揚げ）の見かけの体積と重量との相関を求めた。図９のように、複数の距離画像を用いることにより、見かけの体積と重量の相関が向上した。しかしこれ以外に、唐揚げが凹凸に富み起伏が激しい形状の場合、見かけの体積当たりの重量が小さく、平坦で起伏の少ない形状の場合、見かけの体積当たりの重量が大きいとの問題が残った。凹凸に富み起伏が激しいかどうかは、唐揚げ表面の各点に対し、唐揚げの重心からの距離を求め、距離の平均値、標準偏差などの統計量を求めることにより推定できる。凹凸が激しいほど、距離の平均値が大きく、距離の標準偏差も大きい。また唐揚げ表面の法線方向が保たれる距離、言い換えると法線の自己相関距離を求めても、唐揚げ表面の凹凸の程度を推定できる。そこでこれらのデータから、食品の中実度を求める。なお中実度による重量の補正は省略しても良い。  
【００３９】
ステップ１１で、食品の見かけの体積を中実度で補正し、食品の比重を乗算して、食品の重量を求める。ステップ１２で、食品の種類と重量を栄養価などに換算し、食事に含まれる食品の種類、食品毎の重量、合計の栄養価などを出力する。
【符号の説明】
【００４０】
２          情報処理装置
４，４'     2.5Dカメラ
５          カラーカメラ
６          IRレーザ
７          IRカメラ
８          食品
１０        通路
１２        ワゴン車  
１４        トレー
１６        平面
１７        食器
２０        バス
２１        平面検出部
２２        統合処理部
２３        切り分け部
２４        体積計算部
２５        特徴量抽出部
２６        中実度計算部
２７        食品識別部
２８        食品量計算部
３０        メモリ      
３１        メモリ      
３２        通信部      
３４        メモリ      
４０        スマートフォン
４２        テーブル
６０，６２  食品
７０        食品
７２        付け合わせ
８０        ケーキ
９０        食品
９２，９３  影
【図１】
2018147416.tif 000003
【図２】
2018147416.tif 000004
【図３】
2018147416.tif 000005
【図４】
2018147416.tif 000006
【図５】
2018147416.tif 000007
【図６】
2018147416.tif 000008
【図７】
2018147416.tif 000009
【図８】
2018147416.tif 000010
【図９】
2018147416.tif 000011