以下では、図面を参照しながら、本発明に係る各実施例について説明する。
<基本構成>
まず、図1~図9を参照し、レンジフードシステム1において、各実施例に亘って共通する基本構成を説明する。レンジフードシステム1は、図1に示すように、ネットワーク300に接続されたレンジフードサーバ100と、ネットワーク300に接続され、レンジフードサーバ100と通信を行うホームネットワーク1000を備える。
<ネットワークと構成要素について>
ネットワーク300は、レンジフードサーバ100とホームネットワーク1000間の、情報処理やデータに係る通信を可能にする任意の電気通信回線または電気通信網である。ネットワーク300は、有線/無線ネットワーク、WAN/LAN(ワイドエリアネットワーク/ローカルエリアネットワーク)、あらゆる電気通信ネットワーク、またはそれらの任意の適切な組み合わせであり得る。ネットワーク300は、プライベートネットワーク、パブリックネットワーク(たとえば、インターネット)の1つ以上の部分、またはそれらの任意の適切な組み合わせを含み得る。なお、これらは例示であり、これらに限定されることはない。
ホームネットワーク1000は、様々の種類のデバイス機器(リソース)と、これらのデバイスを管理すると共に、デバイス間およびデバイスとネットワーク300間の通信を制御するゲートウェイ400と、デバイス群とゲートウェイ400を接続するホームドメイン内ネットワーク301を備える。デバイス間およびデバイスとネットワーク300間の通信においては、様々なデバイスがゲートウェイ400と通信を行うため、規格化された通信プロトコルにより通信が行われることが好ましく、たとえばこのような通信プロトコルとしては、ECHONETLite(登録商標)がある。
ECHONETLiteでは、その中に設置されるデバイスをシステム化し、ゲートウェイ400内のゲートウェイコントローラ401が扱う範囲をドメインと呼び、ホームネットワーク1000の範囲に存在する管理対象とするデバイスの範囲を規定する。デバイスは、住設製品、家電製品、センサ、コントローラ、リモコンなどであり、レンジフード200を始め、たとえば、家電機器500、住宅設備機器600がある。ゲートウェイコントローラ401は、ホームドメイン内ネットワーク301に接続されたデバイスがネットワーク300に接続することを制御する。ホームドメイン内ネットワーク301は、ゲートウェイコントローラ401と各デバイス間の情報処理やデータに係る通信を可能にする任意の通信方式である。
ホームドメイン内ネットワーク301は、レンジフード200などのデバイスとゲートウェイコントローラ401が接続されるルータ(図示せず)を備える。たとえば、レンジフード200とルータ間およびゲートウェイコントローラ401とルータ間は、無線通信(WiFi、Bluetooth(登録商標)、赤外線等の近距離無線通信)または有線通信(LANケーブル、光ファイバ等)のいずれであってもよく、特に限定されない。ゲートウェイコントローラ401は、ルータを介して、レンジフード200等にアクセスする。また、ゲートウェイコントローラ401がルータ機能を有していてもよい。なお、レンジフード200は、本明細書では、ホームネットワーク1000に存在する管理対象の1つとしてのデバイスであるが、これに限定されることはない。たとえば、レンジフード200は、ゲートウェイコントローラ401と同様に、自らネットワーク300に接続し、レンジフードサーバ100と通信可能な通信装置を有していてもよい。
ECHONETLiteは、OSI参照モデルの第5層および第6層に相当する通信ミドルウェアの仕様を規定する。また、ECHONETLiteは、デバイスの種別ごとに機器クラスを規定し、そのデバイスに関するパラメータをプロパティとして機器クラスごとに規定する。ゲートウェイ400は、ECHONETLite通信規格としてレンジフード200等の機器クラスのプロパティ情報を有する。ゲートウェイ400は、これにより、ホームドメイン内ネットワーク301を介してレンジフード200等のネットワーク接続機器に対して状態認識と運転制御を行うことができる。
図2に示すように、1つのレンジフードサーバ100は、ネットワーク300を介して、複数のホームドメインA~Dと接続される。接続されるホームドメインは、それぞれ異なるデバイスを有していてもよい。たとえば、ホームドメインAは、レンジフード200、家電機器500、住宅設備機器600を有し、ホームドメインBとホームドメインDは、レンジフード200と住宅設備機器600を有し、ホームドメインCは、レンジフード200と家電機器500を有する。それぞれのデバイスは、ゲートウェイ400を介してネットワーク300に接続され、レンジフードサーバ100と通信することが可能である。また、レンジフードサーバ100は、ホームネットワーク1000を利用する者が使用するスマートフォンと、ホームネットワーク1000を経由せずに通信を行ってもよい。
図3に示すように、ホームネットワーク1000は、ゲートウェイコントローラ401と共に、レンジフード200、家電機器500、住宅設備機器600などのデバイスが設置される住宅や店舗などの建物HSに設置される。家電機器500としては、エアコン501、テレビセット502、除湿加湿器503、コンロBN、屋内検知器504、屋外検知器505などが設置され、これらが、レンジフード/レンジフード端末200の給排気機能や情報入出力機能に連動して機能することができる。たとえば、レンジフード200は、エアコン501、除湿加湿器503、屋内検知器504、屋外検知器505などと協働することにより、建物HS内の空気質を改善することができる。また、レンジフード端末200は、テレビセット502と協働することにより、レンジフード200が出力する情報をテレビセット502の大画面に映しだすことができる。なお、レンジフード端末200とは、レンジフード200が基本的に有する給排気機能や油煙除去機能を有することはもとより、他機器と接続して通信を行う通信機能に加え、情報を出力するための出力機能や情報を入力するための入力機能を有するレンジフードである。
なお、屋内検知器504は、屋内の空気の空気質を検知する検知器(センサ)である。屋外検知器505は、屋外の空気の空気質を検知する検知器(センサ)であり、典型的には、空調機器の室外機や建物HSの外壁などに設置される。なお、空気質とは、空気を構成する物質(たとえば、酸素、一酸化炭素、二酸化炭素など)、空気に含まれる物質(たとえば、水分、油分、塵埃、におい物質などが微粒子状或いはガス状となったもの)、空気の運動エネルギーを示す指標(温度)などを言い、人間が感じ得るまたは影響を受け得る空気の質を示す概念である。空気質は、一般的には、温度、湿度、一酸化炭素濃度、汚染物質濃度などとして、それぞれの空気質に対応した検知器(センサ)を用いて測定される。
住宅設備機器600としては、建物HSの給排気口602や窓601に設置され、レンジフード200の給排気機能に連動して機能することができる。たとえば、レンジフード200が、大きな給排気風量で屋外と屋内の空気を入れ替えようとする場合、建物HSの給排気口602や窓601を開放することで、円滑に入れ替えを行うことができる。レンジフード200は、家電機器500や住宅設備機器600と連動する場合、ゲートウェイコントローラ401を介して通信を行い、協働する。なお、ゲートウェイコントローラ401は、典型的には、レンジフード200が設けられる建物HSと同じ建物に設けられるが、通信できる限り、特に限定はされない。また、レンジフード200は、住宅や店舗などのコンロBNや調理台CTの上方または近傍に設けられる。
<レンジフードサーバについて>
レンジフードサーバ100は、ゲートウェイ400およびネットワーク300を介して、レンジフード200と制御やデータに係る通信を行う。図4は、レンジフードサーバ100のハードウェア構成の一例を示す。レンジフードサーバ100は、たとえばサーバコンピュータであり、1以上のレンジフード/レンジフード端末200からアクセスされて、様々な制御情報やデータを受け付け、処理し、それらに対して制御情報やデータを提供する。また、レンジフードサーバ100は、ゲートウェイ400などの他の機器や、スマートフォン/パーソナルコンピュータなどの一般的な情報機器からアクセスされて、同様の制御情報やデータを提供してもよい。レンジフードサーバ100は、一般的な情報機器と通信する場合、所謂ウェブサーバとして機能し、ブラウザを通じてこれらの機器に対して情報等を提供してもよい。
レンジフードサーバ100は、CPU(Central Processing Unit)から構成される演算装置20、ROM(Read Only Memory)やRAM(Random Access Memory)等のメモリ31およびハードディスクやストレージ等の外部記憶装置32から構成される記憶装置30、上記のネットワーク300と繋がるネットワークインターフェイスの通信装置10と、サーバの管理者等が指令等を入力するためのキーボードやマウス、カメラやマイク等の入力装置40と、様々な情報を出力するためのディスプレイ、スピーカやプリンタ等の出力装置50と、を含み、これらが、内部バス、外部バス、拡張バス等を含むシステムバスといった伝送路60を介して互いに接続されたものである。ROMには、一般に、電源投入後、最初に実行されるIPL(Initial Program Loader)が記録されており、これが実行されることにより、記憶装置30に記憶されたプログラムやデータが、演算装置20によって一旦これらを一時的に記憶するためのRAMに書き出され、それらのプログラムが演算装置20によって実行される。なお、記憶装置30は、DVD(Digital Versatile Disk)やCD-ROM(Compact Disk Read Only Memory)などの一時的でないコンピュータ読み取り可能な記録媒体を駆動し、当該記録媒体に記録されたソフトウェアやプログラムを読み書きする媒体駆動装置(図示せず)を含んでもよい。演算装置20にロードされるプログラムや記憶装置30に記憶されるデータは、ネットワーク300経由または媒体駆動装置経由で配置されてもよく、レンジフード200などのアクセスする機器により適宜変更される。
図5は、レンジフードサーバ100のブロック構成図を示す。レンジフードサーバ100は、ネットワーク300を経由して、1以上のレンジフード/レンジフード端末200と通信を行う。レンジフードサーバ100は、ネットワーク300との通信インターフェイスである通信部110と、レンジフードサーバ100全体の制御を行う制御部120と、制御部120が実行するプログラムやデータを記憶する記憶部130と、レンジフードサーバ100に指示やデータを入力する入力部140と、情報等を出力する出力部150とを有する。
制御部120は、演算装置20(CPU)によりその機能が実現され、レンジフードサーバ100を統括的に制御する。制御部120は、OS(Operating System)等の制御プログラム・各種の処理手順等を規定したプログラム・所要データなどを格納するための内部メモリを有し、格納されているこれらのプログラムに基づいて種々の情報処理を実行する。OSは、たとえば、MICROSOFT(登録商標)WINDOWS(登録商標)、LINUX(登録商標)、UNIX(登録商標)などであり、本発明に係るプログラムが実行され得る限り特に限定されない。
記憶部130は、メモリ31および外部記憶装置32によりその機能が実現され、各種のデータベース、テーブル、およびファイルなどを格納する。記憶部130には、OSと協働して制御部120に命令を与えて各種処理を行うためのコンピュータプログラムが記録される。これらのコンピュータプログラムは、ウェブサイト提供に用いる各種のプログラムや、レンジフードサーバ100がレンジフード200のために提供するサービス/アプリケーションの機能を実現するプログラムである。
例えば、レンジフードサーバ100が備える処理機能、特に制御部120にて行われる各処理機能については、その全部または任意の一部を、CPUおよび当該CPUにて解釈実行されるプログラムにて実現してもよく、また、ワイヤードロジックによるハードウェアとして実現してもよい。なお、プログラムは、実施例で説明する処理をCPUに実行させるためのプログラム化された命令を含む一時的でないコンピュータ読み取り可能な記録媒体に記録されていてもよく、必要に応じて媒体駆動装置を介してレンジフードサーバ100に読み取られる。記録媒体とは、DVD等の任意の「可搬用の物理媒体」を含むものとする。したがって、本明細書で説明する処理または処理方法を実行するためのプログラムを格納した記録媒体もまた本発明を構成することとなる。このコンピュータプログラムは、メモリ31にロードされることによって実行され、CPUと協働して制御部120を構成する。
また、プログラムは、レンジフードサーバ100に対して任意のネットワークを介して接続されたアプリケーションプログラムサーバに記憶されていてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。また、「プログラム」とは、任意の言語または記述方法にて記述されたデータ処理方法であり、ソースコードまたはバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、OSに代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、上述した各装置において記録媒体を読み取るための具体的な構成および読み取り手順ならびに読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
また、レンジフードサーバ100は、既知のパーソナルコンピュータまたはワークステーション等の、多数の端末からのアクセスを受け付ける汎用的な情報処理装置(所謂サーバ)として構成してもよく、また、任意の周辺装置が接続された当該情報処理装置として構成してもよい。また、レンジフードサーバ100は、上述したように処理を実現させるソフトウェア(プログラムまたはデータ等を含む)を実装することにより実現してもよい。レンジフードサーバ100の具体的形態は図示するものに限られず、その全部または一部を、機能の負荷に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
通信部110は、通信装置10によりその機能が実現され、ネットワーク300を介してレンジフード/レンジフード端末200からデータ等を受信して制御部120へ送り、制御部120が生成したデータ等を、ネットワーク300を介してレンジフード/レンジフード端末200へ送信する。通信部110は、ネットワーク300を介してレンジフード/レンジフード端末200と繋がるためのネットワークインターフェイスであり、より具体的には、たとえばLAN(Local Area Network)カード等の通信デバイスである。
入力部140と出力部150は、入力装置40と出力装置50により機能が実現され、入出力インターフェイスを介して制御部120により制御される。制御部120は、入力部140からデータ等を取得し、出力部150に対して生成したデータ等を出力する。入力部140は、典型的にはキーボードやマウス、タッチパネルなどのサーバに直接ローカル接続された装置であるが、ネットワーク300を経由してリモートからアクセスしてレンジフードサーバ100を操作する装置であってもよい。出力部150は、同様に、典型的にはディスプレイやプリンタなどのサーバに直接ローカル接続された装置であるが、ネットワーク300を経由してリモート接続された装置であってもよい。各部の詳細については、以下の実施例において説明する。
<レンジフード/レンジフード端末(ホームネットワーク接続機器)について>
図6および図7に示すように、レンジフード200(およびレンジフード端末200)は、住宅や店舗などのコンロBNや調理台CTの上方または近傍に設けられる。レンジフード200は、下方のコンロBNで調理される際に発生する油煙等を捕獲するフード201と、捕獲する油煙等を吸引し屋外へ排気するために空気の流れを発生させるファン202と、ファン202を駆動する駆動装置270(給排気モータ271)と、駆動装置270を制御し、全体の制御を行うマイクロプロセッサ220と、マイクロプロセッサ220で実行するプログラムおよび自身のプロパティを記憶するメモリ230と、ゲートウェイコントローラ401と通信を行う通信装置210と、周囲の状態を検知する検知装置260と、レンジフード200への入力を受け付ける入力装置240と、レンジフード200からの情報を出力する出力装置250とを備える。
フード201は、油煙を吸い込み易くするため空気の流速を上げる整流板203や、油煙を屋外に排気するダクトに連通する吸気口を備え、油煙を屋外に排出し、屋内の空気質を改善する。ファン202は、軸流ファンやシロッコファンであり、特に限定はされない。駆動装置270は、ファン202を回転駆動する排気モータだけでなく、屋外や屋内からレンジフード200付近で給排気を行うや給排気モータ271や、給排気のための開口部(図示せず)を開閉するための給排気ダンパを含む駆動装置を備えることが好ましい。また、駆動装置270は、円盤状の回転フィルタ204を回転させて油煙を捕獲するためのフィルタモータを備えてもよい。
通信装置210は、ホームドメイン内ネットワーク301と通信を行うための送信装置と受信装置を含む通信インターフェイスであり、ECONETLite通信規格に準拠した通信プロトコルに基づきゲートウェイコントローラ401と通信を行う。通信装置210は、近傍に設けられるコンロBNと通信を行うための赤外線通信部を備えてもよい。検知装置260は、油煙の量を検知するための油煙センサ261、周囲の人の存否を検知するための人感センサ262(人体検知部)、ガスや臭いの成分を検出するCO2/臭いセンサ263、周囲の空気の温度や湿度を検知する温湿度センサ264などを含む。検知装置260は、レンジフード200の周囲の温度、湿度、一酸化炭素濃度、汚染物質濃度などの空気質を検知すると共に、料理をする人の有無を検知する。
入力装置240は、料理する人の音声や料理から発生する音などを集音するマイク242(集音装置、集音部)、下方のコンロBNや斜め下方の調理台CTで行われる料理の様子を撮像したり、鍋や具材の温度を測定するカメラ241(赤外線撮像素子付き)、レンジフード200の運転についてマイクロプロセッサ220に対して指示するため料理者等が操作する操作部243と、を含む。操作部243は、図8が示すように、レンジフード200の電源をオンオフする「運転入/切」ボタン、ファン202が発生させる排気流量を指示する「風量弱/中/強」ボタン、回転フィルタ204の回転速度を指示する「回転フィルタ弱/中/強」ボタン、照明253をオンオフする「照明入/切」ボタン、カメラ241をオンオフする「カメラ入/切」ボタン、マイク242をオンオフする「マイク入/切」ボタン、通常モードとメンテナンスモードを切り替える「モード設定」ボタンを含む。
出力装置250は、様々な情報を表示するディスプレイ251(表示装置)と、様々な情報を鳴動させるスピーカ252(音出力装置、音声出力装置)と、照明253を含む。なお、マイク242、カメラ241(撮像装置、撮像部)、ディスプレイ251、スピーカ252は、レンジフード200に物理的に組み込まれてもよいし、近距離無線通信を利用する別体として設けられてもよい。また、ディスプレイ251は、タッチパネルを備えた入力機能を兼ね備えたものであることが好ましい。
メモリ230は、ROMやRAMであり、たとえばECONETLite通信規格におけるレンジフード200の機器クラスのプロパティ情報(プロパティ値)を記憶する。このプロパティ情報は、通信装置210を介してゲートウェイコントローラ401と送受信する電文に含まれる。マイクロプロセッサ220内のRH制御部229(運転制御部)は、このプロパティ情報に基づき、ゲートウェイコントローラ401からの設定要求または読み出し要求に対応する。
図9を参照し、ホームドメイン内ネットワーク301におけるレンジフード200のプロパティ情報を説明する。なお、本図では、レンジフード200のプロパティ情報の一部を示す。ゲートウェイコントローラ401がレンジフード200に対して読み出し要求できるプロパティ(アクセスがGet)の情報として、レンジフード200の動作状態に関する情報、レンジフード200の換気風量に関する情報、レンジフード200が計測した温度に関する情報、レンジフード200が計測した相対湿度に関する情報、レンジフード200が検知した人体動作に関する情報、レンジフード200が計測したCO2濃度に関する情報、レンジフード200が計測したガスに関する情報、ディスプレイ251等のメディア機器の動作状態に関する情報と、メディア機器との転送設定に関する情報、レンジフード200が計測した油煙計測値に関する情報がある。
また、ゲートウェイコントローラ401がレンジフード200に対して設定要求できるプロパティ(アクセスがSet)の情報として、レンジフード200の動作状態に関する情報、レンジフード200の換気風量に関する情報、ディスプレイ251等のメディア機器の動作状態に関する情報と、メディア機器との転送設定に関する情報がある。このように、読み出し要求のプロパティの情報および設定要求のプロパティの情報としてこれらのプロパティ情報を管理することで、ゲートウェイコントローラ401は、レンジフード200のこれらのプロパティに関する情報を認識および制御できる。
また、ゲートウェイコントローラ401からの設定要求および読み出し要求に応じて返答するだけでなく、レンジフード200自身の状態の変化を情報として通知(状変通知)することも可能である。状変通知の対象となるプロパティは、レンジフード動作状態(ファン回転のオン/オフ状態)、人体検知状態(人体動作の有無状態)、ガス検知状態(ガス発生の有無状態)などである。このように、レンジフード200自身の状態の変化を情報としてレンジフード200が自らゲートウェイコントローラ401に通知することで、レンジフード200にとって重要な情報をゲートウェイコントローラ401に知らせることができ、この通知を受けたゲートウェイコントローラ401は、適切にレンジフード200を認識・制御できる。
レンジフード200の動作状態は、レンジフード200の運転中/停止中を示す。運転/停止にそれぞれ、0x30/0x31のプロパティ値が対応するものとする。
レンジフード200の換気風量は、換気風量レベルおよび換気風量自動状態の設定を示す。換気風量自動状態の場合、レンジフード200は、コンロBNでの使用状況に応じて換気風量を自動的に調整する。換気風量自動状態のプロパティの値は0x41とする。風量レベルを8段階で設定し、0x31~0x38のプロパティ値を取るものとする。各風量レベルの具体的な値は、規定しないが、0x31を風量最小、0x38を風量最大とする。また、機器により風量設定が8段階より少ない場合、もしくは、8段階より多い場合も、本プロパティで規定する8段階のプロパティ値に実機器のプロパティを割り当てるものとする。
レンジフード200の照度レベルは、レンジフード200に設けられた照明253の照度のレベルを示す。プロパティの値域は、0x00~0x64(0%~100%)とする。
レンジフード200(温湿度センサ264)が計測した温度は、温度計測値を0.1℃の単位で示す。プロパティの値域は、0xF554~0x7FFE(-273.2℃~3276.6℃)とする。相対湿度は、相対湿度計測値を%の単位で示す。プロパティの値域は、0x00~0x64(0~100%)とする。
レンジフード200(人感センサ262)が検知した人体動作は、人体動作有、無状態を示す。本プロパティ値は状態が変化するまで保持される。人体動作有=0x41、人体動作無=0x42の値を示す。また、人感センサ262は、図10に示すような、キッチン空間における人体を検出するエリア別に人体動作の有無を検知することが好ましい。コンロの前付近であるコンロエリアを示すエリアG=0x31、0x35、調理台の前付近である調理台エリアを示すエリアK=0x32、0x36、流し台の前付近である流し台エリアを示すエリアS=0x33、0x37、冷蔵庫の前付近である冷蔵庫エリアを示すエリアR=0x34、0x38の値を示す。
レンジフード200(CO2/臭いセンサ263)が計測したCO2濃度は、CO2濃度計測値をppmの単位で示す。プロパティの領域は、0x0000~0xFFFD(0~65533ppm)とする。レンジフード200(CO2/臭いセンサ263)が計測したガスは、ガス検知の有(0x41)、無(0x42)状態を示す。
レンジフード200におけるメディア機器動作状態は、レンジフード200に設けられるまたは接続されるマイク242、カメラ241、ディスプレイ251、スピーカ252のメディア機器のオンオフ状態を示す。オンオフ状態にそれぞれ、0x50/0x51のプロパティ値が対応するものとする。
レンジフード200におけるメディア転送設定は、メディア機器が取得したメディアデータの転送方法を設定する。メディア機器から直接外付けのハードディスクに転送する場合はローカルストレージ転送(0x60)、メディア機器からネットワークを介してサーバの記憶装置に転送する場合はリモートストレージ転送(0x61)、メディア機器からメールサービスを介して転送する場合はメール転送(0x62)とする。
レンジフード200(油煙センサ261)が計測した油煙計測値は、油煙の量をmg/m3単位で示す。プロパティの値域は、0x0000~0xFFFD(0~65533mg/m3)とする。
<第一実施例>
図5、図7、図11乃至図18を参照し、本実施例におけるレンジフードシステム1の1形態である料理教室システム1Aを説明する。料理教室システム1Aは、料理の指導者(教師)と料理を習いたい者(生徒)が使用するシステムであり、料理教室サーバ100Aと、料理教室サーバ100Aと電気通信を介して接続され、料理の指導を行う教師が使用する教師側レンジフード端末200Tと、料理教室サーバ100Aと電気通信を介して接続され、教師から料理の指導を受ける生徒が使用する生徒側レンジフード端末200Sと、を備える。教師側レンジフード端末200Tと生徒側レンジフード端末200Sは、1対1であってもよいし、1対多であってもよい。
教師側レンジフード端末200Tは、上述したレンジフード200が有する構成に加え、下方にあるコンロBNおよび調理台CTの内少なくともコンロBNで行われる教師による料理の様子を撮像するカメラ241と、教師の音声等を集音するマイク242と、カメラ241が撮像した画像およびマイク242が集音した音を料理教室サーバ100Aに送信する送信装置211と、生徒側レンジフード端末200Sの送信装置211が送信した画像および音を料理教室サーバ100Aから受信可能な受信装置212と、受信装置212が受信した画像を教師に対して表示可能なディスプレイ251と、受信装置212が受信した音声を教師に対して出力可能なスピーカ252と、を備える。
生徒側レンジフード端末200Sは、上述したレンジフード200が有する構成に加え、下方にあるコンロBNおよび調理台CTの内少なくともコンロBNで行われる生徒による料理の様子を撮像するカメラ241と、生徒の音声等を集音するマイク242と、カメラ241が撮像した画像およびマイク242が集音した音を料理教室サーバ100Aに送信する送信装置211と、教師側レンジフード端末200Tの送信装置211が送信した画像および音を料理教室サーバ100Aから受信する受信装置212と、受信装置212が受信した画像を生徒に対して表示可能なディスプレイ251と、受信装置212が受信した音声を生徒に対して出力可能なスピーカ252と、を備える。
料理教室サーバ100Aは、上述したレンジフードサーバ100が有する構成に加え、教師側レンジフード端末200Tおよび生徒側レンジフード端末200Sのカメラ241が撮像した画像およびマイク242が集音した音を受信する受信部112と、受信部112が受信した画像および音を記憶する画像音記憶部131と、受信部112が受信したまたは画像音記憶部131が記憶した画像および音を送信する送信部111と、受信部112が受信したまたは画像音記憶部131が記憶した画像および/または音に基づき工程の区分を判定する判定部125と、を備える。画像音記憶部131は、画像や音のデータ量が多いため外部記憶装置32に設けられることが好ましい。判定部125は、制御部120で実行されるプログラムとして提供される機能である。
図11を参照して、料理教室システム1Aの制御方法の概略について説明する。前提として、料理の指導を行う教師は、料理教室サーバ100Aに自分が行う料理教室の内容、必要な材料、所要時間や開始終了スケジュールなどを登録しておき、生徒はそれらの情報にアクセスできる状態になっている。生徒は、ST100において、スマートフォンで料理教室サーバ100Aに直接アクセスし、受講したい料理教室の申し込み登録を行うと、スマートフォンから料理教室サーバ100Aに当該生徒のユーザ情報が送信される。ユーザ情報には、料理教室を受講する際のレンジフード端末200をホームドメイン内ネットワーク301に有するゲートウェイコントローラ401のネットワーク300における識別情報(IPアドレスなど)が含まれるものとする。
料理教室サーバ100Aは、料理教室が開始する時間になると、ST200において、生徒のスマートフォンに開始通知を行うと共に、教師側レンジフード端末200Tと生徒側レンジフード端末200Sに対して料理教室モードの設定を行うためにセットアップの指示を送信する。教師側レンジフード端末200Tおよび生徒側レンジフード端末200Sのゲートウェイコントローラ401は、セットアップ指示を受信すると、ST300において、教師側レンジフード端末200Tと生徒側レンジフード端末200Sにそれぞれ、動作状態をON、メディア機器動作状態をONにする設定要求を行う。教師側レンジフード端末200Tおよび生徒側レンジフード端末200Sは、それぞれ、ST400において、ゲートウェイコントローラ401からの設定要求に従い、オン状態となり、カメラ241やディスプレイ251等のメディア機器をオン状態にする。
教師側レンジフード端末200Tおよび生徒側レンジフード端末200Sは、メディア機器がオン状態になると、ST450において、料理状況を記録すると共に、料理教室サーバ100Aに料理状況データ(画像/音)を送信し、さらに相手(料理教室サーバ100A)からの料理状況データを受信する。料理教室サーバ100Aは、ST250において、受信部112が教師側レンジフード端末200Tおよび生徒側レンジフード端末200Sから料理状況データを受信すると、その料理状況データを解析し、料理工程の区分を判定すると共に、料理工程を生成し、区分された料理状況データを出力する。ST250とST450の処理については、より詳しく後述する。
すべての工程が終了し、その料理教室が完了すると、料理教室サーバ100Aは、ST290において、生徒のスマートフォンに終了通知を行うと共に、教師側レンジフード端末200Tと生徒側レンジフード端末200Sに対して料理教室モードの終了を行うために終了指示を送信する。ゲートウェイコントローラ401は、終了指示を受信すると、ST390において、教師側レンジフード端末200Tと生徒側レンジフード端末200Sにそれぞれ、動作状態をOFF、メディア機器動作状態をOFFにする設定要求を行う。教師側レンジフード端末200Tおよび生徒側レンジフード端末200Sは、それぞれ、ST490において、ゲートウェイコントローラ401からの設定要求に従い、オフ状態となり、メディア機器をオフ状態にする。
図12乃至図14を参照して、料理教室サーバ100Aおよび教師側レンジフード端末200Tと生徒側レンジフード端末200Sの制御について説明する。料理教室サーバ100Aは、料理教室が開始する時間になると、ST200において、教師側レンジフード端末200Tと生徒側レンジフード端末200Sに対して料理教室モードの設定を行う。料理教室モードの設定とは、開始時間になった料理教室の講座の教師および申し込んだ生徒を検索し、該当する教師の教師側レンジフード端末200Tおよび生徒側レンジフード端末200Sに対して開始をするためのセットアップ指示をそれぞれの端末に行う。
受信装置212がセットアップ指示を受信すると、教師側レンジフード端末200Tと生徒側レンジフード端末200Sは、ST400において、ゲートウェイコントローラ401からの設定要求に従い、自己をオン状態にし、カメラ241やディスプレイ251等のメディア機器をオン状態にする。上述したST450はST410~ST420に分けて説明される。メディア機器がオン状態になり、撮像・集音可能になると、教師側レンジフード端末200Tと生徒側レンジフード端末200Sは、ST410において、料理状況を記録する。
ST410は、図14(A)に示すように、教師側レンジフード端末200TではST410Tであり、具体的には教師側レンジフード端末200Tは、ST412Tにおいて教師の料理状況を撮像集音する。教師側レンジフード端末200Tは、ST420において、撮像集音した教師による料理指導の料理状況を音付き動画で料理教室サーバ100Aに送信する。教師側レンジフード端末200Tは、最終の工程が完了するまでS410とST420を繰り返す(ST440)。
上述したST250はST202~ST212に分けて説明される。料理教室サーバ100A(受信部112)は、ST202において、教師側レンジフード端末200T(送信装置211)から教師による料理状況の画像/音(音付き動画)を受信する。料理教室サーバ100Aの制御部120の判定部125は、ST204において、受信した画像と音の一方または両方に基づいて料理工程の区分を判定する。なお、判定部125は、受信部112が受信した画像/音を直接判定するのではなく、受信部112が受信した画像/音を画像音記憶部131に一旦記憶し、そこから読み出した画像/音を判定してもよい。ここで、料理の工程とは、料理の材料をどのようにするのかを一纏まりにした1または複数の目的語と動詞を含む文章から構成されるものである。工程の区分とは、一纏まりと一纏まりの間にある区切りである。なお、工程の区分を表す画像や音の標識として、後述する完了マーカや開始マーカなどの工程区分マーカを用いることが工程の区分が明確になるので好ましい。
図17を参照し、判定部125による画像と音に基づく料理工程の解析判定処理の例を説明する。この解析判定処理は、公知の画像(動画)認識技術と音声認識技術により行われる。レンジフード端末200のカメラ241(赤外線撮像素子付き)は、コンロBNを上方から撮像することにより、バーナーの上に置かれた鍋、フライパン、中華鍋など(以下鍋等と言う)の種類・形状・大きさ;菜箸、お玉、フライ返し、計量スプーン・カップなどの鍋等内の食材に対する料理道具の種類;鍋等内の食材の種類・形状・大きさ・色・温度;鍋等の縁・底・蓋・縁の周囲の温度;鍋等、料理道具、食材に対する人の動作などの画像情報を取得する。また、レンジフード端末200のマイク242は、周囲の人の音声、コンロBNでの料理の音などの音情報を取得する。判定部125は、画像内の対象において基本的な上記画像情報をラベル付けして機械学習された料理画像判別器と、画像情報に伴う音情報において音声認識器と料理音判別器を含む。料理音とは、鍋で煮る音、フライパンで炒める音、油で揚げる音、食材を切る音、食材を洗う音などを言う。
判定部125は、料理画像判別器、音声認識器、料理音判別器の出力を統合し、どのような鍋と料理道具を用い、どの食材をどのような温度で何をしているのかを認識する。たとえば、判定部125は、バーナーにフライパンが置かれてフライパンの周囲が高温になった画像情報から、点火されてフライパンを使う料理工程が開始した(開始マーカ)ことを判定する。また、フライパンを使う料理工程は、通常油を敷くことから「サラダ油を入れてください」の音声情報を判定要素に加えてもよい。このように、判定部125は、教師側レンジフード端末200Tにおいて料理指導の間の撮像した画像および/または集音した音における1工程の開始を示す開始マーカを認識することにより工程の開始を判定することが好ましい。
判定部125は、その後、フライパンの底が高温になった画像情報、「玉葱を入れてください」という音声情報、玉葱がフライパンに投入された音情報に基づき、料理する人が実際に玉葱を炒め始めたことを認識する。判定部125は、フライパン内の玉葱の色は白、玉葱の断片の輪郭は明確、断片の温度はフライパンの底に比べて低いという画像情報と油ハネ音が大きいという音情報に基づき、玉葱の炒め具合はまだ不十分であると認識する。
判定部125は、その後、「よく炒めてください」という音声情報、大きい油ハネ音と小さい油ハネ音が繰り返されるかき混ぜ音の音情報、玉葱と菜箸が繰り返して移動する画像情報に基づき、料理する人が実際に玉葱を炒める動作をしていることを認識する。次いで、判定部125は、フライパン内の玉葱の色は茶、玉葱の断片の輪郭は不明確、断片の温度は高い(フライパンの底の温度と同程度)という画像情報と油ハネ音が小さいという音情報(完了マーカ)に基づき、玉葱の炒め具合は十分であると認識する。判定部125は、フライパンを使って玉葱を炒めるという料理工程が終了したと判定する。また、判定部125は、料理する人の動作を伴うレシピ情報として区切りの良い区分として、かき混ぜ動作、かき混ぜ音、「炒めてください」という音声(完了マーカ)を以ってレシピの1工程が終了したことを判定してもよい。
このように、判定部125は、教師側レンジフード端末200Tにおいて料理指導の間の撮像した画像および/または集音した音における1工程の完了を示す完了マーカを認識することにより工程の区分を判定することが好ましい。これによれば、1工程の完了を明確にすることで工程の区分を正しく判定できるようになり、工程ごとの料理指導とその学習の完了を徹底することが可能になる。
上述したように料理状況の解析判定を行った後、料理教室サーバ100A(制御部120)は、ST206において、1工程(開始マーカから完了マーカの間)に区分された画像情報と音情報(音声情報含む)を生成し、画像音記憶部131に記憶する。料理教室サーバ100A(送信部111)は、ST208において、区分された工程の画像/音データを相手方(ここでは生徒側レンジフード端末200S)へ出力する。また、料理教室サーバ100A(制御部120)は、ST210において、出力する工程が当該料理教室において何番目の工程であるかを認識し、送信部111は、画像情報と共に送信する。なお、第N工程(Nは自然数)の完了マーカと第N+1工程の開始マーカは、その間に時間的な差異がほとんどない場合は同じであってもよいし、差異が大きい場合(たとえば何らかの事由で中断がある場合)は異なるものであってもよい。これにより、教師は、生徒が何らかの理由で工程を中断していること、中断後に工程を再開したこと等、生徒が実行している工程を正確に認識できるようになる。
料理教室サーバ100Aは、ST212において、当該料理教室の最終の工程を出力したか否かを判断する。最終の工程か否かは、工程を所定の工程数と予め設定してもよいし、最終と判定できる特別な完了マーカを用いてもよい。最終工程と判断しない場合、ST250(ST202~ST210)が繰り返される。したがって、料理教室サーバ100A(送信部111)は、受信部112が受信したまたは画像音記憶部131が記憶した画像および音を判定部125が判定した工程の区分毎に相手方へ送信する。
図13のST410として示される生徒側レンジフード端末200Sの調理状況記録処理は、図14(B)のST410Sである。具体的には、生徒側レンジフード端末200Sは、ST412Sにおいて、教師側レンジフード端末200Tから料理教室サーバ100Aに送信され、料理教室サーバ100Aから生徒側レンジフード端末200Sに区分毎に送信されている工程n(nは自然数)の出力が完了したか否か、具体的には、その時点で受信している工程の完了マーカを含む画像/音を受信し、メディア機器に出力したか否かを確認する。
その工程の完了マーカを含む画像/音をまだ出力していない場合、生徒側レンジフード端末200S(マイクロプロセッサ220)は、ST414Sにおいて、カメラ241で撮像する画像において調理動作が検出されるか否かを確認する。これは、上述した料理教室サーバ100Aが備える判定部125と同等の機能により判定できる。したがって、マイクロプロセッサ220は、判定部125と同等の機能を有する判定部225を有してもよい。調理動作が検出されない場合、生徒側レンジフード端末200Sの料理状況記録処理は終了する。調理動作が検出される場合、生徒側レンジフード端末200S(マイクロプロセッサ220)は、ST416Sにおいて、区分毎に送信される工程nの開始マーカを受信したか否か、すなわち工程nが開始しているか否かを確認する。開始マーカをまだ受信していない場合、生徒側レンジフード端末200Sの料理状況記録処理は終了する。
ST412Sにおいてその工程の完了マーカを含む画像/音を出力した場合、または、その工程が開始されていて生徒の調理動作が検出される場合、生徒側レンジフード端末200Sのカメラ241とマイク242は、ST418Sにおいて、生徒の料理状況を撮像集音する。完了マーカを含む画像/音を出力した場合に撮像集音するのは、教師の指導内容が一区切りするタイミングで、生徒がその指導内容に従って料理を開始するからである。工程が開始されまだ完了はしていないが生徒の調理動作が検出される場合に撮像集音するのは、1工程内であっても生徒が並行して調理動作を行う場合があり、その場合であっても料理状況を記録するためである。
生徒側レンジフード端末200Sは、ST420において、撮像集音した生徒の料理状況を音付き動画で料理教室サーバ100Aに送信する。生徒側レンジフード端末200Sは、最終の工程が完了するまでS410とST420を繰り返す(ST440)。生徒側レンジフード端末200Sが料理教室サーバ100Aに送信した画像/音は、料理教室サーバ100A(受信部112)によって受信され(ST202)、生徒の料理状況について解析判定処理(ST204)が行われる。すなわち、判定部125は、生徒の料理状況についての画像と音の一方または両方に基づいて料理工程の区分を判定する。
生徒の料理状況における工程の区分の判定方法は、教師の指導内容の画像と音に基づく料理工程の解析判定処理の判定方法と同じであってよい。たとえば、図17の例で言えば、判定部125は、生徒の料理状況の画像において、フライパン内の玉葱の色は茶、玉葱の断片の輪郭は不明確、断片の温度は高い(フライパンの底の温度と同程度)という画像情報と油ハネ音が小さいという音情報に基づき、玉葱の炒め具合は十分であると認識することで、フライパンを使って玉葱を炒めるという料理工程が終了したと判定する。すなわち、判定部125は、生徒の料理状況についての解析判定においては、教師側レンジフード端末200Tが送信した画像および音に基づき判定した工程の完了マーカ(区分)と同じ完了マーカ(区分)を生徒側レンジフード端末200Sが送信した画像および音に認識した場合、当該工程が生徒側でも完了したと判定する。
このような完了マーカは、教師が1工程の完了であることを指示した際の教師側レンジフード端末200Tのカメラ241が撮像している画像およびマイク242が集音している音声の特徴量に基づいて作成される。教師による完了指示は、たとえば「工程1終了」と発声することである。「工程1終了」と発声することは、そのまま音情報の特徴量となり得るし、フライパン内の玉葱の色は茶、玉葱の断片の輪郭は不明確、断片の温度は高いという画像情報から得られる特徴量であってもよい。このように、教師が1工程の完了であることを指示した際の画像等の特徴量を完了マーカとすることで、柔軟な完了マーカを設定することができる。
なお、完了マーカは、教師と生徒の間で予め定めた画像/音を完了マーカにすることで、1工程の完了を確実かつ容易に判定することができる。たとえば、図18に示すような「工程1終了」や「工程2終了」を示す二次元コードを工程終了時に双方のカメラ241で撮像したり、「工程1終了」とマイク242に発声することで、共通の完了マーカとして容易に判定できる。
判定部125が、教師側レンジフード端末200Tが送信した画像および音に基づき判定した工程の区分と同じ区分を生徒側レンジフード端末200Sが送信した画像および音に基づき判定した場合、料理教室サーバ100A(制御部120)は、ST206において1工程に区分された画像情報と音情報を生成し、ST208において区分された工程の画像/音情報を相手方(ここでは教師側レンジフード端末200T)へ出力する。料理教室サーバ100A(送信部111)は、ST210において、完了マーカを判定した画像および音を送信した生徒側レンジフード端末200Sを使用する生徒は送信した工程を完了した旨(判定結果)の通知を教師側レンジフード端末200Tに送信する。送信部111は、画像情報と共にこの通知を送信してもよい。
上述したように、通常高い位置に設置されるレンジフード端末200を利用することにより、生徒の料理状況をモニターするメディア機器を新たに設ける必要がないと共に、教師側が設定した各工程を生徒側で完了したことを判定することで、生徒の料理の進行状況を確認できる料理教室システム1Aを提供することができる。このように、料理教室システム1Aは、自動的に生徒側の料理の進行状況を判定できるので、教師がリアルタイムに生徒を指導する必要がなくなる。したがって、生徒の時間に合わせて料理指導コンテンツとして配信することが可能になるため、生徒にとって時間的に融通性がある利便性の高い料理教室システム1Aを提供することができる。
図15を参照し、教師側レンジフード端末200Tと生徒側レンジフード端末200Sの間において、判定部125により区分化された工程の送受信に関する制御方法を説明する。本図は、教師一人に対して、生徒が3人いる例であり、第1工程の完了を十字マークで、第2工程の完了を菱型マークで、各工程の開始を円マークで示している。また、実線矢印は、その時点での完了マーカの通知を表し、点線矢印は、当該工程における音付き動画の送信を表す。また、説明を簡略化するため、完了マーカは、図18に示すような各工程の完了を表す予め定められた二次元コードの完了マーカを用いるものとする。
教師側レンジフード端末200Tでは、料理教室モードの設定後、カメラ241やマイク242が画像/音として料理指導の料理状況を記録し、送信装置211がその画像/音を第1工程の指導内容として料理教室サーバ100Aに送信する。料理教室サーバ100Aは、これを受信部112で受信し、第1工程の指導内容を送信部111で生徒A~Cの生徒側レンジフード端末200Sにそれぞれ配信する。生徒側レンジフード端末200Sは、受信装置212でその画像/音を受信し、ディスプレイ251などのメディア機器で受信した工程の画像等を出力する。これにより、生徒A~Cは、配信されている指導内容をそれぞれの生徒側レンジフード端末200Sで視聴する。
教師が指導中に第1工程の完了を表す二次元コードをカメラ241に撮像させると、その二次元コードが写った画像を受信した料理教室サーバ100Aは、判定部125で最初の工程(第1工程)が完了したと判定する。料理教室サーバ100Aは、第1工程の完了を判定すると、それぞれの生徒側レンジフード端末200Sに第1工程が完了した旨の信号を送信すると共に、次の工程(第2工程)の指導内容の画像/音の送信を延期する。第1工程が完了した旨の信号を受信した生徒側レンジフード端末200Sは、ディスプレイ251等で第1工程の画像等を出力した後に、カメラ241とマイク242で生徒の料理状況を撮像集音する。生徒側レンジフード端末200Sは、撮像等された画像等を送信装置211で料理教室サーバ100Aに送信し、受信した料理教室サーバ100Aは、それぞれの生徒の料理状況としてその画像等を送信部111で教師側レンジフード端末200Tに送信する。教師側レンジフード端末200Tは、ディスプレイ251等に生徒の料理状況を出力し、これにより教師は各生徒の料理の進行状況をモニターできる。
生徒の料理の進行状況の中で第1工程の完了を表す二次元コードをカメラ241に撮像させると、その二次元コードが写った画像を受信した料理教室サーバ100Aは、判定部125でその生徒では第1工程が完了したと判定する。本図の例では、生徒Aが最も早く第1工程が完了した旨を表す二次元コードを撮像したことで、料理教室サーバ100Aは、生徒Aが最も早く第1工程が完了した旨の信号を教師側レンジフード端末200Tに送信部111で送信し、次いで生徒B、最後に生徒Cが第1工程を完了した旨の信号を教師側レンジフード端末200Tに送信する。
教師側レンジフード端末200Tは、第1工程が完了した旨の信号を受信すると、生徒側レンジフード端末200Sに対して次の工程(第2工程)の指導内容の画像/音を送信する。本図の例では、教師側レンジフード端末200Tは、最も早く第1工程が完了した生徒Aに合わせて第2工程の指導内容の画像/音を料理教室サーバ100Aに送信し、受信した料理教室サーバ100Aは、直ぐにその画像/音を生徒Aの生徒側レンジフード端末200Sに配信する。一方、生徒Aより遅れて第1工程が完了した生徒Bと生徒Cに対しては、二次元コードの完了マーカを判定するまで料理教室サーバ100Aで第2工程の指導内容の画像/音をバッファリングし、完了マーカを判定できた時にそれぞれの生徒側レンジフード端末200Sに第2工程の指導内容の画像/音を送信する。
生徒側レンジフード端末200Sが第2工程の指導内容の画像/音を受信すると、ディスプレイ251等に出力する。これにより、生徒A~Cは、それぞれの時間で、配信されている指導内容をそれぞれの生徒側レンジフード端末200Sで視聴する。教師が指導中に第2工程の完了を表す二次元コードをカメラ241に撮像させると、その二次元コードが写った画像を受信した料理教室サーバ100Aは、判定部125で第2工程が完了したと判定する。料理教室サーバ100Aは、第2工程の完了を判定すると、生徒Aの生徒側レンジフード端末200Sに教師の指導内容の第2工程が完了した旨の信号を送信すると共に、次の工程(第3工程)の指導内容の画像/音の送信を延期する。生徒Bと生徒Cの生徒側レンジフード端末200Sには、視聴が終わるタイミングで教師の指導内容の第2工程が完了した旨の信号を送信する。
本図では、その後工程が進行し、右上の大矢印の時点では、生徒Aが第2工程を完了したので、教師側レンジフード端末200Tは、指導内容の第3工程の画像/音を配信しており、生徒Aと生徒Bは第3工程の指導内容を視聴中である。生徒Cは、料理状況の進行が遅れており、第2工程の指導内容を視聴している最中である。図16は、このような状態の時の、(A)教師側レンジフード端末200Tのディスプレイ251が表示しているもの、(B)生徒Cの生徒側レンジフード端末200Sのディスプレイ251に表示されているものを例として示している。
教師側レンジフード端末200Tでは、指導内容として現在どの工程まで進んでいるか(右上の第1工程、第2工程、第3工程の表示)、生徒A~Cがどの工程まで完了しているかを表示している。生徒Aは第2工程まで、生徒Bは第2工程まで、生徒Cは第1工程まで完了していることを示している。このように、教師側レンジフード端末200Tのディスプレイ251は、完了した旨(判定結果)を生徒毎に表示する。このように、教師側で各工程を完了したことを生徒毎に表示することで各生徒の進行状況を確認でき、教師にとって1対多で指導ができる。つまり教師は各生徒の進行状況を確認することで各生徒の工程に合わせた指導を行うことができる。
生徒Cの生徒側レンジフード端末200Sでは、第1工程まで完了しており(右上の第1工程)、自分は現在指導内容の第2工程を視聴中であることを示している。また、このディスプレイ251はタッチパネルになっていて、「教師への停止要求を出す」ボタンを押して、教師側レンジフード端末200Tにその旨を料理教室サーバ100Aを介して送信することができる。進行が速すぎる場合や不明な点があって前に進めないような場合に有効である。料理教室サーバ100Aは、このボタンが押されると、教師側レンジフード端末200Tのディスプレイ251の生徒Cの欄にその旨を表示する。また、生徒Cは、「工程〇〇を再生する」ボタンを押して、前に戻って自分で学ぶため第1工程の指導内容の画像等を再生することを料理教室サーバ100Aに要求することができる。料理教室サーバ100Aは、この要求を受信すると、画像音記憶部131に記憶されているその工程部分の画像等を生徒Cの生徒側レンジフード端末200Sに送信する。
料理教室サーバ100Aの画像音記憶部131は、1工程の開始を示す開始マーカから1工程の終了を示す完了マーカまでの間を1工程として記憶し、生徒側レンジフード端末200Sから料理指導の一連の工程を区分毎に閲覧可能なように記憶することが好ましい。このように、1工程の完了と共にその開始も明確にして、料理指導の一連の工程を区分毎に閲覧可能なように記憶することで、料理指導を再現して学習することができる。
上述したように、料理教室サーバ100Aは、教師側レンジフード端末200Tから受信部112が受信したまたは記憶部130が記憶した画像および音を判定部125が判定した工程の区分毎に生徒側レンジフード端末200Sに送信する。生徒側レンジフード端末200Sは、各工程の画像等を受信し、メディア機器に出力した後、生徒の料理状況を撮像等し、料理教室サーバ100Aに送信する。料理教室サーバ100Aは、判定部125で教師側レンジフード端末200Tが送信した画像等に基づき判定した工程の区分と同じ区分を生徒側レンジフード端末200Sが送信した画像等に基づき判定した場合、教師側レンジフード端末200Tに対して、当該画像等を送信した生徒側レンジフード端末200Sを使用する生徒がその工程を完了した旨を送信する。
これによれば、通常高い位置に設置されるレンジフード端末200を利用することにより、生徒の料理状況をモニターする撮像装置を新たに設ける必要がないと共に、教師側が設定した各工程を生徒側で完了したことを判定することで、生徒の料理の進行状況を確認できる料理教室システム1Aを提供することができる。このように、料理教室システム1Aは、自動的に生徒側の料理の進行状況を判定できるので、教師がリアルタイムに生徒を指導する必要がなくなる。したがって、生徒の時間に合わせて料理指導コンテンツとして配信することが可能になるため、生徒にとって時間的に融通性がある利便性の高い料理教室システム1Aを提供することができる。
<第一実施例の変形例1>
上記実施例では、教師側レンジフード端末200Tと生徒側レンジフード端末200Sは、料理教室サーバ100Aを介して電気通信により接続されているが、これに限定されず、教師と生徒が1対1である場合、料理教室サーバ100Aを介さずに直接通信してもよい。この場合、上記実施例の判定部125は料理教室サーバ100Aの制御部120で実行されるプログラムとして提供される機能であるが、同等の機能が、判定部225として、教師側レンジフード端末200Tまたは教師側レンジフード端末200Tのゲートウェイ400に備えられていてもよい。また、この場合、教師側レンジフード端末200Tは、カメラ241が撮像した画像やマイク242が集音した音を記憶する記憶部をメモリ230に備えることが好ましい。これによれば、通常高い位置に設置されるレンジフード端末200を利用することにより、生徒の料理状況をモニターする撮像装置を新たに設ける必要がないと共に、教師側が設定した各工程を生徒側で完了したことを教師側レンジフード端末200Tが判定することで、生徒の料理の進行状況を教師が確認できる料理教室システム1Aを提供することができる。
<第一実施例の変形例2>
上記実施例では、料理教室サーバ100Aには教師側レンジフード端末200Tと生徒側レンジフード端末200Sが電気通信により接続されているが、これに限定されない。本変形例では、教師側レンジフード端末200Tと生徒側レンジフード端末200Sの代わりに、料理の指導を行う教師が使用する教師側情報処理装置と教師から料理の指導を受ける生徒が使用する生徒側情報処理装置が使用される。
教師側情報処理装置および生徒側情報処理装置は、撮像した画像および集音した音を料理教室サーバに送信する送信部を備える、所謂高機能なスマートフォンなどの汎用的な端末であってよい。料理教室サーバは、これらの多数の端末装置からのアクセスを受け付ける情報処理装置(所謂サーバ)である。料理教室サーバは、これらの端末装置から受信した画像および音に基づき工程の区分を判定する判定部を備える。
判定部が、生徒側情報処理装置が送信した画像および音の中に、教師側情報処理装置が送信した画像および音に基づき判定した工程の区分と同じ区分が有ると判定した場合、料理教室サーバは、判定結果を教師側情報処理装置に送信する。これによれば、教師側が設定した各工程を生徒側で完了したことを料理教室サーバが判定し、この判定結果を教師側に通知することで、生徒の料理の進行状況を教師が確認できる料理教室システムを提供することができる。また、料理教室システムは、自動的に生徒側の料理の進行状況を判定できるので、1対1ではない場合であっても教師は各生徒の進行状況を確認できる。1対多での指導が可能な効率性及び利便性の高い料理教室システムの提供が可能となる。
<第一実施例の変形例3>
上述したことは、料理の指導を行う教師が使用する教師側レンジフード端末200Tと、教師側レンジフード端末200Tと電気通信を介して直接的または間接的に接続され、教師から料理の指導を受ける生徒が使用する生徒側レンジフード端末200Sと、を備える料理教室システム1Aにおける方法でもある。この方法は、
教師側レンジフード端末200Tにおいて、撮像した画像および集音した音に基づき工程の区分を判定し、この工程の区分毎に画像および音を生徒側レンジフード端末200Sに送信し、
生徒側レンジフード端末200Sにおいて、教師側レンジフード端末200Tから受信した画像および音を出力し、この出力と並行してまたはこの出力の後に撮像した画像および集音した音を教師側レンジフード端末200Tに送信し、
教師側レンジフード端末200Tにおいて、生徒側レンジフード端末200Sが送信した画像および/または音の中に、教師側レンジフード端末200Tが送信した画像および音に基づき判定した工程の区分と同じ区分の有無を判定する、
方法である。これによれば、教師側が設定した各工程を生徒側で完了したことを判定することで、生徒の料理の進行状況を教師が容易に確認できる料理教室システム1Aの方法を提供することができる。
<第二実施例>
図19乃至図27を参照し、本実施例におけるレンジフードシステム1の一形態であるレシピ情報作成支援システム1Bを説明する。レシピ情報作成支援システム1Bは、レンジフードサーバ100の一形態であるレシピ情報サーバ100Bと、レシピ情報サーバ100Bと電気通信を介して接続されたレンジフード端末200を備える。
レンジフード端末200は、図10に示すような、下方にあるコンロBN、調理台CT、流し台SK、冷蔵庫RFなどを撮像するカメラ241と、カメラ241が撮像した画像をレシピ情報サーバ100Bに送信する送信装置211とを少なくとも備える。レンジフード端末200は、コンロBN、調理台CT、流し台SK、冷蔵庫RFなどに亘って調理者によって行われる調理の状況を上方からカメラ241で撮像し、撮像した画像(動画)を通信装置210とゲートウェイコントローラ401を介してレシピ情報サーバ100Bに送信する。なお、カメラはコンロBNのまっすぐ上の方(垂直上方向)に設置されるものに限られない。キッチン空間での調理情報データ及び調理動作データを取得できる任意の位置に設置できればよい。例えば、調理台CTの上部、流し台SKの上部にそれぞれ設けるようにしてもよい。また、本実施例においてカメラ(撮像装置)との関係で「上方」や「下方」という用語は、まっすぐ上の方やまっすぐ下の方だけではなく、斜め上方や斜め下方も含む広い領域を含むものとする。
また、レンジフード端末200は、音声を集音するマイク242をさらに備え、送信装置211は、マイク242が集音した音声をレシピ情報サーバ100Bに送信することが好ましい。画像情報に加えて音声情報も含めてレシピ情報を作成することができるからである。また、レンジフード端末200は、レシピ情報サーバ100Bの送信部111が送信したレシピ情報と画像や音声を受信する受信装置212と、受信装置212が受信した画像を表示可能なディスプレイ251と、受信装置212が受信した音声を出力可能なスピーカ252と、を備えることが好ましい。別途情報処理装置を用意せずに、レシピ情報サーバ100Bに格納されているレシピ情報をレンジフード端末200で再生することができ、レシピを見ながらコンロや料理台で調理をすることができるからである。
レシピ情報サーバ100Bは、レンジフード端末200の送信装置211が送信した画像をネットワーク300を介して受信する受信部112と、受信部112が受信した画像から、料理材料の種類を含む調理情報データと料理材料に対して行う動作を含む調理動作データを抽出する情報抽出部121と、調理情報データと調理動作データを時刻情報と関連付けて記憶する記憶部130と、記憶部130に記憶された調理情報データと調理動作データに基づき、目的語と述語を含む文章を生成する文章生成部122と、文章生成部122が生成した文章を1工程として構成する工程作成部123と、工程作成部123が構成した工程を、時刻情報に基づき時系列の複数の工程を含むレシピ情報として構成するレシピ情報作成部124と、を備える。
情報抽出部121は、画像認識技術と音声認識技術を用いて、レンジフード端末200から送信されてきた画像と音声の一方または両方から調理情報データと調理動作データを抽出する。なお、調理情報データとは、料理材料の種類所謂食材、その分量、その状態や動きなどを含むものであり、調理動作データとは、調理者が料理材料に対して行う動作、その動作に用いる道具、その動作の時間などを含むものである。また、情報抽出部121がデータを抽出する、レンジフード端末200から送信されてきて受信部112が受信した画像と音声は、受信部112が受信した画像や音声から直接抽出してもよいし、受信後一旦記憶部130に格納した画像音声から抽出してもよい。
情報抽出部121に用いる画像認識技術は、CNN(Convolutional Neural Network)、RNN(Recurrent Neural Network)などの多層ニューラルネットワークを使用する深層学習手法(ディープラーニング)の公知の技術を使用する。しかし、これに限定されず、サポートベクトルマシンやベイジアンネットワークなどの公知の技術を使用してもよい。情報抽出部121は、画像と音声(音)から調理情報データと調理動作データを検出できる学習済みモデルを備える。画像の学習済みモデルは、2次元の画像データを1ピクセルごとの色情報(色調や階調)に分解し、1ピクセルのそれぞれに対応した入力層に画像を入力すると、出力層においてその画像が何を写した画像なのかを物体認識をするように学習されており、認識した物体を確率情報付きテキスト情報で出力する。また、画像の学習済みモデルは、認識した物体が画像の中でどの位置にあるのかを予測する物体検出を行うように学習されている。音声の学習済みモデルは、発音辞書を含む音響モデルと言語モデルを有し、音声情報を確率情報付きテキスト情報に変換する。
画像の学習済みモデルにおける食材認識は、調理者の手や道具と認識される物体により取り上げられたり、放されたりしたタイミングなど、その食材の特徴量が明瞭に表れた際の画像(動画の1フレーム)に基づき行われてもよいし、近接して連続する複数の画像に基づき候補となる食材の中から該当する食材として最もスコアの高い食材を選択することにより行われてもよい。食材認識の学習は、予め特徴の出やすいまな板に置いた状態を撮像した画像で行われることが好ましい。たとえば、同じ薄切りした豚肉であっても、まな板の上に置いた状態で、こま切れ、ロース、もも、バラなどの部位の画像を教師画像として学習させたモデルは、これらを識別して認識できる。なお、同じもも肉でも、鶏肉のもも肉は、牛肉のもも肉・豚肉のもも肉に対して認識容易であるが、牛肉のもも肉と豚肉のもも肉は画像だけは認識が難しい場合がある。このような場合、レシピを作成するために調理の様子を撮像集音する際、調理者が「牛肉のもも肉」と発声することで、そのような音声情報を利用して食材を認識することが可能になる。
また、画像の学習済みモデルにおける動作認識は、連続した画像に基づき、調理者が調理者の手や道具と認識される物体により食材などに対して行う動作を直接的に認識し、または、食材の移動や食材の状態の変化を通じて食材に対して行う動作を間接的に認識する。たとえば、レシピ情報に含まれるコンロBN上での料理の動作としては、加える・混ぜる・掛ける、焼く・炒める・揚げる、茹でる・煮る・蒸すなどが挙げられる。動作認識は、近接した連続画像だけでなく、後述する工程を跨いだ程度の時間的に離れた画像との文脈を考慮して認識されることが好ましい。
たとえば、加える・混ぜる・掛けると認識するためには、この行為以前に別の食材が認識され、その食材に新たな食材を容器などに追加する行為である。また、焼く・炒める・揚げるという行為は、この行為以前に油が容器などに追加されていて、通常その油が熱せられ、その状態で食材に加えられる行為である。また、茹でる・煮る・蒸すという行為は、この行為以前に水や湯が容器などに追加されていて、その状態で食材に加えられる行為である。焼く・炒める・揚げるという行為の区別は、それぞれの音が異なるので、集音した音を補助的に利用してもよい。また、加える・混ぜる・掛ける、茹でる・煮る・蒸すなどの行為は、画像認識だけでは難しい場合があるので、音声情報を利用して行為を認識することが可能になる。また、類似する概念でもレシピ情報として豊かな表現を生成する場合、たとえば、焼くという概念でも、あぶる、網焼き、直火焼き、きつね色に焼く、焦げ目を付ける、表面を焼く、ソテーするなどの音声情報と組み合わせることで可能となる。なお、情報抽出部121は、調理分野特有の固有表現を含む音声辞書を有しておくと精度が向上する。
また、情報抽出部121の抽出精度を向上させるために、レンジフード端末200に設けられた照明253を利用することができる。画像認識においては、対象物までの撮影距離、照度条件等が画像認識の精度にかかわってくる。ここで、キッチンに固定設置されるレンジフード端末200の場合、対象物までの距離(例えば、カメラから鍋に入っている食材までの距離)が一定であることから撮影距離の条件を一定にでき、レンジフード端末200に備えられた照明253を制御することで画像認識の精度向上の補助をすることができる。例えば、レンジフード端末200が人体の移動を考慮して照度を変更したり、キッチン空間の他の照明の状態を考慮してゲートウェイコントローラ401がレンジフード端末200の照明253に照度変更の指示を出したり、調理台エリアKにおいて認識が難しい食材投入が予想されるときには予め照度を上げておくといった制御が考えられる。なお、ゲートウェイコントローラ401を利用して照度変更を行う場合は、照明レベル設定プロパティを用いて制御されることが好ましい。照明レベル設定プロパティでは0x00~0x64(0~100%)を指定して照度レベルの設定が可能である。
図19と図20を参照して、情報抽出部121の画像認識と音声認識により調理情報データと調理動作データを抽出する方法を具体的に説明する。なお、カメラ241は、赤外線撮像素子を備え、コンロBNに配置されたフライパンや鍋などの容器とその容器内の食材である料理材料の温度を検出できるものとする。図19は、かつ丼の調理を想定したものを示す。図19の左欄は、カメラ241が撮像した画像とマイク242が集音した音声を示す。なお、この左欄の画像は、コンロBN全体をカバーして写す図10で示される3口のコンロBNの画像の中から、3口の内の1つの五徳に載せられたフライパンを物体検出した状態の画像である。左欄上段の画像は、油が薄く引かれた後にフライパンに玉葱の薄切り片が多数投入されて、菜箸で炒められている状態の画像(動画の1フレーム)である。
右欄上段の画像は、情報抽出部121が左欄上段の画像を画像認識し、多数の玉葱片と菜箸を物体検出した状態を示す(太枠部分)。情報抽出部121は、物体検出されたフライパンの上に複数の玉葱薄切り片が載せられた画像に基づき、食材として玉葱の薄切り片があることを画像認識により調理情報データとして抽出する。この際、情報抽出部121は、画像から得られる薄切り片の分量から、たとえば中玉の玉葱1/2個程度であることを推測してもよい。なお、食材によってその分量を推測することが困難な場合には、後述するように音声情報から補充して調理情報データとして抽出してもよい。また、カメラ241は赤外線撮像素子を備えているので、情報抽出部121は、フライパンの温度(この例では160℃)を調理情報データとして抽出する。
また、情報抽出部121は、近接した連続画像に基づき、菜箸の先端が行ったり来たり移動すると共にその動きに合わせてその先端近傍の玉葱片が行ったり来たり移動することを認識し、調理動作データとして菜箸で炒めることを抽出する。なお、前提として、フライパンに玉葱片を投入する前に油が投入されていることを画像認識しているものとする。また、情報抽出部121は、炒めていることを画像だけからではなく、炒めている音や調理者の「炒める」との発声音(音声情報)に基づき料理材料に対して行う動作を調理動作データとして抽出してもよい
左欄中段の画像は、炒められた玉葱片の上に4切れのとんかつが載せられ、計量カップから液体がフライパンに加えられる状態の画像(動画の1フレーム)である。玉葱片が炒められたことは、情報抽出部121が赤外線撮像素子付きのカメラ241により玉葱片の温度情報を読み取ったり、玉葱片の色の変化を読み取ったりすることにより抽出可能である。このように、情報抽出部121は、コンロBNに配置されたフライパンなどの容器に加えその容器内の料理材料の温度情報を調理情報データとして抽出してもよい。このように、コンロBNに配置された容器とその容器内の料理材料の温度情報を調理情報データとして抽出することで、温度情報を含む文章を生成することができる。
右欄中段の画像は、情報抽出部121が左欄中段の画像を画像認識し、玉葱片の上に載せられた4切れのとんかつを物体検出し、さらに計量カップを物体検出した状態を示す(太枠部分)。情報抽出部121は、物体認識された4切れのとんかつの画像に基づき、食材として4切れのとんかつがあることを画像認識により調理情報データとして抽出する。さらに、情報抽出部121は、物体認識された計量カップに入れられた液体が投入される画像に基づき、食材として何らかの液体調味料が加えられたことを画像認識により調理情報データとして抽出する。
図20を参照して、画像認識により調理情報データとして調味料の種類と分量の情報を抽出する方法を説明する。調味料は、計量カップや計量スプーンにより分量を量られて食材に加えられることが多く、レシピ情報を作成する上ではその分量を明確にすることは重要である。本図では、たとえば、調味料などの種類と分量を表す特定器具を用いる例を示す。小さじ(5ml)の柄にはカメラ241が撮像し易い位置である上面に5mlの分量を示すマーク(黒丸が1つ)が付されている。これにより、このマークが付いた小さじで加えられる調味料は、情報抽出部121の画像認識により5mlの分量であることが明確になる。同様に、大さじ(15ml)の柄には15mlの分量を示すマーク(黒丸が2つ)が付されている。これにより、このマークが付いた大さじで加えられる調味料は、情報抽出部121の画像認識により15mlの分量であることが明確になる。また、計量カップの側面には三角マークが1以上付されており、調理者が三角マークをカメラ241に撮像されるように上に向けて調味料を加えることで、情報抽出部121の画像認識によりその三角マークの個数によりその調味料の分量が明確になる。本例では、三角マーク1つにつき、100mlを意味している。
また、この特定器具では、調味料の種類を表すマーク(醤油は三日月形、水は稲妻形など)が決められており、カメラ241がこれらのマークを撮像し、情報抽出部121が画像認識することにより、特定器具により加えられる調味料などの種類が明確になる。このような画像認識できる特定器具を用いることで、調味料の種類と分量が明確に認識可能となる。本図の上段左の画像データ(122.jpg)では、三角マークが2つと三日月形マークを画像認識により検出できるので、情報抽出部121は、この画像から、2つの三角マークに関連付けられた200mlという情報と、三日月形マークに関連付けられた醤油という情報に基づいて、フライパンに200mlの醤油が加えられることを認識し、調理情報データとして抽出する。
また、本図の上段中央の画像データ(123.jpg)では、黒丸マークが2つと三日月形マークを画像認識により検出できるので、情報抽出部121は、この画像から、2つの黒丸マークに関連付けられた大さじ1杯という情報と、三日月形マークに関連付けられた醤油という情報に基づいて、フライパンに大さじ1杯の醤油が加えられることを認識し、調理情報データとして抽出する。また、本図の上段右の画像データ(124.jpg)では、三角マークが3つと稲妻形マークを画像認識により検出できるので、情報抽出部121は、この画像から、3つの三角マークに関連付けられた300mlという情報、稲妻形マークに関連付けられた水という情報に基づいて、フライパンに300mlの水が加えられることを認識し、調理情報データとして抽出する。このように、特定の器具を認識しそれから得られる情報を含むことで、調味料等、画像から料理材料の種類と量を抽出するのが困難なものであっても、調理情報データ情報の抽出が容易になり、精度の高いレシピが作成可能になる。なお、特定器具は、これに限定されず、器具の形状、大きさ、色、材質などにより、調味料などの種類と分量を示してもよい。
図19の右欄中段の画像から計量カップに入れられた液体がたとえば醤油だしと認識され、それが食材として加えられたことを調理情報データとして抽出する。さらに、情報抽出部121は、この画像に近接した連続画像に基づき、計量カップがとんかつの周囲を回るように移動すると共にその動きに合わせて液体が流しかけられるように移動することを認識し、調理動作データとして計量カップで調味料が回しかけられることを抽出する。また、情報抽出部121は、回しかけていることを画像だけからではなく、「回し掛ける」との発声音に基づき料理材料に対して行う動作を調理動作データとして抽出してもよい。なお、本例ではこの中段の1つの画像に基づき、とんかつという食材と計量カップによる醤油だしという食材を投入する画像認識を行っているが、とんかつ投入時にとんかつという食材を認識し、計量カップによる醤油だしの投入時に醤油だしという食材を認識してもよい。
左欄下段の画像は、炒められた玉葱片の上に載せられ醤油だしに浸った4切れのとんかつに、カップから溶き卵がフライパンに加えられる状態の画像(動画の1フレーム)である。醤油だしやとんかつが熱くなっていることは、情報抽出部121が赤外線撮像素子付きのカメラ241によりそれらの温度情報を読み取ることで抽出可能である。このように、情報抽出部121は、コンロBNに配置されたフライパンなどの容器に加えその容器内の料理材料の温度情報を調理情報データとして抽出してもよい。
右欄下段の画像は、情報抽出部121が左欄下段の画像を画像認識し、炒められた玉葱片の上に載せられ醤油だしに浸った4切れのとんかつの周りに流動物をかけるカップを物体検出した状態を示す(太枠部分)。情報抽出部121は、物体認識されたカップの画像と、同じタイミングに調理者が発声した「卵を回しかけて」という音声情報に基づき、食材として卵があることを調理情報データとして抽出する。また、調理者は、「1個分の溶き卵」と発声することで、卵の分量と状態を抽出してもよい。また、情報抽出部121は、右欄中段の画像と同様に、近接した連続画像に基づき、カップがとんかつの周囲を回るように移動すると共にその動きに合わせて流動物が流しかけられるように移動することを認識し、調理動作データとしてカップで溶き卵が回しかけられることを抽出する。また、情報抽出部121は、回しかけていることを画像だけからではなく、「回し掛ける」との発声音に基づき料理材料に対して行う動作を調理動作データとして抽出してもよい。
情報抽出部121の画像と音声の学習済みモデルは、認識した物体を確率情報付きテキスト情報で出力するが、その確率が高くない場合は、その物体の認識精度が高くないことを示している。物体の認識精度が高くない場合、情報抽出部121が抽出する情報の抽出精度も悪くなり、正確なレシピ情報を作成できない。そこで、レシピ情報サーバ100Bは、情報抽出部121が抽出した情報の抽出精度を評価する評価部127を制御部120に備えて、画像に写った物体から抽出した情報の抽出精度を評価することが好ましい。レシピ情報サーバ100Bは、評価部127により抽出した情報の抽出精度が所定の閾値以下であると評価された場合にその評価結果を送信部111からレンジフード端末200へ送信する。所定の閾値は、たとえば認識した物体の確率情報が70%以下としてもよいし、画像と音声の認識精度と組み合わせた閾値としてもよい。
レンジフード端末200は、受信装置212でその評価結果を受信した場合、評価結果に応じた催促情報を報知する報知部を備えることが好ましい。評価結果に応じた催促情報とは、物体をほとんど認識できない場合(たとえば確率情報が10%以下)にはその旨、物体を認識できたが間違っている可能性が大きい場合(たとえば確率情報が50%以下)にはその旨を示す情報である。なお、報知部は、スピーカ252にビープ音などを鳴動させることで催促情報を報知してもよいし、ディスプレイ251にメッセージを表示することで催促情報を報知してもよい。たとえば、物体をほとんど認識できない場合、スピーカ252は継続的なビープ音を鳴動し、ディスプレイ251は警告メッセージを表示し、物体が認識できたが間違っている可能性が大きい場合、スピーカ252は断続的なビープ音を鳴動し、ディスプレイ251は注意メッセージを表示する。このような催促情報を受けた調理者は、情報抽出部121が認識しやすいように食材を置き直したり、動作をやり直したり、発話をし直したりする。このように、画像だけでは料理の材料や動作の抽出精度が低い場合、レシピ情報作成支援システム1Bは、調理者へ催促情報を報知することで、再度認識しやすい調理状態を再現したり、明瞭な音声を発するように促すことができ、精度の高いレシピを作成することができる。
図21を参照して、記憶部130が調理情報データおよび調理動作データとして記憶するテーブル(調理情報等記憶テーブル)を説明する。記憶部130は、情報抽出部121が抽出した調理情報データと調理動作データを時刻情報と関連付けて記憶する。調理情報等記憶テーブルは、第1カラムにユーザIDを記憶する。本例では、ユーザIDにはすべてF001というユーザの識別番号が記憶されている。第2カラムは、情報抽出部121が画像認識や音声認識により食材や調理者の動作を認識した時刻を記憶し、上から下に向けて時間が経過している。第3カラムは、情報抽出部121がその時刻に物体認識した食材の種類、第4カラムは、その食材の分量、第5カラムは、情報抽出部121の音声認識によりその時刻に得られた食材に関する補足情報、第6カラムは、情報抽出部121の画像認識によりその時刻に認識した動作、第7カラムは、情報抽出部121の音声認識によりその時刻に得られた動作に関する補足情報、第8カラムは、情報抽出部121が物体認識したフライパンなどの鍋の温度の情報、第9カラムは、物体認識した食材の容器の種類(鍋、フライパン等)、第10カラムは、食材と動作を取得したカメラ241のIDをそれぞれ記憶する。
本例の調理情報等記憶テーブルの最初のレコードは、調理台CTの上(図10におけるエリアK)を撮像するカメラIDがKのカメラ241により12/26 16:39に撮像された情報を格納している。このレコードは、カメラ241(カメラIDがK)は、食材である半分の玉葱に対して切るという動作が行われているところ撮像し、マイク242は、同時刻に切るという動作を補充するために発生された「薄切りにする」という内容が補充されていることを示している。また、1分後の次のレコードは、同じことが継続していることを示している。
次の一連のレコードは、コンロBNの上(図10におけるエリアG)を撮像するカメラIDがGのカメラ241が撮像した内容を格納している。これらの最初のレコードは、図19の右欄上段で示した画像認識により、情報抽出部121が12/26 16:43に食材として1/2個の分量の玉葱の薄切りを物体認識したことを示し、食材の容器を物体認識したフライパンのその時の温度が160℃であることを示している。そして、調理情報等記憶テーブルは、2分後の12/26 16:45に情報抽出部121が玉葱の薄切りを菜箸で炒める動作を認識したことを示している。
また、調理情報等記憶テーブルは、図19の右欄中段で示した画像認識により、情報抽出部121が12/26 16:53に食材として4切れのとんかつを物体認識したことを示し、その時のフライパンの温度が130℃であることを示している。そして、調理情報等記憶テーブルは、1分後の12/26 16:54に情報抽出部121が調味料を入れた計量カップを物体認識し、その計量カップから液体の調味料が流れ出て回し掛ける動作を認識したことを示している。
また、調理情報等記憶テーブルは、図19の右欄下段で示した画像認識により、情報抽出部121が12/26 17:01に食材として卵1個を入れたカップを物体認識し、そのカップは回るように移動し、そのカップから流動物が流れ出て回る動作を認識することを示している。また、それと共に、調理情報等記憶テーブルは、音声情報を補足情報として用いることでその流動物は卵(溶き卵)であり、カップが回る動作は、卵を回し掛ける動作であることを示している。
文章生成部122は、上述したように画像および音声から抽出され、記憶部130に記憶された調理情報データと調理動作データに基づき文章を生成する。文章生成部122による文章の生成方法は、公知の技術を用い、特に限定されない。レシピ情報では、文章の主体は重要でないため省略されるのが普通である。文章生成部122は、食材をどう処理する、食材にどのような動作を加える、容器に食材を入れる、食材に別の食材を加えるといった、少なくとも、目的語に食材(分量を含む)または容器と、述語に動作や状態変化を含む文章を生成する。より好ましくは、文章生成部122は、動作が継続する時間や、動作に使用される道具・器具が動作等に係る文章を生成する。このような単純な文章の場合、文章生成部122は、調理情報等記憶テーブルに記憶された食材の種類と分量のカラムと、動作の種類のカラムから、所定時刻における食材・分量と動作を読み出して、文章のテンプレートに当てはめることで、所謂その時刻の画像のキャプションを文章として生成する。
文章生成部122は、深層学習を用いて、動画や音声といった時系列のデータから特徴量を学習することに優れたLSTM(Long short-term memory)を利用して作成したニューラルネットワークを含むモデルを有していてもよい。この場合、レシピに関連したテキストを格納したコーパスを備えることで、文章生成部122は、レンジフード端末200が送信した画像音声に基づき直接その画像のキャプションを生成してもよい。また、文章生成部122は、記憶部130に記憶するための食材の種類や動作を画像音声から抽出しテキスト化すなわちキャプション生成するために、情報抽出部121の一部として機能してもよい。
図22を参照して、文章生成部122が生成する文章を説明する。文章生成部122は、図21に示す調理情報等記憶テーブルのレコードの内容に基づきテンプレートに当てはめるようにして文章を生成する。文章生成部122は、第3カラムの食材の種類と第4カラムの食材の分量の内容を目的語に、第6カラムの動作の内容を述語に基本的に当てはめる。文章生成部122は、第5カラムの食材に関する音声補足情報や第7カラムの動作に関する音声補足情報が存在する場合は、第3カラムの食材の種類や第4カラムの食材の分量の内容、第6カラムの動作の内容を、第5カラムの食材に関する音声補足情報、第7カラムの動作に関する音声補足情報の内容に置き換えて当てはめる。文章生成部122は、赤外線撮像素子を備えたカメラ241から得られる温度情報、特定器具に関連付けられた調理情報データから得られる情報がある場合、それを含む文章を生成する。文章生成部122は、容器の情報がある場合、食材や調味料の場所として当てはめ、動作の情報がない場合は、その場所に「入れる」や「加える」の述語を当てはめる。
最初のレコードは、第3カラムの食材の種類に「玉葱」、第4カラムの食材の分量に「1/2個」、第6カラムの動作に「切る」、第7カラムの動作に関する音声補足情報に「薄切りにする」と記憶しているので、文章生成部122は、「玉葱 1/2個 を 薄切り にします」という文章を生成する。次の一連のレコードには、第3カラムの食材の種類に「玉葱薄切り」、第4カラムの食材の分量に「1/2個」、第6カラムの動作にブランク、第8カラムの容器の温度に「160℃」、第9カラムの容器に「フライパン」と記憶しているので、文章生成部122は、「フライパン を 160℃に 加熱 します」という文章を生成する。
次の一連のレコードには、第3カラムの食材の種類に「玉葱薄切り」、第4カラムの食材の分量に「1/2個」、第6カラムの動作にブランク、第8カラムの容器の温度に「160℃」、第9カラムの容器に「フライパン」と記憶しているので、文章生成部122は、「フライパン に 玉葱 1/2個を 入れます」という文章を生成する。さらに次の2つのレコードには、第6カラムの動作に「菜箸で炒める」、他のカラムは同じ内容を記憶しているので、文章生成部122は、「フライパン に 玉葱 1/2個を、菜箸で 2分 炒め ます」という文章を生成する。なお、「2分」は、画像等の取得日時から計算する。
次の一連のレコードには、第3カラムの食材の種類に「とんかつ」、第4カラムの食材の分量に「4切れ」、第6カラムの動作にブランク、第8カラムの容器の温度に「130℃」、第9カラムの容器に「フライパン」と記憶しているので、文章生成部122は、「フライパン に とんかつ 4切れ を 入れ ます」という文章を生成する。次のレコードには、第3カラムの食材の種類に「とんかつ、調味料」、第4カラムの食材の分量に「4切れ、1カップ」、第6カラムの動作に「カップ回し掛ける」、第8カラムの容器の温度に「130℃」、第9カラムの容器に「フライパン」と記憶しているので、文章生成部122は、「フライパン に 調味料 1カップ を 回し入れ ます」という文章を生成する。
次の一連のレコードには、第3カラムの食材の種類に「とんかつ」、第4カラムの食材の分量に「4切れ」、第6カラムの動作にブランク、第8カラムの容器の温度に「140℃」、第9カラムの容器に「フライパン」と記憶しているので、文章生成部122は、「フライパン を 中火 に 加熱 して 5分 熱し ます」という文章を生成する。なお、「5分」は、画像等の取得日時から計算する。また、「中火」については後述する。次のレコードには、第3カラムの食材の種類に「とんかつ、卵」、第4カラムの食材の分量に「4切れ、一個」、第5カラムの食材に関する音声補足情報に「溶き卵」、第6カラムの動作に「卵回し掛ける」、第7カラムの動作に関する音声補足情報に「回しかけて」、第8カラムの容器の温度に「140℃」、第9カラムの容器に「フライパン」と記憶しているので、文章生成部122は、「溶き卵 を 回しかけ ます」という文章を生成する。
工程作成部123は、文章生成部122が生成した文章を1工程として構成する。1工程とは、レシピ情報に従い調理を遂行する上での1つのまとまった作業単位(ステップ)であり、表現としては通常1または複数の述語を含むものを言う。工程作成部123は、1つの述語を含む文章を1工程としてもよい。上述した文章生成部122が生成した文章は全部で8つの文章からなるので、工程作成部123は、1つの述語を含む1つの文章を1工程として、8つの工程を作成してもよい。すなわち、この場合、工程作成部123は、
「玉葱 1/2個 を 薄切り にします」という文章を第1工程とし、
「フライパン を 160℃に 加熱 します」という文章を第2工程とし、
「フライパン に 玉葱 1/2個を 入れます」という文章を第3工程とし、
「フライパン に 玉葱 1/2個を、菜箸で 2分 炒め ます」という文章を第4工程とし、
「フライパン に とんかつ 4切れ を 入れ ます」という文章を第5工程とし、
「フライパン に 調味料 1カップ を 回し入れ ます」という文章を第6工程とし、
「フライパン を 中火 に 加熱 して 5分 熱し ます」という文章を第7工程とし、
「溶き卵 を 回しかけ ます」という文章を第8工程として構成する。
一方、文章は分かれていても調理を行う作業としてはまとまっている場合、複数の工程に分けて表現するより、1つの工程(作業単位)として表現する方が分かり易い。たとえば、前段落では第3工程と第4工程とした「フライパン に 玉葱 1/2個を 入れます」と「フライパン に 玉葱 1/2個を、菜箸で 2分 炒め ます」という2つの工程は、一連の1つのまとまった作業単位として表現する方がレシピ情報を読みながら料理を遂行する者にとって分かり易い。したがって、文章生成部122が生成した文章の区切りと、実際の1つのまとまった作業単位としての工程の区切りとは一致しない場合がある。したがって、工程作成部123は、以下のように工程を区切り、文章生成部122が生成した複数の文章を1工程として構成することが好ましい。
このために、レンジフード端末200は、図10に示す調理エリアにおける人体を検知する人感センサ262と、調理時に発生する臭いの基となる化学物質や都市ガスが燃焼した際に発生する二酸化炭素(CO2)などの調理雰囲気情報を検知するCO2/臭いセンサ263(調理雰囲気情報検知部)と、を備えることが好ましい。人感センサ262は、コンロエリア(エリアG)、調理台エリア(エリアK)、流し台エリア(エリアS)、冷蔵庫エリア(エリアR)に存在する人を区別して検知する公知のセンサである。また、CO2/臭いセンサ263は、特定の化学物質やCO2を検知する公知のセンサである。レンジフード端末200の送信装置211は、人感センサ262とCO2/臭いセンサ263が検知した検知結果をレシピ情報サーバ100Bに送信する。なお、送信装置211は、当該検知結果を送信する際、レンジフード端末200の動作状態や換気風量設定などの制御情報を送信することが好ましい。送信装置211は、図9に示すプロパティ情報として、これらの情報を送信することが好ましい。
これらのプロパティ情報を受信したレシピ情報サーバ100Bは、記憶部130においてこれらの検知結果や制御情報を時刻情報と関連付けて記憶する。そうすると、レシピ情報サーバ100Bは、人の移動やCO2等の検知結果およびレンジフード端末200の制御情報と、調理情報等記憶テーブルに格納されているレシピ情報とを時間軸により照合することができる。
たとえば、図21の調理情報等記憶テーブルでは、文章生成部122はカメラIDがKのカメラ241が調理台CTの上を12/26 16:39から12/26 16:40の間に撮像した画像などにより「玉葱 1/2個 を 薄切り にします」という文章を作成すると共に、人感センサ262は調理者が調理台CT付近にいることを検知する。調理情報等記憶テーブルでは、次の作業としてフライパンを加熱することが示されているが、実際は、調理者は、調理台CTの前からコンロBNの前に移動し、レンジフード端末200の運転を開始し、コンロBNを点火するという行為と作業を行う。
レンジフード端末200は、人感センサ262により調理者が調理台CT付近からコンロBN付近に移動したことを検知し、その検知結果をプロパティ情報としてレシピ情報サーバ100Bに送信することで、工程作成部123は工程を区切る契機にすることが可能になる。また、レンジフード端末200は、CO2/臭いセンサ263により調理者がコンロBNを点火したことを検知し、その検知結果をプロパティ情報としてレシピ情報サーバ100Bに送信することで、工程作成部123は工程を区切る契機にすることが可能になる。また、レンジフード端末200は、自分の制御情報により運転開始を検知し、その検知結果をプロパティ情報としてレシピ情報サーバ100Bに送信することで、工程作成部123は工程を区切る契機にすることが可能になる。このような調理者の場所の移動、作業の変化、状態の変化、関連する機器の作動状況の変化などを工程を区切る契機(サイン)として用いることで、工程の区切りを明確化することが可能となり、レシピを見ながら料理を行う者にとって分かり易い工程を含むレシピを作成することが可能になる。
図22では、「玉葱 1/2個 を 薄切り にします」という文章と「フライパン を 160℃に 加熱 します」という文章の間には上述した契機が存在しているので、工程作成部123はこの間に工程の区切りがあると判断し、「玉葱 1/2個 を 薄切り にします」という文章を1つの工程(工程1)としていることを示す。また、「フライパン を 160℃に 加熱 します」という文章と「フライパン に 玉葱 1/2個を 入れます」という文章の間には、調理者の移動はないもののフライパンの温度変化が生じているので、工程作成部123はこの間に工程の区切りがあると判断し、「フライパン を 160℃に 加熱 します」という文章を1つの工程(工程2)としている。
また、「フライパン に 玉葱 1/2個を 入れます」という文章と「フライパン に 玉葱 1/2個を、菜箸で 2分 炒め ます」という文章の間には、調理者の移動はなく、また「入れる」作業から「炒める」作業は一連として続くものであり、また目的語も共通するため、工程作成部123はこの間に工程の区切りがあると判断しない。そのため、図22は、第3工程とした「フライパン に 玉葱 1/2個を 入れます」と、第4工程とした「フライパン に 玉葱 1/2個を、菜箸で 2分 炒め ます」を1つの工程(工程3)として併合し、この2つの文章を2つの述語を含む1つの文章「フライパン に 玉葱 1/2個 を 入れ、菜箸で 2分 炒め ます」にしたことを示す。
また、「フライパン に 玉葱 1/2個 を 入れ、菜箸で 2分 炒め ます」という文章と「フライパン に とんかつ 4切れ を 入れ ます」という文章の間には、とんかつという食材を手に取るために調理者はコンロBNの前(図10におけるエリアG)から調理台CTの周辺(同図におけるエリアK)に移動し、またコンロBNの火力を弱めるので、工程作成部123はこの間に工程の区切りがあると判断し、「フライパン に 玉葱 1/2個 を 入れ、菜箸で 2分 炒め ます」という文章を1つの工程(工程3)としている。また、「フライパン に とんかつ 4切れ を 入れ ます」という文章と「フライパン に 調味料 1カップ を 回し入れ ます」という文章の間には、調味料(醤油だし)を冷蔵庫から取り出すため調理者はコンロBNの前から冷蔵庫RFの周辺に移動するので、工程作成部123はこの間に工程の区切りがあると判断し、「フライパン に とんかつ 4切れ を 入れ ます」という文章を1つの工程(工程4)としている。
また、「フライパン に 調味料 1カップ を 回し入れ ます」という文章と「フライパン を 中火 に 加熱 して 5分 熱し ます」という文章の間には、調理者はコンロBNの火力を強める作業をするので、工程作成部123はこの間に工程の区切りがあると判断し、「フライパン に 調味料 1カップ を 回し入れ ます」という文章を1つの工程(工程5)としている。また、「フライパン を 中火 に 加熱 して 5分 熱し ます」という文章と「溶き卵 を 回しかけ ます」という文章の間には、卵を冷蔵庫から取り出すため調理者はコンロBNの前から冷蔵庫RFの周辺に移動し、コンロBNの火力を弱める作業をするので、工程作成部123はこの間に工程の区切りがあると判断し、「フライパン を 中火 に 加熱 して 5分 熱し ます」という文章を1つの工程(工程6)としている。「溶き卵 を 回しかけ ます」という文章は、最後の文章なので、最後の工程(工程7)としている。
図23に示すように、レンジフード端末200は、人感センサ262で検知した人の移動情報を契機プロパティP1として、コンロBNの火力の代用値であるCO2/臭いセンサ263が検知したCO2の濃度情報および自身の動作状態などの制御情報を契機プロパティP2として、レシピ情報サーバ100Bに送信する。契機プロパティP1/P2は、調理情報データおよび調理動作データと同様に時刻情報と関連付けられており、調理情報データおよび調理動作データから生成された文章と時系列的に整合性を有するため、工程の区切りとして機能する。なお、コンロBNのオン/オフ、火力の強中弱などの程度は、CO2/臭いセンサ263が検知する都市ガスが燃焼した際に発生する二酸化炭素(CO2)の濃度により間接的に検知してもよい。これにより、CO2濃度の情報に基づくコンロBNの操作情報を含む文章を生成し、かかる情報も含めたレシピ情報を作成することができる。
レシピ情報作成部124は、工程作成部123が構成した工程を、時刻情報に基づき時系列の複数の工程を含むレシピ情報として構成する。図22の例によれば、レシピ情報作成部124は、時刻の古い方から工程1⇒工程2⇒工程3⇒工程4⇒工程5⇒工程6⇒工程7の順序に並んだレシピ情報を構成し、1つのレシピを作成する。また、レシピ情報を構成する際の工程の区分は、時刻情報によって細かくも粗くもすることが可能である。例えば、図22で1工程とされている工程6を「フライパンを中火にします」と「フライパンを5分加熱します」に細かく区分することも可能であるし、工程2と工程3と工程4を1工程にして「フライパンに玉葱ととんかつと調味料1カップを入れます」のように粗く区分して生成してもよい。この場合、サーバが家庭独自のレシピを把握し、レシピの骨格部分である場合は細かく生成、一般的な調理工程の場合は粗く生成するようにすることで実現できる。家庭独自のレシピを把握するには、例えば、年配者IDが付与された画像に関しては家庭独自のレシピとして記憶することにより実現できる。
上述したように、画像から分別して抽出した調理情報データと調理動作データに基づき文章を生成し、その文章を1工程として構成すると共に構成した1工程を時系列に順序化し、料理の材料や複数の工程を含む調理法を記したレシピ情報として構成することで、レシピの手順を自分で入力するなどの面倒な作業を伴うことなく、調理動作を含む調理工程全体をとらえたレシピを容易に作成できるレシピ情報作成支援システム1Bを提供することができる。また、音声からも調理情報データと調理動作データを分別して抽出し、画像および音声の両方から抽出された調理情報データと調理動作データに基づき文章を生成することで、画像だけでは不明瞭な料理の材料や動作をより明確にして、精度の高いレシピを作成することができる。
レシピ情報サーバ100Bは、記憶部130に、受信部112が受信した動画(一連の画像)と音声の一方または両方を記憶する画像音記憶部131を備えてもよい。画像音記憶部131は、大容量の動画と音声を格納するため、ストレージ等の外部記憶装置32から構成することが好ましい。レンジフード端末200から要求がある場合、レシピ情報サーバ100Bは、送信部111から記憶している動画および/または音声と作成したレシピ情報をそのレンジフード端末200に送信する。レンジフード端末200は、受信装置212でそのレシピ情報と動画および/または音声を受信すると、ディスプレイ251は動画に合わせてレシピ情報を表示し、および/または、スピーカ252は、レシピ情報に合わせて音声を出力する。図24は、ディスプレイ251が工程7の動画と、それに対応するレシピ情報「溶き卵を回しかけます」という文章を表示している例を示す。このように、レシピ情報サーバ100Bに格納されているレシピ情報を、ディスプレイ251およびスピーカ252を備えるレンジフード端末200で再生することで、別途情報処理装置を用意せずにレシピを参照しながらコンロBNや調理台CTで調理を行うことができる。また、ディスプレイ251は、調理の工程をタイムラプス画像または倍速またはスローモーションで表示してもよい。これにより、要点だけを手短に工程を理解することができ、また分かりにくい部分をゆっくり見ることができる。
また、工程作成部123は、1工程の時間内に含まれる画像(動画の1フレーム)を文章生成部122が生成した文章と共に含めてその1工程として構成してもよい。図24は、ディスプレイ251が工程7のレシピ情報を工程7に含まれる画像と共に表示している例でもある。このように、1工程の時間内に含まれる画像を文章と共にその1工程として構成することで、自ら料理状況の表す写真を撮るなどの面倒な作業を伴うことなく、レシピを使用する者にとって分かり易いレシピを作成することができる。
図25~図27を参照し、レシピ情報作成支援システム1Bの制御方法を説明する。なお、STはステップを意味する。レンジフード端末200は、ST500において、調理者により、レシピを作るためのレシピ生成モードに設定される。レンジフード端末200は、レシピ生成モードになるとゲートウェイコントローラ401に信号を送信し、ゲートウェイコントローラ401は、レンジフード端末200の動作状態とメディア機器の動作状態について読み出し要求を行う。レンジフード端末200は、読み出し要求を受信すると、動作状態がオンであることを示すプロパティ情報(プロパティID0x80における0x30のプロパティ値)と、カメラ241などのメディア機器の動作がオンであることを示すプロパティ情報(プロパティID0xB9における0x50)を送信する。
ゲートウェイコントローラ401は、ST502において、レンジフード端末200の状態が準備できていると判断し、レシピ生成モードをセットアップし、レシピ情報サーバ100Bにセットアップ指示を送信する。レシピ情報サーバ100Bは、ST504において、レシピ情報の生成に向けた、制御部120の必要なコンポーネントの起動や画像音記憶部131の領域確保などの準備を行い、レシピ生成モードを開始し、準備が完了した旨をゲートウェイコントローラ401を介してレンジフード端末200に送信する。
レンジフード端末200は、ST506において料理状況を撮像集音すると共に契機プロパティなどのプロパティ情報を収集する。レンジフード端末200は、ST508において、ゲートウェイコントローラ401を介して、撮像集音した画像音声とプロパティ情報を含む料理状況データをレシピ情報サーバ100Bに定期的に送信する。レシピ情報サーバ100Bは、料理状況データを受信すると、ST510において、レシピ情報を生成する。レシピ情報の生成の詳細は、図26に示される。
レシピ情報サーバ100Bの受信部112は、ST5102において、料理状況の画像音声とプロパティ情報を含む料理状況データを受信する。レシピ情報サーバ100Bの情報抽出部121は、ST5104において、受信した画像音声から調理情報データと調理動作データを抽出する。レシピ情報サーバ100Bの評価部127は、ST5106において、情報抽出部121が抽出したデータの抽出精度が所定の閾値以下か否かを評価し、その閾値以下であると評価すると、評価結果をレンジフード端末200に送信する。レンジフード端末200は、ST512において、評価結果を受信するか否かを確認しており、評価結果を受信すると、ST514において報知部で報知する。
評価部127がデータの抽出精度が所定の閾値を超えると評価した場合、記憶部130は、ST5108において、受信した画像音声とプロパティ情報、抽出した調理情報データと調理動作データを記憶する。文章生成部122は、ST5110において、記憶した調理情報データと調理動作データに基づき、目的語と述語を含む文章を生成する。工程作成部123は、ST5112において、文章生成部122が生成した文章を1工程として構成する。工程作成部123は、図27に示す工程区切時刻情報設定処理ST520を実行する。
工程作成部123は、ST522において、記憶したプロパティ情報の中から契機プロパティを読み出す。契機プロパティは、人感センサ262で検知した人の移動情報を含む契機プロパティ(その他)P1と、CO2/臭いセンサ263が検知したCO2の濃度情報や自身の動作状態などの制御情報を含む契機プロパティ(エリア移行検知等)P2である。工程作成部123は、ST524において、契機プロパティ(その他)P1が工程区切条件を満たすか否かを確認する。この工程区切条件とは、関連する機器の作動状況に変化が生じたことである。工程区切条件を満たす場合、工程作成部123は、ST532において、工程区切りを満たした契機プロパティ(その他)P1が発生したまたは受信した時刻を時刻情報としてセットし、工程と工程の間の該当する区切として採用し、工程を作成する。
工程区切条件を満たさなかった場合、工程作成部123は、ST526において、契機プロパティ(その他)P1の時刻と同じ時間帯の契機プロパティ(エリア移行検知等)P2を検索する。また、工程作成部123は、ST528において、記憶した画像の中から契機プロパティ(エリア移行検知等)P2の時刻の近傍の時刻の画像を検索する。工程作成部123は、ST530において、契機プロパティ(エリア移行検知等)P2の変化および検索した画像における変化の程度が所定の閾値以上か否かを確認する。契機プロパティ(エリア移行検知等)P2の変化とは、調理者の場所の移動などを言い、たとえば調理者が調理台CTの前からコンロBNの前に移動するなど図10に示すエリアを跨いで移動した場合、所定の閾値以上であると判定する。また、画像における変化とは、調理者の作業の変化などを言い、例えばフライパンに加え計量カップを新たに物体認識したような場合、所定の閾値以上であると判定する。
変化の程度が所定の閾値以上であると判定した場合、工程作成部123は、ST532において、工程区切りを満たした契機プロパティ(エリア移行検知等)P2が発生したまたは受信した時刻を時刻情報としてセットし、工程と工程の間の該当する区切として採用し、工程を作成する。変化の程度が所定の閾値以上であると判定しなかった場合、工程作成部123は、工程区切時刻情報設定処理ST520においては工程を作成しない。この場合、工程作成部123は、ST5112において、文章生成部122が生成した1文章を1工程として構成してもよい。レシピ情報作成部124は、ST5114において、工程作成部123が構成した工程を、時刻情報に基づき時系列の複数の工程を含むレシピ情報として構成する。
レシピ情報の生成が完了すると、レシピ情報サーバ100Bは、レシピ生成モードから通常のモードに戻り、レンジフード端末200へレシピ情報の完了を通知する。レンジフード端末200近傍にいる調理者は、その通知を認識して、レシピ情報の内容を確認するため、レンジフード端末200に完了したレシピ情報を出力するように要求する。レンジフード端末200は、ST516において、調理者からその要求を受け付けると、レシピ情報出力要求をレシピ情報サーバ100Bへ送信する。レシピ情報サーバ100Bは、その要求を受信すると、上述したように工程に区分されたレシピ情報をレンジフード端末200へ送信する。レンジフード端末200は、ST518において、ディスプレイ251などにレシピ情報を表示する。調理者は、自分が実演した調理のレシピが作成されているか検査することができる。上述してきたように、調理者は、レシピの手順を自分で入力するなどの面倒な作業を伴うことなく、調理動作を含む調理工程全体をとらえたレシピを容易に作成できる。
<第二実施例の変形例1>
上述したレシピ情報作成支援システム1Bは、下記のような情報処理装置によっても実施可能である。かかる情報処理装置は、コンロBNおよび調理台CTの上方に配置されコンロBNおよび調理台CTの内少なくともコンロを撮像するカメラと、カメラが撮像した画像から、料理材料の種類を含む調理情報データと料理材料に対して行う動作を含む調理動作データを抽出する情報抽出部と、調理情報データと調理動作データを時刻情報と関連付けて記憶する記憶部と、記憶部に記憶された調理情報データと調理動作データに基づき、目的語と述語を含む文章を生成する文章生成部と、文章生成部が生成した文章を1工程として構成する工程作成部と、工程作成部が構成した工程を、時刻情報に基づき時系列の複数の工程を含むレシピ情報として構成するレシピ情報作成部と、を備える。なお、これらの各構成要素は、上述した対応する各構成要素と同じ機能を有する。このように、画像から分別して抽出した調理情報データと調理動作データに基づき文章を生成し、その文章を1工程として構成すると共に構成した1工程を時系列に順序化し、料理の材料や複数の工程を含む調理法を記したレシピ情報として構成することで、レシピの手順を自分で入力するなどの面倒な作業を伴うことなく、調理動作を含む調理工程全体をとらえたレシピを容易に作成できる情報処理装置を提供することができる。
<第二実施例の変形例2>
また、上述したレシピ情報作成支援システム1Bは、下記のようなレンジフード端末200によっても実施可能である。かかるレンジフード端末200は、下方にあるコンロBNおよび調理台CTの内少なくともコンロBNを撮像するカメラ241と、カメラ241が撮像した画像から、料理材料の種類を含む調理情報データと料理材料に対して行う動作を含む調理動作データを抽出する情報抽出部221と、調理情報データと調理動作データを時刻情報と関連付けて記憶するメモリ230と、メモリ230に記憶された調理情報データと調理動作データに基づき、目的語と述語を含む文章を生成する文章生成部222と、文章生成部222が生成した文章を1工程として構成する工程作成部223と、工程作成部223が構成した工程を、時刻情報に基づき時系列の複数の工程を含むレシピ情報として構成するレシピ情報作成部224と、を備える。なお、これらの各構成要素は、上述した対応する各構成要素と同じ機能を有する。このように、画像から分別して抽出した調理情報データと調理動作データに基づき文章を生成し、その文章を1工程として構成すると共に構成した1工程を時系列に順序化し、料理の材料や複数の工程を含む調理法を記したレシピ情報として構成することで、レシピの手順を自分で入力するなどの面倒な作業を伴うことなく、調理動作を含む調理工程全体をとらえたレシピを容易に作成できるレンジフード端末200を提供することができる。
<第二実施例の変形例3>
上述したことは、レシピ情報の作成を支援する方法でもある。この方法は、コンロBNおよび調理台CTの内少なくともコンロBNを撮像する撮像し、撮像した画像から、料理材料の種類を含む調理情報データと料理材料に対して行う動作を含む調理動作データを抽出し、調理情報データと調理動作データを時刻情報と関連付けて記憶し、記憶された調理情報データと調理動作データに基づき、目的語と述語を含む文章を生成し、生成した文章を1工程として構成し、構成した工程を、時刻情報に基づき時系列の複数の工程を含むレシピ情報として構成する。これによれば、レシピの手順を自分で入力するなどの面倒な作業を伴うことなく、調理動作を含む調理工程全体をとらえたレシピを容易に作成できる方法を提供できる。
<第三実施例>
図28乃至図34を参照し、本実施例におけるレンジフードシステム1の一形態であるレンジフード情報システム1Cを説明する。レンジフード情報システム1Cは、レンジフードサーバ100の一形態であるレンジフード情報サーバ100Cと、電気通信のネットワーク300を介してレンジフード情報サーバ100Cと接続されたレンジフード200とを備える。
図7に示すように、レンジフード200は、下方にあるコンロBNを撮像する赤外線撮像素子付きのカメラ241と、レンジフード200近傍にいる調理者の音声やコンロBNで行われる調理の音を集音するマイク242と、コンロBNで行われる調理により発生する油煙濃度を検知する油煙センサ261と、カメラ241が撮像した画像、マイク242が集音した音、および油煙センサ261が検知した油煙濃度をレンジフード情報サーバ100Cにネットワーク300を介して送信する送信装置211と、レンジフード情報サーバ100Cから捕獲能力に関する情報をネットワーク300を介して受信する受信装置212と、受信装置212が受信した油煙の捕獲能力に関する情報に基づき油煙の捕獲能力を制御するRH制御部229と、を備える。
また、図5に示すように、レンジフード情報サーバ100Cは、レンジフード200の送信装置211が送信した画像、音と油煙濃度を受信する受信部112と、受信部112が受信した画像、音と油煙濃度を時刻情報と関連付けて記憶する記憶部130と、記憶部130が記憶した画像や音から、被撮像物の温度や音を含む調理情報データと該被撮像物に対して行う動作を含む調理動作データを抽出する情報抽出部121と、記憶部130に記憶された油煙濃度と調理情報データおよび調理動作データとの相関モデルを機械学習する油煙学習部1261と、受信部112が受信した画像や音から情報抽出部121が抽出する調理情報データおよび調理動作データと油煙学習部1261が学習した相関モデルに基づき、発生する油煙濃度を予測する油煙発生情報予測部1281と、油煙発生情報予測部1281が予測した油煙発生情報に基づいて、油煙の捕獲能力に関する情報をレンジフード200の受信装置212に送信する送信部111と、を備える。
油煙センサ261は、コンロBNの火力を使って調理をする際に発生する油煙を検知する。なお、調理に油を使うと油煙は発生するので、コンロBNは、火を使わないIH調理器(Induction Heating、電磁調理器)や電熱線を使ったものも含むものとする。油煙センサ261は、コンロBN上のたとえばフライパン等の容器から立ち上りファン202により吸い込まれる油煙を含む空気に含まれる油分の情報(油煙情報)を検知する。油煙センサ261が検知する油煙情報とは、油煙を含む空気に含まれる油分の量、油分の濃度、油煙粒子の形状・大きさ・個数、油煙の分布、油煙の拡散範囲の内のいずれか1つまたはこれらの任意の組み合わせである。検知方法は、光散乱式、ピエゾバランス式といった粒子計測、重量検知式などの公知の検知技術を用いる。
油煙センサ261は、本実施例では、図6に示すように、コンロBNの上方に設けられたフード201の下面であって、カメラ241の近傍に備えられる。この例における油煙センサ261は、光散乱式が好ましく、カメラ241の撮像領域と同じ領域にある油煙濃度や油煙の油煙拡散範囲を検知することができる。別の検知方式による油煙センサ261は、油煙を含む空気の流路上にあってもよい。また、本実施例においてカメラ241との関係で「上方」や「下方」という用語は、まっすぐ上の方やまっすぐ下の方だけではなく、斜め上方や斜め下方も含む広い領域を含むものとする。
RH制御部229は、レンジフード情報サーバ100Cから得られる油煙の捕獲能力に関する情報に基づき油煙の捕獲能力を制御する。油煙の捕獲能力とは、コンロBNから立ち上る油煙を含む空気をフード201で捕集・捕獲し、屋外に排気する能力であり、RH制御部229は、たとえばファン202を回転駆動する給排気モータ271の回転速度を制御する。これによる油煙の捕獲能力に関する情報とは、典型的にはレンジフード200の排気風量の強中弱などのレベルである。また、レンジフード200が油分を捕獲するための回転フィルタ204を備える場合、油煙の捕獲能力とは、油煙を含む空気をフード201で捕集・捕獲し、その空気から油分を取り除く能力であり、RH制御部229は、たとえば回転フィルタ204を回転駆動するフィルタモータ272の回転速度を制御する。これによる油煙の捕獲能力に関する情報とは、典型的には回転フィルタ204の回転速度の高低のレベルである。RH制御部229は、マイクロプロセッサ220に記憶され実行されるマイクロソフトウェアであってもよい。
レンジフード情報サーバ100Cは、受信部112でレンジフード200が送信した一連の画像(動画)、音と油煙濃度を受信すると、その画像、音と油煙濃度を時刻情報と関連付けて記憶部130に記憶する。記憶部130は、これらの画像と音声の一方または両方を記憶するストレージ等の外部記憶装置32から構成される画像音記憶部131を備えてもよい。なお、時刻情報は、その画像、音と油煙濃度をレンジフード情報サーバ100Cで受信した時刻でもよいし、レンジフード200でその画像を撮像、音を集音、油煙を検知した時刻であってもよい。後者の場合は、レンジフード200から画像等に合わせて時刻情報も送信する。時刻情報は、いずれであってもよいが、いずれかに統一されている。以降では、時刻情報は、その画像、音と油煙濃度をレンジフード情報サーバ100Cで受信した時刻として説明する。
情報抽出部121は、画像認識技術と音声認識技術を用いて、記憶部130が記憶した画像や音から調理情報データと画像に写った撮像物に対して行う動作を含む調理動作データを抽出する。情報抽出部121が赤外線撮像素子付きのカメラ241により被撮像物の温度情報を読み取ることで抽出可能である。このように、情報抽出部121は、コンロBNに配置されたフライパンなどの容器や、その容器内の料理材料の温度情報を調理情報データとして抽出する。また、情報抽出部121は、調理情報データとして、食材や調味料(油を含む)、その分量、その状態や動きなど、調理動作データとして、調理者が料理材料に対して行う動作、その動作に用いる道具、その動作の時間などを抽出する。情報抽出部121における調理情報データおよび調理動作データの抽出方法の詳細は、上記実施例を参照されたい。
調理動作データは、加える・混ぜる・掛ける、焼く・炒める・揚げるなどの料理の動作だけではなく、図41に示すような、食材を容器の中に開放するような動作や食材を容器の上で把持している動作など、食材を容器に投入するための予備動作を含むことが好ましい。このような予備動作の直後に実際に食材が容器に投入されて、油煙が発生する可能性が大きいからである。また、同じ食材でも水分が付着した物と付着していない物とでは、投入した時に油煙の発生量が大きく異なる場合があるが、画像認識だけでは水分付着の有無を認識することが困難な場合、投入時の音の大きさを検知することにより油煙の発生をいち早く検知することが可能になる。このように、音から調理情報データを抽出することで、画像だけでは不明瞭な情報をより明確にして、高い精度で、好適なタイミングで食材や料理方法等に合わせて油煙等を捕集し、排気する能力を適合させることができる。また、光散乱式の油煙センサ261は、油煙濃度だけでなく油煙の油煙拡散範囲を検知することができる。油煙拡散範囲は、図42に示すように、狭域、中域、広域などのように検知可能であり、フード201で油煙を捕獲し室内に拡散させないためには重要な情報となる。
油煙学習部1261は、レンジフード200の油煙センサ261で検知され、記憶部130に記憶された油煙濃度と、情報抽出部121で抽出された調理情報データおよび調理動作データとの相関モデルを機械学習により生成する。この相関モデルの生成には、機械学習アルゴリズムとしてディープラーニングを用いることが好ましいが、特にこれに限定されるものではない。この相関モデルの学習フェーズにおいて、情報抽出部121で抽出された調理情報データおよび調理動作データと、その調理情報データ等を受信した時刻から数秒間の時刻情報を有する油煙濃度が、教師データとして用いられる。調理情報データ等の時刻以降数秒間の油煙濃度とするのは、調理動作データの事象が原因となる油煙が発生し始めてから、上昇拡散し、油煙センサ261が検知することができる時間がその程度の時間がかかる場合があるからである。
調理情報データは、フライパンなどの容器の温度、容器内の油の有無または分量、その容器に入れられる/入れられた食材の温度、食材の種類、食材分量、食材状態(塊り状態、小断片状態など)などである。調理動作データは、容器自体または容器内の食材に対して行う動作、その動作に用いる道具、その動作の時間などである。調理情報データと調理動作データにおいて数値情報ではないものについては、ベクトル化しておく。たとえば、食材種類ベクトルとして、
(鶏肉、豚肉、牛肉、・・・、玉葱、キャベツ、人参、・・・、油、醤油、・・・)
と定義した場合において、情報抽出部121が豚肉と玉葱と油の存在を抽出した場合、
(0、1、0、・・・、1、0、0、・・・、1、0、・・・)
と油煙学習部1261に入力される。
油煙学習部1261は、ある時刻におけるこれらの調理情報データ/調理動作データと、目標とするラベルとしてその時刻以降の数秒間に検知した油煙濃度とを学習用データセットとして入力を受け付ける。油煙学習部1261は、調理情報データ/調理動作データからマップされる予想油煙濃度とラベルの油煙濃度の最大値との誤差が生ずると、監修により予測モデルのニューラルネットワークにおけるパラメータを修正していくことにより学習を行う。この学習は、所謂教師あり学習だが、これに限定されず、たとえば誤差が所定値以内だと大きな報酬を与え所定値以上だと報酬を与えないなどの所謂強化学習により学習してもよい。
油煙発生情報予測部1281は、受信部112が受信するリアルタイムの画像・音情報から情報抽出部121が抽出する調理情報データおよび調理動作データと、油煙学習部1261が学習した相関モデルに基づき、発生する油煙濃度を予測する。すなわち、油煙発生情報予測部1281は、受信部112で受信した画像等を入力された情報抽出部121が出力する調理情報データおよび調理動作データを入力データセットとして受け付け、油煙学習部1261が学習した相関モデルを用いて、発生する油煙濃度を予測して出力する。油煙発生情報予測部1281は、後述する捕獲能力予測部2282と同様、油煙濃度の予測に加えて、その予測油煙濃度に対応するために必要な捕獲能力を予測してもよい。
図28~図30を参照して、油煙学習部1261の学習フェーズにおけるレンジフード情報システム1Cの制御を説明する。レンジフード200は、ST601において、調理する食材と動作によりどの程度の油煙が発生するか学習させるために、自動的に風量が変更されないよう手動モードで所定風量(たとえば「弱」)にセットされる。コンロBNは、ST691において料理のために点火され、点火したことを示すデータをレンジフード200に送信する。この状態で、調理者は、料理を開始する。なお、レンジフード200が学習フェーズに移行する契機は、上述のように所定風量にセットされたときに移行するだけでなく、操作部243のモード設定により移行してもよいし、レンジフード200がホームドメインに接続されてから所定期間を学習フェーズとしてセットするようにしてもよい。
レンジフード200は、ST620Gにおいて、調理状況を検出する。図29に示すように、レンジフード200は、ST6204において、コンロBNがオンされた否かを確認し、オンされていなければ処理を終了する。オンされていれば、レンジフード200は、ST6206において、カメラ241やマイク242などのメディア機器により画像や音を撮像集音する。レンジフード200は、ST6208において、油煙センサ261により調理により発生した油煙濃度や油煙拡散範囲を検知する。レンジフード200は、ST6210において、メディア機器と油煙センサ261で取得したデータをレンジフード情報サーバ100Cに送信する。
レンジフード情報サーバ100Cは、ST630において、学習処理を行う。図30に示すように、レンジフード情報サーバ100Cは、ST631において、レンジフード200からのデータを受信部112で受信し、記憶部130でそのデータを記憶する。レンジフード情報サーバ100Cの情報抽出部121は、ST632において、記憶部130から画像や音を読み出し、調理情報データおよび調理動作データを抽出する。レンジフード情報サーバ100Cの油煙学習部1261は、ST634において、時系列に順次抽出した調理情報データおよび調理動作データと、その調理情報データ等の時刻情報以降の記憶部130に記憶された油煙濃度等を教師データセットとして入力を受け付け、ニューラルネットワークのパラメータを修正し、相関モデルを生成する。油煙学習部1261は、ST636において、レンジフード200から送られてきたデータをすべて入力されたか否か確認し、まだデータが残っている場合にはST632とST634をデータがなくなるまで繰り返す。データがなくなったら、レンジフード情報サーバ100Cは、ST637において、学習が完了したことをレンジフード200に送信して、終了する。
レンジフード200は、ST638において、ディスプレイ251やスピーカ252等のメディア機器に学習完了を出力する。コンロBNは、ST692において、調理者により消火されると消化したことを示すデータを送信する。レンジフード200は、その消化の旨のデータを受信すると、ST609において風量をオフにして、運転を終了する。なお、レンジフード情報サーバ100Cで実行される学習処理は、レンジフード情報サーバ100Cに接続されている多数のホームドメイン内のレンジフード200から受信するデータに基づいて学習を行うことが可能である。このようにして生成される相関モデルは、大規模データ(所謂ビッグデータ)に基づき学習できるため確度の高いモデルとなる。
図31~図33を参照して、レンジフード200が通常運転時のレンジフード情報システム1Cの制御を説明する。レンジフード200は、ST603において、通常の料理をするため、油煙濃度に応じて自動的に風量が変更されるよう風量オートモードにセットされる。コンロBNは、ST691において料理のために点火され、点火したことを示すデータをレンジフード200に送信する。この状態で、調理者は、料理を開始する。
レンジフード200は、ST620において、調理状況を検出する。図32に示すように、レンジフード200は、ST6202において、風量オートモードにあるか否かを確認する。レンジフード200が油煙の発生の状況に応じて風量を自動的に制御できることを確認するためである。風量オートモードでなければ処理を終了する。レンジフード200は、ST6204において、コンロBNがオンされた否かを確認し、オンされていなければ処理を終了する。オンされていれば、レンジフード200は、ST6206において、カメラ241やマイク242などのメディア機器により画像や音を撮像集音する。レンジフード200は、ST6210において、メディア機器で取得した画像や音のデータをレンジフード情報サーバ100Cに送信する。
レンジフード情報サーバ100Cは、ST640において、油煙相関判定処理を行う。図33に示すように、レンジフード情報サーバ100Cは、ST6402において、風量を指示するための風量指示フラグを初期設定(クリア)する。レンジフード情報サーバ100Cは、ST6404において、レンジフード200からのデータを受信部112で受信する。レンジフード情報サーバ100Cの情報抽出部121は、ST6406において、受信部112から画像や音のデータを受け付け、調理情報データおよび調理動作データを抽出する。
油煙発生情報予測部1281は、ST6408において、受信した画像・音情報から情報抽出部121がリアルタイムに抽出した調理情報データおよび調理動作データを油煙学習部1261が生成した相関モデルに入力することにより、受信した調理状況において数秒以内に発生するであろう油煙濃度を予測する。油煙発生情報予測部1281は、ST6410において、予想した油煙濃度に対応する風量指示フラグを決定する。油煙発生情報予測部1281は、たとえば、予想油煙濃度が所定第1値以上の場合は風量指示フラグを3(「風量強」を示す)に、予想油煙濃度が所定第1値未満所定第2値以上の場合は風量指示フラグを2(「風量中」を示す)に、予想油煙濃度が所定第2値未満の場合は風量指示フラグを1(「風量弱」を示す)に、決定する。なお、所定第1値>所定第2値である。油煙発生情報予測部1281は、ST6412において、決定した風量指示フラグをレンジフード200に送信する。
レンジフード200は、ST660において、油煙の捕獲能力に関する情報として受信装置212で風量指示フラグを受信し、RH制御部229で風量指示フラグに基づき風量を制御し、コンロBNから立ち上り始める油煙を含む空気を捕集・捕獲する。レンジフード200は、調理者が調理している間、調理状況検出処理(ST620)と風量制御処理(ST660)を行う。このように、リアルタイムの画像等から分別して抽出した調理情報データおよび調理動作データと学習済みの油煙の相関モデルに基づいて油煙の捕獲能力を制御することで、油煙が立ち上る前に先回りするなど好適なタイミングで食材や料理方法等に合わせて油煙等を捕集し、排気する能力を適合させるレンジフード情報システム1Cを提供することができる。
情報抽出部121が赤外線撮像素子付きのカメラ241から得られるフライパンなどの容器や容器の中の食材の温度が所定温度(たとえば120℃)以上である旨を含む調理情報データを抽出し、また、その所定温度以上の容器や食材に対して所定の動作を行った旨を含む調理動作データを抽出した場合、油煙発生情報予測部1281は、大きな油煙濃度を予測し、それに対応して大きな風量を決定するので、RH制御部229は、油煙の捕獲能力を向上させる。容器や食材に対する所定の動作とは、加える・混ぜる・掛けるなどの料理の動作だけではなく、食材を容器の中に開放するような動作や食材を容器の上で把持している動作などの食材を容器に投入するための予備動作を含むものである。
このように、画像から分別して抽出した調理情報データと調理動作データにおいて、所定温度以上の被撮像物に対して所定の動作を行った場合に油煙の捕獲能力を向上させることで、大量の油煙が発生する場合であっても、そのような油煙に先回りして好適なタイミングで食材や料理方法等に合わせて油煙等を捕集し、排気する能力を適合させることができる。
また、情報抽出部121は、カメラ241が撮像した画像およびマイク242が集音した音から、料理材料の種類と量を含む調理情報データと、料理材料に対して行う動作を含む調理動作データを抽出する。料理材料が油分の多い食材であったり、その量が多い場合には、油煙が多く発生したりする可能性が大きい。このように、画像と音声の両方から抽出された調理情報データと調理動作データを抽出することで、捕集排気能力をいつもより増強するなどより高い精度で適合させることができる。
料理が終わると、コンロBNは、ST692において、調理者により消火されると消化したことを示すデータを送信する。レンジフード200は、その消化の旨のデータを受信すると、ST680において、風量のモードを手動モードに変更し、運転を終了する。また、調理後であっても、たとえば、ゲートウェイコントローラ401に接続されたキッチン室内の臭いセンサなどが、ST693において、換気をした方がよい程度の臭いを検知すると、ゲートウェイコントローラ401を介してレンジフード情報サーバ100Cへセンサ値の情報を送信してもよい。レンジフード情報サーバ100Cは、このセンサ値情報を受信すると、ST694においてレンジフード200の排気運転をするか否かを判定し、必要な場合には排気運転の指示を送信する。レンジフード200は、ゲートウェイコントローラ401を介してその排気運転指示を受信すると、ST695において、ファン202を回転させて臭いを室外に排気する残置運転を行う。
なお、図31では、レンジフード200が取得した調理状況の画像等をレンジフード情報サーバ100Cへ送信し、レンジフード情報サーバ100Cの油煙発生情報予測部1281が発生する油煙濃度を予測する例を述べた。しかし、これに限定されず、図34のように、レンジフード情報サーバ100Cで学習させた相関モデルをレンジフード200にダウンロードしておき、レンジフード200のマイクロプロセッサ220上で実行される情報抽出部221と油煙発生情報予測部2281が、ダウンロードした相関モデルを用いて、取得した調理状況の画像等に基づき油煙濃度を予測してもよい。
図34が示すように、レンジフード情報サーバ100Cは、学習処理(ST630)を行った後、学習済み相関モデルをレンジフード200に送信する。レンジフード200は、ST604において、受信した相関モデルをメモリ230に記憶する。風量オートモードにセットし(ST602)、コンロBNが点火し(ST691)、調理が開始されると、レンジフード200は、調理状況検出処理(ST620)を実行する。メディア機器が調理状況の画像や音のデータを取得すると、レンジフード200はそのデータをレンジフード情報サーバ100Cに送信せず、レンジフード200上で油煙相関判定処理(ST640)を行う。RH制御部229は、油煙相関判定処理で出力される風量指示フラグを直接受け付け、風量を制御する。
この場合、レンジフード200は、カメラ241と、マイク242と、油煙センサ261と、カメラ241が撮像した画像、マイク242が集音した音、および油煙センサ261が検知した油煙濃度をレンジフード情報サーバ100Cにネットワーク300を介して送信する送信装置211と、レンジフード情報サーバ100Cから油煙濃度と調理情報データおよび調理動作データとの学習済み相関モデルをネットワーク300を介して受信する受信装置212と、カメラ241等が取得した画像等から調理情報データと調理動作データを抽出する情報抽出部221と、抽出した調理情報データおよび調理動作データと学習済み相関モデルに基づき、発生する油煙濃度を予測する油煙発生情報予測部2281と、油煙発生情報予測部2281が予測した油煙の捕獲能力に関する情報に基づき油煙の捕獲能力を制御するRH制御部229と、を備える。これによれば、レンジフード200は、通常運転時にはネットワーク300を介してレンジフード情報サーバ100Cと通信する必要がなく、より迅速に油煙濃度を予測することができる。
<第三実施例の変形例1>
第三実施例では、少なくとも油煙学習部1261を有するレンジフード情報サーバ100Cと、レンジフード200とを備えるレンジフード情報システム1Cについて述べた。本変形例は、レンジフード200が学習処理を行う例である。
この場合、レンジフード200は、カメラ241と、マイク242と、油煙センサ261と、カメラ241が撮像した画像から被撮像物(容器や食材など)の温度や食材などの種類や分量および/またはマイク242が集音した音を含む調理情報データとその被撮像物に対して行う動作を含む調理動作データを抽出する情報抽出部221と、油煙センサ261が検知した油煙濃度と情報抽出部221が抽出した調理情報データおよび調理動作データとを時刻情報と関連付けて記憶する調理記憶部231と、調理記憶部231に記憶された油煙濃度と調理情報データおよび調理動作データとの相関モデルを機械学習する油煙学習部2261と、カメラ241等のメディア機器が取得した画像等から情報抽出部221がリアルタイムに抽出する調理情報データおよび調理動作データと油煙学習部2261が学習した相関モデルに基づき、発生する油煙濃度を予測する油煙発生情報予測部2281と、取得した画像等から情報抽出部221がリアルタイムに抽出する調理情報データおよび調理動作データにより油煙発生情報予測部2281が予測した油煙濃度に基づき油煙の捕獲能力を制御し、レンジフード200の運転を制御するRH制御部229と、を備える。
油煙学習部2261と油煙発生情報予測部2281は、上述したレンジフード情報サーバ100Cの油煙学習部1261と油煙発生情報予測部1281と同等の機能を備える。このように、調理情報データおよび調理動作データと油煙濃度との相関を予測するように学習し、リアルタイムに抽出した調理情報データおよび調理動作データに対して予測される油煙濃度に基づいて油煙の捕獲能力を制御することで、瞬時に拡散する油煙をも捕集することができ、室内に油煙が拡散することを防止することができる。
<第三実施例の変形例2>
図35乃至図39を参照し、本変形例のレンジフード200について説明する。このレンジフード200は、カメラ241と、マイク242と、カメラ241が撮像した画像から被撮像物(容器や食材など)の温度や食材などの種類や分量および/またはマイク242が集音した音を含む調理情報データとその被撮像物に対して行う動作を含む調理動作データを抽出する情報抽出部221と、調理情報データおよび調理動作データと油煙濃度の相関を予め定義する油煙濃度相関ルール(油煙情報相関ルール)を記憶する相関ルール記憶部232と、情報抽出部221が画像等からリアルタイムに抽出した調理情報データおよび調理動作データと相関ルール記憶部232に記憶された油煙濃度相関ルールに基づき、発生する油煙濃度を予測する油煙発生情報予測部2281と、油煙発生情報予測部2281が予測した油煙濃度に基づき油煙の捕獲能力を制御し、レンジフード200の運転を制御するRH制御部229と、を備える。
図38に示すように、相関ルール記憶部232は、食材やその温度などの調理情報データを含むテーブル、予備動作を含む調理動作の調理動作データを含むテーブル、およびこれらと油煙濃度の相関を予め定めた油煙濃度設定テーブル(油煙濃度相関ルール)を記憶する。たとえば、本図に示す例では、調理情報テーブルは、調理物(食材)と調理物の温度により、A/B/Cの3つのグループに分類されている。Aグループは、発生する油煙濃度が比較的低いもの、Bグループは、発生する油煙濃度が中程度のもの、Cグループは、発生する油煙濃度が高いものが含まれている。たとえば、Aグループは、食材としては油・鶏肉、温度としては120℃以下を含む。Bグループは、食材としては油・豚肉、温度としては121℃~200℃を含む。Cグループは、食材としては油・牛肉、温度としては201℃以上を含む。
また、調理動作テーブルは、予備動作と調理動作により、ライト/ミドル/ヘビーの3つのグループに分類されている。同様に、ライトは、発生する油煙濃度が比較的低いもの、ミドルは、発生する油煙濃度が中程度のもの、ヘビーは、発生する油煙濃度が高いものが含まれている。たとえば、ライトは、予備動作としてはナシ、調理動作としてはナシ(すなわち動作を伴わない)を含む。ミドルは、予備動作としては「把持する」、調理動作としては「混ぜる」を含む。ヘビーは、予備動作としては「開放する」、調理動作としては「炒める」を含む。
図39は、抽出した調理情報データおよび調理動作データの例を示す。第1カラムは第2カラム以降のデータを取得した時刻、第2カラムは手動で設定した風量、第3カラムはコンロBNの火力の設定、第4カラムはカメラ241が撮像したエリアAの画像名、第5カラムは第4カラムの画像から抽出した食材、第6カラムは第4カラムの画像から抽出した予備動作、第7カラムはカメラ241が撮像したエリアBの画像名、第8カラムは第7カラムの画像から抽出した食材、第9カラムは第7カラムの画像から抽出した調理動作、第10カラムは第7カラムの画像から抽出された食材の分量、第11カラムは第7カラムの画像から抽出された食材の温度、第12カラムは第7カラムの画像から抽出された鍋等の容器の温度を示す。なお、図6に示すように、エリアBとは、コンロBN上の容器や食材にフォーカスした領域であり、エリアAとは、コンロBNだけでなくより広範囲の領域を言う。予備動作は、エリアAで行われることが多いため、エリアAで撮像する画像から抽出される。
油煙発生情報予測部2281は、情報抽出部221が抽出した調理情報データおよび調理動作データと、相関ルール記憶部232に記憶された油煙濃度設定テーブル(油煙濃度相関ルール)に基づき、発生する油煙濃度を予測する。油煙濃度設定テーブルは、調理情報テーブルの分類と調理動作テーブルの分類のマトリックスになっていて、互いの分類が交わるセルに対応する油煙濃度のレベルが定められている。たとえば、情報抽出部221が、調理情報がAグループに属し、調理動作がライトに属する情報を抽出した場合、油煙濃度のレベルはLV0(油煙濃度は極小)と設定されている。また、情報抽出部221が、調理情報がBグループに属し、調理動作がミドルに属する情報を抽出した場合、油煙濃度のレベルはLV2(油煙濃度は中程度)と設定されている。また、情報抽出部221が、調理情報がCグループに属し、調理動作がヘビーに属する情報を抽出した場合、油煙濃度のレベルはLV3(油煙濃度は大)と設定されている。
図39の例では、時刻17:54:05から18:03:55の間のデータが示されている。情報抽出部221が、鍋温度上昇中である17:54:15に油を手に持ち(把持し)、17:54:16に油を鍋の中に注いだ(開放した)ことを抽出したことから、油煙発生情報予測部2281は、油煙がLV1で発生すると予測する。次いで17:56:31に、情報抽出部221が、豚肉を鍋の中に投入(開放)することを抽出したことから、油煙発生情報予測部2281は、油煙濃度が上がる(LV2)と予測する。次いで17:56:45に、情報抽出部221が、豚肉炒め工程を抽出するが、この場合油煙がやや落ち着くため、油煙発生情報予測部2281は、油煙濃度は同レベル(LV2)と予測する。次いで18:03:01に、情報抽出部221が、水分を含む野菜を投入することを抽出したことから、油煙発生情報予測部2281は、油煙濃度が上がる(LV3)ことを予測する。次いで18:03:50になると、情報抽出部221が、豚肉や玉葱が十分炒められたことを抽出したことから、油煙発生情報予測部2281は、油煙濃度が下がる(LV2)と予測する。
RH制御部229は、油煙発生情報予測部2281が予測した油煙濃度のレベルに基づき油煙の捕獲能力を制御し、レンジフード200の運転を制御する。たとえば、高温になった油が引かれたフライパンに食材を投入してから油煙が発生してレンジフード200に届くまでには通常1秒程度の時間があり、把持や開放などの予備動作から油煙が届くまでは通常2~5秒程度の時間がある。この時間を利用して、RH制御部229は、画像等から抽出した情報に基づき油煙濃度相関ルールで予測した油煙濃度により捕獲能力を向上させるよう制御する。これにより、レンジフード200は、瞬時に拡散する油煙をも捕集することができ、室内に油煙が拡散することを防止することができる。
また、図38に示すように、相関ルール記憶部232は、油煙濃度設定テーブルに代えて、風量指示フラグ設定テーブルを備えてもよい。風量指示フラグ設定テーブルは、調理情報テーブルの分類と調理動作テーブルの分類のマトリックスになっていて、互いの分類が交わるセルに対応する油煙捕獲能力を示す風量指示フラグが定められている。たとえば、情報抽出部221が、調理情報がAグループに属し、調理動作がライトに属する情報を抽出した場合、捕獲能力を示す風量指示フラグは0(風量変更なし)と設定されている。また、情報抽出部221が、調理情報がBグループに属し、調理動作がミドルに属する情報を抽出した場合、捕獲能力を示す風量指示フラグは2(風量「中」)と設定されている。また、情報抽出部221が、調理情報がCグループに属し、調理動作がヘビーに属する情報を抽出した場合、風量指示フラグは3(風量「強」)と設定されている。
この場合、相関ルール記憶部232は、調理情報データおよび調理動作データと捕獲能力の相関を予め定義する捕獲能力相関ルールを記憶する。また、捕獲能力予測部2282は、情報抽出部221が抽出した調理情報データおよび調理動作データと、相関ルール記憶部232に記憶された捕獲能力相関ルールに基づき、必要な捕獲能力を予測する。また、RH制御部229は、捕獲能力予測部2282が予測した捕獲能力に基づき油煙の捕獲能力を制御する。
図39の例では、同様に、情報抽出部221が油を鍋の中に注いだ(開放した)ことを抽出したことから、捕獲能力予測部2282は、捕獲能力を向上させる(2=「中」)必要があると予測する。次いで、情報抽出部221が、水分を含む野菜を投入したことを抽出したことから、捕獲能力予測部2282は、捕獲能力を向上させる(3=「強」)必要があることを予測する。次いで、情報抽出部221が、豚肉や野菜が十分炒められたことを抽出したことから、捕獲能力予測部2282は、捕獲能力を下げてもよい(2=「中」)と予測する。このように、調理情報データおよび調理動作データと捕獲能力の相関を予め定義した捕獲能力相関ルールに基づき必要な捕獲能力を予測し制御することで、瞬時に拡散する油煙をも捕集することができ、室内に油煙が拡散することを防止することができる。
図35~図37を参照して、本変形例におけるレンジフード200の制御について説明する。レンジフード200は、ST600において、料理中、発生する油煙濃度に応じて自動的に風量が変更されるよう風量オートモードにセットされる。この状態で、調理者は、料理を開始する。レンジフード200は、ST620Rにおいて、調理状況を検出する。図36に示すように、レンジフード200は、ST6252において、風量オートモードにあるか否かを確認する。風量オートモードでなければ処理を終了する。風量オートモードであれば、レンジフード200は、ST6256において、カメラ241やマイク242などのメディア機器により画像や音を撮像集音する。
レンジフード200は、ST640Rにおいて、油煙相関判定処理を行う。図37に示すように、レンジフード200は、ST6452において、風量を指示するための風量指示フラグを初期設定(クリア)する。レンジフード200の情報抽出部221は、ST6454において、撮像集音した画像/音のデータの入力を受け付ける。レンジフード200は、ST6456において、調理情報データおよび調理動作データを抽出する。
油煙発生情報予測部2281は、ST6458において、油煙濃度相関ルールを参照して、撮像集音したリアルタイムの画像・音情報から抽出した調理情報データおよび調理動作データに基づいて発生する油煙濃度を予測する。油煙発生情報予測部2281は、ST6460において、予想した油煙濃度に対応する風量指示フラグを決定する。油煙発生情報予測部2281は、ST6462において、風量指示フラグが「0」か否か確認する。「0」ならば風量指示フラグをセットせず、すなわち風量を変更せずに処理を終了する。「0」以外ならば、油煙発生情報予測部2281は、ST6464において、その値と現在設定中の風量を比較し、同じか否かを確認する。同じならば風量指示フラグをセットしない。同じでないならば、油煙発生情報予測部2281は、ST6466において、決定した風量指示フラグをセット、すなわち風量を変更するようにする。
RH制御部229は、ST660において、油煙の捕獲能力に関する情報として風量指示フラグを取得し、風量指示フラグに基づき風量を制御し、コンロBNから立ち上り始める油煙を含む空気を捕集・捕獲する。レンジフード200は、ST680において、風量のモードを手動モードに変更し、運転を終了する。レンジフード200は、調理者が調理している間、調理状況検出処理(ST620R)、油煙相関判定処理(ST640R)、風量制御処理(ST660)を繰り返し実行する。このように、リアルタイムの画像等から分別して抽出した調理情報データおよび調理動作データと予め定められた油煙濃度相関ルールに基づいて油煙の捕獲能力を制御することで、油煙が立ち上る前に先回りするなど好適なタイミングで食材や料理方法等に合わせて油煙等を捕集し、排気する能力を適合させるレンジフード200を提供することができる。なお、本変形例では、油煙濃度相関ルールと捕獲能力相関ルールを記憶する相関ルール記憶部232がレンジフード200に備えられる例を述べたが、レンジフード情報サーバ100Cに備えられてもよい。
図40を参照して、変形例を含む本実施例の効果を説明する。調理者が料理を開始し、まずフライパンに油を注いだ(開放した)。カメラ241はその調理状況を撮像し、その撮像画像に基づいて情報抽出部221は、調理状況検出処理において「油 開放」という情報を抽出する。そうすると、油煙発生情報予測部2281は、油煙相関判定処理において、ほぼ即時に風量指示フラグの値を”1=「弱」“と判定する。ここで、設定風量と風量フラグが示す風量が同じであるため、設定風量の変更は行わない。実際に発生する油煙の量は、油煙検知量(実線の曲線)で示すように、油を注いだ後しばらくして増加し始める。したがって、注いだ油に起因して発生した油煙が増加するより前にレンジフード200の風量は増加しているため、フード201で油煙を漏らすことなく捕集できる。
次いで、調理者は油を引いたフライパンに豚肉を投入した(開放した)。その撮像画像に基づいて情報抽出部221は、調理状況検出処理において「豚肉 開放」という情報を抽出する。そうすると、油煙発生情報予測部2281は、油煙相関判定処理において、風量指示フラグの値が”2=「中」“であると判定し、ほぼ即時に設定風量を「中」に変更する。実際に発生する油煙の量は、豚肉を投入した後しばらくして増加し始める。したがって、投入した豚肉に起因して発生した油煙が増加するより前にレンジフード200の風量は増加しているため、フード201で油煙を漏らすことなく捕集できる。
次いで、調理者は豚肉に加えて玉葱をフライパンに投入するため、玉葱を手に掴んだ(把持した)。その撮像画像に基づいて情報抽出部221は、調理状況検出処理において「玉葱 把持」という情報を抽出する。そうすると、油煙発生情報予測部2281は、油煙相関判定処理において、風量指示フラグの値が”3=「強」“であると判定し、ほぼ即時に設定風量を「強」に変更する。実際に発生する油煙の量は、玉葱を掴んだ後しばらくして増加し始める。したがって、投入した玉葱に起因して発生した油煙が増加するより前にレンジフード200の風量は増加しているため、フード201で油煙を漏らすことなく捕集できる。
このように、リアルタイムの画像等から分別して抽出した調理情報データおよび調理動作データと、学習済みの相関モデルや予め定められた油煙濃度相関ルールに基づいて油煙の捕獲能力を制御することで、油煙が立ち上る前に風量を増加させるなど好適なタイミングで食材や料理方法等に合わせて油煙等を捕集し、排気する能力を適合させることができる。
上述したレンジフード200は、少なくとも、カメラ241と、カメラ241が撮像した画像から、被撮像物の温度を含む調理情報データとその被撮像物に対して行う動作を含む調理動作データを抽出する情報抽出部221と、情報抽出部221が抽出する調理情報データおよび調理動作データに基づき、油煙の捕獲能力を制御するRH制御部229と、を備えることにより、好適なタイミングで食材や料理方法等に合わせて油煙等を捕集し、排気する能力を適合させることが可能である。
また、レンジフード200は、情報抽出部221が被撮像物が所定温度以上である旨を含む調理情報データと、その所定温度以上の被撮像物に対して所定の動作を行った旨を含む調理動作データとを抽出した場合、RH制御部229によって油煙の捕獲能力を向上させることにより、好適なタイミングで食材や料理方法等に合わせて油煙等を捕集し、排気する能力を適合させることができる。
<第三実施例の変形例3>
上述したことは、被撮像物に応じて油煙の捕獲能力を制御する方法でもある。この方法は、下方にあるコンロBNを撮像し、撮像した画像から、被撮像物の温度を含む調理情報データとその被撮像物に対して行う動作を含む調理動作データを抽出し、抽出した調理情報データおよび調理動作データに基づき油煙の捕獲能力を制御する方法である。これによれば、好適なタイミングで食材や料理方法等に合わせて油煙等を捕集し、排気する能力を適合させる方法を提供することができる。
<第三実施例の変形例4>
上述した第三実施例では、油煙学習部1261などを有するレンジフード情報サーバ100Cと、レンジフード200とを備えるレンジフード情報システム1Cについて述べた。本変形例は、レンジフード情報システム1Cと同様な機能を有する油煙捕獲システムである。油煙捕獲システムは、レンジフード情報サーバ100Cと同等の機能を有する情報処理装置と、この情報処理装置と電気通信を介して接続された油煙捕獲機器と、カメラなどの撮像機器(撮像部)と、油煙情報を検知する油煙センサと、撮像機器が撮像した画像および油煙センサが検知した油煙情報を情報処理装置に送信する送信装置とを備える。なお、撮像機器や油煙センサは、独立して設置されてもよいし、油煙捕獲機器に組み込まれてもよい。
情報処理装置は、送信装置から受信した画像と油煙情報を時刻情報と関連付けて記憶する記憶部と、記憶部が記憶した画像から、被撮像物の温度を含む調理情報データと該被撮像物に対して行う動作を含む調理動作データを抽出する情報抽出部と、記憶部に記憶された油煙情報と、調理情報データおよび調理動作データとの相関モデルを機械学習する油煙学習部と、受信した画像から情報抽出部が抽出する調理情報データおよび調理動作データと、油煙学習部が学習した相関モデルに基づき、発生する油煙情報を予測する油煙発生情報予測部と、油煙発生情報予測部が予測した油煙発生情報に基づいて、油煙の捕獲能力に関する情報を油煙捕獲機器の受信装置に送信する送信部と、を備える。情報処理装置は、汎用的な所謂サーバや高機能な所謂スマートフォンなど、様々なアプリケーションソフトウェアをインストールして実行する能力を有するコンピュータやマイクロコンピュータを言う。
油煙捕獲機器は、油煙の捕獲能力を制御する運転制御部と、情報処理装置から捕獲能力に関する情報を受信する受信装置とを備える。運転制御部は、受信装置が受信した捕獲能力に関する情報に基づき捕獲能力を制御する。油煙捕獲機器は、具体的には、レンジフード、油煙を捕獲する局所換気装置、空気清浄機、集塵機などである。これによれば、画像から分別して抽出した調理情報データと調理動作データに基づいて油煙の捕獲能力を制御することで、好適なタイミングで食材や料理方法等に合わせて油煙等を捕集し、排気する能力を適合させる油煙捕獲システムを提供することができる。
<第四実施例>
図43乃至図47を参照し、本実施例における情報処理システム2の一形態である料理教室システム2Aを説明する。まず、情報処理システム2は、図43に示すように、ネットワーク300に接続された情報処理サーバ2100と、ネットワーク300に接続され、情報処理サーバ2100と通信を行う情報処理端末2200を備える。ネットワーク300は、上述したように、情報処理サーバ2100と情報処理端末2200間の、情報処理やデータに係る通信を可能にする任意の電気通信回線または電気通信網である。
上記の実施例ではレンジフード(レンジフード端末)200はホームネットワーク1000内に存し、ゲートウェイ400を通してネットワーク300に接続されていたが、情報処理端末2200は、それに限定されず、直接公衆回線にまたはルータを介してネットワーク300に接続される。また、本図内のデバイス22001は、上記実施例で説明したレンジフード端末200や油煙捕獲機器としての機能を有すると共に直接ネットワーク300に接続できるネットワークインターフェイスを有するものである。
情報処理サーバ2100は、ネットワーク300を介して、情報処理端末2200と制御やデータに係る通信を行う所謂汎用的なサーバコンピュータであり、1以上の情報処理端末2200からアクセスされて、様々な制御情報やデータを受け付け、処理し、それらに対して制御情報やデータを提供する。情報処理サーバ2100は、図4に示すような、上述したハードウェア構成と同様の構成を有する。
図44は、情報処理サーバ2100のブロック構成図を示す。情報処理サーバ2100は、ネットワーク300との通信インターフェイスである通信部110と、情報処理サーバ2100全体の制御を行う制御部120と、制御部120が実行するプログラムやデータを記憶する記憶部130と、情報処理サーバ2100に指示やデータを入力する入力部140と、情報等を出力する出力部150とを有する。なお、上記実施例と同じ機能を有する構成要素には同じ符号を付し、説明を省略する。それぞれの構成要素は、内部にさらに特定の機能を有するが、同じ符号を有する要素は、上述した同じ機能を有するものと理解されたい。
情報処理端末2200は、図45が示すように、CPU20M(MPU(Micro Processing Unit)も含む)と、ROM/RAM等のメモリ31Mと、ネットワーク300と繋がるための通信インターフェイス10Mと、情報を表示し入力するための表示/タッチパネル70Mと、カメラ、マイク、スピーカ等のオーディオ/カメラ80Mと、を含み、これらが、バスといった伝送路60Mを介して互いに接続されている。情報処理端末2200は、典型的にはスマートフォンやタブレットコンピュータであるが、同様の機能を有するパーソナルコンピュータであってもよい。
情報処理端末2200は、iOS、WINDOWSMOBILE(登録商標)、GOOGLE(登録商標)ANDROID(登録商標)、MOBILELINUX(登録商標)等を含む任意の他のモバイルオペレーティングシステムをサポートし、実行し得る。なお、これらは例示であり、本発明に係るプログラムが実行され得る限り、これらに限定されることはない。情報処理端末2200は、本発明に関連するプログラムを所定のプログラムサーバからダウンロードし、インストールしてメモリ31Mに記憶する。そのプログラムは、CPU20Mで起動されることにより、CPU20Mと協働して、本発明を構成する。
情報処理端末2200は、図46が示すように、制御部220M、記憶部230M、通信部210M、入力部240M、出力部250Mを備える。制御部220Mは、CPU20Mによりその機能が実現され、上述したモバイルオペレーティングシステムを実行し情報処理端末2200を統括的に制御すると共に、各種の処理手順等を規定したプログラムを実行し、種々の情報処理を実行する。制御部220Mは、内部に特定の機能を有する。具体的には、制御部220Mは、情報抽出部221M、文章生成部222M、工程作成部223M、レシピ情報作成部224M、判定部225M、油煙学習部2261M、油煙発生情報予測部2281M、捕獲能力予測部2282Mを有する。これらは、上述した、情報抽出部221、文章生成部222、工程作成部223、レシピ情報作成部224、判定部225、油煙学習部2261、油煙発生情報予測部2281、捕獲能力予測部2282とそれぞれ同等の機能を有する。
記憶部230Mは、メモリ31Mによりその機能が実現され、各種のデータやファイルなどを格納する。記憶部130Mには、モバイルオペレーティングシステムと協働して制御部120Mに命令を与えて各種処理を行うためのコンピュータプログラムが記録される。これらのコンピュータプログラムは、情報処理サーバ2100が情報処理端末2200のために提供するサービス/アプリケーションに対応した機能を実現するプログラムである。また、これらのコンピュータプログラムは、ネットワーク300を介して情報処理端末2200とレンジフード端末などのデバイス22001とを接続し、デバイス22001に対して情報処理サーバ2100の機能の一部を実行するものであってもよい。
通信部210Mは、通信インターフェイス10Mによりその機能が実現され、ネットワーク300を介して情報処理サーバ2100やデバイス22001と送受信を行うための、送信部211Mと受信部212Mを有する。入力部240Mと出力部250Mは、オーディオ・カメラ80Mと表示/タッチパネル70Mにより機能が実現される。入力部240Mは、典型的にはタッチパネル(操作部243M)、マイク242M、カメラ241Mである。出力部250Mは、同様に、典型的にはタッチパネル兼用のディスプレイ251Mやスピーカ252Mである。
料理教室システム2Aは、情報処理システム2において、情報処理サーバ2100の1形態である料理教室サーバ2100Aと、情報処理端末2200である教師側情報処理端末2200Tと生徒側情報処理端末2200Sから構成され、上述した第一実施例の料理教室システム1Aと同等の機能を備える。すなわち、料理教室システム2Aは、料理の指導者(教師)と料理を習いたい者(生徒)が使用するシステムであり、料理教室サーバ2100Aと、これと電気通信を介して接続され、料理の指導を行う教師が使用する教師側情報処理端末2200Tおよび教師から料理の指導を受ける生徒が使用する生徒側情報処理端末2200Sと、を備える。
教師側情報処理端末2200Tは、カメラ241MがコンロBNおよび調理台CTの内少なくともコンロBNで行われる教師による料理の様子を撮像すると共に、教師がディスプレイ251Mを見ることのできる位置に配置される。教師側情報処理端末2200Tは、カメラ241Mが撮像した画像およびマイク242Mが集音した音を送信部211Mで料理教室サーバ2100Aに送信する。また、教師側情報処理端末2200Tは、生徒側情報処理端末2200Sの送信部211Mが送信した画像および音を受信部212Mで料理教室サーバ2100Aから受信し、ディスプレイ251Mで受信した画像を教師に対して表示すると共に、スピーカ252Mで受信した音声を出力する。
生徒側情報処理端末2200Sは、カメラ241MがコンロBNおよび調理台CTの内少なくともコンロBNで行われる生徒による料理の様子を撮像すると共に、生徒がディスプレイ251Mを見ることのできる位置に配置される。生徒側情報処理端末2200Sは、カメラ241Mが撮像した画像およびマイク242Mが集音した音を送信部211Mで料理教室サーバ2100Aに送信する。また、生徒側情報処理端末2200Sは、教師側情報処理端末2200Tの送信部211Mが送信した画像および音を受信部212Mで料理教室サーバ2100Aから受信し、ディスプレイ251Mで受信した画像を生徒に対して表示すると共に、スピーカ252Mで受信した音声を出力する。
料理教室サーバ2100Aは、教師側情報処理端末2200Tおよび生徒側情報処理端末2200Sのカメラ241Mが撮像した画像およびマイク242Mが集音した音を受信部112で受信する。料理教室サーバ2100Aは、受信部112が受信した画像および音を記憶する画像音記憶部131を備える。送信部111は、受信部112が受信したまたは画像音記憶部131が記憶した画像および音を教師側情報処理端末2200Tおよび生徒側情報処理端末2200Sに送信する。また、料理教室サーバ2100Aは、受信部112が受信したまたは画像音記憶部131が記憶した画像および/または音に基づき工程の区分を判定する判定部125を備える。判定部125は、制御部120で実行されるプログラムとして提供される機能である。
図47を参照して、料理教室システム2Aの制御方法について説明する。前提として、料理の指導を行う教師は、料理教室サーバ2100Aに自分が行う料理教室の内容、必要な材料、所要時間や開始終了スケジュールなどを登録しておき、生徒はそれらの情報にアクセスできる状態になっている。生徒は、ST100において、生徒側情報処理端末2200Sから料理教室サーバ2100Aに直接アクセスし、受講したい料理教室の申し込み登録を行うと、生徒側情報処理端末2200Sから料理教室サーバ2100Aに当該生徒のユーザ情報が送信される。ユーザ情報には、料理教室を受講する際の生徒側情報処理端末2200Sの識別情報(IPアドレスなど)が含まれるものとする。
料理教室サーバ2100Aは、料理教室が開始する時間になると、ST200において、生徒側情報処理端末2200Sに開始通知を行うと共に、教師側情報処理端末2200Tと生徒側情報処理端末2200Sに対して料理教室モードの設定を行うためにセットアップの指示を送信する。教師側情報処理端末2200Tおよび生徒側情報処理端末2200Sは、セットアップ指示を受信すると、ST400において、相手方の画像や音を受信してディスプレイ251Mなどに出力可能な状態および画像や音を取得して相手方に送信可能な状態にする。
教師側情報処理端末2200Tおよび生徒側情報処理端末2200Sは、互いに出力および送信可能な状態になると、ST450において、料理状況を記録すると共に、料理教室サーバ2100Aに料理状況データ(画像/音)を送信し、さらに料理教室サーバ2100Aからの相手側の料理状況データを受信する。料理教室サーバ2100Aは、ST250において、受信部112が教師側情報処理端末2200Tおよび生徒側情報処理端末2200Sから料理状況データを受信すると、その料理状況データを解析し、料理工程の区分を判定すると共に、料理工程を生成し、区分された料理状況データを出力する。ST250とST450の処理については、第一実施例の図12と図13で説明した通りである。
また、料理教室サーバ2100Aを介した送受信に関する制御方法は第一実施例の図15に示した通りである。教師側情報処理端末2200Tおよび生徒側情報処理端末2200Sが記録した料理状況は料理教室サーバ2100Aを介して配信される。この際、教師側情報処理端末2200Tの指導内容の画像や音は複数の生徒のそれぞれの生徒側情報処理端末2200Sに配信される。一方、生徒側情報処理端末2200Sからの料理状況に関する情報は料理教室サーバ2100Aを介して教師側情報処理端末2200Tにのみ配信され、料理教室に参加している各生徒の生徒側情報処理端末2200Sには配信されない構成となっている。このため、生徒側情報処理端末2200Sが撮像した画像および集音した音は、教師側情報処理端末2200Tのみで出力され、生徒間ではシェアされないので、他人と比較されることもなく、プライバシーも保護される料理教室システム2Aの提供が可能となる。
生徒側情報処理端末2200Sは、教師側情報処理端末2200Tが撮像した画像および集音した音を出力する。生徒はそれを見ながら自分でも料理をし、料理の仕方を学習する。生徒側情報処理端末2200Sは、生徒の料理状況をカメラ241M等で画像/音を取得し、料理教室サーバ2100Aに送信する。料理教室サーバ2100Aの制御部120の判定部125は、受信した画像と音の一方または両方に基づいて料理工程の区分を判定する。判定部125が、教師側情報処理端末2200Tが先に送信した画像および音に基づき判定した工程の区分と同じ区分を生徒側情報処理端末2200Sが送信した画像および音の中にあると判定した場合、料理教室サーバ2100Aは、工程が完了したと判定した画像および音を送信した生徒側情報処理端末2200Sを使用する生徒はその工程を完了した旨(判定結果)の通知を教師側情報処理端末2200Tに送信する。教師側情報処理端末2200Tは、その判定結果を生徒毎にディスプレイ251Mに表示する。
これによれば、教師側が設定した各工程を生徒側で完了したことを料理教室サーバ2100Aが判定し、この判定結果を教師側に通知し、教師側情報処理端末2200Tで生徒毎に判定結果を表示することで、生徒の料理の進行状況を教師が確認できる料理教室システム2Aを提供することができる。また、教師として自動的に生徒側の料理の進行状況を判定できるので、1対1ではない場合であっても教師は各生徒の進行状況を確認でき、1対多での指導が可能な効率性及び利便性の高い料理教室システム2Aの提供が可能となる。また、生徒側情報処理端末2200Sが撮像した画像および集音した音は、教師側情報処理端末2200Tのみで出力され、生徒間ではシェアされないので、他人と比較されることもなく、プライバシーも保護される料理教室システム2Aの提供が可能となる。
<第四実施例の変形例1>
上記第四実施例では、情報処理サーバ2100と情報処理端末2200を備える情報処理システム2において、第一実施例で記載した料理教室システム1Aを稼働させる料理教室システム2Aを記載した。本変形例では、情報処理システム2において、上記<第三実施例の変形例4>の油煙捕獲システムを稼働させる例である。本変形例における油煙捕獲システムは、レンジフード情報サーバ100Cと同等の機能を有する情報処理端末2200と、情報処理端末2200と電気通信を介して接続されたデバイス22001から構成される。
デバイス22001は、油煙捕獲器と、カメラなどの撮像機器(撮像部)と、油煙情報を検知する油煙センサと、撮像機器が撮像した画像および油煙センサが検知した油煙情報を情報処理端末2200に送信する送信装置などを備える。デバイス22001が送信装置から撮像した画像および検知した油煙情報を送信すると、情報処理端末2200は、受信部212Mで受信し、受信した画像と油煙情報を時刻情報と関連付けて記憶部230Mに記憶する。情報抽出部221Mは、記憶した画像から、被撮像物の温度を含む調理情報データと該被撮像物に対して行う動作を含む調理動作データを抽出する。油煙学習部2261Mは、記憶された油煙情報と、調理情報データおよび調理動作データとの相関モデルを機械学習する。油煙発生情報予測部2281Mは、受信した画像から情報抽出部221Mが抽出する調理情報データおよび調理動作データと、油煙学習部2261Mが学習した相関モデルに基づき、発生する油煙情報を予測する。情報処理端末2200の送信部211Mは、油煙発生情報予測部2281Mが予測した油煙の捕獲能力に関する情報を油煙捕獲機器の受信装置に送信する。
なお、本変形例では、情報処理端末2200とデバイス22001はネットワーク300を経由して接続されるが、これに限定されず、情報処理端末2200とデバイス22001が同じルータの配下(互いにローカル)に存する場合は、ネットワーク300を経由せずにそのルータを経由して接続されてもよい。これによれば、より簡便な構成により、画像から分別して抽出した調理情報データと調理動作データに基づいて油煙の捕獲能力を制御することで、好適なタイミングで食材や料理方法等に合わせて油煙等を捕集し、排気する能力を適合させる油煙捕獲システムを提供することができる。
なお、本発明は、例示した実施例に限定するものではなく、特許請求の範囲の各項に記載された内容から逸脱しない範囲の構成による実施が可能である。すなわち、本発明は、主に特定の実施形態に関して特に図示され、かつ説明されているが、本発明の技術的思想および目的の範囲から逸脱することなく、以上述べた実施形態に対し、数量、その他の詳細な構成において、当業者が様々な変形を加えることができるものである。たとえば、第一実施例~第四実施例のそれぞれに記載された構成要素や機能は、自己の実施例だけでなく、他の実施例にも適用できるものとする。