(57)【特許請求の範囲】
【請求項１】
入力画像のうち所定条件を満たす領域を特定するための画像処理装置であって、
前記入力画像の各画素の色属性を定義する３つの色パラメータ値を取得する取得手段と、
前記入力画像における色属性の空間的な変化を示す特徴画像を生成する生成手段とを備え、前記特徴画像は、複数次元の要素値を含み、前記複数次元の要素値の各々は、前記入力画像における前記３つの色パラメータ値のうち互いに異なる色パラメータ値の少なくとも１つを反映したものであり、
前記複数次元の要素値の各々を対応する条件に基づいて評価し、各次元についての評価結果に基づいて対象の領域が前記所定条件を満たすか否かを評価する評価手段と、
前記入力画像のうち、前記所定条件を満たす領域を特定するための情報を出力する出力手段と、
対話型のユーザインターフェイスを提供するユーザインターフェイス手段とを備え、
前記ユーザインターフェイス手段は、
選択範囲に含まれる前記特徴画像の画素についての前記複数次元の要素値を前記３つの色パラメータ値に対応する表色座標系上にグラフィカル表示する手段と、
前記評価手段による前記複数次元の要素値の各々を評価するための条件として、ユーザによる任意のしきい値の設定を受付ける手段とを含む、画像処理装置。
【請求項２】
前記出力手段は、前記入力画像をイメージ表示する手段をさらに含み、
前記画像処理装置は、イメージ表示される前記入力画像上で設定された領域に対応する画素を他の画素とは区別するための前記所定条件を決定する条件決定手段をさらに備える、請求項１に記載の画像処理装置。
【請求項３】
前記出力手段は、前記入力画像をイメージ表示する手段をさらに含み、
前記ユーザインターフェイス手段は、前記入力画像上に、前記入力画像のうち特定すべき領域とそれ以外の領域とを含むように前記選択範囲を設定可能に構成されている、請求項１に記載の画像処理装置。
【請求項４】
前記条件決定手段では、いずれの画素であっても前記所定条件を満たすような値が初期条件として設定されている、請求項２に記載の画像処理装置。
【請求項５】
前記評価手段は、前記複数次元の要素値の各々を評価するための条件として、前記３つの色パラメータ値の各々についてのしきい値を用いる、請求項１〜４のいずれか１項に記載の画像処理装置。
【請求項６】
前記生成手段は、前記３つの色パラメータ値のそれぞれ１つに基づいて、３つの次元の要素値を含む前記特徴画像を生成する、請求項１〜５のいずれか１項に記載の画像処理装置。
【請求項７】
前記生成手段は、
色パラメータの別に隣接する複数の画素の有する色パラメータ値を平均化することで、前記３つの色パラメータ値にそれぞれ対応する３つの平均画像を生成する手段と、
前記入力画像に含まれる各画素の有する色パラメータ値の各々と、対応する色パラメータについての前記平均画像に含まれる対応する画素の有する色パラメータ値との間で差分をとることで、前記特徴画像を生成する手段とを含む、請求項６に記載の画像処理装置。
【請求項８】
前記３つの色パラメータ値は、Ｌ＊ａ＊ｂ＊表色系を構成する３つの要素である、請求項１〜７のいずれか１項に記載の画像処理装置。
【請求項９】
入力画像のうち所定条件を満たす領域を特定する画像処理方法であって、
前記入力画像の各画素の色属性を定義する３つの色パラメータ値を取得するステップと、
前記入力画像における色属性の空間的な変化を示す特徴画像を生成するステップとを備え、前記特徴画像は、複数次元の要素値を含み、前記複数次元の要素値の各々は、前記入力画像における前記３つの色パラメータ値のうち互いに異なる色パラメータ値の少なくとも１つを反映したものであり、
前記複数次元の要素値の各々を対応する条件に基づいて評価し、各次元についての評価結果に基づいて対象の領域が前記所定条件を満たすか否かを評価するステップと、
前記入力画像のうち、前記所定条件を満たす領域を特定するための情報を出力するステップと、
前記入力画像上で選択範囲を受け付けるステップと、
前記選択範囲に含まれる前記特徴画像の画素についての前記複数次元の要素値を前記３つの色パラメータ値に対応する表色座標系上にグラフィカル表示するステップと、
前記評価するステップによる前記複数次元の要素値の各々を評価するための条件として、ユーザによる任意のしきい値の設定を受付けるステップとを備える、画像処理方法。
【請求項１０】
前記出力するステップは、前記入力画像をイメージ表示し、
前記画像処理方法は、イメージ表示される前記入力画像上で設定された領域に対応する画素を他の画素とは区別するための前記所定条件を決定するステップをさらに備える、請求項９に記載の画像処理方法。
【請求項１１】
前記出力するステップは、前記入力画像をイメージ表示し、
前記受け付けるステップは、前記入力画像上に、前記入力画像のうち特定すべき領域とそれ以外の領域とを含むように前記選択範囲を受け付ける、請求項９に記載の画像処理方法。
【請求項１２】
前記決定するステップでは、いずれの画素であっても前記所定条件を満たすような値が初期条件として設定されている、請求項１０に記載の画像処理方法。
【請求項１３】
前記評価するステップは、前記複数次元の要素値の各々を評価するための条件として、前記３つの色パラメータ値の各々についてのしきい値を用いる、請求項９〜１２のいずれか１項に記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、入力画像のうち所定条件を満たす領域を特定することが可能な画像処理装置および画像処理方法にするものである。
【背景技術】
【０００２】
ＦＡ（Factory Automation）分野などにおいては、ワークなどの被測定物上の欠陥や汚れの有無を光学的に検査したり、その大きさなどを光学的に計測したり、被測定物上の文字や図形などを光学的に認識したりする装置として、いわゆる視覚センサが実用化されている。このような視覚センサは、被測定物を撮影することで得られる入力画像のうち、所定条件を満たす領域を特定して、その色属性や位置情報などを抽出する。なお、以下の説明では、入力画像のうち特定されるべき領域を「抽出対象領域」とも称す。
【０００３】
このような視覚センサを実際の現場に適用した場合には、撮影環境からの外乱を受けたり、抽出対象領域を定義するための条件設定が難しい局面が生じたりする。
【０００４】
たとえば、照明装置からの照度にムラがあったり、被測定物が曲面形状を有していたりすると、被測定物表面の輝度が均一とはならない場合がある。たとえば、入力画像上において、ゆるやかな陰影が映っているような場合などが考えられる。このような場合には、抽出対象領域を正確に特定できない（不検知）、および／または、抽出対象領域以外の領域を誤って特定してしまう（誤検知）、といった課題が生じ得る。
【０００５】
このような課題に対する技術として、動的２値化処理と呼ばれる方法が知られている。たとえば、特開昭５９−１１４６８７号公報（特許文献１）には、画像の濃淡データを部分画像に分割し、各部分画像の画像データの平均値から、補間式により各点におけるしきい値を決定して２値化を行なう画像データの２値化方法が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開昭５９−１１４６８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特開昭５９−１１４６８７号公報（特許文献１）に開示される画像データの２値化方法では、入力画像の濃淡値に基づいて処理が行われるので、抽出対象領域とそれ以外の領域（たとえば、背景領域）との間の濃淡差（明度差）が相対的に小さい場合に、不検知および／または誤検知の問題を生じ得る。典型的には、抽出対象領域とそれ以外の領域との間で、色相差はあるので人間の視覚上は識別できるにもかかわらず、両者の間の濃淡差がわずかであるため、両者を適切に区別できない場合などである。
【０００８】
また、色属性の値が予め登録した値（抽出色）と一致または近似していることを条件に抽出対象領域を特定する方法も考えられるが、このような方法を用いた場合には、様々な外乱要因により入力画像における色属性（色相など）が変化した場合に、不検知および／または誤検知の問題を生じ得る。また、抽出対象領域とそれ以外の領域との間の色相の差がわずかであるような場合にも、判定処理が不安定化する。
【０００９】
そこで、この発明は、これらの問題を解決するためになされたものであり、その目的は、撮影環境からの外乱を受ける場合、および抽出対象領域とそれ以外の領域との間の色属性の差が相対的に小さい場合のいずれであっても、目的とする領域を正確に特定することが可能な画像処理装置および画像処理方法を提供することである。
【課題を解決するための手段】
【００１０】
この発明のある局面によれば、入力画像のうち所定条件を満たす領域を特定するための画像処理装置を提供する。本画像処理装置は、入力画像の各画素の色属性を定義する３つの色パラメータ値を取得する取得手段と、入力画像における色属性の空間的な変化を示す特徴画像を生成する生成手段とを備える。特徴画像は、複数次元の要素値を含み、複数次元の要素値の各々は、入力画像における３つの色パラメータ値のうち互いに異なる色パラメータ値の少なくとも１つを反映したものである。本画像処理装置は、さらに、複数次元の要素値の各々を対応する条件に基づいて評価し、各次元についての評価結果に基づいて対象の領域が所定条件を満たすか否かを評価する評価手段と、入力画像のうち、所定条件を満たす領域を特定するための情報を出力する出力手段とを備える。
【００１１】
好ましくは、評価手段は、複数次元の要素値の各々を評価するための条件として、３つの色パラメータの各々についてのしきい値を用いる。
【００１２】
好ましくは、生成手段は、３つの色パラメータ値のそれぞれ１つに基づいて、３つの次元の要素値を含む特徴画像を生成する。
【００１３】
さらに好ましくは、生成手段は、色パラメータの別に隣接する複数の画素の有する色パラメータ値を平均化することで、３つの色パラメータにそれぞれ対応する３つの平均画像を生成する手段と、入力画像に含まれる各画素の有する色パラメータ値の各々と、対応する色パラメータについての平均画像に含まれる対応する画素の有する色パラメータ値との間で差分をとることで、特徴画像を生成する手段とを含む。
【００１４】
好ましくは、３つの色パラメータは、Ｌ＊ａ＊ｂ＊表色系を構成する３つの要素である。
【００１５】
好ましくは、本画像処理装置は、対話型のユーザインターフェイスを提供するユーザインターフェイス手段をさらに備える。ユーザインターフェイス手段は、選択範囲に含まれる特徴画像の画素についての複数次元の要素値を３つの色パラメータに対応する表色座標系上にグラフィカル表示する手段を含む。
【００１６】
さらに好ましくは、ユーザインターフェイス手段は、評価手段による複数次元の要素値の各々を評価するための条件条件として、ユーザによる任意のしきい値の設定を受付ける手段をさらに含む。
【００１７】
あるいはさらに好ましくは、出力手段は、入力画像をイメージ表示する手段をさらに含み、本画像処理装置は、イメージ表示される入力画像上で設定された領域に対応する画素を他の画素とは区別するための所定条件を決定する条件決定手段をさらに備える。
【００１８】
さらに好ましくは、条件決定手段では、いずれの画素であっても所定条件を満たすような値が初期条件として設定されている。
【００１９】
この発明の別の局面に従えば、入力画像のうち所定条件を満たす領域を特定する画像処理方法を提供する。本画像処理方法は、入力画像の各画素の色属性を定義する３つの色パラメータを取得するステップと、入力画像における色属性の空間的な変化を示す特徴画像を生成するステップとを備える。特徴画像は、複数次元の要素値を含み、複数次元の要素値の各々は、入力画像における３つの色パラメータのうち互いに異なる色パラメータの少なくとも１つを反映したものである。本画像処理方法は、さらに、複数次元の要素値の各々を対応する条件に基づいて評価し、各次元についての評価結果に基づいて対象の領域が所定条件を満たすか否かを評価するステップと、入力画像のうち、所定条件を満たす領域を特定するための情報を出力するステップとを備える。
【発明の効果】
【００２０】
この発明によれば、撮影環境からの外乱を受ける場合、および抽出対象領域とそれ以外の領域との間の色属性の差が相対的に小さい場合のいずれであっても、目的とする領域を正確に特定することができる。
【図面の簡単な説明】
【００２１】
【図１】この発明の実施の形態に従う画像処理装置を含む視覚センサシステムの全体構成を示す概略図である。
【図２】この発明の実施の形態に従う画像処理装置を実現するコンピュータの概略構成図である。
【図３】この発明の実施の形態において実行される画像処理の典型例を示す概念図である。
【図４】この発明の実施の形態に従う差分画像の技術的意味を説明するための図である。
【図５】この発明の実施の形態に従う差分画像の生成に用いられる平均画像を生成する手順を説明するための図である。
【図６】この発明の実施の形態に従う差分画像に対する評価処理を説明するための図である。
【図７】Ｌ＊ａ＊ｂ＊表色系を示す図である。
【図８】この発明の実施の形態に従う画像処理装置の制御構造を示すブロック図である。
【図９】図８に示す差分画像生成部のより詳細な制御構造を示すブロック図である。
【図１０】この発明の実施の形態に従う抽出対象領域に係る条件設定例を説明するための図である。
【図１１】この発明の実施の形態に従う画像処理装置のモニタに表示される「設定モード」における画面表示例を示す図である。
【図１２】イメージ表示される画像の種類を説明するための図である。
【図１３】図１１において抽出対象色と背景色とを設定するための手順（その１）を説明するための図である。
【図１４】図１１において抽出対象色と背景色とを設定するための手順（その２）を説明するための図である。
【図１５】この発明の実施の形態に従う画像処理装置においてしきい値を自動設定するための手順を説明するための図である。
【図１６】図１５に示すしきい値の自動設定機能を実現するためのアルゴリズムを説明するための図である。
【図１７】図１５に対応するしきい値の設定処理例を示す図である。
【図１８】この発明の実施の形態に従う画像処理装置のモニタに表示される「設定モード」における画面表示例の別形態を示す図である。
【図１９】この発明の実施の形態に従う画像処理装置のモニタに表示される「設定モード」における画面表示例のさらに別形態を示す図である。
【図２０】この発明の実施の形態に従う画像処理装置において処理可能な特徴画像の別形態を説明するための図である。
【図２１】この発明の実施の形態に従う画像処理装置における全体処理を示すフローチャート（その１）である。
【図２２】この発明の実施の形態に従う画像処理装置における全体処理を示すフローチャート（その２）である。
【図２３】図２１に示す差分画像生成サブルーチンの処理内容を示すフローチャートである。
【図２４】図２１に示す評価処理サブルーチンの処理内容を示すフローチャート（その１）である。
【図２５】図２１に示す評価処理サブルーチンの処理内容を示すフローチャート（その２）である。
【図２６】図２１に示すしきい値自動設定サブルーチンの処理内容を示すフローチャートである。
【図２７】この発明に関連する画像処理方法（その１）を説明するための図である。
【図２８】この発明に関連する画像処理方法（その２）を説明するための図である。
【図２９】この発明の実施の形態に従う画像処理方法およびそれに関連する画像処理方法を比較するためのテストチャートである。
【図３０】この発明に関連する画像処理方法を用いて図２９に示すテストチャートを処理した結果の一例を示す図である。
【図３１】この発明の実施の形態に従う画像処理方法を用いて図２９に示すテストチャートを処理した結果の一例を示す図である。
【発明を実施するための形態】
【００２２】
この発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００２３】
＜全体装置構成＞
図１は、この発明の実施の形態に従う画像処理装置１００を含む視覚センサシステムの全体構成を示す概略図である。図１を参照して、視覚センサシステムは、代表的に生産ラインなどに組込まれ、被測定物（以下「ワーク」とも称す。）上の欠陥や汚れの有無を光学的に検査したり、その大きさなどを光学的に計測したり、その表面上の文字や図形などを光学的に認識したりする。一例として、本実施の形態においては、ワーク２は、ベルトコンベヤなどの搬送機構６によって搬送され、搬送されたワーク２は、撮像装置８によって順次撮影される。撮像装置８による撮影によって得られた画像データ（以下「入力画像」あるいは「計測画像」とも称す。）は、画像処理装置１００へ伝送される。なお、撮像装置８で撮影されるワーク２に対して光を照射する照明機構をさらに設けてもよい。
【００２４】
典型的には、ワーク２が撮像装置８の撮影範囲に到達したことは、搬送機構６の両端に配置された光電センサ４によって検出される。具体的には、光電センサ４は、同一の光軸上に配置された受光部と投光部とを含み、投光部から放射される光がワーク２で遮蔽されることを受光部で検出することによって、ワーク２の到達を検出する。なお、搬送機構６の制御自体は、図示しないＰＬＣ（Programmable Logic Controller）などによって制御される。
【００２５】
撮像装置８は、上述した光電センサ４によってワーク２の到着が検出されると、これに応じてワーク２を撮影する。あるいは、連続的に撮影を行っておき、ワーク２の到着の検出に応答して、必要な入力画像のみを画像処理装置１００へ伝送するようにしてもよい。
【００２６】
一例として、撮像装置８は、レンズなどの光学系に加えて、ＣＣＤ（Coupled Charged Device）やＣＭＯＳ（Complementary Metal Oxide Semiconductor）センサといった、複数の画素に区画された撮像素子を含んで構成される。
【００２７】
本実施の形態に従う画像処理装置１００は、典型的に、コンピュータがインストールされたプログラムを実行することで提供される。なお、代替的に、コンピュータがプログラムを実行することで提供される機能の一部もしくは全部を専用のハードウェア回路として具現化してもよい。
【００２８】
図２は、この発明の実施の形態に従う画像処理装置１００を実現するコンピュータの概略構成図である。図２を参照して、画像処理装置１００を実現するコンピュータは、本体部１０１と、表示装置としてのモニタ１０２と、入力装置としての、タッチ検出部１０３、キーボード１０４およびマウス１０５とを含む。本体部１０１は、演算装置（プロセッサ）としてのＣＰＵ（Central Processing Unit）１０６と、記憶装置としてのメモリ１０７および固定ディスク１０８と、記録媒体からのデータ読出装置としてのフレキシブルディスク（ＦＤ：Flexible Disk）駆動装置１１１およびＣＤ−ＲＯＭ（Compact Disk Read Only Memory）駆動装置１１３とを含む。これらの各部は、バスを介して相互にデータ通信可能に接続されている。
【００２９】
画像処理装置１００（コンピュータ）で実行されるプログラムは、典型的には、フレキシブルディスク１１２もしくはＣＤ−ＲＯＭ１１４などに格納されて流通し、またはネットワーク接続された配信サーバ装置などからのダウンロードといった形態で流通する。フレキシブルディスク１１２およびＣＤ−ＲＯＭ１１４に格納されたプログラムは、それぞれＦＤ駆動装置１１１およびＣＤ−ＲＯＭ駆動装置１１３から読出されて、固定ディスク１０８に一旦格納される。さらに、固定ディスク１０８からメモリ１０７上に展開されて、ＣＰＵ１０６により実行される。
【００３０】
ＣＰＵ１０６は、プログラムされた命令（コード）を逐次実行することで、各種の演算を実施する。メモリ１０７は、ＣＰＵ１０６でのプログラム実行に応じて、各種の情報についても一時的に格納する。固定ディスク１０８は、ＣＰＵ１０６で実行されるプログラムの他に、取得した入力画像、入力画像に対する処理結果を示す画像、および各種設定値などを格納するための不揮発性の記憶装置である。
【００３１】
タッチ検出部１０３は、モニタ１０２の表示面上でのタッチペン（スタイラスペン）操作に応じたユーザからの指令を受付ける。タッチ検出部１０３は、典型的には、モニタ１０２の表示面上および／または表示面周囲に配置され、ユーザによるタッチペンの操作を感圧素子または赤外線の送信／受信機構などによって検出する。キーボード１０４は、入力されるキーに応じたユーザからの指令を受付ける。マウス１０５は、クリックやスライドなどの動作に応じたユーザからの指令を受付ける。このように、タッチ検出部１０３、キーボード１０４およびマウス１０５で受付けられたユーザからの指令は、ＣＰＵ１０６へ与えられる。
【００３２】
さらに、本体部１０１は、外部装置との間で信号を遣り取りするためのインターフェイスとして、カメラインターフェイス部１０９と、制御情報インターフェイス部１１５と、センサインターフェイス部１１７とを含む。これらの各部についても、バスを介して相互にデータ通信可能に接続されている。
【００３３】
カメラインターフェイス部１０９は、ＣＰＵ１０６と撮像装置８とのデータ通信を仲介する。より具体的には、カメラインターフェイス部１０９は、画像バッファを含み、撮像装置８から伝送される入力画像のデータを一旦蓄積し、少なくとも１コマ分の入力画像のデータが蓄積されると、その蓄積されたデータをメモリ１０７または固定ディスク１０８へ転送する。また、カメラインターフェイス部１０９は、ＣＰＵ１０６が発生した内部コマンドに従って、撮像装置８に対して撮像指令を与える。
【００３４】
制御情報インターフェイス部１１５は、ＣＰＵ１０６と生産ラインを制御するための図示しない制御装置（典型的には、ＰＬＣ）との間のデータ通信を仲介する。制御情報インターフェイス部１１５は、外部の制御装置からライン情報などを受信し、その受信した情報をＣＰＵ１０６へ出力する。センサインターフェイス部１１７は、上述した光電センサ４（図１）などからのトリガ信号を受信して、ＣＰＵ１０６へ出力する。
【００３５】
また、画像処理装置１００には、必要に応じて、プリンタなどの他の出力装置が接続されてもよい。
【００３６】
なお、図１および図２においては、画像処理装置１００と撮像装置８とがデータ通信可能に接続されており、撮像装置８がワークを撮像することにより得られる入力画像が画像処理装置１００に直接的に入力される構成について例示したが、両者を切離した形態を採用してもよい。すなわち、１または複数の撮像装置８を用いて複数の入力画像を予め取得しておき、これらの入力画像を通信ネットワークまたはポータブルメディアなどを用いて画像処理装置１００に転送した上で、画像処理装置１００により画像処理が順次実行されるようにしてもよい。
【００３７】
＜概要＞
図３は、この発明の実施の形態において実行される画像処理の典型例を示す概念図である。
【００３８】
図３（ａ）には、円筒状のワークを撮影して得られる入力画像に対して、図示の処理範囲について、その背景色以外の色を抽出するような処理を考える。すなわち、図３（ａ）には、入力画像のうち背景色以外の色をもつ領域を特定するための処理を示す。このとき、これらの処理を行なうための所定条件としては、「背景色以外の色をもつ」、もしくは「背景色をもたない」ということになる。
【００３９】
図３（ａ）に示すような円筒状のワークにおいては、ワークの中央部から周辺部に向けて輝度が順次変化している。一般的には、このようなワーク表面に輝度変化（グラディエーション）が生じている場合であっても、この変化を含めて「背景色」として処理した上で、ワークの表面に生じている、楕円状や線状の色の異なる部分（典型的には、欠陥）を抽出対象領域として特定したいというニーズがある。
【００４０】
また、図３（ｂ）に示すような日付が印字されたラベルのようなワークにおいて、半透明な異物で一部が覆われているような場合であっても、その印字された日付を文字認識したいというニーズもある。
【００４１】
上述のようなニーズに応えるため、本実施の形態においては、入力画像の各画素の色属性を定義する３つの色パラメータ値を用いて、入力画像における色属性の空間的な変化を示す特徴画像を生成する。この特徴画像は複数次元の要素値を含み、この複数次元の要素値の各々は、入力画像における３つの色パラメータ値のうち互いに異なる色パラメータ値の少なくとも１つを反映したものである。すなわち、本実施の形態における特徴画像は、入力画像における空間周波数情報を表す。そして、この特徴画像に含まれる複数次元の要素値の各々を対応する条件に基づいて評価し、各次元についての評価結果に基づいて、抽出対象領域が特定される。さらに、特定された抽出対象領域に係る情報として出力される。
【００４２】
典型的に、本実施の形態に従う画像処理装置１００では、上述のような特徴画像として、色パラメータの別に隣接する複数の画素の有する色パラメータ値を平均化することで、３つの色パラメータにそれぞれ対応する３つの平均画像を生成する。さらに、入力画像に含まれる各画素の有する色パラメータ値の各々と、対応する色パラメータについての平均画像に含まれる対応する画素の有する色パラメータ値との間で差分をとることで、３つの色パラメータに対応する３次元の要素をもつ差分画像を生成する。以下、本実施の形態に従う特徴画像、すなわち差分画像について詳述する。
【００４３】
＜差分画像およびそれを用いた評価処理＞
図４は、この発明の実施の形態に従う差分画像の技術的意味を説明するための図である。図５は、この発明の実施の形態に従う差分画像の生成に用いられる平均画像を生成する手順を説明するための図である。図６は、この発明の実施の形態に従う差分画像に対する評価処理を説明するための図である。
【００４４】
まず、本実施の形態に従う画像処理においては、入力画像の各画素の色属性を定義するための３つの色パラメータ値が取得される。すなわち、入力画像の各画素のもつ色情報を、任意の表色系（Ｃ１，Ｃ２，Ｃ３）における３次元の座標値として分解する。表色系としては、３つの独立したパラメータで定義できる表色系であればどのようなものであってもよいが、たとえば、Ｌ＊ａ＊ｂ＊表色系、ＨＳＶ表色系、Ｌ＊Ｃ＊ｈ表色系、ＲＧＢ表色系などを用いることができる。なお、後述するより具体的な実施形態においては、Ｌ＊ａ＊ｂ＊表色系を用いる構成について例示する。
【００４５】
たとえば、図３（ａ）に示す円筒状のワークが写った入力画像のある範囲に含まれる画素を表色系（Ｃ１，Ｃ２，Ｃ３）においてプロットすると、図４に示すようになる。この図４において、座標点Ｇ１は、背景色以外の色をもつ画素を示し、座標点Ｇ２は、背景色をもつ画素を示す。上述したように、照明環境からの外乱を受けることで、表色系における各画素の位置も変動し得る。
【００４６】
そこで、本実施の形態においては、入力画像の各画素（注目画素）について、当該注目画素およびその周辺画素がそれぞれ有する色パラメータ値（Ｃ１，Ｃ２，Ｃ３の各値）を座標別にそれぞれ平均化することで得られる平均画像を生成し、この平均画像を基準とする偏差に基づいて、抽出対象領域を特定する。
【００４７】
たとえば、図４に示す座標点Ｇ１に対応する画素を注目画素とし、当該画素の周辺に座標点Ｇ２に対応する画素が存在しているとすると、座標点Ｇ１に対応する画素についての平均値（すなわち、対象の入力画像から生成される平均画像における座標点Ｇ１に対応する色属性）は、座標点ＡＶＥに相当する値となる。図４に示す表色系について見れば、座標点Ｇ１および４つの座標点Ｇ２から算出される重心位置が座標点ＡＶＥに相当する。そして、この座標点ＡＶＥから座標点Ｇ１までのベクトル（ΔＣ１，ΔＣ２，ΔＣ３）が座標点Ｇ２に対応する画素についての差分値（すなわち、対象の入力画像から生成される差分画像における座標点Ｇ２に対応する画素の有する複数次元の要素値）に相当する。
【００４８】
一般的に、ある注目画素が周辺画素とほぼ同様の色属性を有している場合には、当該注目画素に対応する差分値（図４に示すベクトル）が小さくなり、逆に、ある注目画素が周辺画素とは異なる色属性を有している場合には、当該注目画素に対応する差分値は大きくなる。そのため、この差分値に基づいて、それぞれの注目画素が目的とする色属性をもつ画素であるか否か、すなわち抽出対象領域として特定すべきか否かを判断することができる。
【００４９】
図５を参照して、平均画像（各注目画素についての平均値）の算出手順について説明する。たとえば、入力画像上のある注目画素Ｉ（ｉ，ｊ）について考えると、当該注目画素の色属性と、その周辺（紙面横方向に±ｍ画素および紙面縦方向に±ｎ画素）に配置された画素の色属性との間の要素値毎の平均値が算出される。すなわち、注目画素Ｉ（ｉ，ｊ）についての平均値Ｃ１ＡＶＥ（ｉ，ｊ），Ｃ２ＡＶＥ（ｉ，ｊ），Ｃ３ＡＶＥ（ｉ，ｊ）は、座標位置（ｉ，ｊ）における要素値をそれぞれＣ１（ｉ，ｊ），Ｃ２（ｉ，ｊ），Ｃ３（ｉ，ｊ）として、それぞれ以下に示す（１．１）〜（１．３）式に従って算出される。
【００５０】
【数１】
0005509706.tif 000002
【００５１】
なお、以下の説明では、（２ｍ＋１）画素×（２ｎ＋１）画素の範囲を「フィルタサイズ」とも称す。なお、図５には、５画素×５画素のフィルタサイズを設定した場合を例示するが、このフィルタサイズは、複数の画素を含む任意のサイズを採用することができる。
【００５２】
さらに、算出された平均値Ｃ１ＡＶＥ（ｉ，ｊ），Ｃ２ＡＶＥ（ｉ，ｊ），Ｃ３ＡＶＥ（ｉ，ｊ）を用いて、注目画素Ｉ（ｉ，ｊ）についての差分値ΔＣ１（ｉ，ｊ），ΔＣ２（ｉ，ｊ），ΔＣ３（ｉ，ｊ）は、それぞれ以下に示す（２．１）〜（２．３）式に従って算出される。
【００５３】
【数２】
0005509706.tif 000003
【００５４】
上述のような手順に従って、図４に示す座標点Ｇ１およびＧ２にそれぞれ対応する複数の画素について算出した差分値を、差分値に含まれる３つの要素をそれぞれの座標軸に割当てた３次元の座標系（ΔＣ１，ΔＣ２，ΔＣ３）上にプロットすると、図６のように表される。
【００５５】
図６に示す座標系において、座標点Ｇ１は相対的に原点Ｏから離れた位置にある一方、座標点Ｇ２の各々は相対的に原点Ｏに近い位置にある。そのため、それぞれの座標軸において、抽出対象領域を定義するための上下限値をそれぞれ設定することで、図６に示すようなしきい領域を設定することができる。すると、このしきい領域外に存在する座標点Ｇ２に対応する画素を、しきい領域内に存在する座標点Ｇ１に対応する画素から区別することができる。
【００５６】
なお、図６においては、３つの座標軸のいずれにおいても上下限値（しきい値）を設定した場合を示すが、後述するように、３つの座標軸のうち、少なくとも１つの座標軸についての上下限値（しきい値）を設定すればよい。
【００５７】
上述のように、本実施の形態においては、入力画像から空間周波数情報を含む差分画像を生成し、この差分画像に基づいて、目的とする抽出対象領域が特定される。このような差分画像を用いることで、背景色が外乱要因などで変動した場合であっても、安定した処理を実現できる。
【００５８】
なお、以下の説明では、１つの次元についての差分値を画素位置に対応付けてマッピングしたデータを「差分画像」と称することもあるし、すべての次元についての差分値を画素位置に対応付けてマッピングしたデータを「差分画像」と称することもある。
【００５９】
＜Ｌ＊ａ＊ｂ＊表色系＞
本実施の形態に従う画像処理装置１００では、図７に示すようなＬ＊ａ＊ｂ＊表色系にて画像処理が行われる。Ｌ＊ａ＊ｂ＊表色系は、ＪＩＳ規格ＪＩＳ−Ｚ８７２９として採用されており、明度をＬ＊座標で表し、色相および彩度を示す色度をａ＊座標およびｂ＊座標で表す。より具体的には、ａ＊座標の＋方向は赤方向に対応し、ａ＊座標の−方向は緑方向に対応し、ｂ＊座標の＋方向は黄方向に対応し、ｂ＊座標の−方向は青方向に対応する。
【００６０】
図７に示すように、Ｌ＊ａ＊ｂ＊表色系では、各座標を互いに同じレンジ、たとえば各次元の要素が取り得る値を−１００〜１００として定義することができるので、座標毎の取り扱いが容易になるというメリットがある。以下では、Ｌ＊座標，ａ＊座標，ｂ＊座標は、いずれも−１００〜１００の範囲を有効範囲として定義する場合について例示する。
【００６１】
＜制御構造＞
次に、本実施の形態に従う画像処理装置１００のより具体的な構成について例示する。
【００６２】
図８は、この発明の実施の形態に従う画像処理装置１００の制御構造を示すブロック図である。図９は、図８に示す差分画像生成部のより詳細な制御構造を示すブロック図である。
【００６３】
図８を参照して、画像処理装置１００は、その制御構造として、画像バッファ１５０と、色分解部１５２と、差分画像生成部１５４，１５６，１５８と、評価部１６０と、出力部１７０と、ＵＩ（ユーザインターフェイス）部１７２と、条件設定／変更部１７４とを含む。これらのうち、画像バッファ１５０は、メモリ１０７または固定ディスク１０８（いずれも図２）の特定の領域によって提供される。典型的には、出力部１７０およびＵＩ部１７２は、モニタ１０２、タッチ検出部１０３、キーボード１０４、マウス１０５（いずれも、図２）といったハードウェアと、ＣＰＵ１０６による各種ドライバソフトおよび／またはＯＳ（Operating System）などの実行との協働によって提供される。残りの部分は、ＣＰＵ１０６が固定ディスク１０８などに予め格納されたプログラムをメモリ１０７に読出して実行することにより提供される。なお、図８に示す制御構造の一部もしくは全部を専用ハードウェアおよび／または配線回路によって実現してもよい。
【００６４】
画像バッファ１５０は、撮像装置８（図１および図２）の撮像などによって取得された入力画像を一時的に格納する。この画像バッファ１５０は、色分解部１５２、出力部１７０およびＵＩ部１７２によってアクセス可能に構成される。
【００６５】
色分解部１５２は、画像バッファ１５０に一時的に格納されている入力画像の各画素の色属性を定義する３つの色パラメータ値（Ｌ＊値，ａ＊値，ｂ＊値）を取得する。撮像装置８によって生成される入力画像は、典型的には、各画素の色属性がＲ輝度値，Ｇ輝度値，Ｂ輝度値の３つの色パラメータによって定義されており、色分解部１５２は、各画素についてのＲ，Ｇ，Ｂ輝度値をＬ＊値，ａ＊値，ｂ＊値に分解する。なお、このようなＲ輝度値，Ｇ輝度値，Ｂ輝度値からＬ＊値，ａ＊値，ｂ＊値への分解処理は、ルックアップテーブルなどを用いることでより高速に行なうことができる。そして、色分解部１５２によって取得されたＬ＊値は、差分画像生成部１５４へ入力され、色分解部１５２によって取得されたａ＊値は差分画像生成部１５６へ入力され、色分解部１５２によって取得されたｂ＊値は差分画像生成部１５８へ入力される。
【００６６】
差分画像生成部１５４，１５６，１５８は、上述の図５に示すような手順に従って、対応する要素値（Ｌ＊値，ａ＊値，ｂ＊値）の各々についての差分画像を生成する。そして、差分画像生成部１５４，１５６，１５８は、それぞれ生成した要素値別の差分画像を評価部１６０へ出力する。
【００６７】
より具体的には、図９を参照して、差分画像生成部１５４は、入力値バッファ１８２と、平均化部１８４と、平均値バッファ１８６と、差分算出部１８８と、差分値バッファ１９０とを含む。
【００６８】
入力値バッファ１８２は、色分解部１５２から出力される色パラメータ値（この例では、Ｌ＊値）を画素位置と対応付けて順次格納する。入力値バッファ１８２は、平均化部１８４および差分算出部１８８によってアクセス可能に構成される。
【００６９】
平均化部１８４は、注目画素として、入力値バッファ１８２に格納された各画素に対応する色パラメータ値（この例では、Ｌ＊値）を順次選択するとともに、各選択された注目画素についての色パラメータ値、および当該注目画素の周辺画素についての色パラメータ値を読み出して、対応する平均値（この例では、平均値Ｌ＊ＡＶＥ）を算出する。なお、この平均値の算出は、上述した（１．１）〜（１．３）式に従って行われる。平均化部１８４は、各画素について算出した平均値を平均値バッファ１８６へ順次出力する。
【００７０】
平均値バッファ１８６は、平均化部１８４から順次出力される平均値を画素位置と対応付けて順次格納する。平均値バッファ１８６は、差分算出部１８８によってアクセス可能に構成される。
【００７１】
差分算出部１８８は、入力画像に含まれる各画素について、入力値バッファ１８２に格納されている色パラメータ値（この例では、Ｌ＊値）と、平均値バッファ１８６に格納されている平均値（この例では、平均値Ｌ＊ＡＶＥ）とを読み出して、対応する差分値（この例では、差分値ΔＬ＊）を算出する。なお、この差分値の算出は、上述した（２．１）〜（２．３）式に従って行われる。差分算出部１８８は、各画素について算出した差分値を差分値バッファ１９０へ順次出力する。
【００７２】
差分値バッファ１９０は、差分算出部１８８から出力される差分値（この例では、差分値ΔＬ＊）を画素位置と対応付けて順次格納する。差分値バッファ１９０は、評価部１６０（図８）によってアクセス可能に構成される。
【００７３】
差分画像生成部１５６および１５８の構成についても、処理対象の色パラメータ値がそれぞれａ＊値およびｂ＊値となる点を除いて、その他の点は差分画像生成部１５４と同様であるので、詳細な説明は繰返さない。
【００７４】
再度図８を参照して、評価部１６０は、差分画像生成部１５４，１５６，１５８によってそれぞれ算出される差分画像に含まれる要素値（差分値ΔＬ＊，差分値Δａ＊，差分値Δｂ＊）の各々を対応する条件に基づいて評価する。そして、評価部１６０は、各次元についての評価結果に基づいて対象の領域（画素）が所定条件を満たすか否かを評価する。さらに、評価部１６０は、所定条件を満たす領域であるか否かを示す評価結果を出力部１７０へ与える。
【００７５】
より具体的には、評価部１６０は、判定部１６４，１６６，１６８と、評価結合部１６２とを含む。判定部１６４，１６６，１６８は、それぞれ差分画像生成部１５４，１５６，１５８と関連付けられている。
【００７６】
すなわち、判定部１６４は、差分画像生成部１５４から出力される差分値ΔＬ＊に対して、条件設定／変更部１７４から与えられるΔＬ＊上下限値と比較し、対象の差分値ΔＬ＊がこのΔＬ＊上下限値の範囲内であるか否かを示す情報を評価結合部１６２へ出力する。同様に、判定部１６６は、差分画像生成部１５６から出力される差分値Δａ＊に対して、条件設定／変更部１７４から与えられるΔａ＊上下限値と比較し、対象の差分値Δａ＊がこのΔａ＊上下限値の範囲内であるか否かを示す情報を評価結合部１６２へ出力する。同様に、判定部１６８は、差分画像生成部１５８から出力される差分値Δｂ＊に対して、条件設定／変更部１７４から与えられるΔｂ＊上下限値と比較し、対象の差分値Δｂ＊がこのΔｂ＊上下限値の範囲内であるか否かを示す情報を評価結合部１６２へ出力する。
【００７７】
なお、後述するように、抽出対象とすべき領域の色属性に応じて、判定部１６４，１６６，１６８のうち一部のみが有効化される場合がある。すなわち、差分値ΔＬ＊，Δａ＊，Δｂ＊のうち特定の要素のみが評価対象とされる場合もある。この場合には、評価対象とはされない要素に対応する判定部では、入力されるすべての差分値に対して、与えられた条件を満たすことを示す情報が出力される。
【００７８】
評価結合部１６２は、判定部１６４，１６６，１６８からそれぞれ出力される判定結果を結合して、対応する画素が与えられた所定条件を満たすか否か、すなわち、対象の画素が抽出対象領域に相当するか否かを判断する。より具体的には、評価結合部１６２は、判定部１６４，１６６，１６８からの判定結果のすべてが対応する条件を満足することを示す場合に限って、対象の画素が抽出対象領域であると判断する。言い換えれば、評価結合部１６２は、判定部１６４，１６６，１６８からの判定結果の論理積を算出し、それが真（ｔｒｕｅ）であれば、抽出対象領域であると判断する。
【００７９】
より具体的には、判定部１６４，１６６，１６８の各々は、入力画像の画素位置に対応付けて、「１」（対応する条件を満足する場合）または「０」（対応する条件を満足しない場合）を２次元マッピングしたデータを判定結果として出力する。そのため、評価結合部１６２が各画素について、論理積を算出することで、すべての要素において「１」である画素のみを抽出対象領域として判断する。また、この評価結合部１６２による評価結果を入力画像の画素位置に対応付けて２次元マッピングすることで、２値画像が生成される。
【００８０】
出力部１７０は、入力画像のうち、所定条件を満たす領域を特定するための情報を出力する。より具体的には、上述の処理によって特定された抽出対象領域とそれ以外の領域とを区別した２値画像をイメージ表示（後述する「２値画像」の表示）したり、入力画像のうち特定された抽出対象領域に対応する領域のみをイメージ表示（後述する「抽出画像」の表示）したりする。
【００８１】
また、出力部１７０は、特定された抽出対象領域の画素の位置情報（座標値）、当該画素の数、当該画素によって形作られる外形、当該画素の色属性および／またはその代表値などの情報を、図示しない上位装置などへ出力するようにしてもよい。
【００８２】
ＵＩ部１７２は、対話型のユーザインターフェイスを提供する。このＵＩ部１７２は、後述するように、イメージ表示される各種画像上で選択された範囲に含まれる画素についての情報（差分値）をＬ＊ａ＊ｂ＊表色系に対応する色座標系上にグラフィカル表示する。さらに、ＵＩ部１７２は、このＬ＊ａ＊ｂ＊表色系に対応する色座標系上で、抽出対象領域とすべき条件として、ユーザによる任意のしきい値（各要素についての上下限値）の設定を受付ける。なお、ＵＩ部１７２については、ＯＳの一部として組込まれるＧＵＩ（Graphical User Interface）プログラムによって提供されてもよい。
【００８３】
条件設定／変更部１７４は、ユーザ操作に応じて、および／または、先に算出された差分画像に応じて、抽出対象領域を特定するための所定条件を設定および／または変更する。より具体的には、条件設定／変更部１７４は、判定部１６４，１６６，１６８に対してそれぞれΔＬ＊上下限値，Δａ＊上下限値，Δｂ＊上下限値を与える。さらに、条件設定／変更部１７４は、判定部１６４，１６６，１６８に対して設定すべきそれぞれの上下限値を自動的に決定するための自動設定ロジック１７４ａを含む。自動設定ロジック１７４ａは、後述するように、モニタ１０２上などにイメージ表示される入力画像に対してユーザが任意の領域（後述する選択範囲３２０）を設定すると、当該領域に対応する画素を他の画素とは区別するための条件（ΔＬ＊上下限値，Δａ＊上下限値，Δｂ＊上下限値）を自動的に決定する。この自動設定ロジック１７４ａの詳細については後述する。
【００８４】
＜抽出対象領域に係る条件設定＞
図１０は、この発明の実施の形態に従う抽出対象領域に係る条件設定例を説明するための図である。図１０（ａ）は、差分値ΔＬ＊のみに基づいて目的とする抽出対象領域を特定する場合の例を示し、図１０（ｂ）は、差分値Δａ＊およびΔｂ＊に基づいて目的とする抽出対象領域を特定する場合の例を示し、図１０（ｃ）は、差分値ΔＬ＊，Δａ＊，Δｂ＊のすべてに基づいて目的とする抽出対象領域を特定する場合の例を示す。
【００８５】
図１０（ａ）に示す条件設定は、抽出対象とする色とそれ以外の背景色との間で、明度Ｌ＊について有意な差が存在すると見込まれる場合などに適用される。すなわち、ΔＬ＊座標軸上にΔＬ＊上下限値（ΔＬ＊についてのしきい値）のみを設定し、ΔＬ＊上限値より大きい範囲およびΔＬ＊下限値より小さい範囲を抽出空間として設定する。この場合には、その有するΔＬ＊値がΔＬ＊上限値より大きい、もしくはΔＬ＊下限値より小さい場合に、対象の画素を目的の画素であると評価する。
【００８６】
また、図１０（ｂ）に示す条件設定は、抽出対象とする色とそれ以外の背景色との間で、色度（色相および／または彩度）について有意な差が存在すると見込まれる場合などに適用される。すなわち、Δａ＊座標軸上にΔａ＊上下限値（Δａ＊についてのしきい値）を設定するとともに、Δｂ＊座標軸上にΔｂ＊上下限値（Δｂ＊についてのしきい値）を設定する。この場合には、その有するΔａ＊値がΔａ＊上限値より大きい、もしくはΔａ＊下限値より小さい場合であって、かつ、その有するΔｂ＊値がΔｂ＊上限値より大きい、もしくはΔｂ＊下限値より小さい場合に、対象の画素を目的の画素であると評価する。
【００８７】
さらに、図１０（ｃ）に示す条件設定は、抽出対象とする色とそれ以外の背景色とが、色相、彩度、明度のうち１つまたは２つについて互いに近接した値をもっている場合などに有効である。図１０（ｃ）に示す条件設定では、ΔＬ＊座標軸上にΔＬ＊上下限値、Δａ＊座標軸上にΔａ＊上下限値、およびΔｂ＊座標軸上にΔｂ＊上下限値をそれぞれ設定する。この例では、その有するΔＬ＊値がΔＬ＊上限値より大きい、もしくはΔＬ＊下限値より小さい場合、かつ、その有するΔａ＊値がΔａ＊上限値より大きい、もしくはΔａ＊下限値より小さい場合、かつ、その有するΔｂ＊値がΔｂ＊上限値より大きい、もしくはΔｂ＊下限値より小さい場合に限って、対象の画素を目的の画素であると評価する。
【００８８】
＜ユーザインターフェイス＞
図１１は、この発明の実施の形態に従う画像処理装置のモニタに表示される「設定モード」における画面表示例を示す図である。図１２は、イメージ表示される画像の種類を説明するための図である。
【００８９】
本実施の形態に従う画像処理（領域特定処理）の実行が開始されると、図１１に示すようなユーザインターフェイス画面３００が表示される。このユーザインターフェイス画面３００においては、ユーザは対話式に各種操作を行なうことができる。
【００９０】
ユーザインターフェイス画面３００は、画像表示エリア３１０と、表色座標系エリア３３０と、平均画像のフィルタサイズを設定するためのスライドバー３３２と、チェックボックス３５２，３５４，３５６，３５８と、画像表示エリア３１０にイメージ表示する画像を選択するためのコンボボックス３６４とを含む。
【００９１】
画像表示エリア３１０には、コンボボックス３６４において選択されている画像がイメージ表示される。具体的には、図１２（ａ）に示すような、撮像装置８の撮像によって得られた計測画像（入力画像）、図１２（ｂ）に示すような、入力画像のうち特定された抽出対象領域に対応する領域（文字「Ａ」）のみを有効化した抽出画像、および、図１２（ｃ）に示すような、特定された抽出対象領域（文字「Ａ」）とそれ以外の領域とを視認可能に表した２値画像のいずれかが表示される。なお、コンボボックス３６４では、ユーザ選択に応じて、いわゆるプルダウンメニュー３６６が表示され、このプルダウンメニュー３６６においては、「計測画像」「入力画像」「２値画像」が選択可能に一覧表示される。
【００９２】
また、図１２に示す例では、その表面に、異なる色で文字「Ａ」および文字「Ｂ」が印字されているワークを撮像装置８で撮影して得られる入力画像の例を示す。なお、対象のワークの表面には、空間的な輝度変化（グラディエーション）が生じているものとする。そして、本実施の形態に従う領域特定処理として、文字「Ａ」のみを抽出したものとする。この場合においては、図１２（ａ）に示す計測画像は、撮像装置８により撮像されたままの画像に相当する。また、図１２（ｂ）に示す抽出画像は、文字「Ａ」に相当する領域のみが計測画像（入力画像）における対応する色で着色されているとともに、その他の領域については色情報を持たない状態（黒ベタもしくは白ベタなど）で表示される。さらに、図１２（ｃ）に示す２値画像は、文字「Ａ」に相当する領域のみが「白色」で表示されるとともに、その他の領域が「黒色」で表示される。すなわち、文字「Ａ」の領域に含まれる画素が「白画素」（０〜２５５階調であれば「２５５」）に設定され、それ以外の領域に含まれる画素が「黒画素」（０〜２５５階調であれば「０」）に設定されている。
【００９３】
再度図１１を参照して、さらに、画像表示エリア３１０に対して、画面上でのタッチペンＴＰを用いたドラッグ操作、またはキーボード１０４／マウス１０５を用いた領域選択操作などに応じて、選択範囲３２０を設定することができる。この選択範囲３２０を用いた処理については後述する。
【００９４】
スライドバー３３２は、ユーザ操作に応じてスライド可能に表示され、そのスライド位置に応じて、平均画像を生成する際に用いられるフィルタサイズ（図５に示す注目画素および周辺画素を含む大きさ）が変更される。なお、図１１には、フィルタサイズを３画素〜２５５画素の範囲で変更可能な例が示されているが、その可変幅は任意の範囲および段数に設定することができる。なお、フィルタサイズを大きくするほど、空間周波数に対するローパスフィルタとしての遮断周波数が低くなるので、検出感度は低下するが、背景色における輝度の不均一性といった外乱の影響を受け難くなる。
【００９５】
表色座標系エリア３３０は、入力画像における抽出対象領域を特定するための所定条件の設定／表示を提供する。より具体的には、表色座標系エリア３３０は、Δａ＊座標軸およびΔｂ＊座標軸におけるしきい値を設定／表示するための円状の色度図３３４と、ΔＬ＊座標軸におけるしきい値を設定／表示するための棒状の明度図３４４とを含む。
【００９６】
色度図３３４は、紙面縦方向にΔａ＊座標軸が定義され、紙面横方向にΔｂ＊座標軸が定義される。そして、色度図３３４のΔａ＊座標軸に対応付けて、Δａ＊下限値を設定するためのスライドバー３３６ａ、およびΔａ＊上限値を設定するためのスライドバー３３６ｂが、ユーザ操作に応じてスライド可能に表示される。同様に、色度図３３４のΔｂ＊座標軸に対応付けて、Δｂ＊下限値を設定するためのスライドバー３３８ａ、およびΔａ＊上限値を設定するためのスライドバー３３８ｂが、ユーザ操作に応じてスライド可能に表示される。
【００９７】
また、色度図３３４上には、現在設定されているΔａ＊上下限値およびΔｂ＊上下限値によって定義される抽出対象領域を示す表示枠３４０および３４２が表示される。すなわち、表示枠３４０は、色度図３３４上における抽出対象領域の下限境界を示し、表示枠３４２は、色度図３３４上における抽出対象領域の上限境界を示す。
【００９８】
一方、明度図３４４は、紙面縦方向にΔＬ＊座標軸が定義される。そして、明度図３４４のΔＬ＊座標軸に対応付けて、ΔＬ＊下限値を設定するためのスライドバー３４６ａ、およびΔＬ＊上限値を設定するためのスライドバー３４６ｂが、ユーザ操作に応じてスライド可能に表示される。また、明度図３４４上には、現在設定されているΔＬ＊上下限値によって定義される抽出対象領域を示す表示枠３４８および３５０が表示される。すなわち、表示枠３４８は、明度図３４４上における抽出対象領域の下側範囲を示し、表示枠３５０は、色度図３３４上における抽出対象領域の上側範囲を示す。
【００９９】
さらに、色度図３３４および明度図３４４の上には、画像表示エリア３１０において設定されている選択範囲３２０に含まれる差分画像の画素についての要素値（差分値ΔＬ＊，差分値Δａ＊，差分値Δｂ＊）がドット表示される（符号３７０）。すなわち、選択範囲３２０に含まれる差分画像の画素についての情報が、３つの色パラメータに対応するＬ＊ａ＊ｂ＊表色座標系上にグラフィカル表示される。このように、色度図３３４および明度図３４４において差分画像の要素値がドット表示されることで、ユーザは、しきい値を容易に設定することができる。
【０１００】
次に、チェックボックス３５２，３５４，３５６は、それぞれ、差分値ΔＬ＊，差分値Δａ＊，差分値Δｂ＊についての判定条件についての有効化／無効化の選択を受付ける。すなわち、チェックボックス３５２には、「ΔＬ＊２値画像使用フラグ」の名称が付されており、このチェックボックス３５２がユーザによるタッチペンの操作などによって選択（チェック）されると、現在設定されているΔＬ＊上下限値に基づく評価が有効化される。同様に、チェックボックス３５４には、「Δａ＊２値画像使用フラグ」の名称が付されており、このチェックボックス３５４がユーザによるタッチペンの操作などによって選択（チェック）されると、現在設定されているΔａ＊上下限値に基づく評価が有効化される。同様に、チェックボックス３５６には、「Δｂ＊２値画像使用フラグ」の名称が付されており、このチェックボックス３５６がユーザによるタッチペンの操作などによって選択（チェック）されると、現在設定されているΔｂ＊上下限値に基づく評価が有効化される。
【０１０１】
また、チェックボックス３５８は、後述するように、目的とする色属性をもつ画素を抽出するための条件（しきい値）についての自動設定の有効化／無効化の選択を受付ける。すなわち、チェックボックス３５８には、「しきい値自動設定」の名称が付されており、このチェックボックス３５８がユーザによるタッチペンの操作などによって選択（チェック）されると、画像表示エリア３１０にイメージ表示される入力画像上で設定された領域（選択範囲３２０）に対応する画素を他の画素とは区別するための条件を決定するための処理が有効化される。
【０１０２】
さらに、ユーザインターフェイス画面３００には、「ＯＫ」ボタン３６０と、「ＣＡＮＣＥＬ」ボタン３６２とが選択可能に表示されている。ユーザにより「ＯＫ」ボタン３６０が選択されると、設定中のしきい値などが固定ディスク１０８などに保存された上で、図示しない別の画面などが表示される。一方、ユーザにより「ＣＡＮＣＥＬ」ボタン３６２が選択されると、設定中のしきい値などが破棄されて図示しない別の画面などが表示される。
【０１０３】
＜ユーザ操作例＞
次に、図１３および図１４を参照して、図１１に示すユーザインターフェイス画面３００におけるユーザ操作例について説明する。
【０１０４】
図１３は、図１１において抽出対象色と背景色とを設定するための手順（その１）を説明するための図である。図１４は、図１１において抽出対象色と背景色とを設定するための手順（その２）を説明するための図である。
【０１０５】
図１２（ａ）に示すように、異なる色で文字「Ａ」および文字「Ｂ」が印字されているワークを撮像装置８で撮影して得られる計測画像（入力画像）のうち、文字「Ａ」の相当する領域を抽出するための条件を設定する場合を考える。まず、図１３に示すように、ユーザは、画像表示エリア３１０に入力画像を表示した状態で、タッチペンＴＰで画面上をドラッグして選択範囲３２０を設定、またはキーボード１０４／マウス１０５を用いて選択範囲３２０を設定する。このとき、ユーザは、抽出対象領域とそれ以外の領域（背景領域）とを含むように選択範囲３２０を設定することが好ましい。
【０１０６】
すると、表色座標系エリア３３０に含まれる色度図３３４および明度図３４４上には、当該選択範囲３２０に含まれる差分画像の各画素の情報（差分値ΔＬ＊，差分値Δａ＊，差分値Δｂ＊）に対応する位置にドット（符号３７０）がマッピングされる。たとえば、色度図３３４上にマッピングされたドットは、抽出対象領域に含まれる画素の有する色属性に相当するグループと、抽出対象領域以外の領域に含まれる画素の有する色属性に相当するグループとに偏在していることがわかる。したがって、この２つのグループを区別できるように、ユーザはスライドバー３３６ａ，３３６ｂ，３３８ａ，３３８ｂを操作して、しきい値（Δａ＊上下限値およびΔｂ＊上下限値）を設定する。同様に、明度図３４４上にマッピングされたドットは、抽出対象領域に含まれる画素の有する色属性に相当するグループと、抽出対象領域以外の領域に含まれる画素の有する色属性に相当するグループとに偏在していることがわかる。したがって、この２つのグループを区別できるように、ユーザはスライドバー３４６ａ，３４６ｂを操作して、しきい値（ΔＬ＊上下限値）を設定する。
【０１０７】
図１４に示すように、本実施の形態に従う画像処理装置１００においては、表色座標系にマッピングされるドットを見ながらユーザはしきい値を設定することができる。そのため、経験および知識の少ないユーザであっても、容易かつ短時間に抽出対象領域を規定する条件を設定することができる。
【０１０８】
＜しきい値自動設定＞
上述のようなユーザによるしきい値の手動設定に加えて、本実施の形態に従う画像処理装置１００においては、しきい値を自動設定することも可能である。以下、このしきい値の自動設定機能について、図１５〜図１７を参照して説明する。
【０１０９】
図１５は、この発明の実施の形態に従う画像処理装置１００においてしきい値を自動設定するための手順を説明するための図である。図１６は、図１５に示すしきい値の自動設定機能を実現するためのアルゴリズムを説明するための図である。図１７は、図１５に対応するしきい値の設定処理例を示す図である。
【０１１０】
図１１に示すユーザインターフェイス画面３００において、チェックボックス３５８に予めチェックを入れておき、続いて、図１３に示すように入力画像に対して選択範囲３２０を設定する。すると、図１５に示すように、表色座標系エリア３３０においては、抽出対象領域に対応する画素を他の画素とは区別するための条件に応じて、スライドバー３３６ａ，３３６ｂ，３３８ａ，３３８ｂ，３４６ａ，３４６ｂの各々の位置が自動調整される。
【０１１１】
上述のようなしきい値の自動設定処理は、統計解析分野における公知の手法を用いることができる。
【０１１２】
典型的な第１の方法としては、図１６（ａ）に示すように、各次元の要素値群について、その最小値および最大値を抽出し、抽出した最小値および最大値の中間値にしきい値を設定する方法である。典型的には、最小値と最大値との間の中央値がしきい値として設定される。なお、本実施の形態においては、このしきい値は、各次元（座標軸）における下限値（ΔＬ＊下限値、Δａ＊下限値、Δｂ＊下限値）に相当する。
【０１１３】
典型的な第２の方法としては、「モード法」と称される方法を用いることができる。たとえば、図１３に示すような選択範囲３２０が設定されると、当該選択範囲３２０に含まれる画素についての各次元の要素値群についてみれば、抽出対象領域に含まれる画素の要素値のモードと、それ以外の領域（背景領域）に含まれる画素の要素値のモードとを含むようになる。すなわち、図１６（ｂ）に示すように、各次元における要素値のヒストグラムとしては、抽出対象領域とそれ以外の領域とにそれぞれ対応した第１モードおよび第２モードという２つの「山」が現れる（いわゆる「双峰性」がある状態）。このような場合、２つの「山」の間に存在する「谷」の位置をしきい値として設定することができる。
【０１１４】
図１５に示すような、選択範囲３２０に含まれる差分画像の各画素の情報（差分値ΔＬ＊，差分値Δａ＊，差分値Δｂ＊）の分布状態が得られた場合には、各次元の要素値について、図１７に示すような処理が実行される。
【０１１５】
すなわち、図１７（ａ）は、差分値Δａ＊についてのヒストグラムを示しており、このヒストグラム上での最大値をΔａ＊ｍａｘとする。また、このヒストグラムの最小値（絶対値）は「０」であるので、差分値Δａ＊についてのしきい値（Δａ＊上下限値）は、−Δａ＊ｍａｘ／２およびΔａ＊ｍａｘ／２として決定することができる。
【０１１６】
同様に、図１７（ｂ）は、差分値Δｂ＊についてのヒストグラムを示しており、このヒストグラム上での最大値をΔｂ＊ｍａｘとする。また、このヒストグラムの最小値（絶対値）は「０」であるので、差分値Δｂ＊についてのしきい値（Δｂ＊上下限値）は、−Δｂ＊ｍａｘ／２およびΔｂ＊ｍａｘ／２として決定することができる。
【０１１７】
同様に、図１７（ｃ）は、差分値ΔＬ＊についてのヒストグラムを示しており、このヒストグラム上での最大値をΔＬ＊ｍａｘとする。また、このヒストグラムの最小値（絶対値）は「０」であるので、差分値ΔＬ＊についてのしきい値（ΔＬ＊上下限値）は、−ΔＬ＊ｍａｘ／２およびΔＬ＊ｍａｘ／２として決定することができる。
【０１１８】
なお、しきい値自動設定処理の実行開始時には、いずれの画素であっても所定条件を満たすような値が初期値として設定される。すなわち、ΔＬ＊上下限値，Δａ＊上下限値，Δｂ＊上下限値は、いずれも「０」に設定されている。そして、各次元において、これらの上下限値を増加方向に変化させる。
【０１１９】
上述の実施例においては、各次元における上限値と下限値とが同じ絶対値をもつ場合について例示したが、各次元における上限値および下限値を互いに独立して設定できるようにしてもよい。
【０１２０】
＜ユーザインターフェイスの別形態その１＞
上述のユーザインターフェイス画面においては、抽出対象領域を特定するための条件（しきい値）を表色座標系上でグラフィカルに設定できる形態について例示したが、より簡素化してユーザインターフェイスを提供してもよい。
【０１２１】
図１８は、この発明の実施の形態に従う画像処理装置のモニタに表示される「設定モード」における画面表示例の別形態を示す図である。図１８に示すユーザインターフェイス画面３００Ａは、図１１に示すユーザインターフェイス画面３００において、表色座標系エリア３３０に代えて、ΔＬ＊上下限値を設定するためのスライドバー３７２ａ，３７２ｂ、Δａ＊上下限値を設定するためのスライドバー３７４ａ，３７４ｂ、Δｂ＊上下限値を設定するためのスライドバー３７６ａ，３７６ｂを配置したものである。
【０１２２】
スライドバー３７２ａおよび３７２ｂは、図１１に示すスライドバー３４６ａおよび３４６ｂにより提供される機能と同等の機能を提供する。すなわち、ユーザは、スライドバー３４６ａおよび３４６ｂを操作して、ΔＬ＊上下限値を任意に設定することができる。
【０１２３】
同様に、スライドバー３７４ａおよび３７４ｂは、図１１に示すスライドバー３３６ａおよび３３６ｂにより提供される機能と同等の機能を提供する。すなわち、ユーザは、スライドバー３７４ａおよび３７４ｂを操作して、Δａ＊上下限値を任意に設定することができる。
【０１２４】
同様に、スライドバー３７６ａおよび３７６ｂは、図１１に示すスライドバー３３８ａおよび３３８ｂにより提供される機能と同等の機能を提供する。すなわち、ユーザは、スライドバー３７６ａおよび３７６ｂを操作して、Δｂ＊上下限値を任意に設定することができる。
【０１２５】
その他の部分については、図１１と同様であるので、詳細な説明は繰返さない。
＜ユーザインターフェイスの別形態その２＞
上述したように、Ｌ＊ａ＊ｂ＊表色系においては、各画素の色相および彩度を反映した色度をａ＊座標およびｂ＊座標の２次元で表す。この色度は、各画素の「色」の度合いを示すものであり、一方、明度Ｌ＊は、各画素の「明るさ」の度合いを示すものである。そこで、抽出対象領域とそれ以外の領域とを区別するための条件として、「色」および「明るさ」のみを設定することで、ユーザ操作をより簡素化できる。すなわち、ａ＊座標およびｂ＊座標の２次元の値を共通の１次元の値として扱うことで、設定操作をより簡単化できる。そこで、図１９を参照して、このような設定操作が可能なユーザインターフェイス画面について説明する。
【０１２６】
図１９は、この発明の実施の形態に従う画像処理装置のモニタに表示される「設定モード」における画面表示例のさらに別形態を示す図である。図１９に示すユーザインターフェイス画面３００Ｂは、図１８に示すユーザインターフェイス画面３００Ａにおいて、Δａ＊上下限値を設定するためのスライドバー３７４ａ，３７４ｂおよびΔｂ＊上下限値を設定するためのスライドバー３７６ａ，３７６ｂに代えて、Δａ＊上下限値およびΔｂ＊上下限値を一括して設定するためのスライドバー３７７ａ，３７７ｂを配置したものである。また、図１８に示すユーザインターフェイス画面３００Ａのチェックボックス３５４および３５６に代えて、チェックボックス３５７が配置されている。
【０１２７】
スライドバー３７７ａおよび３７７ｂは、図１８に示すスライドバー３７４ａおよび３７４ｂ、ならびにスライドバー３７６ａおよび３７６ｂにより提供される機能を統合した機能を提供する。すなわち、ユーザがスライドバー３７７ａおよび３７７ｂを操作することで、Δａ＊上下限値およびΔｂ＊上下限値を任意に設定することができる。このとき、Δａ＊上限値とΔｂ＊上限値、および、Δａ＊下限値とΔｂ＊下限値とは、いずれも同じ値に設定される。すなわち、図１０に示すＬ＊ａ＊ｂ＊表色系において、ａ＊座標軸およびｂ＊座標軸に対してそれぞれ４５°をなす方向に沿ってしきい領域が設定されることになる。
【０１２８】
また、チェックボックス３５７は、差分値Δａ＊および差分値Δｂ＊についての判定条件についての有効化／無効化の選択を受付ける。すなわち、チェックボックス３５７には、「Δａ＊およびΔｂ＊２値画像使用フラグ」の名称が付されており、このチェックボックス３５７がユーザによるタッチペンの操作などによって選択（チェック）されると、現在設定されているΔａ＊上下限値およびΔｂ＊上下限値に基づく評価が有効化される。
【０１２９】
その他の部分については、図１１と同様であるので、詳細な説明は繰返さない。
＜特徴画像の別形態＞
上述の説明では、入力画像における色属性の空間的な変化を示す特徴画像として、入力画像の色パラメータ値（Ｌ＊値，ａ＊値，ｂ＊値）の各次元に対応した３次元の値（差分値ΔＬ＊，差分値Δａ＊，差分値Δｂ＊）を有する差分画像を用いる例について例示した。しかしながら、特徴画像としては、２次元の要素値を有する差分画像を用いてもよい。たとえば、上述の図１９に示すユーザインターフェイス画面３００Ｂと同様に、入力画像の「色」および「明るさ」についての空間的な変化を反映した、各画素が２次元の要素値をもつ特徴画像（差分画像）を用いてもよい。
【０１３０】
図２０は、この発明の実施の形態に従う画像処理装置１００において処理可能な特徴画像の別形態を説明するための図である。図２０に示すように、上述したような２次元の要素値を有する差分画像は、「色」についての差分値として、√（Δａ＊２＋Δｂ＊２）を第１軸とし、「明るさ」についての差分値として、ΔＬ＊を第２軸とした２次元空間上に定義できる。そして、抽出対象領域を特定するための条件（しきい値）は、それぞれの軸上に設定されることになる。
【０１３１】
上述したような２次元の要素値を有する差分画像に代えて、３つの独立したパラメータで定義できる任意の表色系を構成する任意の２つの要素値を１次元の値として生成した特徴画像を用いることもできる。
【０１３２】
このように、本実施の形態に従う画像処理装置１００において処理される特徴画像は、それに含まれる複数次元の要素値の各々が、入力画像における３つの色パラメータ値のうち互いに異なる色パラメータ値の少なくとも１つを反映したものであれば、任意の構成を採用することができる。
【０１３３】
＜処理手順＞
図２１および図２２は、この発明の実施の形態に従う画像処理装置１００における全体処理を示すフローチャートである。図２３は、図２１に示す差分画像生成サブルーチンの処理内容を示すフローチャートである。図２４および図２５は、図２１に示す評価処理サブルーチンの処理内容を示すフローチャートである。図２６は、図２１に示すしきい値自動設定サブルーチンの処理内容を示すフローチャートである。
【０１３４】
なお、図２１〜図２６に示すフローチャートは、ＣＰＵ１０６が固定ディスク１０８などに予め格納されたプログラムをメモリ１０７に読出して実行することにより実現される。
【０１３５】
（全体処理）
図２１および図２２を参照して、ＣＰＵ１０６は、まず、撮像開始指令を受けたか否かを判断する（ステップＳ１００）。典型的には、ＣＰＵ１０６は、光電センサ４（図１）からのトリガ信号を受信した否かを判断する。撮像開始指令を受けていない場合（ステップＳ１００においてＮＯの場合）には、ステップＳ１００の処理が繰返される。
【０１３６】
撮像開始指令を受けた場合（ステップＳ１００においてＹＥＳの場合）には、撮像装置８に対して撮像指令を与える（ステップＳ１０２）。続いて、ＣＰＵ１０６は、撮像装置８の撮像により取得された入力画像をメモリ１０７または固定ディスク１０８（図８の画像バッファ１５０）に格納する（ステップＳ１０４）。
【０１３７】
続いて、ＣＰＵ１０６は、取得された入力画像に含まれる各画素の色属性を定義する３つの色パラメータ値（Ｌ＊値，ａ＊値，ｂ＊値）を取得する（ステップＳ１０６）。すなわち、ＣＰＵ１０６は、メモリ１０７または固定ディスク１０８に格納されている入力画像の各画素についてのＲ，Ｇ，Ｂ輝度値を、それぞれＬ＊値，ａ＊値，ｂ＊値に分解する。言い換えれば、入力画像から、Ｌ＊空間画像、ａ＊空間画像、ｂ＊空間画像の３つの画像を生成する。
【０１３８】
続いて、ＣＰＵ１０６は、ステップＳ１０６において取得したＬ＊空間についての差分画像を生成する（ステップＳ１０８）。すなわち、ＣＰＵ１０６は、Ｌ＊空間画像を入力として、図２３に示す差分画像生成サブルーチンを実行する。同様に、ＣＰＵ１０６は、ステップＳ１０６において取得したａ＊空間についての差分画像を生成し（ステップＳ１１０）、さらに、ステップＳ１０６において取得したｂ＊空間についての差分画像を生成する（ステップＳ１１２）。
【０１３９】
続いて、ＣＰＵ１０６は、ステップＳ１０８，Ｓ１１０，Ｓ１１２においてそれぞれ取得されたＬ＊空間，ａ＊空間，ｂ＊空間についての３つの差分画像を、現在設定されているΔＬ＊上下限値，Δａ＊上下限値，Δｂ＊上下限値に基づいてそれぞれ評価する（ステップＳ１１４）。すなわち、ＣＰＵ１０６は、図２４および図２５に示す評価サブルーチンを実行する。
【０１４０】
続いて、ＣＰＵ１０６は、現在設定されている表示画像の種類を判別する（ステップＳ１１６）。すなわち、ＣＰＵ１０６は、ユーザインターフェイス画面３００のコンボボックス３６４（図１１）において、「計測画像」「抽出画像」「２値画像」のうち、いずれが選択されているかを取得する。
【０１４１】
表示画像として計測画像が設定されている場合（ステップＳ１１６において「計測画像」）には、ＣＰＵ１０６は、メモリ１０７または固定ディスク１０８に格納されている入力画像をそのままイメージ表示する（ステップＳ１１８）。そして、処理はステップＳ１２４へ進む。
【０１４２】
一方、表示画像として抽出画像が設定されている場合（ステップＳ１１６において「抽出画像」）には、ＣＰＵ１０６は、ステップＳ１１４において実行された評価サブルーチンの結果に基づいて、メモリ１０７または固定ディスク１０８に格納されている入力画像のうち特定された抽出対象領域に対応する領域のみを有効にイメージ表示する（ステップＳ１２０）。そして、処理はステップＳ１２４へ進む。
【０１４３】
一方、表示画像として抽出画像が設定されている場合（ステップＳ１１６において「２値画像」）には、ＣＰＵ１０６は、ステップＳ１１４において実行された評価サブルーチンの結果に基づいて、特定された抽出対象領域とそれ以外の領域とを区別した２値画像をイメージ表示する（ステップＳ１２２）。そして、処理はステップＳ１２４へ進む。
【０１４４】
以上の手順によって、撮像装置８の撮像により取得された入力画像に対する領域特定処理が完了する。これに続く各ステップは、ユーザインターフェイス画面に対するユーザ操作に応答して実行される。
【０１４５】
ステップＳ１２４において、ＣＰＵ１０６は、ユーザ操作によって選択範囲３２０が設定されたか否かを判断する。ユーザ操作によって選択範囲３２０が設定された場合（ステップＳ１２４においてＹＥＳの場合）には、ＣＰＵ１０６は、しきい値自動設定が有効化されているか否かを判断する（ステップＳ１２６）。すなわち、ＣＰＵ１０６は、ユーザインターフェイス画面３００のチェックボックス３５８（図１１）がチェックされているか否かを判断する。
【０１４６】
しきい値自動設定が有効化されている場合（ステップＳ１２６においてＹＥＳの場合）には、ＣＰＵ１０６は、図２６に示すしきい値自動設定サブルーチンを実行する（ステップＳ１２８）。これにより、ＣＰＵ１０６は、抽出対象領域を特定するための条件を決定する。そして、処理はステップＳ１２４へ戻る。
【０１４７】
一方、しきい値自動設定が有効化されていない場合（ステップＳ１２６においてＮＯの場合）には、ＣＰＵ１０６は、ステップＳ１０８，Ｓ１１０，Ｓ１１２においてそれぞれ取得されたＬ＊空間，ａ＊空間，ｂ＊空間についての３つの差分画像から、ステップＳ１２４において設定された選択範囲３２０に含まれる画素についての情報（差分値ΔＬ＊，差分値Δａ＊，差分値Δｂ＊）を抽出する（ステップＳ１３０）。さらに、ＣＰＵ１０６は、ステップＳ１３０において抽出した画素の情報（差分値ΔＬ＊，差分値Δａ＊，差分値Δｂ＊）を色度図３３４および明度図３４４上にマッピング表示する（ステップＳ１３２）。そして、処理はステップＳ１２４へ戻る。
【０１４８】
これに対して、ユーザ操作によって選択範囲３２０が設定されていない場合（ステップＳ１２４においてＮＯの場合）には、ＣＰＵ１０６は、平均画像フィルタサイズが変更されたか否かを判断する（ステップＳ１３４）。すなわち、ＣＰＵ１０６は、ユーザインターフェイス画面３００のスライドバー３３２（図１１）に対するユーザ操作がなされたか否かを判断する。そして、平均画像フィルタサイズが変更された場合（ステップＳ１３４においてＹＥＳの場合）には、ＣＰＵ１０６は、ステップＳ１０８以下の処理を再度実行する。
【０１４９】
一方、平均画像フィルタサイズが変更されていない場合（ステップＳ１３４においてＮＯの場合）には、ＣＰＵ１０６は、ΔＬ＊上下限値が変更されたか否かを判断する（ステップＳ１３６）。すなわち、ＣＰＵ１０６は、ユーザインターフェイス画面３００のスライドバー３４６ａまたは３４６ｂ（図１１）に対するユーザ操作がなされたか否かを判断する。そして、ΔＬ＊上下限値が変更された場合（ステップＳ１３６においてＹＥＳの場合）には、ＣＰＵ１０６は、変更後のΔＬ＊上下限値を取得し（ステップＳ１３８）、続いてステップＳ１１４以下の処理を再度実行する。
【０１５０】
一方、ΔＬ＊上下限値が変更されていない場合（ステップＳ１３６においてＮＯの場合）には、ＣＰＵ１０６は、Δａ＊上下限値が変更されたか否かを判断する（ステップＳ１４０）。すなわち、ＣＰＵ１０６は、ユーザインターフェイス画面３００のスライドバー３３６ａまたは３３６ｂ（図１１）に対するユーザ操作がなされたか否かを判断する。そして、Δａ＊上下限値が変更された場合（ステップＳ１４０においてＹＥＳの場合）には、ＣＰＵ１０６は、変更後のΔａ＊上下限値を取得し（ステップＳ１４２）、続いてステップＳ１１４以下の処理を再度実行する。
【０１５１】
一方、Δａ＊上下限値が変更されていない場合（ステップＳ１４０においてＮＯの場合）には、ＣＰＵ１０６は、Δｂ＊上下限値が変更されたか否かを判断する（ステップＳ１４４）。すなわち、ＣＰＵ１０６は、ユーザインターフェイス画面３００のスライドバー３３８ａまたは３３８ｂ（図１１）に対するユーザ操作がなされたか否かを判断する。そして、Δｂ＊上下限値が変更された場合（ステップＳ１４４においてＹＥＳの場合）には、ＣＰＵ１０６は、変更後のΔｂ＊上下限値を取得し（ステップＳ１４６）、続いてステップＳ１１４以下の処理を再度実行する。
【０１５２】
一方、Δｂ＊上下限値が変更されていない場合（ステップＳ１４４においてＮＯの場合）には、ＣＰＵ１０６は、表示画像の種類が変更されたか否かを判断する（ステップＳ１４８）。すなわち、ＣＰＵ１０６は、ユーザインターフェイス画面３００のコンボボックス３６４（図１１）に対するユーザ操作がなされたか否かを判断する。そして、表示画像の種類が変更された場合（ステップＳ１４８においてＹＥＳの場合）には、ＣＰＵ１０６は、ステップＳ１１６以下の処理を再度実行する。
【０１５３】
一方、表示画像の種類が変更されていない場合（ステップＳ１４８においてＮＯの場合）には、ＣＰＵ１０６は、ユーザインターフェイス画面３００の「ＯＫ」ボタン３６０（図１１）が選択されたか否かを判断する（ステップＳ１５０）。「ＯＫ」ボタン３６０が選択された場合（ステップＳ１５０においてＹＥＳの場合）には、ＣＰＵ１０６は、現在の設定データを固定ディスク１０８などに保存した上で処理を終了する（ステップＳ１５２）。
【０１５４】
一方、「ＯＫ」ボタン３６０が選択されていない場合（ステップＳ１５０においてＮＯの場合）には、ＣＰＵ１０６は、ユーザインターフェイス画面３００の「キャンセル」ボタン３６２（図１１）が選択されたか否かを判断する（ステップＳ１５４）。「キャンセル」ボタン３６０が選択された場合（ステップＳ１５４においてＹＥＳの場合）には、ＣＰＵ１０６は、現在の設定データを破棄した上で処理を終了する（ステップＳ１５６）。
【０１５５】
「キャンセル」ボタン３６０が選択されていない場合（ステップＳ１５４においてＮＯの場合）には、ＣＰＵ１０６は、新たな撮像開始指令を受けたか否かを判断する（ステップＳ１５８）。新たな撮像開始指令を受けた場合（ステップＳ１５８においてＹＥＳの場合）には、ＣＰＵ１０６は、ステップＳ１０２以下の処理を再度実行する。これに対して、新たな撮像開始指令を受けていない場合（ステップＳ１５８においてＮＯの場合）には、ＣＰＵ１０６は、ステップＳ１２４以下の処理を再度実行する。
【０１５６】
（差分画像生成サブルーチン）
次に、差分画像生成サブルーチンの処理内容について説明する。図２３を参照して、差分画像生成サブルーチンがコールされると、ＣＰＵ１０６は、指定された空間画像（すなわち、Ｌ＊空間画像、ａ＊空間画像、ｂ＊空間画像のいずれか）に含まれる画素群のうち、１番目の画素を注目画素に設定する（ステップＳ２００）。続いて、ＣＰＵ１０６は、現在の注目画素の周囲に存在する周辺画素を設定する（ステップＳ２０２）。さらに、ＣＰＵ１０６は、現在の注目画素が有する要素値（ΔＬ＊値，Δａ＊値，Δｂ＊値のいずれか）と、その周辺画素の各々が有する要素値との平均値を算出する（ステップＳ２０４）。さらに、ＣＰＵ１０６は、算出した平均値を現在の注目画素の位置と対応付けて、メモリ１０７または固定ディスク１０８（図９の平均値バッファ１８６）に格納する（ステップＳ２０６）。
【０１５７】
続いて、ＣＰＵ１０６は、現在の注目画素が有する要素値から、ステップＳ２０４において算出された対応する平均値を減じて、当該注目画素についての差分値（差分値ΔＬ＊，差分値Δａ＊，差分値Δｂ＊のいずれか）を算出する（ステップＳ２０８）。そして、ＣＰＵ１０６は、算出した差分値を現在の注目画素の位置と対応付けて、メモリ１０７または固定ディスク１０８（図９の差分値バッファ１９０）に格納する（ステップＳ２１０）。
【０１５８】
その後、ＣＰＵ１０６は、対象の差分画像に含まれるすべての画素についての差分値の算出が完了したか否かを判断する（ステップＳ２１２）。対象の差分画像に含まれるすべての画素についての平均値の算出は完了していない場合（ステップＳ２１２においてＮＯの場合）には、ＣＰＵ１０６は、差分画像に含まれる画素群のうち、未だ平均値の算出が完了していない残余の画素のうち１つを注目画素に設定する（ステップＳ２１４）。そして、ステップＳ２０２以下の処理が再度実行される。
【０１５９】
対象の差分画像に含まれるすべての画素についての平均値の算出が完了している場合（ステップＳ２１２においてＹＥＳの場合）には、ＣＰＵ１０６は、各画素と対応付けて蓄積した差分値をまとめて、指定された空間についての差分画像として出力する（ステップＳ２１６）。そして、処理はリターンする。
【０１６０】
（評価サブルーチン）
次に、評価サブルーチンの処理内容について説明する。図２４および図２５を参照して、評価サブルーチンがコールされると、ＣＰＵ１０６は、ΔＬ＊上下限値に基づく評価が有効化されているか否かを判断する（ステップＳ３００）。すなわち、ＣＰＵ１０６は、ユーザインターフェイス画面３００のチェックボックス３５２（図１１）がチェックされているか否かを判断する。
【０１６１】
ΔＬ＊上下限値に基づく評価が有効化されている場合（ステップＳ３００においてＹＥＳの場合）には、ＣＰＵ１０６は、Ｌ＊空間についての差分画像に含まれる画素群のうち、１番目の画素を対象画素に設定する（ステップＳ３０２）。続いて、ＣＰＵ１０６は、現在の対象画素の有する差分値ΔＬ＊が現在のΔＬ＊上限値以上であるか、または当該差分値ΔＬ＊が現在のΔＬ＊下限値以下であるかを判断する（ステップＳ３０４）。
【０１６２】
現在の対象画素の有する差分値ΔＬ＊が現在のΔＬ＊上限値以上であるか、または当該差分値ΔＬ＊が現在のΔＬ＊下限値以下である場合（ステップＳ３０４においてＹＥＳの場合）には、ＣＰＵ１０６は、現在の対象画素が対応の条件を満たすと判断する。そして、ＣＰＵ１０６は、現在の対象画素の位置と対応付けて「１」（真）を出力する（ステップＳ３０６）。
【０１６３】
一方、現在の対象画素の有する差分値ΔＬ＊が現在のΔＬ＊上限値未満であり、かつ当該差分値ΔＬ＊が現在のΔＬ＊下限値より大きい場合（ステップＳ３０４においてＮＯの場合）には、ＣＰＵ１０６は、現在の対象画素が対応の条件を満たしていないと判断する。そして、ＣＰＵ１０６は、現在の対象画素の位置と対応付けて「０」（偽）を出力する（ステップＳ３０８）。
【０１６４】
さらに、ＣＰＵ１０６は、Ｌ＊空間についての差分画像に含まれるすべての画素についての判定が完了したか否かを判断する（ステップＳ３１０）。Ｌ＊空間についての差分画像に含まれるすべての画素についての判定が完了していない場合（ステップＳ３１０においてＮＯの場合）には、ＣＰＵ１０６は、Ｌ＊空間についての差分画像に含まれる画素群のうち、未だ平均値の算出が完了していない残余の画素のうち１つを対象画素に設定する（ステップＳ３１２）。そして、ステップＳ３０４以下の処理が再度実行される。
【０１６５】
Ｌ＊空間についての差分画像に含まれるすべての画素についての判定が完了している場合（ステップＳ３１０においてＹＥＳの場合）には、処理はステップＳ３２０へ進む。
【０１６６】
これに対して、ΔＬ＊上下限値に基づく評価が有効化されていない場合（ステップＳ３００においてＮＯの場合）には、ＣＰＵ１０６は、Ｌ＊空間についての差分画像に含まれるすべての画素について「１」（真）を出力する（ステップＳ３１４）。そして、処理はステップＳ３２０へ進む。
【０１６７】
ステップＳ３２０において、ＣＰＵ１０６は、Δａ＊上下限値に基づく評価が有効化されているか否かを判断する。すなわち、ＣＰＵ１０６は、ユーザインターフェイス画面３００のチェックボックス３５４（図１１）がチェックされているか否かを判断する。
【０１６８】
Δａ＊上下限値に基づく評価が有効化されている場合（ステップＳ３２０においてＹＥＳの場合）には、ＣＰＵ１０６は、ａ＊空間についての差分画像に含まれる画素群のうち、１番目の画素を対象画素に設定する（ステップＳ３２２）。続いて、ＣＰＵ１０６は、現在の対象画素の有する差分値Δａ＊が現在のΔａ＊上限値以上であるか、または当該差分値Δａ＊が現在のΔａ＊下限値以下であるかを判断する（ステップＳ３２４）。
【０１６９】
現在の対象画素の有する差分値Δａ＊が現在のΔａ＊上限値以上であるか、または当該差分値Δａ＊が現在のΔａ＊下限値以下である場合（ステップＳ３２４においてＹＥＳの場合）には、ＣＰＵ１０６は、現在の対象画素が対応の条件を満たすと判断する。そして、ＣＰＵ１０６は、現在の対象画素の位置と対応付けて「１」（真）を出力する（ステップＳ３２６）。
【０１７０】
一方、現在の対象画素の有する差分値Δａ＊が現在のΔａ＊上限値未満であり、かつ当該差分値Δａ＊が現在のΔａ＊下限値より大きい場合（ステップＳ３２４においてＮＯの場合）には、ＣＰＵ１０６は、現在の対象画素が対応の条件を満たしていないと判断する。そして、ＣＰＵ１０６は、現在の対象画素の位置と対応付けて「０」（偽）を出力する（ステップＳ３２８）。
【０１７１】
さらに、ＣＰＵ１０６は、ａ＊空間についての差分画像に含まれるすべての画素についての判定が完了したか否かを判断する（ステップＳ３３０）。ａ＊空間についての差分画像に含まれるすべての画素についての判定が完了していない場合（ステップＳ３３０においてＮＯの場合）には、ＣＰＵ１０６は、ａ＊空間についての差分画像に含まれる画素群のうち、未だ平均値の算出が完了していない残余の画素のうち１つを対象画素に設定する（ステップＳ３３２）。そして、ステップＳ３２４以下の処理が再度実行される。
【０１７２】
ａ＊空間についての差分画像に含まれるすべての画素についての判定が完了している場合（ステップＳ３３０においてＹＥＳの場合）には、処理はステップＳ３４０へ進む。
【０１７３】
これに対して、Δａ＊上下限値に基づく評価が有効化されていない場合（ステップＳ３２０においてＮＯの場合）には、ＣＰＵ１０６は、ａ＊空間についての差分画像に含まれるすべての画素について「１」（真）を出力する（ステップＳ３３４）。そして、処理はステップＳ３４０へ進む。
【０１７４】
ステップＳ３４０において、ＣＰＵ１０６は、Δｂ＊上下限値に基づく評価が有効化されているか否かを判断する。すなわち、ＣＰＵ１０６は、ユーザインターフェイス画面３００のチェックボックス３５６（図１１）がチェックされているか否かを判断する。
【０１７５】
Δｂ＊上下限値に基づく評価が有効化されている場合（ステップＳ３４０においてＹＥＳの場合）には、ＣＰＵ１０６は、ｂ＊空間についての差分画像に含まれる画素群のうち、１番目の画素を対象画素に設定する（ステップＳ３４２）。続いて、ＣＰＵ１０６は、現在の対象画素の有する差分値Δｂ＊が現在のΔｂ＊上限値以上であるか、または当該差分値Δｂ＊が現在のΔｂ＊下限値以下であるかを判断する（ステップＳ３４４）。
【０１７６】
現在の対象画素の有する差分値Δｂ＊が現在のΔｂ＊上限値以上であるか、または当該差分値Δｂ＊が現在のΔｂ＊下限値以下である場合（ステップＳ３４４においてＹＥＳの場合）には、ＣＰＵ１０６は、現在の対象画素が対応の条件を満たすと判断する。そして、ＣＰＵ１０６は、現在の対象画素の位置と対応付けて「１」（真）を出力する（ステップＳ３４６）。
【０１７７】
一方、現在の対象画素の有する差分値Δｂ＊が現在のΔｂ＊上限値未満であり、かつ当該差分値Δｂ＊が現在のΔｂ＊下限値より大きい場合（ステップＳ３４４においてＮＯの場合）には、ＣＰＵ１０６は、現在の対象画素が対応の条件を満たしていないと判断する。そして、ＣＰＵ１０６は、現在の対象画素の位置と対応付けて「０」（偽）を出力する（ステップＳ３４８）。
【０１７８】
さらに、ＣＰＵ１０６は、ｂ＊空間についての差分画像に含まれるすべての画素についての判定が完了したか否かを判断する（ステップＳ３５０）。ｂ＊空間についての差分画像に含まれるすべての画素についての判定が完了していない場合（ステップＳ３５０においてＮＯの場合）には、ＣＰＵ１０６は、ｂ＊空間についての差分画像に含まれる画素群のうち、未だ平均値の算出が完了していない残余の画素のうち１つを対象画素に設定する（ステップＳ３５２）。そして、ステップＳ３４４以下の処理が再度実行される。
【０１７９】
ｂ＊空間についての差分画像に含まれるすべての画素についての判定が完了している場合（ステップＳ３５０においてＹＥＳの場合）には、処理はステップＳ３６０へ進む。
【０１８０】
これに対して、Δｂ＊上下限値に基づく評価が有効化されていない場合（ステップＳ３４０においてＮＯの場合）には、ＣＰＵ１０６は、ｂ＊空間についての差分画像に含まれるすべての画素について「１」（真）を出力する（ステップＳ３５４）。そして、処理はステップＳ３６０へ進む。
【０１８１】
ステップＳ３６０において、ＣＰＵ１０６は、それぞれの空間についての判定結果に含まれる画素群のうち、１番目の画素を対象画素に設定する。続いて、ＣＰＵ１０６は、現在の対象画素についてのＬ＊空間についての判定結果、ａ＊空間についての判定結果、およびｂ＊空間についての判定結果がすべて「１」（真）であるか否かを判断する（ステップＳ３６２）。
【０１８２】
すべての空間についての判定結果が「１」（真）である場合には、現在の対象画素の評価結果として「１」（真）を出力する（ステップＳ３６４）。すなわち、ＣＰＵ１０６は、対象画素が抽出対象領域であると評価する。そして、処理はステップＳ３７０へ進む。
【０１８３】
一方、いずれかの空間についての判定結果が「１」（真）ではない場合には、現在の対象画素の評価結果として「０」（偽）を出力する（ステップＳ３６６）。そして、処理はステップＳ３７０へ進む。
【０１８４】
ステップＳ３７０において、判定結果に含まれるすべての画素についての評価処理が完了したか否かを判断する。判定結果に含まれるすべての画素についての評価処理が完了していない場合（ステップＳ３７０においてＮＯの場合）には、ＣＰＵ１０６は、判定結果に含まれる画素群のうち、未だ平均値の算出が完了していない残余の画素のうち１つを対象画素に設定する（ステップＳ３７２）。そして、ステップＳ３６２以下の処理が再度実行される。
【０１８５】
これに対して、判定結果に含まれるすべての画素についての評価処理が完了している場合（ステップＳ３７０においてＹＥＳの場合）には、処理はリターンする。
【０１８６】
（自動設定サブルーチン）
次に、自動設定サブルーチンの処理内容について説明する。図２６を参照して、自動設定サブルーチンがコールされると、ＣＰＵ１０６は、取得されているＬ＊空間の差分画像のうち選択範囲３２０に含まれる各画素についての差分値ΔＬ＊を抽出する（ステップＳ４００）。続いて、ＣＰＵ１０６は、抽出した差分値ΔＬ＊のヒストグラムを生成する（ステップＳ４０２）。さらに、ＣＰＵ１０６は、抽出した差分値ΔＬ＊のヒストグラムに基づいて、差分値ΔＬ＊についてのしきい値（ΔＬ＊上下限値）を決定する（ステップＳ４０４）。そして、処理はステップＳ４１０へ進む。
【０１８７】
ステップＳ４１０において、ＣＰＵ１０６は、取得されているａ＊空間の差分画像のうち選択範囲３２０に含まれる各画素についての差分値Δａ＊を抽出する。続いて、ＣＰＵ１０６は、抽出した差分値Δａ＊のヒストグラムを生成する（ステップＳ４１２）。さらに、ＣＰＵ１０６は、抽出した差分値Δａ＊のヒストグラムに基づいて、差分値Δａ＊についてのしきい値（Δａ＊上下限値）を決定する（ステップＳ４１４）。そして、処理はステップＳ４２０へ進む。
【０１８８】
ステップＳ４２０において、ＣＰＵ１０６は、取得されているｂ＊空間の差分画像のうち選択範囲３２０に含まれる各画素についての差分値Δｂ＊を抽出する。続いて、ＣＰＵ１０６は、抽出した差分値Δｂ＊のヒストグラムを生成する（ステップＳ４２２）。さらに、ＣＰＵ１０６は、抽出した差分値Δｂ＊のヒストグラムに基づいて、差分値Δｂ＊についてのしきい値（Δｂ＊上下限値）を決定する（ステップＳ４２４）。そして、処理はステップＳ４３０へ進む。
【０１８９】
ステップＳ４３０において、ＣＰＵ１０６は、ΔＬ＊上下限値、Δａ＊上下限値、Δｂ＊上下限値を先行の処理によって決定した値に更新する。そして、処理はリターンする。
【０１９０】
＜比較例＞
以下、本実施の形態に従う画像処理方法を他の関連する画像処理方法と比較した例を示す。図２７は、この発明に関連する画像処理方法（その１）を説明するための図である。図２８は、この発明に関連する画像処理方法（その２）を説明するための図である。図２９は、この発明の実施の形態に従う画像処理方法およびそれに関連する画像処理方法を比較するためのテストチャートである。図３０は、この発明に関連する画像処理方法を用いて図２９に示すテストチャートを処理した結果の一例を示す図である。図３１は、この発明の実施の形態に従う画像処理方法を用いて図２９に示すテストチャートを処理した結果の一例を示す図である。
【０１９１】
図２７を参照して、この発明に関連する画像処理方法（以下「第１関連技術」とも称す。）として、予め登録した条件に基づいて抽出対象領域を特定する処理を考える。すなわち、図２７に示すように、ある入力画像に含まれる各画素の色属性をＨＳＶ表色系（Ｈ：色相、Ｓ：彩度、Ｖ：明度）に分解した上で、各座標系について予め登録したしきい値（上下限値）を用いて、抽出対象を特定する。
【０１９２】
また、図２８を参照して、この発明に関連する画像処理方法（以下「第２関連技術」とも称す。）として、上述の特開昭５９−１１４６８７号公報（特許文献１）に示すような、動的２値化処理を用いて出力対象領域を特定する処理を考える。すなわち、入力画像の各画素を１次元の濃淡値（図２８に示す元画像の濃度）をもつ濃淡画像ＳＭＰとして表わすとともに、隣接する画素の間で濃淡値の平均値（図２８に示す平均画像の濃度）を算出する。そして、濃淡値と平均値との差分が所定のしきい値を超えた場合に、抽出対象として特定する。
【０１９３】
図２９を参照して、テストチャートとしては、それぞれの背景上に特定の色をもつ文字「Ａ」を描いた９通りのケースを示す。すなわち、紙面縦方向には、（ケース１）背景と文字との間で明度はほぼ一致しているが、色相が異なっている場合、（ケース２）背景と文字との間で色相はほぼ一致しているが、明度が異なっている場合、（ケース３）背景と文字との間で色相および明度のいずれもが異なっている場合、を考える。また、各ケースについて、紙面横方向には、（ｉ）背景色が均一の場合、（ｉｉ）背景色にばらつきがある場合、（ｉｉｉ）背景色に陰影が写っている場合、を考える。なお、文字「Ａ」は、代表的な「赤色」とした。
【０１９４】
図３０（ａ）は、上述の第１関連技術を用いて、文字「Ａ」についての抽出対象領域の特定処理を行なった結果を示す。図３０（ａ）に示すように、（ｉｉ）背景色にばらつきがある場合には、文字および背景の組み合わせにかかわらず、抽出対象領域を正確に特定できていない（不検知）。また、（ケース２）背景と文字との間で色相はほぼ一致しているが、明度が異なっている場合であって、かつ、（ｉｉｉ）背景色に陰影が写っている場合には、抽出対象領域以外の領域を誤って特定している（誤検知）。
【０１９５】
すなわち、上述の第１関連技術では、外乱要因により抽出対象領域の色相が変化する場合には、適切な特定を行なうことができない。また、背景と抽出対象領域とが同じ色相をもつ場合には、適切な特定を行なうことができない。
【０１９６】
図３０（ｂ）は、上述の第２関連技術を用いて、文字「Ａ」についての抽出対象領域の特定処理を行なった結果を示す。なお、図３０（ｂ）には、入力画像をＨＳＶ表色系に分解した上で、色相（Ｈ）を用いて濃淡画像化した場合を示す。図３０（ｂ）に示すように、多くの場合に比較的良好の結果が得られているが、（ケース２）背景と文字との間で色相はほぼ一致しているが、明度が異なっている場合であって、かつ、（ｉｉｉ）背景色に陰影が写っている場合には、抽出対象領域以外の領域を誤って特定している（誤検知）。
【０１９７】
図３０（ｃ）は、上述の第２関連技術を用いて、文字「Ａ」についての抽出対象領域の特定処理を行なった結果を示す。なお、図３０（ｃ）には、Ｒ輝度値，Ｇ輝度値，Ｂ輝度値で定義された入力画像から得られる明度（各輝度値の合計値）に基づいて濃淡画像化した場合を示す。図３０（ｃ）に示すように、（ケース１）背景と文字との間で明度はほぼ一致しているが、色相が異なっている場合には、抽出対象領域を正確に特定できていない（不検知）。同時に、抽出対象領域以外の領域を誤って特定している（誤検知）。
【０１９８】
図３０（ｄ）は、上述の第２関連技術を用いて、文字「Ａ」についての抽出対象領域の特定処理を行なった結果を示す。なお、図３０（ｄ）には、Ｒ輝度値，Ｇ輝度値，Ｂ輝度値で定義された入力画像のうちＧ輝度値で定義した明度に基づいて濃淡画像化した場合を示す。図３０（ｄ）に示すように、（ケース１）背景と文字との間で明度はほぼ一致しているが、色相が異なっている場合であって、かつ（ｉｉ）背景色にばらつきがある場合には、抽出対象領域を正確に特定できていない（不検知）。
【０１９９】
このように、上述の第２関連技術では、抽出対象領域と背景との間に有意な差がない情報に基づいて濃淡画像化の処理がなされる場合には、適切な特定を行なうことができない。
【０２００】
以上のように、いずれの関連技術についても、すべての場合について、抽出対象領域を適切に特定することはできない。
【０２０１】
これに対して、図３１は、上述したこの発明の実施の形態に従う方法を用いた結果を示す。この図３１に示す結果から、本実施の形態に従う方法によれば、すべての場合に抽出対象領域を安定的に特定できることがわかる。
【０２０２】
＜本実施形態の作用効果＞
本実施の形態によれば、入力画像の各画素の色属性を定義する３つの色パラメータの別に、色パラメータの各々についての空間的な変化を示す３次元の要素値をもつ特徴画像が生成される。すなわち、複数の画素の有する色属性の間で平均化処理を行って得られる平均画像を基準として、各画素の変化量（偏差量）を反映した差分画像が生成される。この差分画像は、入力画像に対して空間的な低域通過フィルタをかけた、すなわち空間的な高周波成分を低減した画像に相当するので、入力画像に対する局所的な外乱による誤差要因を排除することができる。そのため、安定した判定処理を実現できる。
【０２０３】
さらに、本実施の形態によれば、特徴画像を構成する要素について、次元毎に条件を満たすか否かを判断する。そのため、抽出対象領域と背景領域との間で色相（もしくは、色度）および／または濃度（もしくは、明度）に差がない場合などであっても、正確に目的とする抽出対象領域を特定することができる。
【０２０４】
これらの処理によって、本実施の形態によれば、撮影環境からの外乱を受ける場合、および抽出対象領域とそれ以外の領域との間の色属性の差が相対的に小さい場合のいずれであっても、目的とする領域を正確に特定することができる。
【０２０５】
＜その他の実施の形態＞
本発明に係るプログラムは、コンピュータのオペレーティングシステム（ＯＳ）の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずＯＳと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明にかかるプログラムに含まれ得る。
【０２０６】
また、本発明に係るプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明に係るプログラムに含まれ得る。
【０２０７】
提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記憶された記録媒体とを含む。
【０２０８】
さらに、本発明に係るプログラムによって実現される機能の一部または全部を専用のハードウェアによって構成してもよい。
【０２０９】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０２１０】
２  ワーク、４  光電センサ、６  搬送機構、８  撮像装置、１００  画像処理装置、１０１  本体部、１０２  モニタ、１０３  タッチ検出部、１０４  キーボード、１０６  ＣＰＵ、１０５  マウス、１０７  メモリ、１０８  固定ディスク、１０９  カメラインターフェイス部、１１１  フレキシブルディスク（ＦＤ）駆動装置、１１２  フレキシブルディスク、１１３  ＣＤ−ＲＯＭ駆動装置、１１４  ＣＤ−ＲＯＭ、１１５  制御情報インターフェイス部、１１７  センサインターフェイス部、１５０  画像バッファ、１５２  色分解部、１５４  差分画像生成部、１５４，１５６，１５８  差分画像生成部、１６０  評価部、１６２  評価結合部、１６４，１６６，１６８  判定部、１７０  出力部、１７２  ＵＩ（ユーザインターフェイス）部、１７４  変更部、１７４ａ  自動設定ロジック、１８２  入力値バッファ、１８４  平均化部、１８６  平均値バッファ、１８８  差分算出部、１９０  差分値バッファ、３００，３００Ａ，３００Ｂ  ユーザインターフェイス画面、ＴＰ  タッチペン。
【図１】
0005509706.tif 000004
【図２】
0005509706.tif 000005
【図４】
0005509706.tif 000006
【図５】
0005509706.tif 000007
【図６】
0005509706.tif 000008
【図７】
0005509706.tif 000009
【図８】
0005509706.tif 000010
【図９】
0005509706.tif 000011
【図１０】
0005509706.tif 000012
【図１６】
0005509706.tif 000013
【図１７】
0005509706.tif 000014
【図２０】
0005509706.tif 000015
【図２１】
0005509706.tif 000016
【図２２】
0005509706.tif 000017
【図２３】
0005509706.tif 000018
【図２４】
0005509706.tif 000019
【図２５】
0005509706.tif 000020
【図２６】
0005509706.tif 000021
【図３】
0005509706.tif 000022
【図１１】
0005509706.tif 000023
【図１２】
0005509706.tif 000024
【図１３】
0005509706.tif 000025
【図１４】
0005509706.tif 000026
【図１５】
0005509706.tif 000027
【図１８】
0005509706.tif 000028
【図１９】
0005509706.tif 000029
【図２７】
0005509706.tif 000030
【図２８】
0005509706.tif 000031
【図２９】
0005509706.tif 000032
【図３０】
0005509706.tif 000033
【図３１】
0005509706.tif 000034