(57)【特許請求の範囲】
【請求項１】
画像から特定色を認識するための色認識パラメータを設定する画像処理装置であって、
予め決められたパターンでマーカーの色が配置された色見本を撮影する撮影手段と、
前記撮影手段により撮影された画像からマーカー領域を検出し、検出したマーカー領域の画素の色情報を２次元平面にプロットした色分布グラフ上の前記プロットされた点を含む最小の多角形を求め、求めた多角形から前記マーカーを検出するための色認識パラメータを求める解析手段と、
前記解析手段により求めた色解析パラメータを記憶する記憶手段とを備えることを特徴とする画像処理装置。
【請求項２】
前記解析手段は、前記色認識パラメータを、前記撮影装置により前記色見本を角度を変えて撮影した複数の画像情報を用いた計算処理により求めることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記色見本は複数のマーカーのそれぞれの色であり、前記複数のマーカーのそれぞれの色は、格子状のガイドパターンがそれぞれ４隅に配置されていることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記解析手段が作成する前記色認識パラメータは、色平面において原点から放射線状にのびる多角形を示すパラメータであることを特徴とする請求項１に記載の画像処理装置。
【請求項５】
色平面において原点から放射線状にのびる多角形を、表示画面にグラフィカル表示する表示制御手段と、
前記表示画面上において前記多角形を調整する調整手段とを更に備え、
前記色認識パラメータを調整可能であることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
コンピュータを請求項１乃至請求項５のいずれかに記載の画像処理装置として実現させるためのプログラム。
【請求項７】
請求項６に記載のプログラムが記録された記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
画像から特定色を認識するための色認識パラメータを設定するものに関する。
【０００２】
【従来の技術】
画像からのカラーマーカー認識などのためには、画像から特定の色を認識する必要がある。計算機による色認識は、画面上の各画素の色を示す値があらかじめ定められた範囲にあるかで特定の色どうかを判定することで行う。
【０００３】
例えば、赤い色を検出する場合には、画素を構成するピクセルの色差信号Ｃｂ，Ｃｒの範囲を
−１＜Ｃｂ＜＋３かつ＋２５＜Ｃｒ＜＋１２７
と指定していた。この場合、赤という色を指定するのに、（−１，＋３，＋２５，＋１２７）という数値の組を使用していた。
【０００４】
通常この特定色を指定するための範囲は、照明条件などが変わると条件に合わせて調整しなおす必要がある。例えば蛍光灯下で使用していた色認識パラメータは、白熱灯下では調整しなおす必要がある。
【０００５】
従来この色認識パラメータの調整は、オペレータが認識率を観察しながら、数値をマニュアル調整することにより行われていた。
【０００６】
【発明が解決しようとする課題】
だがこのような色認識パラメータの調整は、オペレータの熟練が必要であり、また各色ごとに作業を繰り返す必要があり効率が悪かった。
【０００７】
また、このような数値の組による色指定方法は直感的でなく、認識する色を指定しずらかった。
【０００８】
本発明は、この点に鑑みてなされたものであり、色見本の撮影画像を解析することにより色認識パラメータが設定できるようにし、ユーザの色認識パラメータの設定にかかる労力を軽減することを目的とする。
【０００９】
また、色認識パラメータをグラフィカルな表示に基づき調整できるようにすることにより、調整を直感的に簡単に行えるようにすることを他の目的とする。
【００１０】
【課題を解決するための手段】
上記目的を達成するために本発明は以下の構成を有する。
【００１１】
本発明の画像処理装置は、画像から特定色を認識するための色認識パラメータを設定する画像処理装置であって、予め決められたパターンでマーカーの色が配置された色見本を撮影する撮影手段と、前記撮影手段により撮影された画像からマーカー領域を検出し、検出したマーカー領域の画素の色情報を２次元平面にプロットした色分布グラフ上の前記プロットされた点を含む最小の多角形を求め、求めた多角形から前記マーカーを検出するための色認識パラメータを求める解析手段と、前記解析手段により求めた色解析パラメータを記憶する記憶手段とを備える。
【００１４】
【発明の実施の形態】
（実施形態１）
本実施形態は、画像中の特定色のマーカーを見つける画像処理装置のために、特定色のマーカーを検出するための色パラメータを設定する色パラメータ設定装置に関する。
【００１５】
図１は本実施形態のシステムの全体図である。本実施形態は計算機のソフトウェアとして実装されている。本実施形態のシステムは計算機１００、色見本パネル２００、ビデオカメラ３００からなる。
【００１６】
色見本パネル２００をビデオカメラ３００で撮影し、その映像を計算機１００に取り込む。計算機１００は取り込んだ映像から色見本パネル２００の色情報を抽出し、色見本パネルに含まれるマーカーを認識するための色パラメータを求める。
【００１７】
色パラメータは、図２のようにＣｂ，Ｃｒ平面における領域を示すパラメータである。Ｃｂ，Ｃｒ平面は、輝度・色差信号の色みを示す色差信号によって定義される色平面である。領域はＣｂ，Ｃｒ平面で原点から放射線状に広がる長方形の領域である。色パラメータは、図３に示されるように、長方形の中心点、長方形の円周方向の大きさ、長方形の放射線方向の大きさの各々を示すパラメータが含まれる。色認識プログラムはこの色パラメータを用い、画素の色のＣｂ，Ｃｒ値が、色パラメータで示される長方形領域に入っているかどうかで色認識を行う。
【００１８】
色見本パネル２００を図４に示す。本実施形態では、マーカーとして６色を用意し、色見本パネル内に２行３列に配置した。色見本パネル２００にはガイドマーカー２１０が各マーカーの４隅に配置されるように格子状に配置されている。計算機１００はこのガイドマーカー２１０を認識して、取り込んだ画像中での色見本パネル２００の位置を認識する。
【００１９】
本実施形態の動作画面を図５に示す。動作画面は、メインウィンドウ５００とカラーチャートウィンドウ６００からなる。
【００２０】
メインウィンドウ５００はメニューバーを持ち、本実施形態全体の制御を行うことができる。メインウィンドウ５００の下半分には実写画像、上半分には画像認識映像が表示される。
【００２１】
画像認識映像は、実写画像を２値化し得られた白黒画像に、２値画像の解析結果を合わせて表示した。２値化は、画面全体の明るさの平均値を求め、平均値を閾値として用いる。２値画像を解析することによりマーカー領域５１０を認識した時は、２値画像に赤で認識したマーカー領域の位置を表示する。なお、本実施形態では６つのマーカーを用いているので、６つのマーカー領域が検出されている。
【００２２】
カラーチャートウィンドウ６００は、横軸をＣｂ、縦軸をＣｒにとったグラフである。色見本パネルを認識した結果得た色見本のＣｂ，Ｃｒ値に点をプロットするために使用する。
【００２３】
本実施形態のプログラムは、キャプチャした画像の認識結果から画面上の色見本パネルの位置を特定し、色見本のＣｂ，Ｃｒ値を得る。そして、取得した色見本のＣｂ，Ｃｒ値をカラーチャートウィンドウ上にプロットする。
【００２４】
プロットされる点の色は、色見本ごとに変えてある。このウィンドウに表示されたカラーチャートをもとに、色認識パラメータを作成する。
【００２５】
プログラムは常にビデオカメラ３００から画像をキャプチャしており、色見本パネルを認識するとその結果をカラーチャートウィンドウ２００にプロットする。色見本パネル２００の角度を変えるなどすると、多くの場合図６のような形にカラーチャートがプロットされる。
【００２６】
色認識パラメータの作成は、メインウィンドウ５００のメニューバーから「ｃａｌｉｂｒａｔｅ」を選ぶことで行う。
【００２７】
色認識パラメータは、カラーチャートウィンドウ６００にプロットされた色領域を元に作成される。色認識パラメータは、カラーチャートの点が作る島のなかで最大のものを内包する最小の長方形である。例として図７を示す。
【００２８】
本実施形態のプログラムのメインルーチンのフローチャートを図８に示す。プログラムはイベントドリブンで動作している。ビデオカメラ３００から１画面キャプチャが完了するとキャプチャイベントが起きる。またメニューから「ｃａｌｉｂｒａｔｅ」を選択すると、色パラメータ作成イベントが起きる。メインルーチンは通常、イベント待ちをしており（Ｓ１０）、発生したイベントに従い（Ｓ１１、Ｓ１２）、キャプチャイベント処理（Ｓ１２〜Ｓ１９）、色パラメータ作成処理（Ｓ２１〜Ｓ２２）を行う。
【００２９】
キャプチャイベントが起きると、キャプチャした画面を取り込み、メインウィンドウ５００の下半分に取り込んだ画像を表示する（Ｓ１２）。
【００３０】
そして画面全体の明るさの平均値を計算し、画面を構成する各画素に対して、平均値を用いて２値化する（Ｓ１３）。これは、各画素を示す輝度・色差信号の輝度信号を用いて処理する。
【００３１】
２値化画像に対してラベリングを行い、取り込んだ画面中に写った色見本パネル２００のガイドマーカー２１０と思われる点のリストを作る（Ｓ１４）。ラベリングのアルゴリズムについては、よく知られているのでここでは説明しない。
【００３２】
ラベリング結果から格子状に４行３列に並んだ点をガイドマーカーとして検出し、そして画面に写った色見本パネル２００を認識する（Ｓ１５）。ラベリングにより作った点のリストから格子状に並んだ点を探すには、ハフ変換により直線に並んだ点を探し、それらの直線の組み合わせを評価し、その結果から認識する。ハフ変換のアルゴリズムはよく知られているので、ここでは説明しない。
【００３３】
色見本パネル２００が見つかった場合（Ｓ１６）には、色見本パネル２００の位置からそれぞれの色見本（６色）の場所を計算し、元画面の対応する場所の色情報の平均を計算する（Ｓ１７）。色見本パネル２００が見つからない場合にはＳ１９に進む。
【００３４】
また得た色情報は同時に、２５６×２５６の配列に格納する。この配列はカラーチャートの各点に対応する。初期状態では配列はすべて０が埋められている。そして得た色情報に従い、要素（Ｃｂ＋１２８，Ｃｒ＋１２８）に色見本のＩＤ、１〜６が代入される。
【００３５】
計算した色情報を、カラーチャートウィンドウ６００にプロットする（Ｓ１８）。
【００３６】
最後にメインウィンドウ５００の上半分に、２値化した画像を白黒画像として表示する（Ｓ１９）。また、色見本パネルを探す過程で見つけた直線に並んだ点を緑で、色見本パネル２００が見つかっている場合には、色見本パネルの位置を赤で表示する。
【００３７】
一方、色パラメータ作成イベントが起きると（Ｓ２０）、カラーチャート２００の情報を格納した２５６×２５６の配列を元に、色パラメータを計算する（Ｓ２１）。配列の内容をラベリングし、各色ごとにもっとも面積の大きい島を探す。それらの島の中心点を色パラメータのＣｂ，Ｃｒの値とし、それらの島に図３のように外接する長方形の大きさを、それらの色の色パラメータとして記録する。
【００３８】
得た色パラメータを、ファイルに書き出す（Ｓ２２）。より具体的には、カラーＩＤと長方形の中心、長方形の放射線方向の大きさ、長方形の円周方向の大きさを書き出す。
【００３９】
本実施形態によれば、色見本を撮影することにより色認識パラメータを設定することができ、色認識パラメータの設定にかかるユーザの労力を軽減することができる。また、色見本には複数のマーカーが、マーカーを囲むように格子状に配置されたガイドマーカーとともに含まれているので、色見本の撮影画像からマーカー領域を高精度に検出することができる。本実施形態では明るさを示す信号のみを用いて簡単かつ高精度に検出することができる。また、図２に示されるように複数のマーカーが異なる色相を有しているので、色みを示す信号を用いて高精度に認識することができ、また、色認識パラメータも簡単にすることができる。
【００４０】
（実施形態２）
本実施形態は画像中の特定の色のマーカーを見つける画像処理装置である。
【００４１】
図９は本実施形態の全体図である。本実施形態は計算機のソフトウェアとして実装されている。本実施形態は計算機１００、ビデオカメラ２００、カラーマーカー３００〜３０６からなる。
【００４２】
ビデオカメラ２００でカラーマーカー３００〜３０５を撮影し、その映像を計算機１００に取り込む。計算機１００は取り込んだ映像から、カラーマーカー３００〜３０５を検出し、その領域の重心を計算する。計算結果はネットワークを通じて出力する。本実施形態の動作の模式図を図１０に示す。
【００４３】
本実施形態の実行画面を図１１に示す。実行画面は、コントロールウィンドウ１０００、プレビューウィンドウ１１００、カラーチャートウインドウ１２００で構成される。
【００４４】
カラーチャートウィンドウ１２００は、縦軸をＣｂ、横軸をＣｒとする平面を表す。認識する色の色パラメータは、Ｃｂ，Ｃｒ平面で原点から放射線状に広がる長方形の色認識領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６で表される（図１２）。色認識プログラムは画素の色をＣｂ，Ｃｒの値に変換したとき、これらの色領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６に入っているかどうかで画素の色を判定する。
【００４５】
色認識領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６は、実施形態１と同様に、長方形の中心点、円周方向の長さ、放射線方向の長さにより特定される。
【００４６】
カラーマーカー３００、３０１、３０２、３０３、３０４、３０５の色に対応する色認識領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６を指定することにより、カラーマーカーの識別を行う。
【００４７】
色認識領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６は、カラーチャートウィンドウにおいて、マウスでドラッグすることで移動、大きさを変更することができる。色認識領域のどの部分をドラッグするかにより操作は変わる。
【００４８】
色認識領域の中心部分でマウスをドラッグした場合には、色認識領域を移動させることができる（図１３）。ドラッグが終わり、マウスＵＰした地点が新しい色認識領域の中心点となる。移動は色認識領域の平行移動ではなく原点を中心とした回転移動であり、移動した色認識領域もまた、原点から放射線状に広がる長方形となる。
【００４９】
色認識領域の端をマウスでドラッグした場合には、色認識領域の大きさを変えることができる（図１４）。ドラッグが終わり、マウスＵＰした地点が新しい長方形の端となる。
【００５０】
コントロールウィンドウ１０００はプレビューウィンドウ１１００のプレビュー切り替えスイッチ１００１、１００２を持つ。プレビュー切り替えスイッチ１００１、１００２を切り替えると、プレビューウィンドウ１１００に表示される内容が、ビデオカメラ２００の画像そのもの、色認識した結果にそれぞれ切り替わる。
【００５１】
プレビューウィンドウ１１００に表示される色認識結果を見ながら、色認識領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６をグラフィカルに操作することで、カラーマーカー３００、３０１、３０２、３０３、３０４、３０５の色と、色認識領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６の認識する色が一致するよう調整することができる。
【００５２】
本実施形態のプログラムのメインルーチンのフローチャートを図１５に示す。
【００５３】
プログラムはイベントドリブンで動作している。ビデオカメラ２００から１画面キャプチャが完了するとキャプチャイベントが起きる。またカラーチャートウィンドウ１２００内でマウスをドラッグすると、カラーチャートのマウスイベントが起きる。コントロールウィンドウ内のボタンを選択すると、コントロールウィンドウイベントが起きる。
【００５４】
メインルーチンは通常、イベント待ちをしており（Ｓ１００）、発生したイベント（ビデオキャプチャ完了イベントＳ１０１、カラーチャートウィンドウイベントＳ１０３、コントロールウィンドウイベントＳ１０５）に従い、ビデオキャプチャイベント処理（Ｓ１０２）、カラーチャートウィンドウイベント処理（Ｓ１０４）、コントロールウィンドウイベント処理（Ｓ１０６）を行う。
【００５５】
図１６はカラーチャートイベントが発生したとき処理（Ｓ１０４）の内部のフローチャートである。
【００５６】
Ｓ２００において、マウスダウンイベントが生じたときは、マウス座標の近傍に色認識領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６の中心点があるかどうかを調べる（Ｓ２０２）。
【００５７】
もし近傍に色認識領域の中心があれば、変数「ドラッグモード」に「中心移動中」を代入し、変数「注目している色領域認識」にその色認識領域のＩＤをする（Ｓ２０３）。
【００５８】
もし近傍に色認識領域の中心がなければ、マウス座標の近傍に色認識領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６の原点に近い方の端があるかどうかを調べる（Ｓ２０４）。
【００５９】
もし近傍に色認識領域の原点よりの端があれば、変数「ドラッグモード」に「内部端点移動中」を代入し、変数「注目している色領域認識」にその色認識領域のＩＤをする（Ｓ２０５）。
【００６０】
もし近傍に色認識領域の原点よりの端がなければ、マウス座標の近傍に色認識領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６の原点からはなれた端があるかどうかを調べる（Ｓ２０６）。
【００６１】
もし近傍に色認識領域の原点からはなれた端があれば、変数「ドラッグモード」に「外部端点移動中」を代入し、変数「注目している色領域認識」にその色認識領域のＩＤをする（Ｓ２０７）。
マウス座標の近傍に色認識領域１２０１、１２０２、１２０３、１２０４、１２０５、１２０６の中心点も端もなければ、変数「ドラッグモード」に「ＮＵＬＬ」を代入する（Ｓ２０８）。
【００６２】
マウスアップイベントが生じたときは、変数「ドラッグモード」により処理を変える（Ｓ２２０、Ｓ２２２、Ｓ２２４）。
【００６３】
変数「ドラッグモード」が「中心移動中」である場合は、変数「注目している色認識領域」で指定される色認識領域の中心座標を、マウス座標で置き換える（Ｓ２２１）。
【００６４】
変数「ドラッグモード」が「内部端点移動中」である場合は、変数「注目している色認識領域」で指定される色認識領域の色パラメータのうち、中心座標と放射線方向の大きさを次の方法で更新する。
【００６５】
ｘ，ｙを元の中心座標、ｒａｄｉａｔｉｏｎ＿ｌｅｎを元の放射線方向の大きさ、ｍｏｕｓｅ＿ｘ，ｍｏｕｓｅ＿ｙをマウス座標とする。また新しい色パラメータの、新たな中心座標をｎｅｗ＿ｘ，ｎｅｗ＿ｙを、新たな放射線方向の大きさをｎｅｗ＿ｒａｄｉａｔｉｏｎ＿ｌｅｎとすると、次の式でそれらを求めて色パラメータを更新する（Ｓ２２３）。
【００６６】
ａｎｇｌｅ＝ａｔａｎ２（ｙ，ｘ）；
ｘ＿ｏｆｆｓｅｔ＝ｒａｄｉａｔｉｏｎ＿ｌｅｎ＊ｃｏｓ（ａｎｇｌｅ）／２；
ｙ＿ｏｆｆｓｅｔ＝ｒａｄｉａｔｉｏｎ＿ｌｅｎ＊ｓｉｎ（ａｎｇｌｅ）／２；
ｏｐｐｏｓｉｔｅ＿ｘ＝ｘ−ｘ＿ｏｆｆｓｅｔ；
ｏｐｐｏｓｉｔｅ＿ｙ＝ｙ−ｙ＿ｏｆｆｓｅｔ；
ｎｅｗ＿ｘ＝（ｍｏｕｓｅ＿ｘ＋ｏｐｐｏｓｉｔｅ＿ｘ）／２；
ｎｅｗ＿ｙ＝（ｍｏｕｓｅ＿ｙ＋ｏｐｐｏｓｉｔｅ＿ｙ）／２；
ｎｅｗ＿ｒａｄｉａｔｉｏｎ＿ｌｅｎ＝ｓｑｒｔ（ｐｏｗ（ｍｏｕｓｅ＿ｘ−ｏｐｐｏｓｉｔｅ＿ｘ，２）＋ｐｏｗ（ｍｏｕｓｅ＿ｙ−ｏｐｐｏｓｉｔｅ＿ｙ，２））；
つまり、マウスアップした位置が新たな色認識領域を示す長方形の(原点に近い方の)端となる。
【００６７】
同様に変数「ドラッグモード」が「外部端点移動中」である場合も、変数「注目している色認識領域」で指定される色認識領域の色パラメータのうち、中心座標と放射線方向の大きさを次の方法で更新する。
【００６８】
ｘ，ｙを元の中心座標、ｒａｄｉａｔｉｏｎ＿ｌｅｎを元の放射線方向の大きさ、ｍｏｕｓｅ＿ｘ，ｍｏｕｓｅ＿ｙをマウス座標とする。また新しい色パラメータの、新たな中心座標をｎｅｗ＿ｘ，ｎｅｗ＿ｙを、新たな放射線方向の大きさを  ｎｅｗ＿ｒａｄｉａｔｉｏｎ＿ｌｅｎとすると、次の式でそれらを求めて色パラメータを更新する（Ｓ２２５）。
【００６９】
ａｎｇｌｅ＝ａｔａｎ２（ｙ，ｘ）；
ｘ＿ｏｆｆｓｅｔ＝ｒａｄｉａｔｉｏｎ＿ｌｅｎ＊ｃｏｓ（ａｎｇｌｅ）／２；
ｙ＿ｏｆｆｓｅｔ＝ｒａｄｉａｔｉｏｎ＿ｌｅｎ＊ｓｉｎ（ａｎｇｌｅ）／２；
ｏｐｐｏｓｉｔｅ＿ｘ＝ｘ＋ｘ＿ｏｆｆｓｅｔ；
ｏｐｐｏｓｉｔｅ＿ｙ＝ｙ＋ｙ＿ｏｆｆｓｅｔ；
ｎｅｗ＿ｘ＝（ｍｏｕｓｅ＿ｘ＋ｏｐｐｏｓｉｔｅ＿ｘ）／２；
ｎｅｗ＿ｙ＝（ｍｏｕｓｅ＿ｙ＋ｏｐｐｏｓｉｔｅ＿ｙ）／２；
ｎｅｗ＿ｒａｄｉａｔｉｏｎ＿ｌｅｎ＝ｓｑｒｔ（ｐｏｗ（ｍｏｕｓｅ＿ｘ−ｏｐｐｏｓｉｔｅ＿ｘ，２）＋ｐｏｗ（ｍｏｕｓｅ＿ｙ−ｏｐｐｏｓｉｔｅ＿ｙ，２））；
色認識領域の位置が更新されると、それに合わせて色認識テーブルの値を更新し（Ｓ２２６）、ウィンドウを再描画する（Ｓ２２７）
【００７０】
色認識テーブルは、３２７６８（１５ｂｉｔ）の大きさの配列である。配列は１５ｂｉｔのＲＧＢ値に対応し、１５ｂｉｔのＲＧＢ値がどの色認識領域に対応するかを格納している。色認識テーブルの作成のＰＡＤ図を図１７に示す。
【００７１】
最初に色認識テーブルを０で初期化する（Ｓ３００）。そして各色認識領域に関して、Ｓ３０２〜Ｓ３０５の処理を行う（Ｓ３０１）。１５ｂｉｔ  ＲＧＢの全ての値０〜０ｘｆｆｆｆｆに関して（Ｓ３０２）、あるＲＧＢ値ｘをＣｂ、Ｃｒ各８ｂｉｔに変換し（Ｓ３０３）、そのＣｂ、Ｃｒ値が色認識領域に含まれているなら、色認識テーブルの添字がｘの要素にその色認識領域のＩＤを代入する（Ｓ３０４）。
【００７２】
図１８はキャプチャイベントが発生したとき処理（Ｓ１０２）の内部のＰＡＤ図である。
【００７３】
最初にキャプチャ映像を色認識し、図１６のように色認識領域の色に対応して６値化する（Ｓ２０１〜２０３）。色認識領域ＩＤ１の部分（青の部分）を１、色認識領域ＩＤ２の部分（赤の部分）を２というように色ごとに数値化した画像データに置き換える。それ以外の部分を０とする。
【００７４】
キャプチャした映像を受け取り（Ｓ３００）、映像の全ての画素についてＳ２０２〜２０３の処理を行う（Ｓ２０１）。画素の値（１５ｂｉｔ  ＲＧＢ）を添字として色認識テーブルを参照し、画素の値に対応する色認識領域のＩＤを得る（Ｓ２０２）。得た色認識領域のＩＤを色認識結果として、映像と同じ大きさ（６４０＊２４０）の配列に書き出す（Ｓ２０３）。
【００７５】
色認識結果として得た配列を元に、プレビューウィンドウを再描画する（Ｓ２０４）。再描画はビューモードにより、キャプチャした画像そのものか、色認識結果を表示する。
【００７６】
色認識結果を表示する場合には、配列の各要素について、０なら黒、１なら赤、２なら青…といったように、対応するプレビューウィンドウの各ピクセルを描画する。
【００７７】
この画像データに対してラベリングを行い（Ｓ２０５）、「どの色が、どの座標を中心に、どのくらいの面積で存在するか」を示すブロックデータを作成する。ラベリングのアルゴリズムは一般によく知られているのでここでは説明しない。
【００７８】
ラベリングの結果について、一定面積（本実施形態では１０ドット以上のものに関して、その「色ＩＤ、面積、中心点のｘ，ｙ座標」を組にして登録されたクライアントにネットワークを通じてパケットを送る（Ｓ２０６）。
【００７９】
本実施形態によれば、直感的にかつ簡単に色認識パラメータを調整することができる。
【００８０】
（他の実施形態）
実施形態１で求められた色認識パラメータを、実施形態２で説明した方法を用いて微調整できるようにしても構わない。
【００８１】
また、上記実施形態では輝度・色差信号を用いたが、Ｌ＊ａ＊ｂ＊などの明るさを示す信号と色みを示す信号で構成される信号であれば他の信号を用いても構わない。
【００８２】
また、前述した実施の形態の機能を実現する様に各種のデバイスを動作させる様に該各種デバイスと接続された装置あるいはシステム内のコンピュータに、前記実施の形態の機能を実現するためのソフトウエアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ（ＣＰＵあるいはＭＰＵ）を格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも本発明の範疇に含まれる。
【００８３】
この場合、前記ソフトウエアのプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記憶媒体は本発明を構成する。
【００８４】
かかるプログラムコードを格納する記憶媒体としては例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることが出来る。
【００８５】
またコンピュータが供給されたプログラムコードを実行することにより、前述の実施形態の機能が実現されるだけではなく、そのプログラムコードがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）、あるいは他のアプリケーションソフト等と共同して前述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。更に供給されたプログラムコードが、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後そのプログラムコードの指示に基づいてその機能拡張ボードや機能格納ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も本発明に含まれることは言うまでもない。
【００８６】
【発明の効果】
本発明によれば、解析手段が、撮影手段により撮影された画像からマーカー領域を検出し、検出したマーカー領域の画素の色情報を２次元平面にプロットした色分布グラフ上の前記プロットされた点を含む最小の多角形を求め、求めた多角形からマーカーを検出するための色認識パラメータを求めるので、ユーザの色認識パラメータの設定にかかる労力を軽減することができる。
また、色認識パラメータをグラフィカルな表示に基づき調整できるようにすることにより、調整を直感的に簡単に行うことができる。
【図面の簡単な説明】
【図１】実施形態１のハードウェアの全体図である。
【図２】Ｃｂ，Ｃｒ空間での色認識領域を示した図である。
【図３】色認識領域を特定するために必要なパラメータを示した図である。
【図４】色見本パネルである。
【図５】本実施形態の実行画面である。
【図６】プロットしたカラーチャートの例である。
【図７】カラーチャートから色認識領域を設定した例である。
【図８】実施形態１のフローチャートである。
【図９】実施形態２のハードウェアの全体図である。
【図１０】実施形態２の動作を示した模式図である。
【図１１】実施形態２の実行画面である。
【図１２】カラーチャートウィンドウである。
【図１３】色認識領域の中央をドラッグした時の動作を示した図である。
【図１４】色認識領域の端をドラッグした時の動作を示した図である。
【図１５】メインルーチンのフローチャートである。
【図１６】カラーチャートウィンドウへのイベントを処理するルーチンのフローチャートである。
【図１７】色認識テーブルの作成方法を示したＰＡＤ図である。
【図１８】キャプチャイベントを処理するルーチンのフローチャートである。
【図１９】画像の６値化を示した模式図である。
【図１】
0003970052.tif 000002
【図２】
0003970052.tif 000003
【図３】
0003970052.tif 000004
【図４】
0003970052.tif 000005
【図５】
0003970052.tif 000006
【図６】
0003970052.tif 000007
【図７】
0003970052.tif 000008
【図８】
0003970052.tif 000009
【図９】
0003970052.tif 000010
【図１０】
0003970052.tif 000011
【図１１】
0003970052.tif 000012
【図１２】
0003970052.tif 000013
【図１３】
0003970052.tif 000014
【図１４】
0003970052.tif 000015
【図１５】
0003970052.tif 000016
【図１６】
0003970052.tif 000017
【図１７】
0003970052.tif 000018
【図１８】
0003970052.tif 000019
【図１９】
0003970052.tif 000020