説明

画像認識による機器制御方法それを用いたコンテンツ作成方法および装置

【課題】講師が自分の講義を、講義の進捗と並行して講師自身によって記録編集することができれば、イーラーニング用のコンテンツとして有用である。そのためには講師の出す指の本数を認識し、機器制御の合図にできれば便利である。講師は教壇上を歩き回ることが予想されるため、ある程度広角の画像しか期待できず、低い解像度で指の本数を判定しなければならない。
【解決手段】指の1本1本を認識するのではなく、手の幅と伸ばされた指先の幅の比に基づいて指の数を判定する。本発明の方法では、多くの計算量を必要とせず、また、指の開き具合もある程度まで、寛容に判定できるので、コンテンツを講義者自身で記録編集するのに好適な方法を提供できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、指示者の動作を画像により認識し、その動作に基づいて機器を制御する方法および装置に関する。特に教育用コンテンツを講義者が講義をしながら作成し編集する際に好適に利用することのできる画像認識による機器制御方法および装置に関する。本発明では、指示者の手の指の数を判断し、その指の数を識別することで機器を制御する。
【背景技術】
【0002】
従来教育や研修の場においては、本やコンパクトディスク(CD)といった教材を用いていたが、これらの媒体は、量がかさばり、また大量に作成した場合は修正がやりにくいといった問題点があった。
【0003】
近年イーラーニング(e−learning)と呼ばれるインターネットを利用した教育および研修形態が普及している。イーラーニングでは、学習者がインターネットから提供される教材を用いるため、端末さえあればいつでもどこでも学習ができ、また教材の嵩(かさ)や修正といった問題点も簡単に解決できる。
【0004】
このイーラーニングの更なる普及には教材となるコンテンツの充実が不可欠となる。できるだけわかりやすく、視覚的にも質の高いコンテンツの整備が望まれる。
【0005】
しかし、コンテンツの作成には高価な機器の整備、担当者の周到な準備、十分な時間をかけた撮影、さらに事後の編集作業が必要になる。一方、それほど質が高くなくても、必要に応じて簡便にコンテンツを作成できる環境があれば、イーラーニングを気軽に普及させることに役立つ。
【0006】
例えば、講義において、講師が学習者に提供するのは、講師の映像、資料の映像、板書の映像、講師の音声であり、これらを適切な順番に記録することができればイーラーニングの教材としては役に立つ。これらの情報は講義の進行に伴って講師が演出して学習者に示すものであるから、講師自身がこれらの情報を適宜記録すれば、イーラーニング用の教材を講義と同時に作ることが可能である。
【0007】
講師は講義に集中しているので、講師によるこれらの情報の選択はできるだけ容易な方法で、しかも違和感なく行えることが必要である。特に、講師は黒板に板書をするため教壇上を動き回る。また、手には資料やチョーク、差し棒を持っている。従って、講義を行いながら通常機器操作手段として考えられるリモコンを使うのは容易でない。
【0008】
上記のような要求に応えられる方法としては、講師の動作を認識して映像情報等を切換記録できるようにする方法が有力である。特に講師の手の形によって機器を選択制御することができれば、煩雑な操作も必要なく、また教壇の上でリモコンを持ち歩くこともない。
【0009】
人の手の形を認識して機器制御を行う方法は古くから提案されている。特許文献1では、手の形自体を認識するために手の幾何学的特長と、輪郭線の特徴の2つを併用して、特徴を抽出し、予め用意した候補掌形と比較することで、掌形を認識する掌形認識方法が開示されている。
【0010】
特許文献2には、キーボードやマウス等の入力装置の代わりに手の形状を認識することによるインターフェース装置が開示されている。ここでは、指の本数の認識方法としては、テンプレートマッチング、形状モデルとのマッチング、ニューラルネットワークを用いた認識方法の存在を開示している。
【0011】
特許文献3には、人の体を所要の部分領域に分け、部分領域毎の個別の認識処理を行うことで認識率を上げる方法が開示されている。ここでは主として画素の累積画素数を算出することで、画像を認識しようとしている。
【0012】
特許文献4には、人を含む画像を撮影し、肌色部分を顔および手として分離し、比較的小さな略長方形の領域を抽出し、掌領域との位置関係や大きさの比較を行うことで指の本数を判定する方法が開示されている。
【0013】
また、特許文献5には、やはり同じく肌色の部分を検出することで、手領域を求め、指同士が重なり合わないようにして得た画像から、指を線分で近似することで伸ばした指の本数を認識する方法が開示されている。
【特許文献1】特開昭62−32581号公報
【特許文献2】特開平9−185456号公報
【特許文献3】特開平11−191158号公報
【特許文献4】特開2001−28046号公報
【特許文献5】特開2003−346162号公報
【発明の開示】
【発明が解決しようとする課題】
【0014】
講義の進行自体をイーラーニング用の教材として講師自身が記録編集するには、いくつかの制約がある。具体的には、教壇上を動き回る講師の動作から指の本数を判断しなければならない。すなわち、講師の動作を認識させるカメラは教壇全体が入るような広角レンズを用いる必要がある。従って、あまり高い解像度の画像を得ることは期待できない。
【0015】
また、講義の進行と同時に機器の選択操作を行うので、講師の動作に対してリアルタイムに反応する必要がある。すなわち、指の数を認識するために複雑で膨大な計算が必要では利用できない。
【0016】
このような制約条件に対して、手の指の本数を認識する特許文献1、3、4、5は指の輪郭を直線などで近似するため低い解像度の画像データを用いるのは認識精度が低下するおそれがある。
【0017】
本発明は上記のように、講師が自らの講義を進めながらイーラーニング用の教材として編集を行うという条件の下で、手の指の本数若しくは手の形状を判断する方法を提供する。
【課題を解決するための手段】
【0018】
上記の課題を解決するために、本発明は指示者の差し出した手の幅(掌形幅)と指先の幅(指先幅)を映像データ上で求めその比(掌形比)から指の本数を判定する。そして判定した指の本数に対応する制御信号を出力する。若しくは掌形比から直接対応する制御信号を求め出力する。
【発明の効果】
【0019】
本発明は、指の数を認識するのに、手の幅と差し出された指の幅の比で、指の本数を判断するので、低解像度の画像からでも、指の数を判断できる。また、処理の計算量も多くなく、標準となる掌形の候補も用いないため、講師の動作に対して短い時間で反応させることができる。また、講師が差し出した手がカメラに対して多少傾いていても指の本数を誤認識することが少ない。
【0020】
そのため、指示を出す講師は、簡単な動作で編集操作ができ、講義をしながら自分で、自分の講義を編集しイーラーニング教材を作成することができるという効果を有する。
【発明を実施するための最良の形態】
【0021】
以下に本発明を説明するための実施の形態について説明を行うが、以下の説明だけに限定されるものではなく、本発明の範囲内で適宜変更若しくは公知の技術を追加することができる。また、実施の形態1での説明は適宜他の実施の形態2にも適用でき、その逆も同様である。
【0022】
(実施の形態1)
図1に本実施の形態の画像認識による機器制御装置(以下「画像処理装置」という。)を用いたコンテンツ作製システムの全容を示す。本システムには、講師の指の本数を求めるために、講師を撮影しているサブカメラ12と、サブカメラ12からの映像を取得し、講師の指の本数を判断する画像処理装置10と、画像処理装置10が制御するビデオセレクタ14と、ビデオセレクタからの信号を記録するレコーダ18を有する。なお、本明細書および特許請求の範囲において、指の本数を「指数」ともいう。
【0023】
また、ビデオセレクタ14には、講師の顔を映すカメラ20と、黒板を映すカメラ22と、講義資料を映し出すプロジェクタ24とが接続されている。
【0024】
また、ビデオセレクタ14の出力とマイク26の出力は合成器16に接続されている。合成器16の出力はレコーダ18に接続されている。
【0025】
合成器16の出力はまた分配器32にも接続されており、講師自身が見ることのできる映像モニタ34と受講生たちが見る映像モニタ40や42を有する。
画像処理装置10からは、制御信号の状態を示す制御表示器30が接続されている。
【0026】
次に各構成機器を詳細に説明する。
サブカメラ12は、講師(以下「指示者」という。)を常に撮影する。サブカメラ12からの映像は、指示者が機器制御のための指示(以下「制御指示」という。)を出す合図として示す指の本数を判断するために使われる。従って、できるだけ分解能の高いカメラが望ましい。一方、指示者は教壇の上を左右に動く事が想定される。そこで、サブカメラ12を固定カメラとした場合は、教壇の端から端までが写せるように、画角の広い映像を写せる広角のレンズを持ったカメラがよい。
【0027】
サブカメラ12で写した指示者の画像データVmは、画像処理装置10に送られる。画像処理装置10では、画像データVmから指示者の指の本数を抽出する。指の本数の抽出の仕方についての詳細は後述する。
【0028】
そして、指示者の指の本数に応じた制御信号Scv、Scpをビデオセレクタ14とプロジェクタ制御器25へ出力する。制御信号Scvは、ビデオセレクタ14へ入力されるカメラ20からの映像信号Vc1、カメラ22からの映像信号Vc2およびプロジェクタ24からの映像信号Vpjのうちのどの映像信号を出力させるかを制御する。
【0029】
制御信号Scpはプロジェクタ制御器25から映像を、出力させるまたは出力する画像を変えるといった動作を制御する。
【0030】
カメラ20とカメラ22はそれぞれ指示者を追うカメラと、板書を写すカメラである。指示者を追うカメラ20は、話をしている指示者を写すためのものであり、サブカメラ12とは役割が異なる。従って、視聴しにくい範囲でない限り画角の狭い、望遠タイプのカメラであってもよい。
【0031】
カメラ22は板書を写すカメラである。黒板に書いたチョークの文字や白板に書いた黒マジックの文字が判別できるように撮影できるカメラがよい。また、黒板全体を一度に写せるカメラであるのが好ましい。
【0032】
プロジェクタ24は、説明用の資料などを教壇前に設置したスクリーン45に映すためのプロジェクタである。プロジェクタ制御器25からの出力を教壇の前に設置されたスクリーンなどに映写する。
【0033】
プロジェクタ制御器25は、描画ソフトウェアが搭載された小型のコンピュータなどで構成され、制御信号Scpによって、画像の出力や出力画像の変更を行う。
【0034】
カメラ20、カメラ22、プロジェクタ24の映像出力信号はそれぞれVc1、Vc2、Vpjであり、ビデオセレクタ14に送られる。
【0035】
ビデオセレクタ14は、Vc1、Vc2、Vpjを入力し、そのうちの1つ、若しくは複数の信号を整形して1にした信号Vsigを出力する。つまり映像選択を行う。複数の信号を整形して1つにした信号とは、複数の信号を1画面に入るように整形した信号をいう。すなわち、Vsigは、Vc1、Vc2、Vpjのうちの1つの信号でもあるし、また、Vc1とVc2といった複数の映像信号を1つの画面に入るように修正し1つの映像信号とした信号も含む。Vsigは、合成器16に入力される。
【0036】
マイク26は、指示者の音声を拾うマイクである。このマイク26の出力Asigは合成器16に入力される。図1には特に示していないが、マイク26の出力を合成器16までの間で分割したり、また適当なアンプやエフェクターを接続しても構わない。
【0037】
合成器16はビデオセレクタ14の出力Vsigとマイク26の出力Asigを合成し映像音声信号AVsigとして出力する。合成器16は、使用するVsigやAsigの信号の形式の種類によって適宜構成を変えてもよい。しかし、出力信号となる映像音声信号AVsigは、再生されることが前提であるので、既存のフォーマットに準じた形式やプロトコルであるのが望ましい。映像音声信号AVsigは、レコーダ18と分配器32に入力される。
【0038】
レコーダ18は、合成器16の出力である映像音声信号AVsigが入力され記録する。レコーダ18は、指示者の行う講義の内容を音声と映像で記録するものである。公知のアナログ映像音声記録装置やデジタル映像音声記録装置を利用することができる。
【0039】
分配器32は、合成器16からの映像音声信号AVsigを分配する。公知の分配器を利用することができる。また、分配器32には1つ若しくは複数のモニタが接続される。図ではモニタ34、モニタ40、モニタ42の3台のモニタが接続されている様子を示す。このうち、モニタ34は、指示者用のモニタである。指示者はこのモニタの映像を見て、教材として記録されるコンテンツの内容を確認できる。モニタ40、モニタ42は、講義を直接受ける受講生のためのモニタである。なお、受講生のためのモニタはインターネットを介して国内外の遠隔地にも設置してもよい。
【0040】
制御表示器30は、画像処理装置10が指示者の指示をどのように判定したかを指示者に示す機器である。指示者は教壇の上で一定のポーズを取ることで、画像処理装置10に制御指示を出す。しかし、その指示は指示者用のモニタ34を見ただけでは分からない場合もある。そこで、制御表示器30は、指示者の行ったポーズを画像処理装置10がどのように判定したかを表示する。
【0041】
制御表示器30は画像処理装置10からの制御表示信号Sidを受け取る。このSidを指示者に見える形態で表示する。可視状態に表示すると言っても良い。具体的には、モニタ上に映し出すようにしてもよいし、予め決められたランプを点灯させるような形態であってもよい。また、この制御表示信号Sidには、指示されたことを認識したが、指の本数を識別できなかった場合の信号を含む。
【0042】
例えば、指示者の指示があまりに早かったために指の数を識別できなかった場合などにこの信号をSidとして出力する。このような表示は、指示者に再度制御指示を行うように促す信号であるともいえる。
【0043】
なお、制御表示器30は、指示者に画像処理装置10の識別状態を伝えるためのものであるので、指示者用のモニタ34だけに出力できるように構成してもよい。この場合は、合成器16からの映像音声信号による画面表示に重なるようにSidの表示を映出してもよい。
【0044】
以上のようなコンテンツ作製システムの動作について詳細な説明を行う。まず、コンテンツ作成システムの全体の動作を図2のフローを参照して説明する。
【0045】
図2を参照して、コンテンツ作成システムが起動すると(S1000)、システムを終了するか否かを判断する(S1002)。この判断は、電源がオフにされたといったハードウェア的な割り込み処理でもよい。システムを終了する場合は、処理を停止する(S1005)。サブカメラ12は、指示者の映像Vmを画像処理装置10へ送る(S1100)。画像処理装置10は、画像毎に指示者の映像を分析し(S1200)、制御指示のポーズであるか否かを判断する(S1300)。制御信号を出力するポーズである場合は、指示者の指の本数を抽出する(S1400)。そして、指示者の指の本数に応じた制御信号を出力する(S1500)。
【0046】
指示者は、自らが受講生に語りかけるような場面では、カメラ20を選択し、板書する際にはカメラ22を選択し、資料に基づいて説明を行う際はプロジェクタを選択する。そして、これらの選択制御は指示者の制御指示のポーズによって切り替えられる。
【0047】
次に指示者のポーズを認識し、指の数に対応する制御信号を出力する部分について詳細に説明する。
【0048】
図3に画像処理装置10の構成を示す。画像処理装置10は、コンピュータで構成され、画像処理はほとんどソフトウェアで実現される場合が多い。従って、具体的にはMPU(Micro Processor Unit)とメモリと入出力部だけで構成される場合が多い。ここでは、処理の流れが理解しやすいように処理単位での構成を示して説明を進める。なお、それぞれの処理を半導体などの実際のハードウェアで構成してもよい。
【0049】
画像処理装置10は、制御部100とメモリ200、メモリ202、メモリ204、カウンタ250と信号変換器300および出力ポート部400を含む。3つのメモリは1つのメモリ中の領域で区別してもよい。メモリ200には指の本数を判断するための対応テーブルTRw−fgが記憶されている。メモリ202には、判定された指の本数と出力すべき制御信号の対応表である制御信号対応テーブルTfg−Scが記憶されている。メモリ204には、指示者のいない場合の背景画面Dbkが記録されている。
【0050】
なお、この背景画面はコンテンツ作成システムを使用する前に予め記憶されているものとする。また、図示していないが、制御部100が使用するワークエリアおよび制御部100の処理を行うプログラムを格納するためのメモリ領域は別途有する。カウンタ250は、指示者のポーズが一定時間継続する事を確認するために用いる。タイマーで時間を測定することで代用することもできる。また、図3ではメモリを制御部100の中に含めたが、メモリは制御部100の外にあってもよい。
【0051】
信号処理器300は入力された指示者の映像Vmを、画像処理のための画像データDzに変換する装置である。例えばVmがアナログ信号の場合は、適当なAD変換によってデジタルデータに変換する装置である。元々の入力信号Vmがデジタル信号で直接画像処理に使える場合は、信号変換器300はなくてもよい。
【0052】
出力ポート部400は、制御部100からの制御信号Scを接続された機器へ正しく送信する。ここでは、画像処理装置10は、ビデオセレクタ14への制御信号Scvとプロジェクタ制御器への制御信号Scpを出力するので、制御信号Scは、ScvとScpを含んでいる。また、出力ポート部400は、制御表示器30への表示信号Sidも出力する。
【0053】
制御部100は、人物データ検出部130、重心線検出部132、腕先データ検出部110と、掌形幅検出部112、指先幅検出部114、指数判定部116、制御信号出力部118を含む。
【0054】
以下これらの動作を図3の構成図と図4のフローを参照しつつ説明する。画像処理装置10への入力信号はサブカメラ12からの指示者映像信号Vmであった。これは信号処理器300で入力画像データDzに変換され、制御部100に入力される(図2のS1100)。画像データDzが入力されると、人物データ検出部130が、入力画像データDzからメモリ204に記憶された背景データDbkを差し引き、人物データDdを抽出する(S1211)。
【0055】
この際、人物データDdは2値化される。2値化は入力画像データDzから背景データDbkを差し引いた値に対して背景部分の値をゼロと判定できる適当な閾値を設け、その閾値との比較で行えばよい。すなわち、人物データDdでは人物の部分は1の値になり、背景の部分は値がゼロとなる。
【0056】
次に重心線検出部132で、人物データDd中の重心線を求める(S1212)。重心線とは、画面に映った人物のシルエットの重心を通るY軸に平行な縦方向の線である。
【0057】
図6を参照して重心線を説明する。図6は重心線が付加された人物データDdcの例である。Ddcは人物データDdの重心を求めたデータをいう。枠線53は人物データDdの1単位を示す。例えば1フィールドであってもよいし、1フレームであってもよい。人物データDdは2次元のデータであり、それぞれの画素点は座標によって区別される。ここでは、画面横方向をX軸50とし、画面縦方向をY軸51とする。
【0058】
背景データDbkを差し引いてあるので、背景部分54は、値がゼロの部分である。図6では白であらわした。指示者の映像55は2値化された結果すべて値が1の画素となる。図6では黒であらわした。もちろん、白と黒を逆にしてもよい。人物データDdは、人物のシルエットとして得ることができる。上半身しかないのは、腰から下は机などの背景データに隠れてしまったからである。
【0059】
重心は、2値化した人物データDdの画面上の座標データを用い、x座標、y座標それぞれの座標の平均を求めることで得ることができる。また最小2乗法などの方法で求めてもよい。図5に、重心56を示す。重心を通るY軸に平行な直線を重心線57とする。
【0060】
図3および図4に戻って、次に腕先データ検出部110によって腕から先のデータである腕先データDarmを抽出する(S1213)。これは重心を付加した人物データDdcの重心線から所定の距離だけ離れた部分を切り出すことによって行う。すなわち、人物データから腕先データを抽出する。また、重心に基づいて人物データを分割するとも言える。これからわかるように、指示者は画像処理装置10に対して制御指示を出す場合は、体から一定の距離だけ離れた空間まで腕を伸ばしそこで必要な本数の指を伸ばすポーズをとる。
【0061】
ここでの一定距離の決め方には特に限定されるものではない。例えば、固定値を最初から決めておいてもよいし、人物データのシルエットの横幅に基づいてその都度求めてもよい。固定値としては、40〜60cmが好適である。この程度の距離であれば、指示者は違和感なく腕を伸ばして制御指示の合図を出せるからである。
【0062】
もし、指示者の腕が下がっていたり、若しくは体の近くにあって、制御信号を出す合図でない場合には、腕先データDarmには、2値化された背景のデータであるゼロしかない。すなわち、腕先データDarmが値を持つか否か(S1311)で、指示者が所定のポーズをしたか否かを判断できる。
【0063】
なお、腕先データDarmの値とは、人物画像データDdの重心線から所定の距離だけ離れた一定の領域を切り出した中に含まれる値が1の画素数の総和である。また、偶然に指示者の腕の一部が切り出した領域に入る場合もあり、Darmが所定の値を越えるか否かで判断しても良い。図4で説明すると、ステップS1311では、Darmの値と「La」を比較しているが、「La」はゼロでもよいし、所定の値でも構わない。
【0064】
図7には腕先データDarmを検出した状態を示す。重心を求めた人物データDdcの重心線57から所定の距離60離れた部分画像データ62を切り出す。部分画像データ62が腕先データDarmに相当する。図7の状態では、部分画像データ62の領域中に指示者の腕の部分64がある。この部分の画素データは値が1であるので、部分画像データ62全体での画素データを総和すると値を持つ。この値を腕先データDarmの値とする。
【0065】
腕先データDarmがあった場合は、さらに、それが一定時間継続しているかを判断する(S1312)。図3の構成図では、腕先データ検出部110は、腕先データDarmを検出した場合は、カウンタ250をインクリメントし、カウンタの値が一定以上になっているかどうかを確認する。また、タイマーを用いて所定時間の経過を検出してもよい。
【0066】
これは、指示者の動きのなかで、体の重心線から一定距離だけ離れた位置に腕が移動する場合もあり、そのようなポーズは制御指示のポーズから排除するためである。従って、指示者は制御指示のためのポーズを一定時間維持しなければならない。この時間が余り長いと指示者は講義のリズムを崩してしまう。0.3から1.5秒が好適である。0.3秒より短いと、制御指示を意図しない動作でも、指示があったものと誤認してしまう場合がある。
【0067】
また1.5秒を超えると、指示者は講義のリズムを崩してしまう。0.4秒から0.6秒がより好適である。一定時間指示者の指示ポーズが継続している場合(S1312のY分岐)は、腕先データDarmを出力する(S1313)。
【0068】
本発明の特徴は、この腕先データから掌形の幅と指先の幅を抽出し、その比を予め記憶させておいた閾値と比較することで指の本数を判定し、その比若しくは判定した指の本数に対応する制御信号を出力する点にある。腕先データDarmは、掌形幅検出部112と指先幅検出部114に送られる。
【0069】
掌形幅検出部114では、掌形データDarmの最も幅の広い部分の長さを掌形幅データDwhとして抽出する(S1411)。図8では、70の部分が掌形幅データDwhである。この抽出方法に特に限定された方法はないが、腕先データDarmのX軸上の1点において、値が1であるY座標の数が最も多い点を見つけ、そのときのY座標の数を掌形幅データDwhとするなどの方法が利用できる。
【0070】
一方、指先幅検出部114は、腕先データDarmに対して、重心線から遠い方の端部の幅を指先幅データDwfとして検出する(S1411)。図8では71の部分が指先幅データDwfである。DwfをどのX座標で抽出するかについては、特に限定されるものではない。例えば、腕先データDarmの中で最もY軸から離れた点の距離の95%の点のX座標上で抽出するなどが考えられる。
【0071】
図3の構成図においては、掌形幅検出部112と指先幅検出部114は並列になるように記載したが、ソフトウェア的に行う場合は、どちらかを先に処理してもよい。なお、図4のフローでは、DwhとDwfの抽出を1つの処理(S1411)として記載したが、どちらを先に行ってもよい。
【0072】
再び図3、図4を参照して、掌形幅データDwhと指先幅データDwfは、指数判定部116に送られる。指数幅判定部116は、DwhとDwfの比である掌形比Rwを求め、メモリ200に記憶している指数判定テーブルTRw−fgのそれぞれの閾値と比較し指数Nfを判定する(S1412)。
【0073】
図9に指数判定テーブルTRw−fgの例を示す。掌形幅と指先幅の比であるRw(=Dwf/Dwh)は0から1までの間の値で4つの区間を設定してある。それぞれの区間に対して指の数Nfが対応している。例えばRwの値が、0.41であった場合は、指の数Nfは2本と判断される。
【0074】
指数判定テーブルTRw−fgの区間の境界となる閾値は、個人や性別により異なるため、いくつかの掌形データを測定し、統計的な平均を求めて決めるのが好適である。なお、図9の指数判定テーブルの閾値は例示であって、これに限定されるものではない。
【0075】
このように本発明では、伸ばされた指の本数を数えるのに、実際の指を認識して本数を決めるのではなく、伸ばされた指のシルエットの幅と手の幅の比によって判定する。そのため、判定のための計算量が少なく、また解像度が高くない掌形データからも指数を判別することができる。
【0076】
また、本発明の指の本数の判定方法は、指先幅と掌形幅の比Rwを用いるので、指先が多少開いている場合や差し出された手が多少傾いていても計算量が増えることなく判断できる。また、個々の指を認識するのではないので誤認識することも少ない。これは、指示者が自然に出した指の本数を判定できることを意味する。従って、指示者は、制御指示を出す際に、画像処理装置に指の本数を認識させようと、強く意識する必要がなく、講義に集中できる。
【0077】
指数Nfを判定したらその値を出力する(同S1412)。この指数Nfは、図1で示した制御表示器30への通知信号Sidとしても出力される。図3では指数判定部116からの指数Nfを出力ポート部400を介して制御表示器30への信号Sidとして出力しているように記したが、1例を示したものである。指示者はこの表示を見て、自分行ったポーズによって、自分の意思通りの指示が認識されたか否かを知ることができる。
【0078】
以上のS1211からS1213は、図2のポーズ検出処理S1200に含まれる。また、S1311からS1313は図2の制御指示か否かの判断S1300に含まれる。また、S1411からS1412は図2の指の本数を抽出する処理S1400に含まれる。
【0079】
次に図3と図5を参照して、続く処理を説明する。制御部100の指数判定部116からは、指数Nfが出力される。制御信号出力部118は、指数Nfを受け取り、メモリ202に記憶されている、制御信号対応テーブルTfg−Scと比較し、出力すべき制御信号を決定し、出力する。
【0080】
ここでは、指示者の指は1本から4本まで区別できる場合で説明を進める。1本の場合はカメラ1(20)、2本の場合はカメラ2(22)、3本の場合はプロジェクタ24、のそれぞれの出力をビデオセレクタ14で選択する。また4本の場合はプロジェクタ制御器25に次の画像を出力させる。以上のような取り決めは予め決めておく必要がある。
【0081】
指示者の指の本数が1本の場合は(S1510)、画像処理装置10は制御信号Scvでカメラ1(20)の出力Vc1を選択し出力するようにビデオセレクタを制御する(S1511)。
【0082】
指示者の指の本数が2本の場合は(S1515)、画像処理装置10は制御信号Scvでカメラ2(22)の出力Vc1を選択し出力するようにビデオセレクタを制御する(S1516)。
【0083】
指示者の指の本数が3本の場合は(S1520)、画像処理装置10は制御信号Scvでプロジェクタ24の出力Vpjを選択し出力するようにビデオセレクタを制御する(S1521)。
【0084】
また、指示者の指の本数が4本の場合は(S1525)、画像処理装置10は制御信号Scpでプロジェクタ制御器25に次の画像を出力するように制御を行う(S1526)。
【0085】
これらのいずれでもない場合は、再指示表示を制御表示器30に出力し(S1530)、処理を戻す。処理は、図2の終了判定(S1002)へ戻る。
【0086】
制御信号出力部118は、出力すべき制御信号Sc(Scv若しくはScp)を出力ポート部400に出力する。出力ポート部400は、複数の出力ポートを有し、制御信号の種類によって正しい出力先に制御信号を送る。ここでは、ビデオセレクタの制御信号Scvはビデオセレクタ14へ、またプロジェクタ制御器への制御信号Scpはプロジェクタ制御器25へ送る。
【0087】
制御信号Scは、制御する機器毎に出力できるようにしてもよいし、制御対象機器にアドレスなどを割り当て、アドレスとコード化した制御信号を送り出してもよい。
図10には、メモリ202に記憶された制御信号対応テーブルTfg−Scの例を示す。指数Nfに対する制御信号Scが記録されている。例えば、指数Nfが2本の場合はVc2を選択する制御信号Scである旨が記録してある。なお、実際にはScの内容は所定のコードで記載してある。このテーブルの内容は予め記憶させておく。
【0088】
図9および図10を参照すると、指数Nfは、掌形比Rwの範囲と制御信号Scを関係付ける付ける変数となっている。そこで、掌形比Rwを制御信号Scと直接関連付けてもよい。この場合は、図3の指数対応テーブル200には、掌形比と制御信号の対応テーブルが記載され、指数判定部116からの出力は制御信号Scとなる。また、制御信号出力部118と制御対応テーブル202は省略することができる。図11には、その具体的な対応テーブルTRw−Scを示す。
【0089】
また、図4の処理フローでは、S1043の指数Nfを判定し出力する処理で、制御信号Sc自体を出力する。それを受けて図5のS1510乃至S1525の判断処理は、制御信号Sc自体を判断する処理に置き換わる。具体的な例としては、S1510では、「指の本数が1本であるか否か」を判断するが、これを「制御信号ScはVc1を選択する信号か否か」を判断する処理に置き換わる。
【0090】
以上の動作を行うコンテンツ作成システムを用いると、講師である指示者は、講義を進めながら、同時に適宜制御指示のポーズを取るだけで、講師、板書、プロジェクタ出力の映像を切り替え、指示者の音声による説明とともに記録することができる。このようにして作成されたコンテンツは、そのままイーラーニングの教材として利用することができる。すなわち、機器制御のための補助者や後からの編集作業をすることなく、講師が講義を行いながら1人で教材を作成することができる。
【0091】
なお、ビデオセレクタにつないだ機器は3つとしたが、それ以上であってもよい。また、画像処理装置10は、より多くの機器を制御してもよい。また、指示者の制御指示を得るためのサブカメラ12は、赤外線カメラであってもよい。特に近赤外線を感知できるカメラであれば、背景の映像のコントラストを低くすることができ、背景データDbkを差し引いて人物データDdを得る際のSNRを高くすることが可能である。また、背景の映像のコントラストを十分に低くできる場合は、人物データを得る際に背景データを差し引く必要がなく、2値化を行うだけで人物データDdを得ることも可能である。
【0092】
また、サブカメラ12は固定カメラとして説明を行ったが、指示者を自動追尾するようにしてもよい。この場合はサブカメラ12の回転アングルに応じた背景データを予め取得しておき、指示者を撮影したアングルに対応する背景データを使って人物データを取得するようにすればよい。
【0093】
また、上記の赤外線カメラを用いて背景データを省略できる場合は、サブカメラ12を赤外線カメラとして指示者を自動追尾してもよい。また、上記の説明では人物データとして指示者の上半身が入る画像で説明をしたが、サブカメラ12の前に差し出した制御指示の手の形を認識させるようにしてもよい。
【0094】
また、以上に説明した処理は適当なプログラム言語で記載し、画像処理装置10に格納し、実行させることで実現することができる。また、そのようなプログラムを記載した記録媒体を外部記憶手段等に用意し、そのプログラムを読み込んで実行させてもよい。
【0095】
(実施の形態2)
本実施の形態では、指示者の出す制御指示の種類を増やす方法を例示する。実施の形態1では、人物データDdに対して重心線を求め、重心線から一定の距離を離れた領域部分に指示者の腕(腕先データDarm)があるか否かを判断していた。ここで腕先データDarmの存在領域をより細かくすることで、多くの指示を出すことができる。
【0096】
図12には、重心を求めた人物データDdcに対して腕先データDarmの検出位置を増やした例を示す。人物データDdに対して例えば4つの領域を定義した場合を示す。この領域を定義するために、実施の形態1求めた重心線57に加え、頭上線87を求める。これは人物データDdの中でY軸方向の最も高い値を見つければよい。
【0097】
そして、重心線57と頭上線87で区切られる領域を識別のための領域とする。領域80は実施の形態1と同じ方向にある領域である。ただし、領域81は新しく定義された領域である。
【0098】
領域83は、領域80と同じように重心線57から所定の距離だけ離れた領域を切り出す。領域81、82は、人物のシルエットの左右であって、頭上線87より高い部分である。
【0099】
以上の領域を定義しておき、図4および図5の処理に修正を加える。図12および図13に修正を加えた処理のフローを示す。なお、図3に示す制御部100の各構成要素も本実施の形態の処理に従って変更される。ここでは図3の各構成要素に補足的な説明を加える。重心線検出部132では、重心線だけでなく頭上線も求め、これらの線によって人物データを領域に分ける(S1222)。
【0100】
このとき、領域毎の識別データ(以後「領域データDare」とする。)を付与する。ここでは、領域データDareは領域80から領域82の符号と一致させ、それぞれ80乃至82とする。すなわち、例えば領域80のDareは「80」である。腕先データ検出部110では、4つの領域毎に腕先データDarmの有無を調べる(S1321)。ある領域でDarmが存在した場合は、所定時間の経過を確認して(S1322)、Darmの存在する領域データDareと腕先データDarmを出力する(S1323)。これは腕先データDarmが存在する領域データDareを検出する工程とも言える。
【0101】
掌形幅検出部112および指先幅検出部114では、各領域データを参考にして掌形幅と指先幅を求める(S1421)。そして掌形比Rwを求め、指先対応テーブルに基づいて指数Nfと領域データDareを出力する(S1422)。ここで指数対応テーブルは実施の形態1の場合と同じでも良いが、各領域毎の指数対応テーブルを用意してもよい。手を体の横に出した時と、頭の上に伸ばした時では、カメラの解像度が変化する場合もあり、それぞれの手の方向で掌形比に対する指数の閾値が変化する場合もあるからである。
【0102】
図15に領域毎の指数対応テーブルの例を示す。この指数対応テーブルが図3の指数対応テーブル200の代わりにメモリに記録され用いられる。領域データが80と83は左右の違いはあるが体の横方向なので、同じ掌形比で指数を判断できる。領域81と82は手を上に上げた場合であるので、横方向と縦方向のカメラの解像度の違いで少し閾値が変っている。使用するシステムやカメラによって、全ての領域毎に指数対応テーブルを有していても構わない。
【0103】
図14を参照して、制御信号出力部118は、まず領域データDrarが領域80、領域81、領域82、領域83のいずれの領域にあるかを確認し(S1550、S1560、S1570、S1580)、それぞれに対応する制御信号を制御信号対応テーブルから選び出力する(S1555、S1565,S1575、S1585)。なお、S1555、S1565,S1575、S1585の処理は図5の処理と同様に、指の本数毎に制御信号を選択する。
【0104】
図16には領域データと指数に対応する制御信号テーブルを例示する。この制御信号対応テーブルは図3の制御信号対応テーブル202に代えてメモリに記録され用いられる。そして、制御信号出力部118は、S1555、S1565,S1575、S1585での処理を行う場合は、このテーブルに従って、制御信号を出力する。
【0105】
領域80から83に対して指数が1から4まで識別することができる。指示者が右利きの場合、左手は比較的空いているので左手を上げて、映像信号の選択を行えるよう、領域データが82の場合にVc1の選択などの映像信号選択関係の制御信号を割り当ててある。未定義の部分は画像処理装置10が指示者の動作を識別しても特に制御信号を出力しない。ただし、制御表示信号Sidは出力する。指示者に制御指示を認識はしている点を通知するためである。
【0106】
カメラ2は板書を映すカメラであるが、左右に腕を広げて指を2本出すことで、カメラ2が左右にパンする制御信号を定義してある。具体的には領域データが80で指数Nfが2の場合と領域データが83で指数Nfが2の場合である。
【0107】
また領域データが80で指が1本の場合にカメラ2のズームアウトを領域データが81で指が1本の場合にカメラ2のズームインを割り当ててある。これによって指示者が右手を上げて指を1本伸ばすと、カメラ2はズームインし、そのまま右腕を体の横まで下ろすとカメラ2はズームアウトする。なお、この場合、図3においては、画像処理装置10からカメラ2へパンやズームを制御するための信号線が用意されるのは言うまでもない。
【0108】
以上のように、指示者の人物データを複数の領域に分割し、分割された領域で指示者の出した指数を識別することで、指示の種類を多くすることができ、より細かい制御を一人で行うことができる。
【0109】
なお、掌形比と制御信号を直接関連付けてもよいのは実施の形態1の場合と同じである。図17に領域データと掌形比に対する制御信号を直接関連付けたテーブルを例示する。また、頭上線は頭の頂点でなく、頭の中心や首、若しくは肩の高さにしてもよい。
【0110】
また、本発明では掌形幅と指先幅を映像から取得したが、掌形幅や指先幅をより細かく判断するようにしてもよい。例えば、親指の出し方で掌形幅が変わる。従って親指の出し方を識別するようにしてもよい。また、掌形の小指に沿ったラインと伸ばした指との段差を識別するようにしてもよい。このようにより細かく識別を行うと、より正確な認識をすることができる。
【0111】
また、本発明の掌形比に基く機器制御方法に、他の画像認識を組み合わせてもよい。例えば、指示者の腕の屈伸状態や、指示者の手のひらの向き、また、手や腕の動きを動的に認識するなどが含まれる。
【0112】
また、所定の時間内に制御指示を複数回行うことで、2桁若しくはそれ以上の桁数の制御信号の種類を定義してもよい。また、領域の分割は重心線や頭上線による分割に限定しないし、より多くの分割をおこなってもよい。また、本発明の機器制御方法は、一般家庭のテレビ等の機器制御に利用できるのは言うまでもない。
【産業上の利用可能性】
【0113】
コンテンツを一人で作成するシステムに好適に利用することができる。
【図面の簡単な説明】
【0114】
【図1】本発明のコンテンツ作成システムの構成を示す図である。
【図2】本発明のコンテンツ作成方法のフローを示す図である。
【図3】本発明の画像処理装置の構成を示す図である。
【図4】本発明の画像処理装置での動作のフローを示す図である。
【図5】本発明の画像処理装置での動作のフローを示す図である。
【図6】人物データを例示する図である。
【図7】腕先データを例示する図である。
【図8】掌形幅と指先幅を求める様子を例示する図である。
【図9】指数対応テーブルを例示する図である。
【図10】制御信号対応テーブルを例示する図である。
【図11】掌形比と制御信号を対応させたテーブルを例示する図である。
【図12】人物データを4つの領域に分けた状態を例示する図である。
【図13】領域を複数に分けた場合の処理のフローを示す図である。
【図14】領域を複数に分けた場合の処理のフローを示す図である。
【図15】領域毎の指数対応テーブルを例示する図である。
【図16】領域データと指数に対応する制御信号テーブルを例示する図である。
【図17】領域データと掌形比に対する制御信号を直接関連付けたテーブルを例示する図である。
【符号の説明】
【0115】
10 画像処理装置
12 サブカメラ
14 ビデオセレクタ
16 合成器
18 レコーダ
20 カメラ
30 制御表示器
32 分配器
34 モニタ
45 スクリーン


【特許請求の範囲】
【請求項1】
指示者の腕先データを検出する工程と、
前記腕先データから掌形幅を検出する工程と、
前記腕先データから指先幅を検出する工程と、
前記指先幅と前記掌形幅の比を掌形比として求める工程と、
前記掌形比に対応した制御信号を出力する工程を有する画像認識による機器制御方法。
【請求項2】
指示者の腕先データを検出する工程と、
前記腕先データから掌形幅を検出する工程と、
前記腕先データから指先幅を検出する工程と、
前記指先幅と前記掌形幅の比を掌形比として求める工程と、
前記掌形比から指数を判定する工程と、
前記指数に対応した制御信号を出力する工程を有する画像認識による機器制御方法。
【請求項3】
指示者の上半身を含む画像データを得る工程と、
前記指示者の背景の画像データを前記上半身を含む画像データから差し引き、人物データを得る工程と、
前記人物データから腕先データを得る工程と、
前記腕先データから掌形幅を検出する工程と、
前記腕先データから指先幅を検出する工程と、
前記指先幅と前記掌形幅の比を掌形比として求める工程と、
前記掌形比に対応した制御信号を出力する工程を有する画像認識による機器制御方法。
【請求項4】
前記人物データを複数の領域に分割する工程と、
前記腕先データは前記複数の領域のどの領域に存在したかを示す領域データを検出する工程をさらに含み
前記制御信号を出力する工程は、
前記掌形比と前記領域データに対応した制御信号を出力する工程である請求項3記載の画像認識による機器制御方法。
【請求項5】
指示者の上半身を含む画像データを得る工程と、
前記指示者の背景の画像データを前記上半身を含む画像データから差し引き、人物データを得る工程と、
前記人物データから腕先データを得る工程と、
前記腕先データから掌形幅を検出する工程と、
前記腕先データから指先幅を検出する工程と、
前記指先幅と前記掌形幅の比を掌形比として求める工程と、
前記掌形比から指数を判定する工程と、
前記指数に対応した制御信号を出力する工程を有する画像認識による機器制御方法。
【請求項6】
前記人物データを複数の領域に分割する工程と、
前記腕先データは前記複数の領域のどの領域に存在したかを示す領域データを検出する工程をさらに含み
前記制御信号を出力する工程は、
前記指数と前記領域データに対応した制御信号を出力する工程である請求項5記載の画像認識による機器制御方法。
【請求項7】
前記領域に分割する工程は、
前記人物データの重心を求める工程と、
前記重心に基づいて前記人物データを複数の領域に分割する工程を含む請求項4または6の何れかの請求項に記載された画像認識による機器制御方法。
【請求項8】
前記制御信号は可視状態に表示する工程を含む請求項1乃至7のいずれかの請求項に記載された画像認識による機器制御方法。
【請求項9】
請求項1乃至8のいずれかの請求項に記載された工程を実行するプログラム。
【請求項10】
請求項9のプログラムを記録した記録媒体。
【請求項11】
複数の映像信号のうちの少なくとも1の映像信号を制御信号により選択する映像選択工程と、
前記制御信号を請求項1乃至7のいずれかの画像認識による機器制御方法によって得る工程を有するコンテンツ作成方法。
【請求項12】
前記映像選択工程で選択された前記映像信号を記録する工程を含む請求項11記載のコンテンツ作成方法。
【請求項13】
前記記録する工程は音声を記録する工程も含んだ請求項12記載のコンテンツ作成方法。
【請求項14】
指示者の掌形幅と指先幅の比率である掌形比と前記掌形比に対応する制御信号を記した制御信号テーブルを記憶したメモリと、
前記指示者の腕先データが入力され、
前記腕画像データから掌形幅と指先幅を求め、
前記掌形幅および指先幅の比率である掌形比を求め、
前記掌形比と前記制御信号テーブルから制御信号を得て、
前記制御信号を出力する制御部と
を有する画像認識による機器制御装置。
【請求項15】
指示者の掌形幅と指先幅の比率である掌形比と前記掌形比に対応する指数を記した指数判定テーブルと、
前記指数に対応する制御信号を記した制御信号テーブルとを記憶したメモリと、
前記指示者の腕から先の腕先データが入力され、
前記腕先データから掌形幅と指先幅を求め、
前記掌形幅および指先幅から求めた掌形比と前記指数判定テーブルから指数を求め、
前記指数と前記制御信号テーブルから対応する制御信号を得て、
前記制御信号を出力する制御部と
を有する画像認識による機器制御装置。
【請求項16】
指示者の掌形幅と指先幅の比率である掌形比と前記掌形比に対応する制御信号を記した制御信号テーブルと、前記指示者の背景の画像からなる背景データを記録したメモリと、
前記指示者の前記上半身を含む画像データが入力され、
前記画像データから前記背景データを差し引いて人物データを抽出し、
前記人物データから腕先データを抽出し、
前記腕先データから掌形幅と指先幅を求め、
前記掌形幅および指先幅の比率である掌形比を求め、
前記掌形比と前記制御信号テーブルから制御信号を得て、
前記制御信号を出力する制御部と
を有する画像認識による機器制御装置。
【請求項17】
前記制御信号テーブルは、前記人物データの中で前記腕先データを抽出した領域を示す領域データと前記掌形比に対応した制御信号を記した制御信号テーブルであり、
前記制御装置は、さらに
前記人物データを複数の領域に分割し、
前記腕先データは前記複数の領域のどの領域に存在したかを示す領域データを検出し、
前記制御信号を、
前記掌形比と前記領域データに基づき前記制御信号テーブルから得て出力する請求項16記載の画像認識による機器制御装置。
【請求項18】
指示者の掌形幅と指先幅の比率である掌形比と前記掌形比に対応する指数を記した指数判定テーブルと、
前記指数に対応する制御信号を記した制御信号テーブルと、
前記指示者の背景の画像からなる背景データ
を記録したメモリと、
前記指示者の前記上半身を含む画像データが入力され、
前記画像データから前記背景データを差し引いて人物データを抽出し、
前記人物データから腕先データを抽出し、
前記腕先データから掌形幅と指先幅を求め、
前記掌形幅および指先幅から求めた掌形比と前記指数判定テーブルから指数を求め、
前記指数と前記制御信号テーブルから対応する制御信号を得て、
前記制御信号を出力する制御部と
を有する画像認識による機器制御装置。
【請求項19】
前記制御信号テーブルは、前記人物データの中で前記腕先データを抽出した領域を示す領域データと前記指数に対応した制御信号を記した制御信号テーブルであり、
前記制御装置は、さらに
前記人物データを複数の領域に分割し、
前記腕先データは前記複数の領域のどの領域に存在したかを示す領域データを検出し、
前記制御信号を、
前記指数と前記領域データに基づき前記制御信号テーブルから得て出力する請求項18記載の画像認識による機器制御装置。
【請求項20】
前記制御信号は可視状態に表示する制御信号表示器をさらに有する請求項14ないし19のいずれかの請求項に記載された画像認識による機器制御装置。
【請求項21】
請求項13乃至18のいずれかに記載の画像認識による機器制御装置と、
前記画像認識による機器制御装置からの制御信号によって、
複数の映像信号のうちの少なくとも1の映像信号を選択するビデオセレクタとを有するコンテンツ作成システム。
【請求項22】
前記ビデオセレクタの出力を記録するレコーダをさらに有する請求項21記載のコンテンツ作成システム。
【請求項23】
前記レコーダは、さらに音声をも記録する請求項22記載のコンテンツ作成システム。





【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2009−3606(P2009−3606A)
【公開日】平成21年1月8日(2009.1.8)
【国際特許分類】
【出願番号】特願2007−162278(P2007−162278)
【出願日】平成19年6月20日(2007.6.20)
【出願人】(000125347)学校法人近畿大学 (389)
【出願人】(507206538)
【Fターム(参考)】