発明の目的および利点は、請求の範囲に具体的に記載された構成要素および組み合わせによって実現され達成される。
前述の一般的な説明および以下の詳細な説明は、典型例および説明のためのものであって、本発明を限定するためのものではない、と理解される。
本発明の非限定的な実施形態を、図面を参照して説明する。図面において、同様のコンポーネントおよび素子には同じ参照番号が付されている。
図1は、実施形態による、例えばサーバ・ラックのような作業対象または工事対象の設備または装置20における操作を監視するための概略的な構成(configuration)の例を示している。
図1において、設備または装置20には、例えばサーバおよび/またはネットワーク機器等が設置されている。設備または装置20において、例えばサーバおよび/または通信機器のような機器の設置、調整、交換、修理および撤去など作業または工事のために、設備または装置20の一部の操作領域または作業領域24に対して作業員が操作または作業を行うことがある。そのために、作業員は、周辺の操作または作業対象でない非操作領域または非作業領域26、27、28および29から、操作領域または作業領域24を視覚的に識別するために、両者の間の境界にマーキング30を施す。マーキング30は、例えば、長方形状または多角形状の形態で操作領域24を区画しまたは囲むように施される。そのマーキング30は、例えば、剥離可能なカラー・マーキング・テープ(養生テープ)を貼り、取り外し可能なカラー・マーキング・ロープを固定または接着し、またはラックのフレーム等に消去可能なカラー・マーカ(筆記具)で着色を施すなどして、形成してもよい。マーキング30の色は、周囲の色と識別可能な、例えば、緑色、黄色、赤色であってもよい。カラー・マーキング・テープやカラー・マーキング・ロープが、例えばラックの側板に接着または取り付けられ、ラック内に置かれている作業対象である装置20には直接触れていない場合、ラック内に置かれている装置20とカラー・マーキング・テープやカラー・マーキング・ロープとの間に空間が生じることがある。
作業員は、操作領域24に対して操作または作業を行い、非操作領域26〜29内の機器等に手または身体の一部が触れないように注意する。非操作領域26〜29に設置された機器に手などが触れると、その機器が障害を起こす危険性があり得る。しかし、マーキング30を施しても、作業員の手が非操作領域26〜29の機器に誤って触れて、設備または装置20の機器および/またはそれに関連するバスやネットワーク等に障害を発生させる可能性がある。
発明者は、操作領域24およびマーキング30をカメラで撮像し、撮像された画像を画像認識技術で認識することによって作業者の身体の非操作領域26〜29への誤った侵入を判定することができる、と認識した。また、発明者は、その撮像された画像を画像認識技術で認識することによって作業者の操作領域24の操作の適正さまたは不適切さを判定することができる、と認識した。発明者は、それによって、作業員の操作およびその監視を効率化することができる、と認識した。
図1において、複数のカメラ202、204、206、208および210が設備または装置20に配置される。カメラ202〜210は、例えばウェブ・カメラのようなライブ・カメラであってもよい。カメラ202〜208は、設備または装置20の正面側の操作領域24の方向を向いて、操作領域24と非操作領域26〜29の間を区画するマーキング30を撮像するように操作領域24に接近して分散配置される。それによって、作業者の非操作領域26〜29への誤った侵入を表す画像の捕捉が可能となり、または作業者の操作領域24内での適正な操作の画像の捕捉が可能となる。別のカメラ210は、設備または装置20における作業員の全体の操作を監視するために、操作領域24付近の映像を広く撮影するように配置される。
カメラ202〜210は、有線通信または無線通信で、例えばパーソナル・コンピュータのような情報処理装置100または200に結合される。カメラ202〜210は、ケーブルを介し、さらにUSBハブ146またはルータ若しくはハブ148を介して、情報処理装置100に結合されてもよい。情報処理装置100または200は、さらに有線通信または無線通信で遠隔通信用のネットワークに接続されてもよい。情報処理装置100、200は、監視装置または監視用の端末であってもよい。
図2Aは、情報処理装置100の概略的な構成(configuration)の例を示している。
情報処理装置100は、プロセッサ112、メモリ114、入出力インタフェース(I/O)116、内部バス、等を含む例えばパーソナル・コンピュータのようなコンピュータまたは装置であってもよい。プロセッサ112は、コンピュータ用のCPU(Central Processing Unit)であってもよい。プロセッサ112およびメモリ114は、入出力インタフェース116に結合されている。メモリ114には、例えば、主記憶装置および半導体メモリ等が含まれる。情報処理装置100は、さらに、入出力インタフェース(I/O)116に結合された、表示装置(DSP)122、スピーカ(SPK)124、入力部または入力装置126、記録媒体読み取り用のドライブ128、およびハードディスク・ドライブ(HDD)130を含んでいる。入力部126は、例えばキーボード、マウスまたはタッチパッドのようなポインティング・デバイス、およびタッチパネルを含んでいてもよい。ドライブ128は、例えば光ディスクのような記録媒体129を読み取るために設けられている。情報処理装置100は、さらに、入出力インタフェース(I/O)116に結合された、USBインタフェース(USB I/F)142、およびネットワーク・インタフェース(NW I/F)144を含んでいる。情報処理装置100において、USBインタフェース142および/またはネットワーク・インタフェース144は、少なくともカメラ202〜210からの画像信号を入力する入力部としても機能してもよい。
情報処理装置100において、表示装置122、スピーカ124、入力部126およびドライブ128は、情報処理装置100の外部にあって、外部要素として情報処理装置100に結合されてもよい。
プロセッサ112は、操作監視機能を含む例えば集積回路として実装された専用のプロセッサであってもよい。また、プロセッサ112は、メモリ114および/またはハードディスク・ドライブ130に格納された操作監視機能を有するアプリケーション・プログラムに従って動作するものであってもよい。アプリケーション・プログラムは、記録媒体129に格納されていて、ドライブ128によって記録媒体129から読み出されて情報処理装置100にインストールされてもよい。
カメラ202〜210は、USBケーブルによって、USBインタフェース142および任意にUSBハブ146を介して情報処理装置100に結合される。情報処理装置100は、ネットワーク・インタフェース144を介し、さらに外部ネットワーク5を介して、監視センタに設置された監視センタ装置300に接続されてもよい。監視センタ装置300は、例えばパーソナル・コンピュータのようなコンピュータであってもよく、監視員の操作に従って、情報処理装置100からカメラ210および任意にカメラ202〜208によって捕捉された画像情報を受信して、その画像を表示装置に表示してもよい。
図2Bは、情報処理装置100のプロセッサ112の概略的な構成(configuration)の例を示している。
プロセッサ112は、例えば、制御部1120、設定部1122、画像生成部1124、領域決定部1126、動体検出部1128、動体静止判定部1130、状態判定部1132、信号発生部1134、およびその他の処理部1136を含んでいてもよい。処理部1136には例えば通信処理部が含まれていてもよい。制御部1120は、設定部1122、画像生成部1124、領域決定部1126、動体検出部1128、動体静止判定部1130、状態判定部1132、信号発生部1134および処理部1136に制御信号を供給して、これらの要素の動作を制御してもよい。
図3は、別の情報処理装置102の概略的な構成(configuration)の例を示している。図3において、情報処理装置102は、図2Aの情報処理装置100の要素112〜144を含んでいる。情報処理装置102のプロセッサ112は、図2Bに例示された情報処理装置100のプロセッサ112と同様の構成(configuration)を含んでいてもよい。
図3において、情報処理装置102は、ネットワーク・インタフェース144およびルータまたはハブ148を介してカメラ202〜210に結合される。情報処理装置102のその他の構成は、図2Aの情報処理装置100のものと同様である。ネットワーク・インタフェース144およびルータまたはハブ148は、有線通信または無線通信用であってもよい。
図4は、カメラ202〜208の1つによって撮影された画像400、および操作監視機能用のソフト・キー412、414、416、418、420、422および428を含む、表示装置122上の画面の例を示している。画像400は、操作領域24を囲むマーキング30の物体の映像と、その隣接の非操作領域26〜29の各部分の映像とを含んでいる。マーキング30は、例えば天井の照明器具からの光を反射して、1つ以上の白く光る部分32を含むことがある。
ソフト・キー412は、情報処理装置100または102の操作監視機能を初期化するコマンドを入力するためのものである。ソフト・キー414は、操作監視機能の手動設定モードを設定するコマンドを入力するためのものである。ソフト・キー416は、マーキング30によって区画される非操作領域26〜29と、それ以外の操作領域24を含む領域とを表示するための領域確認用のコマンドを入力するためのものである。ソフト・キー418は、操作監視機能の通常の操作監視モードを開始するためのコマンドを入力するためのものである。ソフト・キー420は、操作監視機能における作業員の正常操作を確認するための正常操作確認モードを設定するコマンドを入力するためのものである。複数のソフト・キー422は、表示装置122に表示される画像400を撮影する監視用のカメラ202〜210の1つを選択するコマンドを入力するためのものである。
作業員は、図1に示すような形態で設備20にマーキング30を設けた後、設備20の操作領域24の周りにカメラ202〜210を取り付けて、カメラ202〜210を通信ケーブルで情報処理装置100または102に結合させる。作業員は、必要に応じて、情報処理装置100または102を外部ネットワーク5に接続してもよい。次いで、作業員は、情報処理装置100または102上で操作監視機能または操作監視用のアプリケーションを起動する。作業員は、操作監視機能の初期化の前または初期化処理中に操作監視機能の設定の調整を行ってもよい。作業員は、カメラ202〜208を選択し、表示装置122の画像400で確認しながら、カメラ202〜208の配置および角度を調整することによって、マーキング30に対するカメラ202〜208の視野を調整する。作業員は、画像400を回転または反転させるなどして、画像400の操作領域24および非操作領域26〜29を調整、変更または編集してもよい。
プロセッサ112(またはその操作監視機能)は、初期化処理をカメラ202〜208の各々に対して順次行う。初期化処理において、プロセッサ112は、マーキング30の或る端縁を認識して、その端縁より或る方向に位置する領域を非操作領域26〜29と決定する。その或る方向に位置する領域は、例えば、カメラ202〜208に近い側にあるマーキング30の端縁34、35より下、左下、右下上、右または左の領域であってもよい。カメラ202〜208の各画像400について各カメラに近い側にあるマーキング30の端縁34、35を選択しそれを境界として非操作領域26〜29とそれ以外の領域を決定することによって、非操作領域26〜29の決定と、非操作領域26〜29における操作の監視とを単純化できる。ここでは、例示のために、その或る方向に位置する領域は、マーキング30の下側の端縁34、35より下の領域と仮定する。また、プロセッサ112は、マーキング30を認識して、マーキング30の端縁よりその或る方向とは反対の方向に位置する領域を、操作領域24を含む領域と決定してもよい。ここでは、その反対の方向に位置する領域は、マーキング30の下側の端縁34、35より上の領域と仮定する。代替形態として、プロセッサ112は、カメラ202〜208に2番目に近い側にあるマーキング30の端縁38、39をも選択し、破線で示されたその端縁34、35と端縁38、39の間にある線33を境界として非操作領域26〜29とそれ以外の領域を決定してもよい。代替形態として、プロセッサ112は、マーキング30の外側の端縁34〜37によって囲まれた領域を操作領域24と決定してもよい。
プロセッサ112は、決定された端縁または2つ端縁の交点Iが、画像400の中心点Cの或る半径距離の範囲にない場合、画像400を撮影したカメラ202〜208の配置および角度を調整するよう指示してもよい。その指示は、スピーカ124および/または表示装置122によって音響的および/または視覚的に行われる。決定された端縁または2つ端縁の交点または角Iを画像400の中心点C付近に配置することによって、操作監視機能による非操作領域26〜29における操作の誤りの画像認識の精度が高くなる。
図5は、情報処理装置100または102のプロセッサ112(またはその画像生成部1124)によって実行される、カメラ202〜208の1つによって撮影された連続する複数の画像Cの平均の画像Aを生成するためのフローチャートの例を示している。この平均の画像Aの生成は、操作監視機能の初期化処理においてまたは作業員の操作に従ってその動作中に、カメラ202〜208の各々によって撮影された複数の画像Cに対して行われてもよい。プロセッサ112または操作監視機能(以下、単にプロセッサともいう)は、カメラ202〜208の1つによって撮影された最新の画像Cを捕捉しメモリ114に格納する。
ステップ500において、プロセッサ112は、メモリ114における平均の画像Aのピクセルの値を初期化する。初期化されたピクセルの値は、全て0(ゼロ)のレベルまたは階調である。
ステップ502において、プロセッサ112は、平均の画像Aの生成に使用した最新の画像Cの合計数nが所要数N(例えば、N=10または16)に達したかどうかを判定する。ステップ502において、画像Cの数nが所要数Nに等しいと判定された場合は、手順はステップ512に進む。画像Cの数nが所要数Nに等しくないまたは所要数N未満であると判定された場合は、ステップ504において、プロセッサ112は、カメラ202〜208の中の選択された1つから最新の画像Cを取得してメモリ114に格納する。
ステップ506において、プロセッサ112は、画像Cの1フィールドまたは1フレーム分のピクセル値(レベル)に係数1/Nを乗算して、平均の画像Aの対応するフィールドまたはフレームのピクセル値に加算する。ステップ508において、プロセッサ112は、平均の画像Aに累積的に加算した画像Cの数nに1を加算する(n=n+1)。
ステップ510において、プロセッサ112は、例えば100msのような或る時間遅延を生じさせる。その後、手順はステップ502に戻る。ステップ502〜510は、連続するN個の最新の画像Cの平均の画像Aが決定されるまで繰り返される。平均の画像Aを用いることによって、画像Aにおけるノイズが低減または除去できる。
ステップ512において、プロセッサ112は、その決定された平均の画像Aを表す1フィールドまたは1フレーム分のピクセル値をメモリ114に格納する。
図5の平均の画像Aの生成は、例えば1時間毎に定期的に行ってもよい。それによって、周囲の明るさの条件の変化した場合に、新しい平均の画像Aを生成することができる。作業員の操作中に画像Aを更新する場合、プロセッサ112は、ステップ504において、最初の画像Aと最新の画像Cを比較して画像認識して、その画像Cにおける動体映像を除く背景部分(領域)に、画像Aにおけるその動体映像の対応位置にある背景部分(領域)を合成して画像Cとしてもよい。
図6は、表示装置122の画像402を表すデータを格納したメモリ114上の領域において、マーキング30を認識して非操作領域26〜29を決定するための手順の例を説明するためのものである。この場合、画像402は平均の画像Aを表している。
図6において、1組の点p1〜p13は、画像402の左半分の領域においてマーキング30の下側の端縁34を求めて探索する可能な開始点を示している。1組の点q1〜q13は、画像402の右半分の領域においてマーキング30の下側の端縁35を求めて探索する可能な開始点を示している。1組の点p1〜p13と1組の点q1〜q13は、中央の垂直線に関して左右の鏡面対称の関係にあってもよい。
画像402の枠の左下の隅を原点とし、枠の横と縦の長さを基準(1)とすると、枠内の1組の点p1〜p13の座標の位置は、例えば、次の通りである。
点p1=(4/16,1/5)、
点p2=(5/16,1/5)、
点p3=(6/16,1/5)、
点p4=(7/16,1/5)、
点p5=(8/16,1/5)、
点p6=(4/16,1/4)、
点p7=(5/16,1/4)、
点p8=(6/16,1/4)、
点p9=(7/16,1/4)、
点p10=(8/16,1/4)、
点p11=(1/6,1/4)、
点p12=(1/6+1/16,1/4)、
点p13=(1/6+2/16,1/4)。
ここで、一連の点p1〜p5は水平方向に互いに1/16だけ離れている。一連の点p6〜p13も水平方向に互いに1/16だけ離れている。一連の点p11〜p13も水平方向に互いに1/16だけ離れている。1組の点q1〜q13について、画像402の枠の右下の隅を原点として、1組の点p1〜p13と対称の位置にある。
プロセッサ112または領域決定部1126は、矢印で示されているように、点p1〜p13の1つを開始点とする垂直方向の直線に沿って上向きに画像402の枠の上辺に向かって各ピクセルの色(色相および階調)を検査して、マーキング30の下側の端縁34を求めて探索する。プロセッサ112(領域決定部1126)は、最初の点(例えば、p1、p2)から探索を開始してもマーキング30の下側の端縁34を識別または検出できない場合には、次の点(例えば、p2、p3)から探索を再度開始してマーキング30の下側の端縁34の識別を試みる。それによって、1組の点p1〜p13のいずれかについてマーキング30の下側の或る長さ(例えば、30ピクセル長)の端縁302が識別される。
その後、同様に、プロセッサ112(領域決定部1126)は、点q1〜q13の1つを開始点とする垂直方向の直線に沿って上向きに画像402の枠の上辺に向かって各ピクセルの色(色相および階調)を検査してマーキング30の下側の端縁35を求めて探索する。それによって、1組の点q1〜q13のいずれかについてマーキング30の下側の或る長さの端縁306が識別される。端縁302および306は、直線状であると仮定してもよい。
プロセッサ112(領域決定部1126)は、さらに、メモリ114上の領域において、マーキング30の下側の端縁302、306の線分を延長して、マーキング30の下側の延長された端縁または境界線304、308をそれぞれ決定する。境界線304、308は、端縁302、306の線分を直線的に延長したものであってもよい。この場合、プロセッサ112(領域決定部1126)は、図7において暗い陰影が施された端縁304、308の下側の領域を非操作領域26〜29と決定し、非操作領域26〜29を表す画像Dのピクセル位置を表すデータをメモリ114上の領域に格納する。画像Dは1フィールドまたはフレームのデータであってもよい。
図7は、表示装置122の画像402におけるマーキング30の下側の非操作領域26〜29を表す画像Dの映像404の例を示している。
初期化処理において、プロセッサ112(領域決定部1126)は、カメラ202〜208の各々に対して、非操作領域26〜29が決定されたときに、作業員による確認のために画像404を表示してもよい。画像404は、カメラ画像404の次の1つを選択するソフト・キー422がクリックされまで、または或る時間期間だけ表示されてもよい。また、作業員は、表示装置122の画面において領域確認用のソフト・キー416をクリックすることによって、暗い陰影で表される下側の非操作領域26〜29を確認してもよい。
初期化処理において、非操作領域26〜29の端縁304および308が適切に決定できないこと、または端縁304および308の決定に失敗することがあり得る。そのような場合、作業員は、手動設定用のソフト・キー414をクリックして手動設定モードを設定してもよい。この場合、作業員は、入力部126の例えばポインティング・デバイスで端縁304および308を表す直線を入力して、下側の非操作領域26〜29を決定することができる。プロセッサ112(画像生成部1124)は、その非操作領域26〜29を表す画像Dをメモリ114上の領域に格納する。初期化処理において、作業員は、画像402におけるマーキング30の映像中の1つ以上のピクセルを、例えばポインティング・デバイスで指定して、マーキング30の色(色相および階調)を設定してもよい。代替形態として、作業員は、或る色パレットの中からマーキング30の色として使用する色(色相および階調)を選択してもよい。それによって、プロセッサ112(設定部1122)は、メモリ114上の領域にマーキング30の特定の色を表すデータを格納することができる。このような非操作領域26〜29の決定は、プロセッサ112の領域決定部1126または操作監視用のアプリケーション・プログラムの一部で実現される。
図8Aおよび8Bは、情報処理装置100または102のプロセッサ112によって実行される、メモリ114上の表示メモリ領域上で画像402のマーキング30を識別して非操作領域26〜29を決定するためのフローチャートの例を示している。この非操作領域26〜29の決定は、プロセッサ112の領域決定部1126または操作監視用のアプリケーション・プログラムの一部で実行される。非操作領域26〜29の決定は、操作監視機能の初期化処理において、図5のフローチャートによる平均の画像Aの生成の後で、カメラ202〜208の各々によって撮影された最新の画像Cに対して行われる。
図8Aを参照すると、ステップ522において、プロセッサ112は、メモリ114から平均の画像Aまたは最新の画像Cを表すデータと、左側の探索開始点p1〜13の中の最初の点p1または次の点p2〜p13を表すデータとを読み込む。ステップ524において、プロセッサ112は、画像AまたはC上でマーキング30の境界を求めて上方向に探索する。そのために、プロセッサ112は、画像AまたはCのピクセルを、探索開始点p1〜p13からピクセル単位で上向きに順次移動して、マーキング30の特定の色(色相および階調)を表すピクセル値を求めて探索する。
ステップ526において、プロセッサ112は、マーキング30の色(色相および階調)の境界を検出したかどうかを判定する。ステップ526において境界が検出されなかったと判定された場合は、手順はステップ522に戻る。
ステップ526において境界が検出されたと判定された場合は、ステップ528において、プロセッサ112は、マーキング30の色を有する最初および次の各ピクセルの隣接位置にある左、上、左上および左下の複数のピクセルの色(色相および階調)を検査する。マーキング30のピクセルの色は、許容誤差の範囲内のものであれば、マーキング30のピクセルと判定してよい。プロセッサ112は、その検査を複数の隣接ピクセルに対して繰り返し実行することによって、マーキング30の下側端縁302に沿ってその境界線を上向きおよび左方向にトレースし検出する。
ステップ530において、プロセッサ112は、トレースの距離が或る閾値の距離(例えば、30ピクセル長)を超えたかどうかを判定する。ステップ530においてトレースの距離が閾値の距離を超えなかったと判定された場合は、手順はステップ522に戻る。
ステップ530においてトレースの距離が閾値の距離を超えたと判定された場合は、ステップ532において、プロセッサ112は、下側端縁302を延長し、その延長線を現在の境界線304として決定してメモリ114に格納する。その後、手順は図8Bのステップ542に進む。
図8Bを参照すると、ステップ542において、プロセッサ112は、メモリ114から右側の探索開始点q1〜q13の中の最初の点q1または次の点q2〜q13を表すデータを読み込む。ステップ544において、プロセッサ112は、ステップ522におけるのと同様に、画像AまたはC上でマーキング30の境界を求めて上方向に探索する。
ステップ546において、プロセッサ112は、マーキング30の色の境界を検出したかどうかを判定する。ステップ546において境界が検出されなかったと判定された場合は、手順はステップ542に戻る。
ステップ546において境界が検出されたと判定された場合は、ステップ548において、プロセッサ112は、ステップ526と同様に、マーキング30の色を有する最初および次の各ピクセルの隣接位置にある右、上、右上および右下の複数のピクセルの色を検査する。プロセッサ112は、その検査を複数の隣接ピクセルに対して繰り返し実行することによって、マーキング30の下側端縁306に沿ってその境界線を上向きおよび右方向にトレースし検出する。
ステップ550において、プロセッサ112は、トレースの距離が或る閾値距離を超えたかどうかを判定する。ステップ550においてトレースの距離が閾値距離を超えなかったと判定された場合は、手順はステップ542に戻る。
ステップ550においてトレースの距離が閾値の距離を超えたと判定された場合は、ステップ552において、プロセッサ112は、下側端縁306を延長し、その延長線を現在の境界線308として決定してメモリ114に格納する。
ステップ554において、プロセッサ112は、境界線304および308の下側の非操作領域(26〜29)を操作禁止領域26〜29と決定する。プロセッサ112は、図7の境界線304、308と非操作領域または操作禁止領域26〜29とを表す画像Dのデータをメモリ114に格納する。
プロセッサ112は、ステップ522において、さらに、許容誤差の範囲でマーキング30の色(例えば、緑)を有するピクセルに囲まれたまたは挟まれた白く光る部分32のピクセルの色をマーキング30の色に置換してもよい。それによって、下側端縁302、306の検出が容易になる。
代替形態としてまたはそれに加えて、ステップ528および548の境界線のトレースにおいて、一般化ハフ変換を用いて、複数の短い境界線の間にある空白を補間して長い境界線を推定してもよい。一般化ハフ変換は、始点からの距離と角度のみに基づいて直線を抽出する通常のハフ変換とは異なり、始点と終点を有する線分を抽出することができる。マーキング30の下側端縁302、306の座標を一般化ハフ変換することによって、可能性ある短い複数の線分を下側端縁302、306として抽出できる。そのような抽出された複数の線分の中で最も長いものが下側端縁302、306として選択されてもよい。代替形態として、そのような抽出された複数の線分の最も長い3乃至6本の線分の中でほぼ同一直線上にあるものが、下側端縁302、306として選択されてもよい。この場合、暫定的に選択した線分を延長して直線を生成して、その直線と複数の線分の交点が複数の線分に距離的に近い直線が、下側端縁302、306として選択されてもよい。あるいは、暫定的に選択した線分を延長して直線を生成して、複数の線分との間の角度差が小さいそのような直線が下側端縁302、306として選択されてもよい。それによって、下側端縁302、306の検出が容易になる。一般化ハフ変換の技術は、例えば、Duda他“Use of the Hugh Transformation To Detect Lines and Curves in Pictures”, Graphics Image Processing, Communication of the ACM, Issue 1, November 1970, revised January 1971に記載されている。
図9Aは、カメラ202〜208の1つによって撮影されて生成された平均の画像Aまたは最新の画像Cにおいて、画像Dの操作領域24内に留まる動体映像40と、画像Dの非操作領域26〜29に侵入した動体映像42、44とを含む画像406の例を示している。動体映像40、42、44の動体は、例えば作業員の身体の一部、手または指、または装着した手袋、等であってもよい。
図9Aを参照すると、プロセッサ112(状態判定部1132)は、動体映像40全体が境界線304および308より上または奥にあると判定した場合、その動体が操作領域24内に留り、即ち非操作領域26〜29に侵入していない、と判定する。
プロセッサ112(状態判定部1132)は、動体映像42、44の一部が非操作領域26〜29中に位置すると判定した場合、さらに動体映像42が境界線304、308を横切って通っているか、即ち境界線304、308を分断している(貫通)かまたは境界線304、308で分断されているかを判定する。
動体映像42が境界線304、308を横切って通って非操作領域26〜29中に達していると判定した場合、プロセッサ112(状態判定部1132)は、3次元的に見て動体が非操作領域26〜29に侵入した、と判定する。一方、動体映像44が境界線304、308で分断されまたは境界線304、308を横切らずに非操作領域26〜29中に孤立して位置していると判定した場合、3次元的に見て動体が操作領域24内に留り、即ち非操作領域26〜29に侵入していない、と判定する。動体映像44では、3次元的に見て、動体が操作領域24内の奥に深く侵入しているだけで、操作領域24内に留り、非操作領域26〜29に侵入していない、と考えられる。
図10Aおよび10Bは、プロセッサ112によって実行される、各カメラ202〜208によって撮影され生成された画像AまたはCにおいて動体映像40、42、44が非操作領域26〜29に侵入したかどうかを判定するためのフローチャートの例を示している。この判定を行う操作監視は、図9Aの表示装置122の画面において、ソフト・キー418をクリックすることによって、通常の操作監視モードにおいて実行される。
図10Aを参照すると、ステップ702において、プロセッサ112(状態判定部1132)は、カメラ202〜208の各々に関して操作禁止領域を表す画像Dのデータをメモリ114から読み込む。ステップ704において、プロセッサ112(状態判定部1132)は、カメラ202〜208の各々に関する平均の画像Aのデータをメモリ114から取得する。画像Aは、設備20の周囲の明るさの変化を反映するために新しい画像であることが好ましい。ステップ706において、プロセッサ112(状態判定部1132)は、カメラ202〜208の各々について最新の画像Cのデータをメモリ114から取得する。画像Aは、最新の画像Cにおける動体画像Mの背景画像に対応する。
ステップ708において、プロセッサ112(動体検出部1128)は、カメラ202〜208の各々について、最新の画像Cのデータを平均の画像Aのデータと比較して、最新の画像Cにおける平均の画像Aのデータと相違する部分の位置のピクセルを抽出する。プロセッサ112(動体検出部1128)は、その相違する部分がランダムなノイズでなく或る閾値の面積(例えば、100ピクセル)を超える1つの領域として存在すれば、その抽出されたピクセルを動体映像40、42、44として含む動体画像Mのデータを生成する。動体画像Mは、動体映像40、42、44の領域以外のピクセル値が0(ゼロ)であるような1フィールドまたはフレームのデータである。
ステップ848において、プロセッサ112(状態判定部1132)は、有効な動体画像Mのデータが存在するかどうかを判定する。有効な動体画像Mのデータが存在しないと判定された場合は、手順はステップ706に戻る。
ステップ848において有効な動体画像Mのデータが存在すると判定された場合は、プロセッサ112(状態判定部1132)は、ステップ850において、動体画像Mのデータを、操作禁止領域を表す画像Dのデータと比較する。
図10Bを参照すると、ステップ852において、プロセッサ112(状態判定部1132)は、カメラ202〜208の1つ以上の動体画像Mの各々について、対応する画像Dの操作禁止領域26〜29に動体映像40〜44が存在するかどうかを判定する。いずれの画像Dの操作禁止領域26〜29にも動体映像40が存在しないと判定された場合、手順は図10Aのステップ706に戻る。
ステップ852においていずれかの画像Dの操作禁止領域26〜29に動体映像42、44が存在すると判定された場合、手順はステップ854に進む。ステップ854において、プロセッサ112(状態判定部1132)は、動体映像42、44とマーキング30の映像または境界線304、308との重なりまたは連続性の関係(幾何学的関係)を認識する。
図9Bは、図9Aの画像406の一部を拡大した図であり、ステップ854において、動体映像42または44がマーキング30の映像または境界線304、308を貫通して連続しているかどうかを認識する方法の例を示している。
図9Bにおいて、プロセッサ112(状態判定部1132)は、動体映像42または44を通過するまたは動体映像42または44と接する境界線304または308の線分を求め、その線分の中点fcを求める。次いで、プロセッサ112(状態判定部1132)は、動体映像42または44において、中点fcを通る直線上にある、境界線304、308より下にある動体映像42または44上の点fdと、マーキング30上の点fuとを選択する。点fdは、中点fcから例えば下、左下または右下の位置にあり、中点fcから或る数のピクセル分の距離(例えば、4ピクセル分)だけ離れている。点fuは、中点fcから例えば上、右上または左上の位置にあり、中点fcから或る数のピクセル分の距離(例えば、4ピクセル分)だけ離れている。
プロセッサ112(状態判定部1132)は、点fdと中点fcの間にあるピクセルの色(色相および階調)と、中点fcと点fuの間にあるピクセルの色を判定する。点fdと中点fcの間にあるピクセル色が許容誤差の範囲で中点fcと点fuの間にあるピクセルの色と等しい場合、プロセッサ112(状態判定部1132)は、動体映像42がマーキング30を貫通していると判定する。この判定は、さらに、中点fcと点fuの間にあるピクセルの色がマーキング30の色でないことを追加的条件として行ってもよい。点fdと中点fcの間にあるピクセル色が、許容誤差の範囲を超えて中点fcと点fuの間にあるピクセルの色と異なる場合、プロセッサ112(状態判定部1132)は、動体映像44がマーキング30を貫通していないと判定する。この判定は、さらに、中点fcと点fuの間にあるピクセルの色が、許容誤差の範囲内でマーキング30の色であることを追加的条件として行ってもよい。
図10Bを再び参照すると、ステップ856において、プロセッサ112(状態判定部1132)は、操作禁止領域26〜29に存在する動体映像40〜44がマーキング30の映像または境界線304、308を貫通しているか(横切って伸びているか)どうかを判定する。いずれの動体画像Mについても動体映像40、44がマーキング30の映像または境界線304、308を貫通しておらず、または境界線304、308で分断されていると判定された場合には、手順は図10Aのステップ706に戻る。
ステップ856においていずれかの動体画像Mについて動体映像42がマーキング30の映像または境界線304、308を貫通していると判定された場合、プロセッサ112(信号発生部1134)は、ステップ858において警告を表す信号を発生する。従って、カメラ202〜208で捕捉され生成されたいずれかの画像Cについて操作禁止領域に動体が侵入して論理和(OR)の形態で非操作領域26〜29への侵入の条件が成立した場合に、警告を表す信号が発生される。
プロセッサ112(信号発生部1134)は、警告を表す信号をスピーカ124に供給してスピーカ124に或る時間の長さ(例えば、2秒)だけ例えばブザー音のような警告音を発生させてもよい。代替的にまたは追加的に、プロセッサ112(信号発生部1134)は、警告を表すメッセージを表示装置122に表示してもよい。それによって、作業員は、操作禁止領域26〜29における誤った動体の侵入を確認または認識することができる。その警告を表す信号またはメッセージは、プロセッサ112(制御部1120、処理部1136)によって監視センタ装置300に送信されてもよい。それによって、作業員の誤操作を監視センタ装置300で監視することができる。その後、手順は、図10Aのステップ706に戻る。
ステップ858において警告を表す信号を発生する代わりに、またはそれに加えて、ステップ857において、プロセッサ112(信号発生部1134)は、正常操作であることを表す信号を発生してもよい。即ち、ステップ857は、ステップ852において動体映像40は存在するがいずれの画像Dの操作禁止領域26〜29にも存在しないと判定された場合に、実行される。また、ステップ857は、ステップ856においていずれかの動体画像Mについて動体映像44が存在するがマーキング30の映像または境界線304、308を貫通するものはなく、または境界線304、308で分断されていると判定された場合に、実行される。一方、ステップ858が実行されない場合、ステップ856においていずれかの動体画像Mについて動体映像42がマーキング30の映像または境界線304、308を貫通していると判定された場合には、手順は図10Aのステップ706に戻る。
プロセッサ112(信号発生部1134)は、正常操作を表す信号を発生し、スピーカ124に音信号を供給して或る時間の長さ(例えば、1秒)だけ例えばチャイム音のような音を発生させてもよい。代替的にまたは追加的に、プロセッサ112(信号発生部1134)は、正常操作を表すメッセージを表示装置122に表示してもよい。それによって、作業員は、操作領域24における適正な操作を確認または認識することができる。その正常操作を表す信号またはメッセージは、プロセッサ112(制御部1120、処理部1136)によって監視センタ装置300に送信されてもよい。それによって、作業員の誤操作を監視センタ装置300で監視することができる。その後、手順は、図10Aのステップ706に戻る。
一方、作業員は、設備または装置20において、操作領域24が分かりにくい場合、例えば操作領域24が複数分散してある場合または非常に高い位置にある場合に、実際の操作前に、操作しようとする部分の位置が適切な操作領域24内にあるかどうかを予め確認したいことがある。そのような場合、初期化処理の後、作業員は、ソフト・キー418をクリックして、操作監視機能を正常操作確認モードに設定する。プロセッサ112(信号発生部1134)は、正常操作確認モードで、動体映像40、44が3次元的に操作領域24内で或る時間だけ静止した場合に、上述したような正常操作を表す信号を発生してもよい。また、プロセッサ112(信号発生部1134)は、正常操作確認モードで、動体映像42が3次元的に非操作領域26〜29で或る時間だけ静止した場合に、上述したような警告を表す信号を発生させてもよい。
図11A〜11Cは、プロセッサ112によって実行される、正常操作確認モードにおいて動体映像42〜44が正常に操作領域24内にあるかどうかを確認するためのフローチャートの例を示している。この場合、画像Aと連続する複数N個の画像Cとを合成した合成画像Bを用いて、動体画像42〜44が判定される。そのNの値は、図5のNと異なる値であってもよい。
図11Aを参照すると、ステップ702〜706は図10のものと同様である。この場合、ステップ706において、プロセッサ112(状態判定部1132)は、カメラ202〜208の各々について1つまたは連続する複数の最新の画像Cのデータをメモリ114から取得してもよい。複数の画像Cの数nは、2個〜所定の数N(例えば、N=10または16)の範囲の数であってもよい。連続する複数の画像Cのデータは、或る時間間隔、例えば100ms間隔のものであってもよい。
ステップ808において、プロセッサ112(画像生成部1124)は、カメラ202〜208の各々について最新の各画像Cのデータを平均の画像Aのデータと比較して、最新の各画像Cにおける平均の画像Aのデータと許容誤差の範囲を超えて相違する部分の位置のピクセルを抽出する。プロセッサ112(画像生成部1124)は、その相違する部分がランダムなノイズでなく或る閾値の面積を超える1つの領域として存在すれば、その抽出されたピクセルを動体映像40、42、44として含む動体画像Mのデータを生成する。
プロセッサ112(状態判定部1132)は、さらに、画像Dに基づいてまたは画像A、CおよびDに基づいて、動体画像Mが、操作禁止領域26〜29には存在せず境界線304、308より上にだけある動体映像40を含んでいる場合に、それを動体画像M’として決定してもよい。動体画像M’は、後で説明する図11A〜11Cの代替形態において動体画像Mの代わりに使用される。
図11Bを参照すると、ステップ820において、プロセッサ112(状態判定部1132)は、動体画像Mが存在するかどうかを判定する。ステップ820において動体画像Mが存在しないと判定された場合は、プロセッサ112(状態判定部1132)は、ステップ822において、メモリ114のフラグ記憶領域に正常操作を通知するためのフラグが設定されまたはオン状態にあるかどうかを判定する。フラグが設定されていないと判定された場合、手順は図11Aのステップ706に戻る。
ステップ822においてフラグが設定されていると判定された場合、プロセッサ112(状態判定部1132)は、ステップ824において、現在の或る合成された画像Bを破棄し、正常操作通知用のフラグを解除しまたはオフ状態にする。ここで、合成された画像Bは、背景としての平均の画像Aに、最新の各画像C中の各動体画像Mを或る重み付けで累積的に加算して生成された画像である。画像Bは後で説明する形態で生成される。その後、手順はステップ706に戻る。
ステップ820において動体画像Mが存在すると判定された場合、プロセッサ112(状態判定部1132)は、ステップ826において、フラグが解除されまたはオフ状態にあるかどうかを判定する。フラグが解除されていないまたはオン状態にあると判定された場合、手順はステップ706に戻る。それによって、正常操作を表す信号の生成を表すフラグが設定状態にある期間に、正常操作を表す信号が重複してまたは冗長に生成されるのを抑止することができる。
ステップ826においてフラグが解除されているまたはオフ状態にあると判定された場合、プロセッサ112(状態判定部1132)は、ステップ828において、合成された画像Bが存在するかどうかを判定する。合成された画像Bが存在しないと判定された場合、プロセッサ112(画像生成部1124)は、ステップ830において、メモリ114中の画像Aをコピーして新しい初期の画像Bを生成してメモリ114に格納する。プロセッサ112(画像生成部1124)は、さらに、初期の画像Bに各動体画像Mを或る重み付けで加算することによって、動体画像Mで画像Bを更新してもよい。その後、手順はステップ706に戻る。
ステップ828において画像Bが存在すると判定された場合、プロセッサ112(画像生成部1124)は、ステップ840において、画像Bに動体画像Mを或る重み付けで加算することによって、動体画像Mで画像Bを更新する。次いで、プロセッサ112(状態判定部1132)は、最新の画像Cを合成された画像Bと比較する。
ステップ842において、プロセッサ112(動体静止判定部1130)は、画像Cが静止状態を表しているかどうかを判定する。そのために、例えば、プロセッサ112(動体静止判定部1130)は、画像Cのピクセル値(色相および階調)と画像Bの対応するピクセル値の間に誤差の許容範囲を超えて差異があるかどうかを判定してもよい。画像Cと画像Bの間に許容範囲を超えて差異があることは、動体映像Mが静止状態にないかまたは未だ動体映像Mの静止状態を決定できないことを表している。手のような動体が動いている場合には、連続的に取得された複数の画像Cが互いに異なるものとなり、画像(410)中の動体映像40はぼけたものとなり、画像Bと画像Cは許容範囲内で一致しない。また、合成された画像Cの数が或る数N(例えば、N=8または10)に満たない場合、画像410中の動体映像40は背景の画像Aの対応位置の部分と混合されて半透明状態となり、合成された画像Bと最新の画像Cは一致しない。
ステップ842において画像Cが静止状態を表していないと判定された場合は、プロセッサ112(動体静止判定部1130)は、ステップ844において、合計N個の動体画像Mが初期の画像Bと合成されたかどうかを判定する。N個の動体画像Mが合成されていないと判定された場合は、手順はステップ706に戻る。ステップ844においてN個の動体画像Mが合成されたと判定された場合は、プロセッサ112(画像生成部1124)は、ステップ846において、現在の画像Bを破棄し、メモリ114中の画像Aをコピーして初期の画像Bを再度生成してメモリ114に格納する。それによって、静止していない1つ以上の動体画像Mのぼけた動体映像40を含む画像Bを使用しないようにする。プロセッサ112(画像生成部1124)は、さらに、初期の画像Bに1つの最新の動体画像Mを或る重み付けで加算することによって、最新の動体画像Mで画像Bを更新してもよい。その後、手順はステップ706に戻る。代替形態として、ステップ842において画像Cが静止状態を表していないと判定された場合、ステップ844、846を実行することなく、手順はステップ706に戻ってもよい。
ステップ842において画像Cが静止状態を表していると判定された場合、手順は、図11Cのステップ850に進む。図11Bのステップ842において、画像Cと画像Bの間に許容範囲を超えた差異がないことは、連続する或る数N個の画像Cの期間にわたって動体が実質的に静止していることを表している。
図12Aおよび12Bは、合成された画像Bの更新の例を示している。
上述したように、初期の画像Bは画像Aと同じである。プロセッサ112(画像生成部1124)は、連続的に取得された1つ以上の最新の画像Cから生成された各動体画像Mの動体映像40〜44の位置の対応するピクセル値に或る重み付けwFを乗じて、重み付けされた動体画像Mwのピクセルを生成する。また、プロセッサ112(画像生成部1124)は、画像Bにおける動体画像Mの動体映像40〜44に対応する位置のピクセル値にだけ或る重み付けwBを乗じて、重み付けされた画像Bwのピクセルを生成する。プロセッサ112(画像生成部1124)は、さらに、動体画像Mw中の動体映像40〜44のピクセル値を、これと対応する位置の画像Bwのピクセル値に加算する。ここで、例えば、合成する画像Cの合計数×wF+wB=1である。その組合せは、例えば、或る数がN=16の場合、1つの画像Cに対して(wF=1/5、wB=4/5)である。例えば、16個の動体画像Mで画像Bを順次更新すると、同じ動体画像Mと初期の画像Bの比率は、0.97:0.03になり、その動体画像Mが概ね平均化(加重平均化)される。画像Bの各1回の更新において、より少ない数(例えば、1つ)の動体画像Mで画像Bを更新すると、プロセッサ112の処理負荷を時間的に分散できより均一にできる。その合成によって、最初の幾つかの期間は、図12Aの画像408に示されているような、画像Aまたは初期画像Bに近い薄い半透明の動体映像40〜44を含む画像Bが生成される。ステップ840において、より多くの最新の画像Cの動体画像Mで画像Bを更新することによって、図12Bの画像410に示されているような、より濃い半透明の動体映像40〜44を含む画像Bが生成される。
画像Aを初期の画像Bとして用いることによって、設備または装置20において明るさが変化して画像Cの明るさが変化しても、画像Bの背景画像を画像Aと同じにすることができる。それによって、画像Cと画像Bを比較する場合に、それらの背景部分の画像が同じになり、動体映像40〜44の比較が容易になる。
また、動体が動いている場合には、連続する複数N個の最新の画像Cおよびその動体映像40〜44が互いに異なり、画像410の動体映像40〜44がぼけ、特にその輪郭がぼけたものとなり、画像Bと画像Cの対応する位置のピクセル値は完全には一致しない。複数N個の動体映像40〜44が位置的に動いた場合、その輪郭付近の動き分の差の面積が誤差の許容範囲であれば、動体映像40〜44がほぼ静止していると判定してよい。動体がほぼ静止している場合には、連続する複数N個の最新の画像Cの対応するピクセル値が面積およびレベルの誤差の許容範囲内で同じになり、画像Bと画像Cの対応する大部分のピクセル値が実質的に一致する。
さらに、動体映像44が、境界線304および308より下の禁止領域26〜29にもあり、境界線304および308を貫通せず境界線304および308で分断されている場合にも、図9Aおよび9Bの場合と同様に、正常な操作と見なすことができる。
図11Cにおいて、ステップ842(YES)の後のステップ850〜856は、図10Aおよび10Bのものと同様である。ステップ852において、最新の動体画像Mが操作禁止領域26〜29に存在しないと判定された場合は、手順はステップ860に進む。ステップ856においていずれの動体画像Mについても動体映像40、44がマーキング30の映像または境界線304、308を貫通しておらず、または境界線304、308で分断されていると判定された場合に、手順はステップ860に進む。
ステップ860において、プロセッサ112(信号発生部1134)は、或る時間期間(例えば、2秒)だけメモリ114中のフラグを設定しまたはオン状態にして正常操作を表す信号を発生する。プロセッサ112(信号発生部1134)は、正常操作を表す信号を、スピーカ124に供給してスピーカ124に或る時間の長さだけ例えばチャイム音のような音を発生させてもよい。代替形態としてまたは追加的に、プロセッサ112(信号発生部1134)は、正常操作を表すメッセージを表示装置122に表示してもよい。その後で、プロセッサ112(信号発生部1134)は、フラグを解除しまたはオフ状態にする。それによって、作業員は、操作領域24における適正な操作を確認または認識することができる。その正常操作を表す信号またはメッセージは、プロセッサ112(制御部1120、処理部1136)によって監視センタ装置300に送信されてもよい。それによって、作業員の誤操作を監視センタ装置300で監視することができる。このようにして、3次元的に見て、動体が操作領域24内にあり、またはその奥に深く侵入しているだけで、操作領域24内に留り非操作領域26〜29に侵入していない場合にも、正常な操作であることを確認することができる。その後、手順はステップ706に戻る。
ステップ856においていずれかの動体画像Mについて動体映像42が境界線304、308を貫通していると判定された場合は、手順はステップ706に戻る。
図11Bのステップ860において正常操作を表す信号を発生する代わりにまたはそれに加えて、図11Cのステップ858において、プロセッサ112(信号発生部1134)は、警告を表す信号を発生してもよい。即ち、ステップ858は、ステップ856においていずれかの動体画像Mの動体映像42が境界線304、308を貫通していると判定された場合に、実行される。ステップ852において動体映像40が禁止領域26〜29に存在せず、またはステップ856においていずれの動体画像Mについても動体映像44がマーキング30の映像または境界線304、308を貫通していないと判定された場合、手順は図11Aのステップ706に戻ってもよい。この場合、ステップ860は実行されない。
代替形態として、図11A〜11Cのフローチャートにおいて、図12Aおよび12Bにおいて動体映像42および44が境界線304および308より下の禁止領域26〜29にある場合は、正常な操作と見なさないようにしてもよい。この場合、作業員は、操作領域24のマーキング30の面領域に例えば手を静止して置き、その奥に手を差し込むことなく、その位置が操作領域24にあることを確認する。この場合、ステップ820〜842において、動体画像Mの代わりに、境界線304および308より上の領域だけに動体映像40を含む動体画像M’が用いられ、図11Cのステップ850〜858が実行されず、ステップ842(YES)の後でステップ960が実行されてもよい。それによって、プロセッサ112の処理が簡単になり、その負荷が軽減される。
図11A〜11Cのフローチャートのステップ820〜856において、全てのカメラ202〜208で生成された画像Cについて3次元的に操作禁止領域26〜29に動体映像が侵入せずに、論理積で正常操作の条件が成立した場合に、ステップ860において正常操作を表す信号が生成される。ステップ820〜856において、いずれかのカメラ202〜208で生成された画像Cについて3次元的に操作禁止領域26〜29に動体映像が侵入し、論理和で誤り操作の条件が成立した場合に、ステップ858において警告を表す信号が生成される。
代替形態として、図11A〜11Cにおいて、画像Aの一部を背景として含む画像Bの代わりに、複数のN個の画像Cの動体画像Mを合成して生成した画像B’を用いてもよい。この場合、ステップ840において、比較のために、最新の画像Cの代わりにその画像Cの動体画像Mを用いて、動体画像Mを画像B’と比較してもよい。この場合、初期の画像B’のピクセル値は全て0(ゼロ)である。更新された画像B’は、画像Aのピクセルを含まず、即ち背景画像のピクセル値が全て0(ゼロ)となる。画像B’において、動体画像Mは、画像Bの更新と同じ形態で更新すればよい。
この場合、プロセッサ112(画像生成部1124)は、連続的に取得された各画像Cから生成された各動体画像Mの動体映像40〜44の位置のピクセル値に或る重み付けwFを乗じて、重み付けされた動体画像Mwのピクセルを生成する。プロセッサ112(画像生成部1124)は、さらに、動体画像Mw中の動体映像40〜44のピクセル値を、これと対応する位置の画像B’のピクセル値に加算して画像B’を更新する。例えば、或る数がN=8の場合、1つの動体画像Mに対してwF=1/8である。例えば、8つの動体画像Mで画像B’を順次更新すると、同じ動体画像Mの映像40〜44のピクセル位置の総和は8倍のピクセル値を有し、重み付けwF=1/8を乗じることによって、それが平均化される。
動体が動いている場合には、連続する複数N個の動体画像Mの動体映像40〜44が互いに異なり、画像B’または画像410の動体映像40〜44がぼけ、特にその輪郭がぼけたものとなり、画像B’と最新の動体画像Mの対応する位置のピクセル値は完全には一致しない。前述の画像Bと比較すると、画像B’のぼやけた輪郭付近のピクセル値のレベルまたは階調が小さくなり、場合によってはそのピクセルの色相が変化することがある。しかし、動体映像40〜44が位置的に動いた場合、その輪郭付近の動き分の差の面積が誤差の許容範囲であれば、動体映像40〜44がほぼ静止していると判定してよい。動体がほぼ静止している場合には、連続する複数N個の最新の動体画像Mの対応するピクセル値が面積およびレベルの誤差の許容範囲内で同じになり、画像B’と動体画像Mの対応する大部分のピクセル値が実質的に一致する。
設備または装置20における作業または工事が終了した後で、作業員は、終了を表すソフト・キー428をクリックし、カメラ202〜210を回収し、マーキング30を外す。
図5、8Aおよび8B、10Aおよび10B、11A〜11C、13A〜13Cに例示された各フローチャートの複数のステップは、それぞれの機能を実現する1つ以上の集積回路または装置(ユニット)で、また他の回路または装置とともにハードウェア実装することもできる。
ここで挙げた全ての例および条件的表現は、発明者が技術促進に貢献した発明および概念を読者が理解するのを助けるためのものであり、ここで具体的に挙げたそのような例および条件に限定することなく解釈され、また、明細書におけるそのような例の編成は本発明の優劣を示すこととは関係ない、と理解される。本発明の実施形態を詳細に説明したが、本発明の精神および範囲から逸脱することなく、それに対して種々の変更、置換および変形を施すことができる、と理解される。
以上の実施例を含む実施形態に関して、さらに以下の付記を開示する。
(付記1) 入力部を介して画像信号を取り込んで格納する記憶部と、
前記記憶部に格納された第1の画像信号の画像における境界線と、前記境界線によって区画される非操作領域とを決定する決定部と、
前記記憶部に格納された第2の画像信号における動体映像を検出する検出部と、
前記第2の画像信号の画像における前記検出された動体映像と前記境界線の重なり関係に基づいて、前記境界線に対する前記動体映像の状態を判定する判定部と、
前記判定された状態に基づいて信号を発生する信号発生部と、
を含む、情報処理装置。
(付記2) 前記判定部は、前記検出された動体映像が前記境界線を貫通していない場合には前記動体映像の状態が第1の状態にあると判定し、前記検出された動体映像が前記境界線を貫通している場合には前記動体映像の状態が第2の状態にあると判定するものであることを特徴とする、付記1に記載の情報処理装置。
(付記3) 前記判定部は、前記第2の画像信号において前記非操作領域に位置する前記検出された動体映像上の第1の位置から前記境界線を超えて前記非操作領域でない領域に位置する前記境界線に隣接する第2の位置までのピクセルの色を検出し、前記第1の位置から前記境界線までのピクセルの色と前記第2の位置までのピクセルの色が許容誤差の範囲で同じ色の値でなかった場合に、前記動体映像の状態が前記第1の状態にあると判定し、前記第1の位置から前記境界線までのピクセルの色と前記第2の位置までのピクセルの色が許容誤差の範囲で同じ色の値であった場合に、前記動体映像の状態が前記第2の状態にあると判定するものであることを特徴とする、付記2に記載の情報処理装置。
(付記4) 前記決定部は、前記第1の画像信号の画像において仮の非操作領域における或る開始点から或る方向に探索して特定の色の領域の境界を検出し、前記特定の色の領域の前記境界が少なくとも或る距離の範囲において存在することが検出された場合に、前記境界によって形成される線を延長して、前記延長された線を前記境界線の少なくとも一部として決定するものであることを特徴とする、付記1乃至3のいずれかに記載の情報処理装置。
(付記5) 前記判定部は、前記検出された動体の映像が静止状態にあった場合に、前記第2の画像信号の画像における前記検出された動体映像と前記境界線の重なり関係に基づいて、前記動体映像の状態を判定するものであることを特徴とする、付記1乃至4のいずれかに記載の情報処理装置。
(付記6) 入力部を介して画像信号を取り込んで記憶部に格納し、
前記記憶部に格納された第1の画像信号の画像における境界線および前記境界線によって区画される非操作領域を決定し、
前記記憶部に格納された第2の画像信号における動体映像を検出し、
前記第2の画像信号の画像における前記検出された動体映像と前記境界線の重なり関係に基づいて、前記境界線に対する前記動体映像の状態を判定し、
前記判定された状態に基づいて信号を発生する、
処理を情報処理装置に実行させるプログラム。