(57)【要約】【課題】専門知識を持たないユーザに過度の負担を強いることなく容易に検査・計測用プログラムが作成できるプログラム作成方法を提供する。【解決手段】ユーザは検査・計測の対象となる画像データ、検査・計測の対象領域、検査・計測の内容、検査・計測を行う部分などの各項目をコンピュータ上でマウスなどの入力デバイスを使って設定する。コンピュータは、ユーザが選択あるいは設定した内容に基づいて自動的に検査・計測用のサンプルプログラムを作成し、さらに作成されたサンプルプログラムを実行して結果を表示する。ユーザはディスプレイ装置の画面上に表示された実行結果からサンプルプログラムの妥当性を検証することができ、その検証結果に基づいてユーザが設定内容を変更することが可能である。故に、専門知識を持たないユーザに過度の負担を強いることなく容易に検査・計測用プログラムが作成できる。【選択図】        図１
2006065582.tif 000002
【特許請求の範囲】
【請求項１】
対象物が撮像された画像データに対して画像処理を実行することで当該対象物の検査や計測を行う画像処理装置で使用される検査・計測用プログラムをコンピュータ上で作成するプログラム作成方法であって、コンピュータに前記画像データを取り込む画像データ設定過程と、ユーザが前記画像データに対して検査又は計測の対象となる領域を設定する領域設定過程と、予め用意されたメニューのなかから検査又は計測の内容をユーザが選択し、選択された内容を検査内容又は計測内容に設定する検査・計測内容設定過程と、ユーザが前記検査又は計測の対象となる領域のなかで検査又は計測の対象部分を設定する検査・計測部設定過程と、検査内容又は計測内容に対応した画像処理アルゴリズムを選択し、前記画像データに設定された検査又は計測の領域に対して前記画像処理アルゴリズムを実行して前記対象部分の検査又は計測を行うサンプルプログラムを作成した後、当該サンプルプログラムを実行して得られる検査又は計測の結果をコンピュータの表示手段に表示させるサンプルプログラム実行過程とを有することを特徴とする検査・計測用プログラムの作成方法。
【請求項２】
前記画像データ設定過程において、取り込まれた前記画像データのサイズをコンピュータが所定のサイズに変更することを特徴とする請求項１記載の検査・計測用プログラムの作成方法。
【請求項３】
前記画像データ設定過程において、取り込まれた前記画像データの階調をコンピュータが所定の階調に変更することを特徴とする請求項１又は２記載の検査・計測用プログラムの作成方法。
【請求項４】
前記検査・計測内容設定過程において、予め用意されるメニューの中に対象物の外観検査、対象部分の座標計測、パターン認識による検査が少なくとも含まれることを特徴とする請求項１又は２又は３記載の検査・計測用プログラムの作成方法。
【請求項５】
前記サンプルプログラム実行過程において、同一の画像処理アルゴリズムについて検査又は計測に関する条件を決定するパラメータが異なる複数種類のサンプルプログラムを作成し、これら複数種類のサンプルプログラムを実行して得られる検査又は計測の結果をコンピュータの表示手段に比較可能な形式で表示させることを特徴とする請求項１〜４の何れかに記載の検査・計測用プログラムの作成方法。
【請求項６】
前記サンプルプログラム実行過程において、複数種類の画像処理アルゴリズムについて検査又は計測に関する条件を決定するパラメータが各々異なる複数種類のサンプルプログラムを作成し、これら複数種類のサンプルプログラムを実行して得られる検査又は計測の結果をコンピュータの表示手段に比較可能な形式で表示させることを特徴とする請求項１〜４の何れかに記載の検査・計測用プログラムの作成方法。
【請求項７】
前記各過程を有する検査・計測用プログラムをコンピュータが所定の形式で出力することを特徴とする請求項１〜６の何れかに記載の検査・計測用プログラムの作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主として生産ラインにおいて対象物をテレビカメラなどで撮像し、その撮像で得られた画像データを用いて、対象物の良否を判定する検査や、対象物の位置あるいは形状などを計測する画像処理装置で使用される検査・計測用プログラムの作成方法に関するものである。
【背景技術】
【０００２】
近年、生産ラインでは、製品（対象物）を撮像して得られる画像データに対して画像処理を実行し、その画像処理結果に基づいて製品の外観検査や形状等の計測を行うために画像処理装置が使用されている。かかる画像処理装置は、コンピュータ上で検査・計測用プログラムを実行することによって上記画像処理を行っている。このような検査・計測用プログラムの作成には、画像処理に関する専門知識のみならず、各種の検査や計測毎の専門知識、さらにはコンピュータプログラミングに関する専門知識が必要であり、検査や計測を実際に行うユーザ自身がプログラムを作成するには過度の負担が強いられていた。
【０００３】
そこで、ユーザの負担を軽減するプログラム作成方法が従来より種々提案されており、例えば特許文献１には、外部記憶装置にアルゴリズムの操作仕様とアルゴリズムの使用に関する画像処理専門家のノウハウを格納し画像処理アルゴリズム実行時のユーザへの入力要求に関してユーザへの入力選択の判断基準の説明もしくは入力の選択範囲限定もしくは入力自動選択を行なうことを特徴とし、画像処理アルゴリズム実行中の様々な段階でユーザが副機能選択やパラメータ値設定のために入力を要求される場合に入力を決定することを支援することができる画像処理アルゴリズム実行時のユーザ支援方式が開示されている。
【特許文献１】特開昭６３−１９１２７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、検査や計測の対象物によってどのような画像処理を選択するかについては、専門知識を持たないユーザにとっては困難な作業に変わりがない。また画像処理アルゴリズム中で使用する検査や計測の条件設定についても同様である。
【０００５】
本発明は上記事情に鑑みて為されたものであり、その目的は、専門知識を持たないユーザに過度の負担を強いることなく容易に検査・計測用プログラムが作成できるプログラム作成方法を提供することにある。
【課題を解決するための手段】
【０００６】
請求項１の発明は、上記目的を達成するために、対象物が撮像された画像データに対して画像処理を実行することで当該対象物の検査や計測を行う画像処理装置で使用される検査・計測用プログラムをコンピュータ上で作成するプログラム作成方法であって、コンピュータに前記画像データを取り込む画像データ設定過程と、ユーザが前記画像データに対して検査又は計測の対象となる領域を設定する領域設定過程と、予め用意されたメニューのなかから検査又は計測の内容をユーザが選択し、選択された内容を検査内容又は計測内容に設定する検査・計測内容設定過程と、ユーザが前記検査又は計測の対象となる領域のなかで検査又は計測の対象部分を設定する検査・計測部設定過程と、検査内容又は計測内容に対応した画像処理アルゴリズムを選択し、前記画像データに設定された検査又は計測の領域に対して前記画像処理アルゴリズムを実行して前記対象部分の検査又は計測を行うサンプルプログラムを作成した後、当該サンプルプログラムを実行して得られる検査又は計測の結果をコンピュータの表示手段に表示させるサンプルプログラム実行過程とを有することを特徴とする。
【０００７】
請求項２の発明は、請求項１の発明において、前記画像データ設定過程において、取り込まれた前記画像データのサイズをコンピュータが所定のサイズに変更することを特徴とする。
【０００８】
請求項３の発明は、請求項１又は２の発明において、前記画像データ設定過程において、取り込まれた前記画像データの階調をコンピュータが所定の階調に変更することを特徴とする。
【０００９】
請求項４の発明は、請求項１又は２又は３の発明において、前記検査・計測内容設定過程において、予め用意されるメニューの中に対象物の外観検査、対象部分の座標計測、パターン認識による検査が少なくとも含まれることを特徴とする。
【００１０】
請求項５の発明は、請求項１〜４の何れかの発明において、前記サンプルプログラム実行過程において、同一の画像処理アルゴリズムについて検査又は計測に関する条件を決定するパラメータが異なる複数種類のサンプルプログラムを作成し、これら複数種類のサンプルプログラムを実行して得られる検査又は計測の結果をコンピュータの表示手段に比較可能な形式で表示させることを特徴とする。
【００１１】
請求項６の発明は、請求項１〜４の何れかの発明において、前記サンプルプログラム実行過程において、複数種類の画像処理アルゴリズムについて検査又は計測に関する条件を決定するパラメータが各々異なる複数種類のサンプルプログラムを作成し、これら複数種類のサンプルプログラムを実行して得られる検査又は計測の結果をコンピュータの表示手段に比較可能な形式で表示させることを特徴とする。
【００１２】
請求項７の発明は、請求項１〜６の何れかの発明において、前記各過程を有する検査・計測用プログラムをコンピュータが所定の形式で出力することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、検査・計測用プログラムの作成に当たり、ユーザは検査・計測の対象となる画像データ、検査・計測の対象領域、検査・計測の内容、検査・計測を行う部分などの各項目をコンピュータ上でマウスなどの入力デバイスを使って選択するだけでコンピュータが自動的に検査・計測用のサンプルプログラムを作成し、さらに作成されたサンプルプログラムをコンピュータ上で実行して検証することができ、その検証結果に基づいてユーザが設定内容を変更することが可能であり、専門知識を持たないユーザに過度の負担を強いることなく容易に検査・計測用プログラムが作成できる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の実施形態を詳細に説明する。本実施形態の検査・計測用プログラム作成方法は、ＣＰＵ、メモリ、入出力インタフェース、ハードディスクなどを備えたコンピュータと、ＣＲＴ又はＬＣＤを用いたディスプレイ装置と、キーボードやマウスなどの入力デバイスとで構成される汎用のパーソナルコンピュータシステム（図示せず）を利用し、コンピュータのＣＰＵで検査・計測用プログラムを作成する作成用プログラムを実行することで実現される。この作成用プログラムは、図１に示すようにコンピュータに画像データを取り込む画像データ設定過程（ステップ１）、コンピュータのグラフィカル・ユーザ・インタフェース（ディスプレイ装置並びにマウスなどの入力デバイス）を用いてユーザが画像データに対して検査又は計測の対象となる領域を設定する領域設定過程（ステップ２）、予め用意されたメニューのなかから検査又は計測の内容をユーザが選択し、選択された内容を検査内容又は計測内容に設定する検査・計測内容設定過程（ステップ３）、ユーザが検査又は計測の対象となる領域のなかで検査又は計測の対象部分を設定する検査・計測部設定過程（ステップ４）、検査内容又は計測内容に対応した画像処理アルゴリズムを選択し、画像データに設定された検査又は計測の領域に対して画像処理アルゴリズムを実行し、対象部分の検査又は計測を行うサンプルプログラムを作成した後、当該サンプルプログラムを実行して得られる検査又は計測の結果をコンピュータの表示手段（ディスプレイ装置）に表示させるサンプルプログラム実行過程（ステップ５）、をそれぞれ実現するプログラムモジュールによって構成されている。以下、各過程（プログラムモジュール）においてユーザが行う操作とコンピュータが行う処理内容を説明する。
【００１５】
本実施形態の作成用プログラムをコンピュータで実行すると、画像データ設定過程に対応したプログラムモジュールが実行される。画像データ設定過程においては、作成用プログラムで扱うことが可能な形式（例えば、ビットマップやＪＰＥＧなどの画像フォーマット）で作成され、検査・計測の対象となる画像データをユーザの操作によってコンピュータに取り込む。取り込まれる画像データのサイズおよび階調は撮像デバイスの画素密度やダイナミックレンジによって異なるから、画像データ設定過程において、取り込まれた画像データのサイズ並びに階調を所定のサイズおよび階調に変更する処理をコンピュータが行う。例えば、２５６×２４０画素又は５１２×４８０画素を標準サイズ、白黒の２５６階調（８ビットの白黒）あるいは１６７７２１５階調（２４ビットのフルカラー）を標準階調とし、これと異なるサイズ又は階調の画像データが入力された場合、コンピュータが自動的に標準サイズおよび標準階調に変換する。すなわち、入力された画像データのサイズが標準サイズよりも小さければ、不足する画素を黒などの同一画素で補完したり、あるいは画素間を補間することでサイズを拡大し、反対に入力された画像データのサイズが標準サイズよりも大きければ、一部の画素を削除したり、あるいは画素を間引くことでサイズを縮小する。このように入力された画像データがコンピュータによって自動的に標準のサイズおよび階調に変換されるため、ユーザは入力する画像データのサイズや階調を特に意識せずに手元に用意した画像データを使用できるという利点がある。尚、画像データのサイズ又は階調の少なくとも一方を標準のサイズ又は階調に変換した場合、コンピュータは変換後の画像データおよび変換内容（拡大又は縮小、白黒化又は減色）をディスプレイ装置の画面に表示してユーザに知らせるようにしている。
【００１６】
画像データ設定過程に続いて領域設定過程に対応したプログラムモジュールが実行される。領域設定過程においては、画像データ設定過程で設定された画像データ（ユーザによってコンピュータに取り込まれ、標準サイズおよび標準階調に変換された画像データ）に対し、画像上のどの領域を検査・計測の対象とするかがユーザの操作に基づいて設定される。例えば、図２（ａ）に示すように検査・計測の対象物１の画像が画像データに含まれており、この対象物１の表面に検査・計測の対象となる欠陥部２と検査・計測の対象外となる文字（「ＡＢＣ」）や孔３が存在し、図２（ｂ）に示すように対象物１の輪郭と文字や孔３を除く範囲Ｍを検査・計測の対象領域に設定する場合、コンピュータは設定された画像データをディスプレイ装置の画面上に表示し、ユーザが入力デバイスを使って画面上の画像データに前記範囲Ｍに対応した図形を描画するか、あるいは前記範囲Ｍに対応した図形の座標を数値入力すると、その図形で表された範囲Ｍを対象領域に設定する。
【００１７】
領域設定過程に続いて検査・計測内容設定過程に対応したプログラムモジュールが実行される。検査・計測内容設定過程においては、対象物１について検査・計測しようとする内容がユーザの操作に基づいて設定される。図３はコンピュータがディスプレイ装置の画面上に表示する検査・計測内容設定画面を示している。最上段の「項目」は検査・計測内容毎に割り当てられる通し番号を示す。２段目の「メイン項目」は、例えば、１．有無検査、２．形状検査、３．表面検査、４．寸法計測、５．位置計測の５項目からなり、「メイン項目」の隣に表示されるボタンＢ１をマウスでクリックして展開されるプルダウンメニューの中から選択される。３段目の「サブ項目」は「メイン項目」における各項目の下位に含まれるものであって、例えば、１．有無検査の下位には１−１．パターン有無検査と１−２．文字認識、２．形状検査の下位には２−１．凹／欠け検査と２−２．凸／バリ検査と２−３．面積検査、３．表面検査の下位には３−１．異物検査と３−２．ひび／キズ検査と３−３．汚れ／変色検査、４．寸法計測の下位には４−１．ライン間距離計測と４−２．ランド間距離計測と４−３．ライン−ランド間距離計測と４−４．ランド面積計測、５．位置計測の下位には５−１．ライン位置計測と５−２．ランド位置計測、がそれぞれ含まれる。そして、「サブ項目」の隣に表示されるボタンＢ２をマウスでクリックすると、「メイン項目」で設定された内容の下位に含まれるサブ項目がプルダウンメニューで表示され、そのプルダウンメニューの中から何れか一つのサブ項目が選択される。４段目には「追加」、「削除」、「キャンセル」、「ＯＫ」の各ボタンＢ３〜Ｂ６が表示されており、検査・計測内容の項目を追加する場合は「追加」のボタンＢ３、現在表示されている検査・計測内容の項目を削除する場合は「削除」のボタンＢ４、現在表示されている選択項目を設定せずに検査・計測内容設定過程を終了する場合は「キャンセル」のボタンＢ５、現在表示されている内容を検査・計測内容として設定する場合は「ＯＫ」のボタンＢ６をユーザがマウスでクリックすればよい。さらに最下段に表示されている「リスト」のボタンＢ７をユーザがマウスでクリックすると、図４に示すように、これまでに設定された検査・計測内容を項目順に並べたリストがコンピュータによってディスプレイ装置の画面に表示される。例えば、図示例では項目１〜４に、メイン項目を３．表面検査、サブ項目を３−１．異物検査とする検査・計測内容、メイン項目を３．表面検査、サブ項目を３−２．ひび／キズ検査とする検査・計測内容、メイン項目を４．寸法計測、サブ項目を４−２．ランド間距離計測とする検査・計測内容、メイン項目を４．寸法計測、サブ項目を４−４．ランド面積計測とする検査・計測内容、がそれぞれ設定されており、設定されている検査／計測内容がユーザに一目で判るようになっている。尚、このリスト表示画面においては、検査・計測内容の設定対象となっている領域の番号が最上段に表示され、最下段には図３に示した項目設定画面を表示する際にクリックする「項目設定画面」のボタンＢ８と、次の検査・計測部設定過程に進む際にクリックする「検査・計測部設定画面」のボタンＢ９と、リストの表示を閉じて項目設定画面に戻る際にクリックする「閉じる」のボタンＢ１０とが表示される。
【００１８】
検査・計測内容設定過程に続いて検査・計測部設定過程に対応したプログラムモジュールが実行される。検査・計測部設定過程においては、検査又は計測の対象となる領域Ｍのなかで検査又は計測の対象部分がユーザの操作に基づいて設定される。コンピュータは、図５に示すように領域設定過程で領域Ｍが設定された画像データをディスプレイ装置の画面上に表示し、ユーザが入力デバイスを使って領域Ｍ内に存在する対象部分（例えば、欠陥部２を含む範囲）に対応した図形を描画すると、その図形で表された範囲Ｎを対象部分に設定する。すなわち、図５に示す検査・計測部設定画面に表示されている「カーソル設定」のボタンＢ１１をクリックすると検査・計測部が設定可能な状態となり、画像データの横に表示されている図形（矩形、多角形、楕円など）の中から任意の図形を選択し、欠陥部２を囲むように選択した図形（範囲Ｎ）を描画し、最後に「ＯＫ」のボタンＢ１３をクリックすれば範囲Ｎが対象部分に設定される。尚、現在表示されている範囲Ｎを対象部分に設定せずに検査・計測部設定過程を終了する場合は「キャンセル」のボタンＢ１２をクリックすればよい。
【００１９】
検査・計測部設定過程に続いてサンプルプログラム実行過程に対応したプログラムモジュールが実行される。画像データ設定過程、領域設定過程、検査・計測内容設定過程、検査・計測部設定過程において設定された画像データや領域Ｍ、検査・計測内容、検査・計測の対象部分Ｎはメモリの作業領域に格納されており、サンプルプログラム実行過程においては、コンピュータがメモリの作業領域から画像データ、領域Ｍ、検査内容又は計測内容、対象部分Ｎを読み出すとともに検査内容又は計測内容に対応した画像処理アルゴリズムを選択し、選択した画像処理アルゴリズムとメモリの作業領域から読み出した画像データや種々の設定内容とから、実際の検査・計測用プログラムと共通のプログラム構造を有するサンプルプログラムを作成する。ここで、サンプルプログラムには検査内容又は計測内容に応じたしきい値を設定する必要があり、コンピュータは選択された画像処理アルゴリズムを実行し、以下の手順でしきい値を算出している。尚、画像処理アルゴリズムはメイン項目およびサブ項目毎にプログラムモジュールの形で予め用意されている。
【００２０】
例えば、項目１に設定された検査内容（メイン項目が３．表面検査、サブ項目が３−１．異物検査）に応じたしきい値を設定する場合について説明すると、対象部分Ｎ内を空間微分して対象部分Ｎに含まれる各画素の微分絶対値と微分方向値を求めた後、対象部分Ｎ内における微分絶対値のヒストグラムを求める（図６参照）。そして、予めしきい値と設定している値Ｔｈよりも大きい微分絶対値の範囲において、分布のピークとなる微分絶対値を求める。この値は異物（欠陥部２）とそれ以外の部分との境界の濃淡変化の強度、すなわち、異物と背景とのコントラストに関連する特徴量となる（図示例では微分絶対値＝１４０とする）。さらに微分絶対値がピークとなる分布の標準偏差σを求め、対象部分Ｎ内において±３σの範囲に含まれる画素数を求める。この値は異物の大きさに関連する特徴量となる（図示例では画素数＝１８０とする）。そして、上述のようにして求めた２つの特徴量に基づいて異物検査のためのしきい値を設定する。すなわち、上述の例では異物と背景とのコントラストに関連する特徴量が微分絶対値＝１４０となり、異物の大きさに関連する特徴量が画素数＝１８０となるから、それぞれ小さい方に１０％のマージンを取るとすれば、しきい値として微分絶対値＝１２６、画素数＝１６２と決めることができ、微分絶対値がしきい値（＝１２６）を超える画素を異物候補の画素とし、且つ異物候補の画素数がしきい値（＝１６２）を超える場合に対象部分Ｎに異物（欠陥部２）が存在すると判定されることになる。但し、微分絶対値の分布のばらつきに基づいてマージンを決めても構わない。
【００２１】
コンピュータは、上述の手順でしきい値を設定することでサンプルプログラムを完成させ、続いて完成したサンプルプログラムを実行するとともに、図７に示すように実行結果をディスプレイ装置の画面上に表示する。図７に示す実行結果表示画面では、検査・計測内容の設定対象となっている領域の番号が最上段に表示され、その下に検査内容又は計測内容と各内容に対応したサンプルプログラムの実行結果とがリスト形式で表示される。図示例では項目１の検査内容（３．表面検査における３−１．異物検査）のサンプルプログラムの実行結果がＮＧ、つまり検査の対象部分Ｎに異物（欠陥部２）が存在しており、その他の項目２〜４の検査内容又は計測内容のサンプルプログラムの実行結果がＯＫ、つまり検査又は計測の対象部分Ｎに異常がなかったことが表示されるとともに、リストにおいて選択されている項目（図７においては項目１）についての検査対象の画像データ、領域Ｍ、対象部分Ｎ、異物（欠陥部２）が表示されている。実行結果表示画面の下部には、「しきい値表示」、「画像データ設定」、「実行」、「閉じる」、「再設定」の各ボタンＢ１４〜Ｂ１８が表示されており、「しきい値表示」のボタンＢ１４をユーザがクリックすると、図８に示すしきい値表示画面がコンピュータによってディスプレイ装置の画面上に表示される。このしきい値表示画面においては、選択された項目１における２つのしきい値（微分絶対値と画素数）の設定値が上下に並んだ表示欄Ｄ１，Ｄ２にそれぞれ表示されるが、この表示欄Ｄ１，Ｄ２の下にそれぞれ表示されているアップダウンコントロールＣ１，Ｃ２によって各しきい値の設定値を変更することが可能である。すなわち、アップダウンコントロールＣ１，Ｃ２のアップボタンＣ１ａ，Ｃ２ａをクリックすると微分絶対値および画素数の値が大きく（緩く）なり、ダウンボタンＣ１ｂ，Ｃ２ｂをクリックすると微分絶対値および画素数の値が小さく（厳しく）なる。そして、しきい値表示画面の最下段に表示されている「実行」のボタンＢ１９がクリックされると、コンピュータはアップダウンコントロールＣ１，Ｃ２で変更された値をしきい値に設定したサンプルプログラムを実行し、その結果を実行結果表示画面に再度表示する。尚、しきい値表示画面の最下段に表示されている「ＯＫ」のボタンＢ２１がクリックされた場合、コンピュータはしきい値の変更のみを確定するとともに変更後のサンプルプログラムを実行せずに実行結果表示画面に戻り、しきい値表示画面の最下段に表示されている「キャンセル」のボタンＢ２０がクリックされた場合、コンピュータはしきい値を変更せずに実行結果表示画面に戻る。
【００２２】
実行結果表示画面に表示された実行結果に基づいてサンプルプログラムが妥当か否かをユーザが判断し（図１のフローチャートにおけるステップ６、以下同じ）、サンプルプログラムが妥当でないと判断された場合、コンピュータは画像データの再設定（ステップ７）、領域の再設定（ステップ８）、検査・計測内容の再設定（ステップ９）、検査・計測の対象部分の再設定（ステップ１０）、検査・計測条件（しきい値）の再設定（ステップ１１）の少なくとも何れか一つがユーザによって選択されるまで待機し、再設定後に再度作成されたサンプルプログラムがユーザによって妥当と判断されるまで上記手順を繰り返すことになる。すなわち、実行結果表示画面の下部に表示されている「画像データ設定」のボタンＢ１５がユーザによってクリックされれば、コンピュータは画像データの再設定（ステップ７）が選択されたものとみなして画像データ設定過程に戻り、再度画像データ設定過程（ステップ１）、領域設定過程（ステップ２）、検査・計測内容設定過程（ステップ３）、検査・計測部設定過程（ステップ４）、サンプルプログラム実行過程（ステップ５）を実行する。また、実行結果表示画面の下部に表示されている「再設定」のボタンＢ１８がユーザによってクリックされると、コンピュータは領域設定（ステップ２）、検査・計測内容設定（ステップ３）、検査・計測部設定（ステップ４）の何れの過程に戻って再設定を行うかをユーザに選択させる画面（図示せず）をディスプレイ装置の画面上に表示し、ユーザの選択に応じたステップ２〜ステップ４に戻って領域又は検査・計測内容又は対象部分の再設定を行う。尚、検査・計測条件（しきい値）の再設定（ステップ１１）のみを行う場合、上述のように実行結果表示画面の下部に表示されている「しきい値表示」のボタンＢ１４をユーザがクリックすればよい。
【００２３】
ところで、サンプルプログラム実行過程において、同一の画像処理アルゴリズムについて検査又は計測に関する条件を決定するパラメータ（しきい値）が異なる複数種類のサンプルプログラムを作成しても構わない。例えば、上述の例では１０％のマージンを取ってしきい値を決めたが、さらに小さい方に５％のマージンを取ったしきい値も設定し、しきい値を微分絶対値＝１２６、画素数＝１６２としたサンプルプログラムと、しきい値を微分絶対値＝１３３、画素数＝１７１としたサンプルプログラムとを作成する。そして、これら２種類のサンプルプログラムを実行して両者の結果を比較すれば、コンピュータが自動的に作成するサンプルプログラムの妥当性を的確に評価することができて検査・計測用プログラムの信頼性向上が図れる。
【００２４】
また、サンプルプログラム実行過程において、複数種類の画像処理アルゴリズムについて検査又は計測に関する条件を決定するパラメータ（しきい値）が各々異なる複数種類のサンプルプログラムを作成しても構わない。例えば、上述の例で説明した画像処理アルゴリズムは異物（欠陥部２）の輪郭が明瞭なときに有効なものであり、異物の輪郭が不明瞭なときは以下に説明する画像処理アルゴリズムが有効である。すなわち、図９（ａ）に示すように異物Ｘの輪郭が明瞭でない場合、微分処理によって異物の輪郭を抽出する代わりに、直線ＡＢ上の濃淡値分布において最頻度数の濃淡値を基準値としたときに該基準値との濃淡値の差がしきい値以上となる画素が所定数以上存在するか否かで異物Ｘの存在を判断する。そして、画像処理アルゴリズムが異なる複数種類のサンプルプログラムを実行して両者の結果を比較すれば、コンピュータが自動的に作成するサンプルプログラムの妥当性を的確に評価することができて検査・計測用プログラムの信頼性向上が図れる。
【００２５】
そして、実行結果に基づいてユーザがサンプルプログラムを妥当と判断し、図７に示す実行結果表示画面の下部に表示されている「閉じる」のボタンＢ１７をクリックすれば、コンピュータはサンプルプログラムを検査・計測用プログラムに採用し、例えば、Ｃ言語のような汎用のプログラミング言語を用い、画像処理アルゴリズムを関数として扱い、パラメータ（しきい値）を変数として定義した検査・計測用プログラムのソースコードを作成して作成用プログラムを終了する。作成された検査・計測用プログラムは、別途コンパイラを用いて、実際に検査や計測を行う画像処理装置で実行可能なオブジェクトコードに変換される。このように検査・計測用プログラムを汎用のプログラミング言語のソースコードとして作成した場合、プログラミングの知識を持ったユーザがコンピュータ上で検査・計測用プログラムの修正や変更等を比較的容易に行うことができるという利点がある。あるいは、検査・計測用プログラムをメニュー形式やフローチャート形式のコマンドリストとして作成し、別途専用のソフトウェアによって画像処理装置で実行可能なオブジェクトコードに変換するようにしても構わない。検査・計測用プログラムをメニュー形式のコマンドリストとして作成した場合、階層構造のメニューであれば上位から下位への機能の流れが把握しやすいという利点があり、フローチャート形式のコマンドリストとして作成した場合、全体の流れが把握しやすく、且つ編集においても基本的な操作が処理を表す図形の描画と配置だけであるから自由度が高いという利点がある。
【００２６】
上述のように本実施形態の検査・計測用プログラム作成方法によれば、検査・計測用プログラムの作成に当たり、ユーザは検査・計測の対象となる画像データ、検査・計測の対象領域、検査・計測の内容、検査・計測を行う部分などの各項目をコンピュータ上でマウスなどの入力デバイスを使って選択するだけでコンピュータが自動的に検査・計測用のサンプルプログラムを作成し、さらに作成されたサンプルプログラムをコンピュータ上で実行して検証することができ、その検証結果に基づいてユーザが設定内容を変更することが可能であり、専門知識を持たないユーザに過度の負担を強いることなく容易に検査・計測用プログラムが作成できる。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施形態を示すフローチャートである。
【図２】同上における領域設定過程の説明図である。
【図３】同上における検査・計測内容設定過程で表示される検査・計測内容設定画面を示す図である。
【図４】同上における検査・計測内容設定過程で表示される検査・計測内容のリストを示す図である。
【図５】同上における検査・計測部設定過程で表示される検査・計測部設定画面を示す図である。
【図６】同上における画像処理アルゴリズムの説明図である。
【図７】同上におけるサンプルプログラム実行過程で表示される実行結果表示画面を示す図である。
【図８】同上におけるサンプルプログラム実行過程で表示されるしきい値表示画面を示す図である。
【図９】同上における画像処理アルゴリズムの説明図である。
【符号の説明】
【００２８】
１  対象物
２  欠陥部
Ｍ  領域
Ｎ  対象部分
【図１】
2006065582.tif 000003
【図２】
2006065582.tif 000004
【図３】
2006065582.tif 000005
【図４】
2006065582.tif 000006
【図５】
2006065582.tif 000007
【図６】
2006065582.tif 000008
【図７】
2006065582.tif 000009
【図８】
2006065582.tif 000010
【図９】
2006065582.tif 000011