(57)【要約】【課題】  操作者が対応する認識色領域と抽出画像領域との組合せの把握が容易な代表色を求める為の技術を提供すること。【解決手段】  現実空間の画像を領域２６０に表示し、この画像の全部、若しくは一部における色領域を示す色領域画像２５４を領域２５０内に表示し、色領域画像２５４のうち一部若しくは全部を選択する為の選択領域２５２を領域２５０内に表示する。領域２６０に表示した画像から、色領域画像２５４のうち選択領域２５２でもって選択された部分に相当する色領域内の色を有する画素を抽出し、選択領域２５２内の色のうち、最大の彩度を有する色を求める。そして、抽出した画素群を、求めた彩度でもって領域２７０内に表示する。【選択図】  図２
2007034984.tif 000002
【特許請求の範囲】
【請求項１】
色空間上における色領域を設定する色空間領域設定工程と、
前記色領域から高彩度を有する色を代表色として設定する代表色設定工程と、
対象画像から、前記領域内の色を有する画素を抽出する抽出工程と、
前記抽出工程によって抽出された画素を、前記代表色で表示させる表示工程とを有することを特徴とする情報処理方法。
【請求項２】
前記色領域は明かるさと色みが独立した表色空間上で設定されることを特徴とする請求項１に記載の情報処理方法。
【請求項３】
前記表色空間はＹＣｂＣｒ色空間であることを特徴とする請求項２に記載の情報処理方法。
【請求項４】
前記色空間領域設定工程は、
グラフィカルユーザインターフェースを用いたユーザの指示に基づき前記色領域を設定し、
前記グラフィカルユーザインターフェースには、前記色領域の明るさに関する情報を設定する設定部と、２次元平面を用いて色みに関する領域を設定する設定部とを有することを特徴とする請求項１記載の情報処理方法。
【請求項５】
前記色領域は、２次元平面の無彩色を示す位置を通る直線上に直径が存在する楕円に基づき設定される領域であることを特徴とする請求項１記載の情報処理方法。
【請求項６】
前記代表色は、前記直線の方向に応じて設定されることを特徴とする請求項１記載の情報処理方法。
【請求項７】
前記代表色をRGB色空間に変換し、
前記代表色のRGBの各成分値のいずれかが、予め設定されている最大値を超えた場合は、該最大値を超えた差が最も大きい成分値と該最大値の差を、該各成分値から減ずることを特徴とする請求項１記載の情報処理方法。
【請求項８】
コンピュータに請求項１乃至７の何れか１項に記載の情報処理方法を実行させるためのプログラム。
【請求項９】
色空間上における色領域を設定する色空間領域設定手段と、
前記色領域から高彩度を有する色を代表色として設定する代表色設定手段と、
対象画像から、前記領域内の色を有する画素を抽出する抽出手段と、
前記抽出手段によって抽出された画素を、前記代表色で表示させる表示手段とを有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、色空間上における色領域を設定するためのものに関する。
【背景技術】
【０００２】
カメラの焦点距離、主点、レンズ歪み等のカメラ固有にカメラ内部に存在するカメラ内部パラメータ、若しくはカメラの位置姿勢といったカメラが外界に対してどのように存在しているかを表すカメラ外部パラメータを校正するためには以下のような方法がある。
【０００３】
３次元空間座標内に置かれた指標であり、座標値が既知である複数の指標をカメラで撮像し、指標の画像上の座標値（指標位置）を検出する。そして、指標の画像上の座標値と既知である３次元空間における座標値とを用いて、カメラ校正アルゴリズムに基づき推定する。
【０００４】
指標位置を求めるためには、撮影画像から既知の指標の特徴を抽出する処理を行い、指標部分を抽出する。既知の特徴には、実際の指標の形状や、指標を撮像装置で撮影して得られる指標画像上の指標の色（指標色）が利用される。
【０００５】
指標色は、撮影時の光源の種類、位置、光量、視点位置姿勢、指標の材質などの光学的条件によって様々に変化する。このため、特徴として指標色を使用する場合、撮影時の光学的条件が変わる毎に、指標色を再設定することがが必要である。
【０００６】
また、指標全体が物理的には同色であっても、光学的条件によって、指標の部分部分によって撮影画像における指標色が異なることがある。よって、指標色は色空間における一点ではなく、ある程度の範囲の領域（指標色領域）で設定する。また同じ条件であっても蛍光灯のフリッカーや撮像素子のノイズにより、撮像を時系列的に見た場合、各撮像における指標色は異なる。
【０００７】
このように光学的条件や撮像のタイミングによって変化する指標色をすべて包含するように認識色の領域（認識色領域）を設定しないと、指標画像中の指標の一部分が認識されずに指標位置を正確に推定することができない。また、指標色領域を余裕を持って包含するように認識色領域を大きく設定すると、指標画像中の指標以外の被写体の色を指標色として誤認識し、指標位置を正確に推定することができない。
【特許文献１】特開２００３−２５６８３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来、認識色領域を設定する際に、グラフィカルユーザインターフェースを用いてユーザが試行錯誤を繰り返し、マニュアル設定していた。その際に、認識色領域の代表色として、色空間における認識色領域の中心の色を使用していた。このため、グラフィカルユーザインターフェース上に表示された代表色を認識しずらいという改善の余地があった。
【０００９】
特に認識色領域がＹＣｂＣｒのような明るさ成分と色み成分によって表現されている色空間で定義されている場合、認識色領域の中心を代表として選択することは認識色領域の中から彩度が低めの色を選択することと同じこととなる。従って代表色はくすんだ無彩色となる傾向が強い。これに対し、実際の指標は誤認識を回避するために画像中における特徴的な色、すなわち通常我々が生活している空間において少ない彩度の高い色が選択されるのが通常である。
【００１０】
本発明は以上の問題に鑑みて成されたものであり、グラフィカルユーザインターフェース上に表示された代表色を認識しやすくすることを目的とする。
【課題を解決するための手段】
【００１１】
本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
【００１２】
即ち、色空間上における色領域を設定する色空間領域設定工程と、
前記色領域から高彩度を有する色を代表色として設定する代表色設定工程と、
対象画像から、前記領域内の色を有する画素を抽出する抽出工程と、
前記抽出工程によって抽出された画素を、前記代表色で表示させる表示工程とを有することを特徴とする。
【００１３】
本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。
【００１４】
即ち、色空間上における色領域を設定する色空間領域設定手段と、
前記色領域から高彩度を有する色を代表色として設定する代表色設定手段と、
対象画像から、前記領域内の色を有する画素を抽出する抽出手段と、
前記抽出手段によって抽出された画素を、前記代表色で表示させる表示手段とを有することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、グラフィカルユーザインターフェース上に表示された代表色を認識しやすくすることができる。
【発明を実施するための最良の形態】
【００１６】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００１７】
［第１の実施形態］
＜システム構成＞
先ず、本実施形態に係るシステムの構成について説明する。図１は、本実施形態に係るシステムのハードウェア構成を示すブロック図である。同図に示す如く、本実施形態に係るシステムは、画像処理装置１００、撮像装置１６０、表示装置１７０により構成されている。以下、各装置について説明する。
【００１８】
先ず、画像処理装置１００について説明する。画像処理装置１００は、例えば一般のＰＣ（パーソナルコンピュータ）やＷＳ（ワークステーション）等のコンピュータにより構成されている。画像処理装置１００の構成は構成は同図に示す如く、ＣＰＵ１１０、メモリ１２０、ＨＤＤ（ハードディスクドライブ装置）１３０、画像取得部１４０、画像生成部１５０、キーボード１８０、マウス１９０により構成されている。
【００１９】
ＣＰＵ１１０は、メモリ１２０にロードされたプログラムやデータを用いて画像処理装置１００全体の制御を行うと共に、画像処理装置１００が行う後述の各処理を実行する。
【００２０】
メモリ１２０は、ＨＤＤ１３０からロードされたプログラムやデータを一時的に記憶するためのエリア、画像取得部１４０によって撮像装置１６０から取得した画像データを一時的に記憶するためのエリア等、各種のエリアを適宜提供することができる。また、メモリ１２０は、ＣＰＵ１１０が各種の処理を実行する際に用いるワークエリアも提供することができる。
【００２１】
ＨＤＤ１３０は、ＯＳ（オペレーティングシステム）や、認識色領域設定プログラム２００等を保存するものであり、これらはＣＰＵ１１０による制御に従って適宜メモリ１２０にロードされ、ＣＰＵ１１０による処理対象となる。尚、認識色領域設定プログラム２００は、現実空間中に配された指標がツリー構造のデータ形式で管理されている様子をグラフィカルに示すツリービューの表示・設定、指標色領域の表示、認識色領域の設定等をＣＰＵ１１０に実行させるためのプログラムである。また、ＨＤＤ１３０は、この認識色領域設定プログラム２００を動作させるために必要なデータも保存し、これもまたＣＰＵ１１０による制御に従って適宜メモリ１２０にロードされる。
【００２２】
キーボード１８０、マウス１９０は、ユーザが各種の指示をＣＰＵ１１０に対して入力するためのものである。
【００２３】
画像取得部１４０は、撮像装置１６０から順次送出される各フレームの画像（現実空間画像）を受け、これを認識色領域設定プログラム２００で扱うことのできるデータ形式に変換し、順次メモリ１２０、若しくはＨＤＤ１３０に転送する。
【００２４】
画像生成部１５０は、表示装置１７０に表示するための画面を生成する。例えば、ＣＰＵ１１０が認識色領域設定プログラム２００を実行することで表示装置１７０に表示される各ＧＵＩ（グラフィカルユーザインターフェース）の画面を生成する。
【００２５】
次に、撮像装置１６０について説明する。撮像装置１６０は、複数の指標が配された現実空間の動画像を撮像する。撮像した各フレームの画像は画像処理装置１００が有する画像取得部１４０に送出される。
【００２６】
次に、表示装置１７０について説明する。表示装置１７０は、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ１１０による処理結果を画像や文字などでもって表示することができる。例えば、認識色領域設定プログラム２００を実行することで表示される各ＧＵＩ画面を表示する。
【００２７】
＜認識色領域設定プログラム２００について＞
次に、認識色領域設定プログラム２００について説明する。認識色領域設定プログラム２００は、指標の所属する座標系、位置、認識色領域といった指標情報を編集し、編集結果を所定の書式のファイル（指標情報ファイル）として生成する。また、認識色領域設定プログラム２００は、既存の指標情報ファイルを読み出す。以下の説明では、本実施形態の主旨である認識色領域設定の部分について重点をおいて説明し、それ以外の編集機能については軽く触れる程度に止める。
【００２８】
指標情報ファイルは、認識色領域設定プログラム２００を実行することで表示されるＧＵＩを用いて編集することができる。編集された指標情報ファイルをＨＤＤ１３０に保存することもできる。
【００２９】
また、ＧＵＩを介して使用してＨＤＤ１３０から任意の指標情報ファイルを読み出すこともできる。
【００３０】
図２は、認識色領域設定に関するＧＵＩの表示例を示す図である。なお、以下の説明では特に説明しない限りは、ＧＵＩに対する操作は、ユーザがキーボード１８０やマウス１９０を用いて行うものとする。  ２８０は、指標情報ファイルで管理されている座標系、指標のツリー構造をグラフィカルに表示するツリービューである。２８０では、定義されている座標系と指標が、ツリー構造により階層的に表示される。図２に示した例では、ｗｏｒｌｄという名前の座標系（＝世界座標系）と、Ｍａｒｋｅｒ０１という名前の指標が定義されており、座標系ｗｏｒｌｄの下に、指標Ｍａｒｋｅｒ０１が所属している。
【００３１】
同図において２１０、２２０はメニューであり、それぞれマウス１９０を用いてクリックすることで、図３、図４のようなメニューリストが表示される。
【００３２】
図３において「開く」メニュー２１２は、ＨＤＤ１３０に保存されている指標情報ファイルを開き、後述するツリービュー２８０などに展開表示するための項目である。「保存」メニュー２１４は、編集中の指標情報を指標情報ファイルとしてＨＤＤ１３０に保存するための項目である。「終了」メニュー２１６は、認識色領域設定プログラム２００を終了するための項目である。
【００３３】
図４において「座標系の新規作成」メニュー２２２は、ツリービュー２８０上で選択されたている座標系の子座標系を新たに作成する項目である。「座標系の新規作成」を実行することにより、ツリービュー２８０上に、新規の座標系を示すノード（座標系アイコンおよび座標系の名前）が追加される。
【００３４】
例えば、ツリービュー２８０において図１６に示す如く座標系ｗｏｒｌｄが選択されている状況において「座標系の新規作成」メニュー２２２を指示する。その場合、図１７に示す如く、座標系ｗｏｒｌｄの子座標系として新しく座標系「ＮｅｗＣｏｏｒｄＳｙｓ」が作成される。
【００３５】
この子座標系に対して親座標系から見た位置姿勢を入力する必要がある。
【００３６】
「指標の新規作成」メニュー２２４は、ツリービュー２８０で選択されている座標系に所属する指標を新規作成する項目である。ツリービュー２８０には指標を示すノード（指標アイコンおよび指標の名前）が追加される。
【００３７】
「削除」メニュー２２８は、選択されている座標系や指標を削除するための項目である。削除指示されたノードはツリービュー２８０から削除され、座標系が削除された場合は、その座標系に所属するすべての座標系、指標も同時に削除される。
【００３８】
２３０〜２３８はツリービュー２８０で選択されている指標の指標情報のテキストボックスである。指標名２３０は指標の名前であり、指標を識別するために使用される識別情報である。なお、指標名には任意の名前を用いることができる。指標位置２３２は指標の所属する座標系における三次元位置である。
【００３９】
輝度２３４、中心２３６、直径２３８は、後述する楕円カーソル２５２を定義するパラメータである。本実施形態では、撮像装置１６０によって取得された画像中に写っている指標を抽出するために認識すべき色域（認識色領域）を、楕円柱によって設定する。この楕円柱は、ＹＣｂＣｒ色空間（輝度Ｙが８ビット、色差Ｃｂが８ビット、色差Ｃｒが８ビット）におけるＹ軸方向を高さ、ＣｂＣｒ平面上の楕円（楕円カーソル２５２）を底面とする。この楕円（楕円カーソル２５２）の長径は、その延長線が必ずＣｂＣｒ平面中心（Ｃｂ＝１２７，Ｃｒ＝１２７）を通るように拘束される。
【００４０】
輝度２３４はＹの最小値と最大値を示し、中心２３６は楕円（楕円カーソル２５２）中心位置を示し、直径２３８は楕円（楕円カーソル２５２）の長径と短径を示している。
【００４１】
ユーザが指標情報を編集し、「保存」メニュー２１４を指示すると、編集された指標情報を指標情報ファイルに反映し、ＨＤＤ１３０に保存する。
【００４２】
２５０は色空間画像表示領域である。実写画像全体もしくは選択領域を構成する画素の色分布が表示される色空間画像表示領域２５０には、輝度２３４で設定されている範囲の輝度Ｙを持つ画素のＣｂＣｒ値を輝度Ｙ＝１２８のＣｂＣｒ平面に射影した色空間画像２５４が表示される。横軸が色差Ｃｂ、縦軸が色差Ｃｒである。
【００４３】
色空間画像表示領域２５０は、また、認識色領域の設定用の領域でもある。認識色領域の指定（Ｃｂ値とＣｒ値の範囲）を楕円カーソル２５２を用いて行うことができる。認識色領域は、楕円カーソル２５２の中心と円周上に配置された制御点をマウス１９０でドラッグすることで、位置、形状、寸法を変更することが可能である。また、楕円カーソル２５２は、中心２３６、直径２３８のテキストボックスと同期しており、楕円カーソル２５２を操作すると、中心２３６、直径２３８の値が変化し、中心２３６、直径２３８の値を変更すると楕円カーソル２５２の位置、形状、寸法が変化する。
このように、色空間画像表示領域に表示されている色みを示す２次元平面を用いて認識色領域を設定することにより、簡単に認識色領域を設定することができる。なお、使用する色空間としてはＹＣｂＣｒに限らず、Ｌ*a*b*色空間などの他の明るさ成分と色み成分で示される色空間を用いても構わない。
【００４４】
２６０は実写画像表示領域であり、撮像装置１６０が撮影した各フレームの画像が順次表示される領域である。実写画像表示領域２６０は、また、実写画像選択領域を設定する領域でもある。実写画像表示領域２６０内に表示されている画像上の選択したい領域を、マウス１９０を用いて指定することができる。選択された領域の枠線は、図５に示す如く、実写画像表示領域上に重畳表示される。図５は、実写画像表示領域２６０内の所望の領域を選択した場合の表示例を示す図であり、５０１が選択された領域の枠線である。
【００４５】
２７０は抽出画像表示領域であり、実写画像表示領域２６０内に表示されている実写画像全体、若しくは実写画像の選択領域において認識色領域の色を有する画素を検出し、検出した画素を認識色領域の代表色で表示する。なお、認識色領域における輝度の範囲は、輝度２３４によって設定される。認識色領域の代表色については後述する。
【００４６】
図６は実写画像表示領域２６０の表示例を示す図である。図７は図６の実写画像表示領域２６０内の実写画像に対する色空間画像表示領域２５０の表示例を示す図である。図７に示す如く、色空間画像表示領域２０５には、図６の実写画像に対する色空間画像２５４と認識色領域設定用の楕円カーソル２５２とが重畳表示される。図８は、抽出画像表示領域２７０の表示例を示す図であり、図７に示す設定内容に基づいて実写画像から抽出された領域が示される。。図６の実写画像から、楕円カーソル２５２と輝度２３４で決定される楕円柱で規定される色領域内の色を有する画素を抽出したものが、抽出画像として抽出画像表示領域２７０内に表示される。
【００４７】
また、抽出画像表示領域２７０を用いて、実写画像表示領域２６０と同様に、実写画像選択領域を設定することができる。実写画像表示領域２６０または抽出画像表示領域２７０において選択された選択領域の枠は、図９に示されるように、実写画像表示領域２６０および抽出画像表示領域２７０の両方に表示される。
【００４８】
色空間画像２５４は、実写画像選択領域内の画像データに基づき計算される。図１０は、図９に示したように領域選択した場合の色空間画像２５４の様子を示す図である。なお、領域が選択されて無い場合は実写画像全体が入力として計算される。図１１は、図９で示される実写画像の撮影時において領域を選択して無い場合の色空間画像２５４の様子を示す図である。
【００４９】
次に、ＣＰＵ１１０が認識色領域設定プログラム２００を実行することで行われる指標の認識色領域を設定する処理について、図１５のフローチャートを用いて説明する。
【００５０】
なお、以下説明する処理の前段では、メモリ１２０には認識色領域設定プログラム２００がロードされると共に、表示装置１７０の表示画面上には、図２に例示するようなＧＵＩが表示される。
【００５１】
ユーザがキーボード１８０やマウス１９０を用いてツリービュー２８０内に表示されている所望の指標を選択すると、ＣＰＵ１１０はその旨を検知する。そしてＣＰＵ１１０は、メモリ１２０に記憶されていたその指標の名前、位置、輝度、楕円カーソル２５２の中心座標位置、楕円の長径および短径の情報を読み出し、それぞれテキストボックス２３０〜２３８に出力する。また楕円カーソル２５２の表示が中心２３６、直径２３８に従って更新される。
【００５２】
ステップＳ１５０２では、ユーザによって、キーボード１８０やマウス１９０を用いて、楕円の中心位置２３６、直径２３８に対する入力が行われたか否かをチェックする。入力が行われた場合は処理をステップＳ１５０４に進め、中心位置２３６、直径２３８を入力された値に更新する。そして処理をステップＳ１５０８に進め、認識色領域を再計算し、楕円カーソル２５２の中心位置や形状を更新する。
【００５３】
一方、楕円の中心位置２３６、直径２３８に対する入力が行われていない場合には処理をステップＳ１５０６に進め、認識色領域の輝度２３４に対する入力が行われたか否かをチェックする。チェックの結果、入力が行われている場合には処理をステップＳ１５０８に進め、認識色領域を入力された値に従って更新する。
【００５４】
ステップＳ１５０８における処理が終了した場合、若しくは認識色領域の輝度２３４に対する入力が行われていない場合には、処理をステップＳ１５１０に進める。
【００５５】
ステップＳ１５１０では、色空間表示領域２５０上の楕円カーソル２５２の中心や円周上の制御点が、マウス１９０によってドラッグされたかをチェックする。ドラッグされていない場合は処理をステップＳ１５１４に進める。ドラッグされた場合は処理をステップＳ１５１２に進め、中心２３６、直径２３８を更新する。
【００５６】
ステップＳ１５１４では、実写画像表示領域２６０、抽出画像表示領域２７０がマウス１９０でクリックされたか否かをチェックする。クリックされていない場合は処理をステップＳ１５１８に進める。クリックされている場合は処理をステップＳ１５１６に進め、画像選択領域を解除する。そして処理をステップＳ１５２２に進める。
【００５７】
ステップＳ１５１８では、実写画像表示領域２６０、抽出画像表示領域２７０がマウス１９０でドラッグされたか否かをチェックする。ドラッグされていない場合は処理をステップＳ１５２２に進める。ドラッグされている場合は処理をステップＳ１５２０に進め、ドラッグ開始点と終了点位置とを結ぶ線分を対角線とする四角形を選択領域として設定する。
【００５８】
ステップＳ１５２２では、画像取得部１４０が撮像装置１６０から取得した現実空間の画像を、認識色領域設定プログラム２００の管理するメモリ１２０上に取り込む。続いてステップＳ１５２４で、メモリ１２０上に取り込んだ画像を実写画像表示領域２６０に表示する。
【００５９】
ステップＳ１５２６では、ステップＳ１５２０で選択領域が設定されているか否かをチェックする。選択領域が設定されていない場合は、処理をステップＳ１５３０に進める。ステップＳ１５３０では、選択領域が設定されていないので、選択表示枠は重畳表示せず、実写画像全体に対する色分布をＹＵＶ４４４の色空間画像２５４として生成する。
【００６０】
選択領域が設定されている場合は、処理をステップＳ１５２８に進め、実写画像表示領域２６０と抽出画像表示領域２７０に選択領域枠を重畳表示する。そして処理をステップＳ１５３２に進め、選択領域枠内に相当する実写画像の部分の色分布をＹＵＶ４４４の色空間画像２５４として生成する。
【００６１】
ステップＳ１５３４では、ステップＳ１５３０またはステップＳ１５３２で生成された色空間画像２５４を色空間画像表示領域２５０に表示することにより、色空間画像表示領域２５０の表示を更新する。
【００６２】
ステップＳ１５３６では、色空間画像表示領域２５０上に、更に、上記ステップＳ１５０２〜Ｓ１５１２で設定された認識色領域に関する条件に基づく楕円カーソル２５２を重畳表示する。
【００６３】
ステップＳ１５３８では先ず、選択領域枠内に相当する実写画像の部分、若しくは実写画像全体について、認識色領域の色を持つ画素が存在するか否かをチェックする。存在する場合はその画素を抽出すると共に、認識色領域の代表色を求める。「認識色領域の色を持つ画素」とは、選択領域枠内に相当する実写画像の部分を構成する画素、若しくは実写画像全体を構成する画素のうち、色空間画像２５４のうち楕円カーソル２５２が占める部分に相当する色域の色を有する画素群である。
【００６４】
ステップＳ１５３８で行う「認識色領域の代表色を求めるための処理」について図１２のフローチャートを用いて説明する。
【００６５】
先ず、ステップＳ１２０２では、ＣｂＣｒ平面中心から楕円カーソル２５２内の最も遠い点（Ｃｂ、Ｃｒ）を求める。ここで、楕円カーソル２５２の中心の座標を（Ｃｃｂ、Ｃｃｒ）、放射方向の直径（図２では長径）をＲ、円周方向の直径（図２では短径）をｒとすると、以下の式が成り立つ。
【００６６】
Ｃｂ＝Ｒ／２×ｃｏｓ［ａｒｃｔａｎ｛（Ｃｃｒ−１２７）／（Ｃｃｂ−１２７）｝］＋Ｃｃｂ
Ｃｒ＝ｒ／２×ｓｉｎ［ａｒｃｔａｎ｛（Ｃｃｒ−１２７）／（Ｃｃｂ−１２７）｝］＋Ｃｃｒ
従って、ステップＳ１２０２ではこの式を計算し、（Ｃｂ、Ｃｒ）を求める。
【００６７】
続いて、ステップＳ１２０４では、ステップＳ１２０２で求めたＣｂＣｒ値をＲＧＢ値に変換する処理を行う。なお、ステップＳ１２０４では色味を変更せず、明度を高くして見やすい色にするため、輝度を最大にして（Ｙ＝２５５にして）、以下のITU-R BT.601の変換式を用いてＣｂＣｒ値をＲＧＢ値に変換する処理を行う。
【００６８】
Ｒ＝１．１６４×（Ｙ−１６）                              ＋１．５９６×（Ｃｒ−１２８）
Ｇ＝１．１６４×（Ｙ−１６）−０．３９１×（Ｃｂ−１２８）−０．８１３×（Ｃｒ−１２８）
Ｂ＝１．１６４×（Ｙ−１６）＋２．０１８×（Ｃｂ−１２８）
ITU-R BT.601におけるＹ，Ｃｂ，Ｃｒの値の範囲はＹ：１６〜２３５、Ｃｂ，Ｃｒ：１６〜２４０であり、本実施形態における値の範囲と異なる。
【００６９】
従って、以下では、変換後のＲ、Ｇ、Ｂの値が０〜２５５に収まらない場合には、以下のように丸め処理を行う。
【００７０】
ステップＳ１２１０では、変換後のＲ、Ｇ、Ｂのそれぞれの値を参照し、２５５を越えたものがあるか否かをチェックする。そして、Ｒ、Ｇ、Ｂのうち２５５を越えたものがある場合には、処理をステップＳ１２１２に進め、越えた分だけＲ、Ｇ、Ｂの値を減ずる。例えば、Ｒ＝１２５，Ｇ＝２００，Ｂ＝２６０である場合、Ｂが５だけ２５５を越えているので、Ｒ、Ｇ、Ｂのそれぞれの値を５だけ減ずる。その結果、Ｒ＝１２０、Ｇ＝１９５、Ｂ＝２５５となる。
【００７１】
次に、ステップＳ１２２０では、変換後のＲ、Ｇ、Ｂのそれぞれの値を参照し、０よりも小さいものがあるか否かをチェックする。そして、Ｒ、Ｇ、Ｂのうち０よりも小さいものがある場合には、処理をステップＳ１２２２に進め、０よりも小さいものを０にする。例えば、Ｒ＝１２５，Ｇ＝２００，Ｂ＝−５である場合、Ｂが５だけ０を下回っているので、Ｂの値を０とする。その結果、Ｒ＝１２５、Ｇ＝２００、Ｂ＝０となる。
【００７２】
以上のようにして、認識色領域の代表色（ＲＧＢ値）を求める。この代表色は、認識色領域内の色と色味が同じで彩度が最大の色である。
【００７３】
なお、ステップＳ１２０４で、Ｙ、Ｃｂ、Ｃｒの値をITU-R BT.601における範囲にスケール変換や丸め込み処理を行った後、計算を行っても同じ結果が得られるが、本実施形態のように計算することで処理を削減することが可能となる。
【００７４】
また、ステップＳ１２１２でＲＧＢ各要素から同じ値を減ずるという処理は、ＲＧＢ各要素の変換式共通の定数である１．１６４×（Ｙ−１６）を同じ値だけ減ずるということに等価である。これはＲＧＢ色空間において輝度を低くする（輝度Ｙの寄与分を減らす）処理と等価であり、色味を変更することがない。
【００７５】
図１５に戻って、ステップＳ１５３８では、同ステップで抽出した画素を、同ステップで求めた認識色領域の代表色でもって描画した抽出画像を作成する。そしてステップＳ１５４０では、ステップＳ１５３８で作成した抽出画像を抽出画像表示領域２７０に表示することで、抽出画像表示領域２７０を更新する。
【００７６】
そして認識色領域設定プログラム２００の動作終了指示が入力されない限りは（「終了」メニュー２１６がマウス１９０で選択されない限りは）、ステップＳ１５４２を介してステップＳ１５０２に戻り、上述の処理を繰り返す。
【００７７】
なお、ツリービュー２８０で別の指標アイコンをマウスクリックすると、選択された指標アイコンに対応する指標情報２３０〜２３８、２５０〜２５４、２７０が更新される。そして、以後その指標アイコンに対して上記ステップＳ１５０２〜ステップＳ１５４０の一連の処理が実施される。
【００７８】
＜認識色領域の設定について＞
次に、上記認識色領域設定プログラム２００を実行することにより成される、認識色領域を設定する処理について、図１８〜図２９を用いて説明する。なお各々の図は、同じ時間での色空間画像表示領域２５０、実写画像表示領域２６０、抽出画像表示領域２７０の状態の組合せを示す図である。
【００７９】
図１８〜図２０は、実写画像表示領域２６０での指標色領域選択を行って、認識色領域が設定できた場合の例を示す図である。
【００８０】
図１８は、認識色領域を設定したい指標を撮影した場合の色空間画像表示領域２５０、実写画像表示領域２６０、抽出画像表示領域２７０の表示例を示す図である。実写画像表示領域２６０内には５つの指標が存在するが、ここでは、実写画像中の左上の指標の認識色領域を設定する。
【００８１】
まず、図１９に示す如く、実写画像表示領域２６０から対象となる指標の画像領域を選択する。実写画像表示領域２６０内には、選択した領域を示す選択枠２３００が重畳表示されると共に、色空間画像表示領域２５０には、領域選択された実写部分を構成する各画素の色の色領域を示す色空間画像２３０１が表示される。また抽出画像表示領域２７０には、実写画像表示領域の選択領域に同期して対応部分に選択枠２３０２が表示される。
【００８２】
続いて、図２０に示す如く、色空間画像表示領域２５０内に表示されている楕円カーソル２３０４をマウス１９０でもってドラッグすることより位置、長径、短径を変更し、色空間画像２３０１を包含するようにする。ここで色空間画像表示領域２５０の中心に近いほど無彩色になるため、中心付近は楕円に含まれないようにしている。すると、抽出画像表示領域２７０には、実写画像に存在する楕円カーソル２３０４で設定される認識色領域が抽出される。結果として領域選択された実写部分の色が抽出画像として抽出画像表示領域２７０内に表示される。
【００８３】
ここで、抽出画像の有色な画素が、実写画像の選択部分内（選択枠２３００内）にのみ存在し、かつ実写画像の対象とする指標部分と一致しているため、対象となる指標の指標色領域（実写画像選択部分）と認識色領域（楕円カーソル）とは一致したと判断する。よって、作業を完了することができる。
【００８４】
図２１〜図２４は、実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合の例を示す図である。
【００８５】
図２１は、認識色領域を設定したい指標を撮影した場合の色空間画像表示領域２５０、実写画像表示領域２６０、抽出画像表示領域２７０の表示例を示す図である。ここでは３つの指標が実写画像中に存在するが、実写画像中の下の指標の認識色領域を設定する。
【００８６】
先ず、図２２に示す如く、実写画像表示領域２６０から対象となる指標を領域選択すると、選択した領域には選択枠２６００が表示されると共に、抽出画像表示領域２７０内の対応する領域には選択枠２６０１が表示される。更に、領域選択された実写部分のみが色空間画像２６０２に反映される。
【００８７】
続いて図２３に示す如く、色空間画像表示領域２５０内に表示されている楕円カーソル２６０５をマウス１９０を用いてドラッグすることより、位置、長径、短径を変更し、色空間画像２６０２を包含するようにする。しかし同図に示す如く、色空間画像２６０２のうち、楕円カーソル２６０５が包含する部分が小さいため、対象となる指標の指標色領域（実写画像選択部分）と認識色領域（楕円カーソル）が完全に一致せず、抽出画像が若干欠けてしまっている。
【００８８】
このような場合、図２４に示す如く、対象となる指標の指標色領域と抽出画像領域が一致するように見えるまで楕円カーソル２６０５を試行錯誤的に操作したり、輝度２３４を再設定することを繰り返し行う。
【００８９】
図２５〜図２９は、実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合のもうひとつの例を示す図である。
【００９０】
図２５は、認識色領域を設定したい指標を撮影した場合の色空間画像表示領域２５０、実写画像表示領域２６０、抽出画像表示領域２７０の表示例を示す図である。ここでは３つの指標が実写画像中に存在するが、実写画像中の左の指標の認識色領域を設定する。また、実写画像中には指標以外の物体も含まれており、画像的に外乱の多い環境と言える。
【００９１】
先ず、図２６に示す如く、実写画像表示領域２６０から対象となる指標を領域選択すると、選択した領域には選択枠３０００が表示されると共に、抽出画像表示領域２７０内の対応する領域には選択枠２７０１が表示される。更に、領域選択された実写部分のみが色空間画像３００２に反映される。
【００９２】
続いて図２７に示す如く、色空間画像表示領域２５０内に表示されている楕円カーソル３００５をマウス１９０を用いてドラッグすることより、位置、長径、短径を変更し、色空間画像３００２を包含するようにする。しかし同図に示す如く、実写画像中にＹＵＶ４４４色空間における指標色領域付近の色が存在するため、抽出画像の有色な画素が、実写画像の選択部分外にも多数存在している。
【００９３】
このような状態で認識色領域を確定すると、抽出画像の有色な画素を指標として誤認識してしまうため、楕円カーソル３００５を操作して認識色領域を設定しなくてはならない。
【００９４】
図２８に、楕円カーソル３００５および輝度２３４を操作して、抽出画像において選択部分外に存在する有色な画素を少なくした状態を示す。楕円カーソル３００５を試行錯誤的に操作して、最終的には図２０、図２４に示すように選択部分内にのみ存在しかつ実写画像の対象とする指標部分と一致するようにしなくてはならないが、楕円カーソル３００５の操作のみでは難しい場合もある。
【００９５】
このような場合には、現実空間に存在する物体を除去して、外乱を実写画像に含まれないようにすることも有効な手段である。しかし人間にとっては実写画像中の何が認識色領域設定のための外乱になるのか、判断することは難しい。それを特定するためには、図２９に示す如く、抽出画像において選択部分外に存在する有色な画素群３０１１を、抽出画像上で領域選択すればよい。実写画像上の選択領域枠と、抽出画像上の選択領域枠は同期しているため、抽出画像上の有色な画素を選択枠３０１０でもって領域選択すれば、抽出元の実写画像部分が領域枠３０１５で囲われる。この実写画像の領域枠３０１５を補助的な情報として、外乱となる現実物体を容易に特定することができる。
【００９６】
以上の作業を繰り返し行うことで、外乱のない認識色領域の設定を行うことができる。
【００９７】
以上の説明により、本実施形態によれば、設置場所や光学的条件が変わる際の認識色領域設定作業を容易にし、さらには作業者の指標設置現場での作業工数を減らし、現場の占有時間を短くすることができる。
【００９８】
また、光学的条件や撮像タイミングによって変化する指標色領域に対し十分かつ誤認識の少ない認識色領域を設定することができる。
【００９９】
また、代表色については、認識色領域の中で彩度が最大となる色とすることによって、実際の指標の色と抽出画像領域の組合せの把握を容易にし、より一層作業者の作業を軽減させることが可能になった。
【０１００】
［第２の実施形態］
本実施形態では第１の実施形態とは異なる方法でもって認識色領域の代表色を求める。より具体的には、認識色領域とＣｂＣｒ平面の中心とを通る直線とＣｂ軸との角度と、代表色との対応関係を登録したルックアップテーブル（ＬＵＴ）を予め作成してＨＤＤ１３０に保存しておく。そして上記ステップＳ１５３８ではこのＬＵＴを用いて代表色を取得する。
【０１０１】
図１３は、認識色領域の代表色を求めるための処理のフローチャートである。なお、同図のフローチャートに従った処理をＣＰＵ１１０に実行させるためのプログラムはＨＤＤ１３０に保存されている。そして、ＣＰＵ１１０による制御に従って適宜メモリ１２０にロードされ、ＣＰＵ１１０がこれを用いて処理を行うことで、画像処理装置１００は以下説明する各処理を実行することになる。
【０１０２】
先ず、ステップＳ１３０２では、ＣｂＣｒ平面の中心と楕円カーソル２５２の中心とを通る直線ｍを求める。次に、ステップＳ１３０４では、この直線ｍとＣｂ座標軸とが成す角度θを求める。そして、次に、ステップＳ１３０６では、ＨＤＤ１３０からメモリ１２０にロードされたＬＵＴを参照し、ステップＳ１３０４で求めた角度θに応じたＹ、Ｃｂ、Ｃｒを特定する処理を行う。
【０１０３】
図１４は、ＬＵＴの構成例を示す図で、同図に示す如く、各角度に応じたＹ、Ｃｂ、Ｃｒが登録されている。従ってステップＳ１３０６では、求めた角度を四捨五入するなど、整数に変換し、変換した整数値の角度に対応するＹ、Ｃｂ、Ｃｒを特定する。なお、同図のＬＵＴにおいて、角度θに対応する代表色はＹＣｂＣｒ空間における（Ｙ，Ｃｂ，Ｃｒ）＝（２５５、Ｐｃｂ、Ｐｃｒ）としている。ここでＰｃｂ，ＰｃｒはＣｂＣｒ平面上の中心（Ｃｃｂ、Ｃｃｒ）＝（０，０）、半径ｒ＝１２８の円周上の点であって、角度θの時の値である。
【０１０４】
図１３に戻って、次に、特定したＹ、Ｃｂ、Ｃｒを用いてステップＳ１３５４以降の処理を行うのであるが、ステップＳ１３５４以降の各ステップにおける処理は、上記ステップＳ１２０４以降の各ステップにおける処理と同じであるので、説明は省略する。
【０１０５】
よって、以上の処理により、ＣｂＣｒ平面の中心と楕円カーソル２５２の中心とを通る直線ｍと、Ｃｂ座標軸とが成す角度に対応する代表色を求めることができる。
【０１０６】
なお、本実施形態では図１４に示したＬＵＴを用いたが、ＬＵＴの構成は図１４に示した構成に限定するものではなく、直線ｍ上の彩度が最大になる点であってもよい。この場合、代表色は認識色領域内の点ではなくなるが、ＹＣｂＣｒ色空間における中心と認識色領域を通る直線上の点であるため、認識色領域と色味は変わらず輝度が最大の色となる。  また、このようにして求めた代表色をあらかじめＲＧＢ色空間で表現した値に変換しておいてもよいことは言うまでもない。
【０１０７】
よって、本実施形態によれば、予めＬＵＴを作成しておくことで、代表色を求める計算量を第１の実施形態よりも減らすことができ、システム全体の付加を軽減することが可能になった。
【０１０８】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【０１０９】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１０】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１１】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１１２】
【図１】本発明の第１の実施形態に係るシステムのハードウェア構成を示すブロック図である。
【図２】ＧＵＩの表示例を示す図である。
【図３】「ファイル」メニュー２１０をクリックすることで、表示装置１７０の表示画面上に表示されるメニューの表示例を示す図である。
【図４】「編集」メニュー２２０をクリックすることで、表示装置１７０の表示画面上に表示されるメニューの表示例を示す図である。
【図５】実写画像表示領域２６０内の所望の領域を選択した場合の表示例を示す図である。
【図６】実写画像表示領域２６０の表示例を示す図である。
【図７】図６の実写画像表示領域２６０内の実写画像に対する色空間画像表示領域２５０の表示例を示す図である。
【図８】図７に示す設定内容に基づいて図６に示した実写画像から抽出した抽出画像の表示例を示す図である。
【図９】一方の領域の選択に同期して、他方の領域に選択枠が表示される場合の表示例を示す図である。
【図１０】図９に示したように領域選択した場合の色空間画像２５４の様子を示す図である。
【図１１】図９で示される実写画像の撮影時において領域を選択して無い場合の色空間画像２５４の様子を示す図である。
【図１２】認識色領域の代表色を求めるための処理のフローチャートである。
【図１３】認識色領域の代表色を求めるための処理のフローチャートである。
【図１４】ＬＵＴの構成例を示す図である。
【図１５】ＣＰＵ１１０が認識色領域設定プログラム２００を実行することで行われる処理のフローチャートである。
【図１６】座標系を示すノードの追加を説明する図である。
【図１７】座標系を示すノードの追加を説明する図である。
【図１８】実写画像表示領域２６０での指標色領域選択を行って、認識色領域が設定できた場合の例を示す図である。
【図１９】実写画像表示領域２６０での指標色領域選択を行って、認識色領域が設定できた場合の例を示す図である。
【図２０】実写画像表示領域２６０での指標色領域選択を行って、認識色領域が設定できた場合の例を示す図である。
【図２１】実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合の例を示す図である。
【図２２】実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合の例を示す図である。
【図２３】実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合の例を示す図である。
【図２４】実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合の例を示す図である。
【図２５】実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合のもうひとつの例を示す図である。
【図２６】実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合のもうひとつの例を示す図である。
【図２７】実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合のもうひとつの例を示す図である。
【図２８】実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合のもうひとつの例を示す図である。
【図２９】実写画像表示領域２６０での指標色領域選択を行って、認識色領域の設定に試行錯誤をした場合のもうひとつの例を示す図である。
【図１】
2007034984.tif 000003
【図２】
2007034984.tif 000004
【図３】
2007034984.tif 000005
【図４】
2007034984.tif 000006
【図５】
2007034984.tif 000007
【図６】
2007034984.tif 000008
【図７】
2007034984.tif 000009
【図８】
2007034984.tif 000010
【図９】
2007034984.tif 000011
【図１０】
2007034984.tif 000012
【図１１】
2007034984.tif 000013
【図１２】
2007034984.tif 000014
【図１３】
2007034984.tif 000015
【図１４】
2007034984.tif 000016
【図１５】
2007034984.tif 000017
【図１６】
2007034984.tif 000018
【図１７】
2007034984.tif 000019
【図１８】
2007034984.tif 000020
【図１９】
2007034984.tif 000021
【図２０】
2007034984.tif 000022
【図２１】
2007034984.tif 000023
【図２２】
2007034984.tif 000024
【図２３】
2007034984.tif 000025
【図２４】
2007034984.tif 000026
【図２５】
2007034984.tif 000027
【図２６】
2007034984.tif 000028
【図２７】
2007034984.tif 000029
【図２８】
2007034984.tif 000030
【図２９】
2007034984.tif 000031