(57)【特許請求の範囲】
【請求項１】
半導体ウェハ及びフォトマスクの多階調を有するパターン画像からパターンの輪郭を抽出する輪郭抽出方法において、
（ａ）輪郭を抽出する画像の範囲を選択する領域選択ステップと、
（ｂ）選択された領域の画像情報から、エッジデータを算出する際の差分を計算する画素間の距離を階層とし、縦横方向のエッジデータと階層構造を持ち、エッジデータを多重化した階層エッジデータを作成するエッジデータ作成ステップと、
（ｃ）パターンの輪郭を追跡し始める点を抽出する追跡開始点抽出ステップと、
（ｄ）階層エッジデータについて、用いる階層を設定し、該階層におけるエッジデータの値を比較し、エッジデータの最大値を順に辿ることにより、パターンを輪郭追跡し、
輪郭追跡してきたエッジデータの値からしきい値を設定し、輪郭候補点のエッジデータの値がしきい値以下のとき階層を変更することにより、
パターンの輪郭データを生成する輪郭追跡ステップと、
（ｅ）パターンの輪郭データから、一定間隔毎にパターンの輪郭にあたるポイントを、代表点として抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理ステップと、
（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成ステップと、
からなるステップを実行することによりパターン画像の輪郭を抽出すること
を特徴とする輪郭抽出方法。
【請求項２】
前記（ｄ）階層エッジデータを利用してパターンの輪郭データを生成する輪郭追跡ステップにおいて、（ａ）追跡方向と追跡距離から追跡する範囲を予め設定する追跡範囲設定ステップと、（ｂ）追跡範囲の中から方向に対応した階層エッジデータを利用して輪郭候補点を探す輪郭候補点探索ステップと、（ｃ）輪郭候補点が見つからない場合に階層エッジデータの使用階層を増加させるとともに、階層の上限を超えた場合には使用階層を初期化して追跡距離を増加させる使用階層・追跡距離更新ステップと、（ｄ）輪郭候補点がみつかった場合に輪郭候補点を輪郭データに追加し、追跡方向を更新するとともに使用階層と追跡距離を初期化する輪郭データ追加ステップと、（ｅ）輪郭データが追加される毎に輪郭の角度を確認し、角度が一定のしきい値以上となる場合にはその部分の輪郭データを削除し、別の追跡方向を設定する輪郭の角度確認ステップと、（ｆ）領域外に出るか追跡開始点に戻るまで前記の全ステップを繰り返す繰返しステップと、からなるステップを実行することによりパターン画像の輪郭を抽出することを特徴とする請求項１記載の輪郭抽出方法。
【請求項３】
請求項１、又は請求項２記載の輪郭抽出方法において、請求項１記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理ステップにあって、輪郭データ補正処理ステップは、動的輪郭モデル計算によって輪郭データを滑らかな輪郭に補正する際に、パターンの滑らかさと元画像との一致度についての重み係数を適宜設定するステップと、からなるステップを実行することにより、画像のノイズによらずに最適な輪郭が抽出できることを特徴とする輪郭抽出方法。
【請求項４】
請求項１、乃至請求項３のいずれか１項記載の輪郭抽出方法において、請求項１記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理ステップにあって、元パターン画像の縁が太さを持っている場合は、（ａ）元パターン画像の縁の内側か外側か中心のいずれを輪郭として抽出するかを選択するステップと、（ｂ）選択に応じて輪郭データを変換する輪郭データ変換ステップと、からなるステップを実行することにより、太さのある縁の任意のエッジを輪郭線として抽出できることを特徴とする輪郭抽出方法。
【請求項５】
請求項１、乃至請求項４のいずれか１項記載の輪郭抽出方法において、請求項１記載の（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成ステップにあって、輪郭線生成ステップ後、選択された領域内に複数のパターンが存在する場合は、（ａ）領域内に別のパターンがあるかを判定するステップと、（ｂ）パターンが無くなるまで輪郭抽出を繰り返すパターンの有無判定ステップと、からなるステップを実行することにより、複数パターンの一括輪郭抽出が可能となることを特徴とする輪郭抽出方法。
【請求項６】
半導体ウェハ及びフォトマスクの多階調を有するパターン画像からパターンの輪郭を抽出する輪郭抽出装置において、
（ａ）輪郭を抽出する画像の範囲を選択する領域選択手段と、
（ｂ）選択された領域の画像情報から、エッジデータを算出する際の差分を計算する画素間の距離を階層とし、縦横方向のエッジデータと階層構造を持ち、エッジデータを多重化した階層エッジデータを作成するエッジデータ作成手段と、
（ｃ）パターンの輪郭を追跡し始める点を抽出する追跡開始点抽出手段と、
（ｄ）階層エッジデータについて、用いる階層を設定し、該階層におけるエッジデータの値を比較し、エッジデータの最大値を順に辿ることにより、パターンを輪郭追跡し、
輪郭追跡してきたエッジデータの値からしきい値を設定し、輪郭候補点のエッジデータの値がしきい値以下のとき階層を変更することにより、
パターンの輪郭データを生成する輪郭追跡手段と、
（ｅ）パターンの輪郭データから、一定間隔毎にパターンの輪郭にあたるポイントを、代表点として抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理手段と、
（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成手段と、
からなることを特徴とする輪郭抽出装置。
【請求項７】
前記（ｄ）階層エッジデータを利用してパターンの輪郭データを生成する輪郭追跡手段が、（ａ）追跡方向と追跡距離から追跡する範囲を予め設定する追跡範囲設定手段と、（ｂ）追跡範囲の中から方向に対応した階層エッジデータを利用して輪郭候補点を探す輪郭候補点探索手段と、（ｃ）輪郭候補点が見つからない場合に階層エッジデータの使用階層を増加させるとともに、階層の上限を超えた場合には使用階層を初期化して追跡距離を増加させる使用階層・追跡距離更新手段と、（ｄ）輪郭候補点がみつかった場合に輪郭候補点を輪郭データに追加し、追跡方向を更新するとともに使用階層と追跡距離を初期化する輪郭データ追加手段と、（ｅ）輪郭データが追加される毎に輪郭の角度を確認し、角度が一定のしきい値以上となる場合にはその部分の輪郭データを削除し、別の追跡方向を設定する輪郭の角度確認手段と、（ｆ）領域外に出るか追跡開始点に戻るまで前記の全ステップを繰り返す繰返し手段と、からなることを特徴とする請求項６記載の輪郭抽出装置。
【請求項８】
請求項６、又は請求項７記載の輪郭抽出装置において、請求項６記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理手段は、動的輪郭モデル計算によって輪郭データを滑らかな輪郭に補正する際に、パターンの滑らかさと元画像との一致度についての重み係数を適宜設定する手段を備え、画像のノイズによらずに最適な輪郭が抽出できることを特徴とする輪郭抽出装置。
【請求項９】
請求項６、乃至請求項８のいずれか１項記載の輪郭抽出装置において、請求項６記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理手段は、元パターン画像の縁が太さを持っている場合は、（ａ）元パターン画像の縁の内側か外側か中心のいずれを輪郭として抽出するかを選択する手段と、（ｂ）選択に応じて輪郭データを変換する輪郭データ変換手段と、からなり、太さのある縁の任意のエッジを輪郭線として抽出できることを特徴とする輪郭抽出装置。
【請求項１０】
請求項６、乃至請求項９のいずれか１項の輪郭抽出装置において、請求項６記載の（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成手段は、輪郭線生成手段後、選択された領域内に複数のパターンが存在する場合は、（ａ）領域内に別のパターンがあるかを判定する手段と、（ｂ）パターンが無くなるまで輪郭抽出を繰り返すパターンの有無判定手段と、からなり、複数パターンの一括輪郭抽出が可能となることを特徴とする輪郭抽出装置。
【請求項１１】
半導体ウェハ及びフォトマスクの多階調を有するパターン画像からパターンの輪郭を抽出する輪郭抽出プログラムにおいて、
（ａ）輪郭を抽出する画像の範囲を選択する領域選択プログラムと、
（ｂ）選択された領域の画像情報から、エッジデータを算出する際の差分を計算する画素間の距離を階層とし、縦横方向のエッジデータと階層構造を持ち、エッジデータを多重化した階層エッジデータを作成するエッジデータ作成プログラムと、
（ｃ）パターンの輪郭を追跡し始める点を抽出する追跡開始点抽出プログラムと、
（ｄ）階層エッジデータについて、用いる階層を設定し、該階層におけるエッジデータの値を比較し、エッジデータの最大値を順に辿ることにより、パターンを輪郭追跡し、
輪郭追跡してきたエッジデータの値からしきい値を設定し、輪郭候補点のエッジデータの値がしきい値以下のとき階層を変更することにより、
パターンの輪郭データを生成する輪郭追跡プログラムと、
（ｅ）パターンの輪郭データから、一定間隔毎にパターンの輪郭にあたるポイントを、代表点として抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理プログラムと、
（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成プログラムと、
からなることを特徴とする輪郭抽出プログラム。
【請求項１２】
前記（ｄ）階層エッジデータを利用してパターンの輪郭データを生成する輪郭追跡プログラムにおいて、（ａ）追跡方向と追跡距離から追跡する範囲を予め設定する追跡範囲設定プログラムと、（ｂ）追跡範囲の中から方向に対応した階層エッジデータを利用して輪郭候補点を探す輪郭候補点探索プログラムと、（ｃ）輪郭候補点が見つからない場合に階層エッジデータの使用階層を増加させるとともに、階層の上限を超えた場合には使用階層を初期化して追跡距離を増加させる使用階層・追跡距離更新プログラムと、（ｄ）輪郭候補点がみつかった場合に輪郭候補点を輪郭データに追加し、追跡方向を更新するとともに使用階層と追跡距離を初期化する輪郭データ追加プログラムと、（ｅ）輪郭データが追加される毎に輪郭の角度を確認し、角度が一定のしきい値以上となる場合にはその部分の輪郭データを削除し、別の追跡方向を設定する輪郭の角度確認プログラムと、（ｆ）領域外に出るか追跡開始点に戻るまで前記の全ステップを繰り返す繰返しプログラムと、からなることを特徴とする請求項１１記載の輪郭抽出プログラム。
【請求項１３】
請求項１１、又は請求項１２記載の輪郭抽出プログラムにおいて、請求項１１記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理プログラムは、動的輪郭モデル計算によって輪郭データを滑らかな輪郭に補正する際に、パターンの滑らかさと元画像との一致度についての重み係数を適宜設定するプログラムと、からなる画像のノイズによらずに最適な輪郭が抽出できることを特徴とする輪郭抽出プログラム。
【請求項１４】
請求項１１、乃至請求項１３のいずれか１項記載の輪郭抽出プログラムにおいて、請求項１１記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理プログラムは、元パターン画像の縁が太さを持っている場合は、（ａ）元パターン画像の縁の内側か外側か中心のいずれを輪郭として抽出するかを選択するプログラムと、（ｂ）選択に応じて輪郭データを変換する輪郭データ変換プログラムと、からなり、太さのある縁の任意のエッジを輪郭線として抽出できることを特徴とする輪郭抽出プログラム。
【請求項１５】
請求項１１、乃至請求項１４のいずれか１項記載の輪郭抽出プログラムにおいて、請求項１１記載の（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成プログラムにあって、輪郭線生成プログラムの後、選択された領域内に複数のパターンが存在する場合は、（ａ）領域内に別のパターンがあるかを判定するプログラムと、（ｂ）パターンが無くなるまで輪郭抽出を繰り返すパターンの有無判定プログラムと、からなることにより、複数パターンの一括輪郭抽出が可能となることを特徴とする輪郭抽出プログラム。
【請求項１６】
請求項１１、乃至請求項１５のいずれか１項記載の輪郭抽出プログラムを搭載することを特徴とする輪郭抽出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は半導体製造のリソグラフィ工程に用いられるフォトマスクのマスクパターン画像や、リソグラフィにより半導体ウェハ上に作成されたウェハパターンの画像から、パターンの輪郭線を抽出するための輪郭抽出方法及びその装置及びそのプログラムに関する。
【０００２】
【従来の技術】
近年の半導体ＬＳＩの微細化に伴い、パターン原版としてのフォトマスクも同様に微細化への対応を迫られており、同時に高精度化への要求は非常に厳しい。特に最近は、微細なパターン形状の劣化を防ぐために、光学原理を積極的に利用した光近接効果補正マスク（以下ＯＰＣマスクと称する）なども増え始め、さらに高度な微細加工技術が要求されるようになってきている。
【０００３】
ここでＯＰＣマスクについて説明する。OPCマスクとは、ウェハ露光転写時に回路パターン形状が精度良く転写されるように、本来の回路パターンに近接、あるいは接触するようにして従来パターンよりも小さな光近接効果補正パターン（以下ＯＰＣパターンと称する）が付加されているマスクである。つまり、最先端のフォトマスクにおいては、パターンの微細化が進む上に微細補助パターンであるＯＰＣパターンが付加されるため、微細かつ複雑な形状を精度よく作り込む技術が必須となっている。
【０００４】
そこで、製造及び検査技術の課題としてパターン形状精度の問題が重要視されてきている。
【０００５】
一方、リソグラフィ工程によってウェハ上に露光転写されたパターンにおいても、より微細なパターン（フォトマスクパターンの４分の１〜５分の１）の形状を精度良く作り込む技術が必要であり、製造及び検査技術の課題としてフォトマスクと全く同様にパターン形状精度の問題が重要視される。
【０００６】
パターン形状の精度を確認する手段として、光学顕微鏡やＳＥＭによるウェハパターン及びフォトマスクパターンの観察画像をコンピュータに画像データとして読み込んだ後、コンピュータの画面上でパターン形状と設計パターンを比較して形状の善し悪しを判断したり、画像処理を施してパターンの輪郭線を抽出し、この輪郭線のデータを元に形状の特性値を定量的に計測する方法などがある。
【０００７】
一般的に画像処理手法によるパターンの輪郭線抽出は、まずパターン画像をパターンと背景の２値画像に変換し、パターン部分の輪郭を追跡処理することで行う。この場合パターン画像を２値画像に変換する２値化処理を行う必要があり、そのための最適な閾値を設定する必要がある。２値化のための閾値を求める方法としては次のようなものがある。
【０００８】
第1の方法はモード法である。モード法とは、パターン画像のヒストグラム中にはパターン部分と背景部分を表す２つの山（モード）があり（図１４）、濃度分布が双方形になることを前提に、２つの山を分離する谷となるところをしきい値とする方法である。
【０００９】
また第2の方法としてｐ−タイル法がある。ｐ−タイル法はパターン画像の中でパターン部分の占める割合が予めP％であると分かっている場合に、ヒストグラムから累積分布がP％になるようなところをしきい値とする方法である。
【００１０】
さらに第3の方法に判別分析法がある。判別分析法とは、マスクパターン画像のヒストグラムをしきい値ｋで２つのクラスに分割したと仮定したとき、２つのクラス間の分離が最も良くなるようなｋを求める方法である。
【００１１】
また、マスクパターン画像にシェーディングなどの濃淡ムラが生じている場合には、画像を任意数の領域に分割してから、各分割領域ごとにしきい値を算出する方法もある。
【００１２】
ここで濃淡ムラがある画像とは、図１５に示す原画像のようにパターン部分または背景部分の濃度分布が一様でなく、場所によって濃度値が異なる画像のことである。この画像を画像全体を一括して設定したしきい値（以下固定しきい値と呼ぶ）で2値化した結果を右側に示す。処理結果を見るとパターンの左上のコーナー部分は、適切に2値化できているが、右下のコーナー部分は背景からうまく分離できていないことが分かる。つまり濃淡ムラがある画像は、パターン部分と背景部分を分離するしきい値が場所によって異なるため、固定しきい値による処理では、適切な2値化が難しいという問題点がある。特にフォトマスクのＳＥＭ画像の場合、マスクがチャージアップしてしまうことにより、パターン画像に濃淡ムラが生じやすい。
【００１３】
この問題を回避する方法が、画像を任意数の領域に分割してそれぞれのしきい値を求める方法である。図１６に原画像を4分割し、各分割領域でしきい値を設定して2値化したパターン画像を示す。これを見ると、パターンの右下部分も背景との分離ができており、画像全体のしきい値を設定する場合に比べ適切な2値化が行えることが分かる。
【００１４】
【発明が解決しようとする課題】
しかしながら、輪郭を追跡処理するための前処理としての前記各種しきい値を求める方法には次のような課題が含まれている。
【００１５】
モード法は濃度分布が双方形になることが前提になっているため、画像の濃度分布の状態によって使用できない場合がある。またｐ−タイル法は、パターン画像においてパターン部分の面積が予め分かっていることは少ないと考えられ、利用できる場面は限られる。これら２つの方法は、パターン画像を分割する場合においても同様である。
【００１６】
また判別分析法ではマスクパターン画像にシェーディングなどの濃淡ムラがなければ、ある程度良いしきい値を得ることができる。しかし、濃淡ムラがある場合には画像全体を適切に2値化するしきい値を求めることは前述の理由により難しい。そして、パターン画像を分割して分割領域それぞれに判別分析法を用いた場合は、領域内にパターン部分と背景部分の両方が含まれていれば良いしきい値を得ることができるが、領域内にパターン部分又は背景部分のみしか含まれていない場合には、ノイズが抽出されてしまうという欠点がある。パターン画像によって最適な分割方法が異なるため、ノイズが抽出されないように分割方法を設定することは非常に難しい。
【００１７】
以上のようにノイズや濃淡ムラがあるパターン画像においては、パターン部と背景部とを分離するための適切なしきい値を安定的に求めることは非常に困難であり、パターン画像を２値化した後パターン部分を追跡処理するという従来の輪郭線抽出方法は、ウェハパターン画像やフォトマスクパターン画像の場合うまくいかないことが多い。
【００１８】
本発明は上記の問題点を鑑みてなされたもので、形状の評価や計測に利用できるパターンの輪郭線を得るため、画像撮影時の様々な制約によってノイズや濃淡ムラが生じたウェハパターン画像及びフォトマスクパターン画像においても、最適なパターンの輪郭抽出を可能とする方法を提供することを課題とする。
【００１９】
【課題を解決するための手段】
本発明はかかる課題を解決するものであり、請求項１に係る発明は、半導体ウェハ及びフォトマスクの多階調を有するパターン画像からパターンの輪郭を抽出する輪郭抽出方法において、（ａ）輪郭を抽出する画像の範囲を選択する領域選択ステップと、（ｂ）選択された領域の画像情報から、エッジデータを算出する際の差分を計算する画素間の距離を階層とし、縦横方向のエッジデータと階層構造を持ち、エッジデータを多重化した階層エッジデータを作成するエッジデータ作成ステップと、（ｃ）パターンの輪郭を追跡し始める点を抽出する追跡開始点抽出ステップと、（ｄ）階層エッジデータについて、用いる階層を設定し、該階層におけるエッジデータの値を比較し、エッジデータの最大値を順に辿ることにより、パターンを輪郭追跡し、  輪郭追跡してきたエッジデータの値からしきい値を設定し、輪郭候補点のエッジデータの値がしきい値以下のとき階層を変更することにより、パターンの輪郭データを生成する輪郭追跡ステップと、（ｅ）パターンの輪郭データから、一定間隔毎にパターンの輪郭にあたるポイントを、代表点として抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理ステップと、（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成ステップと、からなるステップを実行することによりパターン画像の輪郭を抽出することを特徴とする輪郭抽出方法である。
【００２０】
本発明の請求項２に係る発明は、前記（ｄ）階層エッジデータを利用してパターンの輪郭データを生成する輪郭追跡ステップにおいて、
（ａ）追跡方向と追跡距離から追跡する範囲を予め設定する追跡範囲設定ステップと、
（ｂ）追跡範囲の中から方向に対応した階層エッジデータを利用して輪郭候補点を探す輪郭候補点探索ステップと、
（ｃ）輪郭候補点が見つからない場合に階層エッジデータの使用階層を増加させるとともに、階層の上限を超えた場合には使用階層を初期化して追跡距離を増加させる使用階層・追跡距離更新ステップと、
（ｄ）輪郭候補点がみつかった場合に輪郭候補点を輪郭データに追加し、追跡方向を更新するとともに使用階層と追跡距離を初期化する輪郭データ追加ステップと、
（ｅ）輪郭データが追加される毎に輪郭の角度を確認し、角度が一定のしきい値以上となる場合にはその部分の輪郭データを削除し、別の追跡方向を設定する輪郭の角度確認ステップと、
（ｆ）領域外に出るか追跡開始点に戻るまで前記の全ステップを繰り返す繰返しステップと、
からなるステップを実行することによりパターン画像の輪郭を抽出することを特徴とする請求項１記載の輪郭抽出方法である。
【００２１】
本発明の請求項３に係る発明は、請求項１、又は請求項２記載の輪郭抽出方法において、請求項１記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理ステップにあって、輪郭データ補正処理ステップは、動的輪郭モデル計算によって輪郭データを滑らかな輪郭に補正する際に、パターンの滑らかさと元画像との一致度についての重み係数を適宜設定するステップと、からなるステップを実行することにより、画像のノイズによらずに最適な輪郭が抽出できることを特徴とする輪郭抽出方法である。
【００２２】
本発明の請求項４に係る発明は、請求項１、乃至請求項３のいずれか１項記載の輪郭抽出方法において、請求項１記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理ステップにあって、元パターン画像の縁が太さを持っている場合は、
（ａ）元パターン画像の縁の内側か外側か中心のいずれを輪郭として抽出するかを選択するステップと、
（ｂ）選択に応じて輪郭データを変換する輪郭データ変換ステップと、
からなるステップを実行することにより、太さのある縁の任意のエッジを輪郭線として抽出できることを特徴とする輪郭抽出方法である。
【００２３】
本発明の請求項５に係る発明は、請求項１、乃至請求項４のいずれか１項記載の輪郭抽出方法において、請求項１記載の（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成ステップにあって、輪郭線生成ステップ後、選択された領域内に複数のパターンが存在する場合は、
（ａ）領域内に別のパターンがあるかを判定するステップと、
（ｂ）パターンが無くなるまで輪郭抽出を繰り返すパターンの有無判定ステップと、
からなるステップを実行することにより、複数パターンの一括輪郭抽出が可能となることを特徴とする輪郭抽出方法である。
【００２４】
本発明の請求項６に係る発明は、半導体ウェハ及びフォトマスクの多階調を有するパターン画像からパターンの輪郭を抽出する輪郭抽出装置において、（ａ）輪郭を抽出する画像の範囲を選択する領域選択手段と、（ｂ）選択された領域の画像情報から、エッジデータを算出する際の差分を計算する画素間の距離を階層とし、縦横方向のエッジデータと階層構造を持ち、エッジデータを多重化した階層エッジデータを作成するエッジデータ作成手段と、（ｃ）パターンの輪郭を追跡し始める点を抽出する追跡開始点抽出手段と、（ｄ）階層エッジデータについて、用いる階層を設定し、該階層におけるエッジデータの値を比較し、エッジデータの最大値を順に辿ることにより、パターンを輪郭追跡し、  輪郭追跡してきたエッジデータの値からしきい値を設定し、輪郭候補点のエッジデータの値がしきい値以下のとき階層を変更することにより、パターンの輪郭データを生成する輪郭追跡手段と、（ｅ）パターンの輪郭データから、一定間隔毎にパターンの輪郭にあたるポイントを、代表点として抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理手段と、（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成手段と、からなることを特徴とする輪郭抽出装置である。
【００２５】
本発明の請求項７に係る発明は、前記（ｄ）階層エッジデータを利用してパターンの輪郭データを生成する輪郭追跡手段が、
（ａ）追跡方向と追跡距離から追跡する範囲を予め設定する追跡範囲設定手段と、
（ｂ）追跡範囲の中から方向に対応した階層エッジデータを利用して輪郭候補点を探す輪郭候補点探索手段と、
（ｃ）輪郭候補点が見つからない場合に階層エッジデータの使用階層を増加させるとともに、階層の上限を超えた場合には使用階層を初期化して追跡距離を増加させる使用階層・追跡距離更新手段と、
（ｄ）輪郭候補点がみつかった場合に輪郭候補点を輪郭データに追加し、追跡方向を更新するとともに使用階層と追跡距離を初期化する輪郭データ追加手段と、
（ｅ）輪郭データが追加される毎に輪郭の角度を確認し、角度が一定のしきい値以上となる場合にはその部分の輪郭データを削除し、別の追跡方向を設定する輪郭の角度確認手段と、
（ｆ）領域外に出るか追跡開始点に戻るまで前記の全ステップを繰り返す繰返し手段と、
からなることを特徴とする請求項６記載の輪郭抽出装置である。
【００２６】
本発明の請求項８に係る発明は、請求項６、又は請求項７記載の輪郭抽出装置において、請求項６記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理手段は、動的輪郭モデル計算によって輪郭データを滑らかな輪郭に補正する際に、パターンの滑らかさと元画像との一致度についての重み係数を適宜設定する手段を備え、画像のノイズによらずに最適な輪郭が抽出できることを特徴とする輪郭抽出装置である。
【００２７】
本発明の請求項９に係る発明は、請求項６、乃至請求項８のいずれか１項記載の輪郭抽出装置において、請求項６記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理手段は、元パターン画像の縁が太さを持っている場合は、
（ａ）元パターン画像の縁の内側か外側か中心のいずれを輪郭として抽出するかを選択する手段と、
（ｂ）選択に応じて輪郭データを変換する輪郭データ変換手段と、
からなり、太さのある縁の任意のエッジを輪郭線として抽出できることを特徴とする輪郭抽出装置である。
【００２８】
本発明の請求項１０に係る発明は、請求項６、乃至請求項９のいずれか１項の輪郭抽出装置において、請求項６記載の（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成手段は、輪郭線生成手段後、選択された領域内に複数のパターンが存在する場合は、
（ａ）領域内に別のパターンがあるかを判定する手段と、
（ｂ）パターンが無くなるまで輪郭抽出を繰り返すパターンの有無判定手段と、からなり、複数パターンの一括輪郭抽出が可能となることを特徴とする輪郭抽出装置である。
【００２９】
本発明の請求項１１に係る発明は、半導体ウェハ及びフォトマスクの多階調を有するパターン画像からパターンの輪郭を抽出する輪郭抽出プログラムにおいて、（ａ）輪郭を抽出する画像の範囲を選択する領域選択プログラムと、（ｂ）選択された領域の画像情報から、エッジデータを算出する際の差分を計算する画素間の距離を階層とし、縦横方向のエッジデータと階層構造を持ち、エッジデータを多重化した階層エッジデータを作成するエッジデータ作成プログラムと、（ｃ）パターンの輪郭を追跡し始める点を抽出する追跡開始点抽出プログラムと、（ｄ）階層エッジデータについて、用いる階層を設定し、該階層におけるエッジデータの値を比較し、エッジデータの最大値を順に辿ることにより、パターンを輪郭追跡し、  輪郭追跡してきたエッジデータの値からしきい値を設定し、輪郭候補点のエッジデータの値がしきい値以下のとき階層を変更することにより、パターンの輪郭データを生成する輪郭追跡プログラムと、（ｅ）パターンの輪郭データから、一定間隔毎にパターンの輪郭にあたるポイントを、代表点として抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理プログラムと、（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成プログラムと、からなることを特徴とする輪郭抽出プログラムである。
【００３０】
本発明の請求項１２に係る発明は、前記（ｄ）階層エッジデータを利用してパターンの輪郭データを生成する輪郭追跡プログラムにおいて、
（ａ）追跡方向と追跡距離から追跡する範囲を予め設定する追跡範囲設定プログラムと、
（ｂ）追跡範囲の中から方向に対応した階層エッジデータを利用して輪郭候補点を探す輪郭候補点探索プログラムと、
（ｃ）輪郭候補点が見つからない場合に階層エッジデータの使用階層を増加させるとともに、階層の上限を超えた場合には使用階層を初期化して追跡距離を増加させる使用階層・追跡距離更新プログラムと、
（ｄ）輪郭候補点がみつかった場合に輪郭候補点を輪郭データに追加し、追跡方向を更新するとともに使用階層と追跡距離を初期化する輪郭データ追加プログラムと、
（ｅ）輪郭データが追加される毎に輪郭の角度を確認し、角度が一定のしきい値以上となる場合にはその部分の輪郭データを削除し、別の追跡方向を設定する輪郭の角度確認プログラムと、
（ｆ）領域外に出るか追跡開始点に戻るまで前記の全ステップを繰り返す繰返しプログラムと、
からなることを特徴とする請求項１１記載の輪郭抽出プログラムである。
【００３１】
本発明の請求項１３に係る発明は、請求項１１、又は請求項１２記載の輪郭抽出プログラムにおいて、請求項１１記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理プログラムは、動的輪郭モデル計算によって輪郭データを滑らかな輪郭に補正する際に、パターンの滑らかさと元画像との一致度についての重み係数を適宜設定するプログラムと、からなる画像のノイズによらずに最適な輪郭が抽出できることを特徴とする輪郭抽出プログラムである。
【００３２】
本発明の請求項１４に係る発明は、請求項１１、乃至請求項１３のいずれか１項記載の輪郭抽出プログラムにおいて、請求項１１記載の（ｅ）パターンの輪郭データから代表点を抽出し、動的輪郭モデル計算によって滑らかな輪郭に変換する輪郭データ補正処理プログラムは、元パターン画像の縁が太さを持っている場合は、
（ａ）元パターン画像の縁の内側か外側か中心のいずれを輪郭として抽出するかを選択するプログラムと、
（ｂ）選択に応じて輪郭データを変換する輪郭データ変換プログラムと、
からなり、太さのある縁の任意のエッジを輪郭線として抽出できることを特徴とする輪郭抽出プログラムである。
【００３３】
本発明の請求項１５に係る発明は、請求項１１、乃至請求項１４のいずれか１項記載の輪郭抽出プログラムにおいて、請求項１１記載の（ｆ）補正された輪郭データから補間計算によって連続した輪郭線を生成する輪郭線生成プログラムにあって、輪郭線生成プログラムの後、選択された領域内に複数のパターンが存在する場合は、
（ａ）領域内に別のパターンがあるかを判定するプログラムと、
（ｂ）パターンが無くなるまで輪郭抽出を繰り返すパターンの有無判定プログラムと、
からなることにより、複数パターンの一括輪郭抽出が可能となることを特徴とする輪郭抽出プログラムである。
【００３４】
本発明の請求項１６に係る発明は、請求項１１、乃至請求項１５のいずれか１項記載の輪郭抽出プログラムを搭載することを特徴とする輪郭抽出装置である。
【００３５】
【発明の実施の形態】
以下において本発明の内容について解説する。
【００３６】
図１に本発明の輪郭抽出の処理フローを示す。光学顕微鏡やＳＥＭ等により撮影したフォトマスクパターンやウェハパターンのカラー、又はモノクロの観察画像をコンピュータに読み込み、これをグレーの多階調画像に変換したものをパターン画像と呼ぶ。
【００３７】
最初にこのパターン画像のどの範囲を輪郭抽出するかを領域の選択（Ｓ１）により設定する。これは、コンピュータディスプレイ上に表示されたパターン画像を見ながら、マウスなどのポインティングデバイスを利用して行う。
【００３８】
次に選択された画像領域の濃淡データを元に、階層エッジデータの作成処理（Ｓ２）を行う。
【００３９】
前記の階層エッジデータの作成は図２に示すフローに従って行う。階層エッジデータは、濃淡データの各画素の差分によって求めるエッジデータを多重化したものである。
【００４０】
図２は、まず、
（ａ）選択された画像領域に含まれるノイズを除去することを目的に平滑化処理を行う（１０１）。
（ｂ）次に階層ｋを１〜５まで変化させながら、横方向のエッジデータを算出する（１０３）。
（ｃ）続いて縦方向のエッジデータを算出する（１０４）。
【００４１】
この階層エッジデータの具体的な算出方法を図３に示す。図３において画像領域の濃淡データをｂｍｐ（幅：Ｗｉｄｔｈ、高さ：Ｈｅｉｇｈｔ）、幅方向の位置をｉ、高さ方向の位置をｊとすると、縦方向の階層エッジデータは式（１）、横方向の階層エッジデータは式（２）によって算出される。階層ｋというのはエッジデータを算出する際の、差分を計算する画素間の距離のことである。なお、計算の際に配列の添字が濃淡データの範囲（１〜Ｗｉｄｔｈ、１〜Ｈｅｉｇｈｔ）を超える場合は、範囲内となるように適当に添字の値を変換する。階層エッジデータは階層ｋと横方向の位置ｉ、縦方向の位置ｊの３つのパラメータによる３次元配列で表現される。それぞれの式において画像ノイズの影響を削減するため、点線矢印で示される部分の画素間の差分も計算し、それらの平均を算出している。縦方向の階層エッジデータは鉛直方向のエッジがある場合に大きな値を持ち、横方向の階層エッジデータは水平方向のエッジがある場合に大きな値を持つ。
【００４２】
本発明の処理フロー図１のフローに戻り、説明する。
【００４３】
次に追跡開始点の抽出処理（Ｓ３）を行う。
【００４４】
追跡開始点はパターンの輪郭を追跡し始める座標点のことである。輪郭抽出を行うパターンは、領域の選択の仕方によってパターン全体の一部が切り取られる形になる場合と、選択領域内にパターン全体が含まれる場合とが考えられる。ここでは前者を部分パターン、後者を全体パターンと呼ぶ。部分パターンは選択領域矩形の四辺上のいずれかの地点から輪郭が始まり、四辺上の別の地点で輪郭が終わる形態になる。そのため、追跡開始点は四辺上から探すようにする。一方、全体パターンはパターンが閉じているため、パターン上のどの地点を追跡開始点としても、追跡処理によって最終的に元の開始点に戻ることになる。従って、全体パターンを抽出する場合には、選択領域内の任意な位置から開始点を探すこととする。
【００４５】
前記の追跡開始点の抽出処理のフローを図４に示す。
【００４６】
以下に図４について解説する。なお、図４のフローで使用する階層エッジデータは階層２のものとする。
【００４７】
図４は、
（ａ）追跡開始点かどうか判断するための開始点判定しきい値を算出する（２０１）。開始点判定しきい値は、縦横両方向の階層エッジデータから最大値と最小値を抽出し、その平均値とする。
（ｂ）次に、選択領域の四辺上の階層エッジデータの中から最大値とその座標を抽出する（２０２）。部分パターンの場合は、各辺と切取られるパターンの端は局所的にはほぼ直交すると思われる。そのため、上辺と底辺の（鉛直方向のエッジ情報を多く含む）縦方向の階層エッジデータと、左辺と右辺の（水平方向のエッジ情報を多く含む）横方向の階層エッジデータから最大値を抽出する。
（ｃ）そして、この最大値と開始点判定しきい値とを比較する（２０３）。
（ｄ）開始点判定しきい値より大きい場合は、抽出された座標を追跡開始点とする（２０４）。
（ｅ）一方、開始点判定しきい値以下の場合は、選択領域の中に部分パターンは無いものと判断し、今度は全体パターンの追跡開始点を抽出するため、選択領域内の縦横両方向の階層エッジデータについて最大値を抽出する（２０５）。
（ｆ）そして、この最大値と開始点判定しきい値とを比較し（２０６）する。
（ｇ）しきい値より大きい場合は抽出された座標を全体パターンの追跡開始点とする（２０７）。
（ｈ）さらに、これも開始点判定しきい値以下であった場合は、選択領域内にはパターンがないものと判断し、エラー処理（２０８）を行う。
【００４８】
本発明の処理フロー図１のフローに戻り、説明する。
【００４９】
再び図１のフローに戻り、次に輪郭追跡処理（Ｓ４）を行う。
【００５０】
前記の輪郭追跡処理のフローを図５に示し、以下に詳細を解説する。
【００５１】
図５に示すように、
（ａ）最初に現在のポイントを追跡開始点で初期化（３０１）する。
（ｂ）追跡方向及び追跡距離、階層エッジデータの使用階層を初期化（３０２）、初期化（３０３）、初期化（３０４）する。
【００５２】
ここで、追跡方向とはパターンのエッジを追跡する方向を示すもので、近傍８方向それぞれを数字で表したものである（図６）。
【００５３】
追跡方向の初期値は、輪郭を追跡するパターンが部分パターンの場合、追跡開始点が選択領域のどの辺上にあるかによって設定する。これは、選択領域の辺と部分パターンの端がほぼ直交していると見なし、最初の追跡方向をパターンの端から中心に向かうように定めるものである。つまり、追跡開始点が選択領域の上辺上にある場合は２、右辺上にある場合は４、下辺上にある場合は６、左辺上にある場合は０となる。一方、輪郭を追跡するパターンが全体パターンの場合は、追跡開始点の８近傍のうち最も大きい階層エッジデータがある方向を追跡方向の初期値とする。
【００５４】
追跡距離の初期化は、輪郭の次のポイントを追跡する際の距離を表すもので初期値は１とする。階層エッジデータの使用階層は、ステップ（Ｓ２）で作成した階層エッジデータで何番目の階層を使用するかを設定するもので、初期値は２とする。
【００５５】
次に、
（ｃ）追跡方向と追跡距離から追跡範囲を設定（３０５）する。ここで、ウェハパターン又はフォトマスクパターンの顕微鏡やＳＥＭによる画像は、パターンが拡大表示された画像であるため、パターンの輪郭をそれを構成している単位線分に分解すると、隣接する２つの単位線分はゆるやかに変化しており、一方の線分を基準にして、2本の線分で構成される角度は０度〜±４５度であると考えられる。この考えに基づき、輪郭線を追跡する範囲を一つ前のポイントからの追跡方向（スタート時はステップ（３０２）で設定した追跡方向）と追跡距離によって図７にように設定し、次のポイントはこの追跡範囲（３点）から探すようにする。このように追跡範囲を前のポイントからの方向により限定することで、それまでの追跡結果が情報として生かされるため、パターン画像のノイズ等によって輪郭の追跡がパターンと異なる方向に発散してしまうことを防ぐ効果がある。
【００５６】
続いて、
（ｄ）追跡範囲の中で階層エッジデータが最大となるポイントを輪郭候補点とする（３０６）。なお、階層エッジデータは縦方向・横方向の２種類あるが、追跡範囲の位置によって比較に使用する階層エッジデータの種類を適宜選択する。具体的には、追跡範囲が現在のポイントに対して水平（左右）の場合は横方向の階層エッジデータを使用し、鉛直（上下）の場合は縦方向の階層エッジデータを使用し、斜めの場合は縦方向・横方向の階層エッジデータの大きい方を使用する。これは、パターンの輪郭を追跡している方向に応じて、より確かな情報だけを利用することを目的としており、水平方向のエッジ情報を多く含む横方向の階層エッジデータと、鉛直方向のエッジ情報を多く含む縦方向の階層エッジデータを選別して利用することで、確実にパターンのエッジに沿った輪郭追跡が可能となる。
【００５７】
次に、
（ｅ）輪郭候補点の階層エッジデータとしきい値とを比較する（３０７）。しきい値は、これまで追跡してきた各ポイントの階層エッジデータの値を合計したものを、追跡してきたポイント数で除算し、１／３を乗算したものである。このしきい値は、輪郭追跡の過程に応じて動的に変動する。そのため、元画像の濃淡分布のコントラストが明瞭でない場合や、濃淡ムラがある場合でも、算出したしきい値と比較することで、輪郭候補点の確からしさを正しく確認することができる。
【００５８】
しきい値と比較した結果、輪郭候補点の階層エッジデータがしきい値以下の場合には、（ｆ）階層エッジデータの使用階層を１増加（３０８）させ、使用階層が５以下の場合にはステップ３０６に戻って輪郭候補点を探し直す。階層エッジデータの階層を増加させて探索をやり直す方法は、人がパターン画像からパターンのエッジを見分ける際に、濃度分布の局所的な変化よりも大局的な変化を捉えて判断していることを鑑みたものである。つまり、階層エッジデータの階層を増加させると、濃淡データの差を取る画素間距離が長くなるため、その階層のエッジデータはより大局的な濃度変化を表すことになる。そのため、コントラストが不明瞭なエッジの場合、そのエッジデータの値は画素間距離を長くすると大きくなる可能性が高い。従って、ある階層の輪郭候補点におけるエッジデータがしきい値以下となる場合でも、より上位の階層エッジデータがしきい値より大きくなった場合には、その輪郭候補点はエッジの一部として妥当であると判断できる。
【００５９】
階層エッジデータの階層を５以上に上げてもしきい値より大きくならなかった場合は、その輪郭候補点はエッジとして妥当でなく、ステップ（３０５）で設定した追跡範囲には輪郭となるポイントがないものと見なす。この場合は、（ｇ）使用階層を１に初期化し、追跡距離を１増加して（３１０）、追跡範囲の設定（３０５）からやり直す。このように追跡距離を長くすることで、エッジの情報があいまいな所はとばして、その次のポイントから輪郭の追跡を継続することが可能となる。
【００６０】
ステップ（３０７）において、輪郭候補点の階層エッジデータがしきい値より大きい場合には、輪郭候補点を輪郭の一部と確定する。
（ｈ）輪郭データに追加する（３１１）。
（ｉ）そして、現在のポイントを輪郭候補点で更新（３１２）して輪郭追跡を先に進める。
（ｊ）その際、追跡方向を更新（３１３）する。
（ｋ）追跡距離と使用階層を初期化（３１４）する。
【００６１】
次に、
（ｌ）確定した輪郭データについて輪郭データの角度を確認（３１５）し、パターン画像中のノイズやムラの影響によって追跡途中の輪郭線が異常な形にならないように監視する。本発明によって輪郭を抽出しようとしているウェハパターンやフォトマスクパターンは、矩形の組み合わせで構成されているものが多く、パターンの角はほとんどが直角だと思われ、抽出される輪郭線は局所的に急激に曲がることはないと考えられる。そこでステップ（３１５）では、確定した直近の輪郭データ複数個からその曲がり角を算出し、一定の角度を超えていないかを確認する。
【００６２】
その結果、
（ｍ）角度が大きすぎてＮＧとなった場合は、追跡経路が間違っているものと判断する。この場合、現在のポイントを角度が正常なところまで戻して、そこまでの輪郭データを削除（３１６）する。
（ｎ）別の追跡方向を設定（３１７）してステップ（３０５）からやり直す。一方、角度がOKの場合はそのまま次に進む。
【００６３】
以上の各ステップを、
（ｏ）現在のポイントが選択領域外に出るか（部分パターンの場合）、追跡開始点まで戻ってくる（全体パターンの場合）（３１８）まで繰返し行う。
（ｐ）この条件を満たした場合に追跡処理を終了（３１９）する。
【００６４】
本発明の処理フロー図１のフローに戻り、説明する。
【００６５】
再び図１のフローに戻る。次に、抽出した輪郭線を滑らかな形状に変換するための輪郭データの補正処理（Ｓ５）を行う。
【００６６】
前記輪郭データの補正処理は図８に示すように、
（ａ）まず輪郭データから代表ポイントを抽出（４０１）する。
（ｂ）動的輪郭モデルにより代表ポイントを補正（４０２）をすることによって行われる。代表ポイントの抽出は、単に輪郭データを間引くために行うもので、輪郭データから一定間隔毎にデータを抽出する。動的輪郭モデルによる代表ポイントの補正は、エネルギー最小化問題である動的輪郭モデルを利用したもので、パターンとしての形状を崩さずに輪郭の滑らかさを向上させることを目的としている。
【００６７】
ここで動的輪郭モデルについて詳細を述べる。動的輪郭モデル（Snakes）は、1988年にKassらが提案した画像中の対象物の輪郭を抽出する手法で、画像の特徴とモデルの形状からエネルギーEsnakesを定義し、このエネルギー関数を最小化する過程で対象物の輪郭を抽出するものである。エネルギー関数Esnakesは、滑らかさや節点間の距離などのモデル形状に関する内部エネルギーEint、モデルが画像特徴に引き寄せられる画像エネルギーEimage、およびモデルの形状変化を外部から抑制する外部エネルギーEconとから成り、下記の式（１）のように表される。なお、Vi（i=1,2,3,…,n）は輪郭モデルの節点であり、本発明では輪郭データの代表ポイントに当たる。
Esnakes（Vi）＝  Eint（Vi）＋Eimage（Vi）＋Econ（Vi）              ―――（１）
内部エネルギーは輪郭の1次微分及び2次微分の和が用いられることが多く、下記の式（２）のように算出される。１次微分は節点間の距離を、2次微分は節点間を繋ぐ曲線の滑らかさを表す。なお、α及びβはそれぞれの項に対する重み付けのパラメータである。
Eint（Vi）＝  α｜Vi  −  Vi-1｜2＋β｜Vi-1 −  ２Vi ＋  Vi+1｜2 ―――（２）
また、画像エネルギーは一般に下記の式（３）で表される画像の濃度勾配として算出される。
【００６８】
本発明においては、図３に示した階層エッジデータの階層１での縦方向のエッジデータと横方向のエッジデータを加算したものを濃度勾配を表すデータとして利用する。なお、濃度勾配を表すデータ値は２５６階調の場合は０〜２５５の値を取るものとし、加算の結果２５５より大きくなる場合は２５５に変換する。式（３）のγは画像エネルギーに対する重み付けのパラメータである。
Eimage（Vi）＝  −γ｜▽I（Vi）｜                              ―――（３）
外部エネルギーは、一般にモデルの形状変化を抑制するものとして、主にモデルの収縮方向やモデル形状の特徴を維持するために利用される。本発明においては、このようなモデルの拘束は必要ないので式（１）のEcon（Vi）は０とする。
【００６９】
このように定義されたエネルギー関数Esnakesを全ての代表ポイントについて、各ポイントの近傍領域で評価し、最もエネルギーが小さくなる位置へ各代表ポイントを移動させることにより輪郭を補正していく。動的輪郭モデルによる補正の様子を図９に示す。
【００７０】
このとき、図１のフローの補正パラメータ入力（Ｓ６）で、パターン画像の画質（ノイズやムラの状態）に応じて式（２）や式（３）の重み付けのパラメータを変更することにより、パターンの輪郭の特徴を変化させることができる。例えば、画像にノイズが多く、輪郭追跡処理（Ｓ４）によって抽出した輪郭のガタツキが大きい場合には、内部エネルギーを算出する式（２）の重み付けパラメータをより大きくすることにより、ガタツキが少なく滑らかな輪郭に補正することができる。また、元のパターンに微小な突起や歪みがあり、それらを忠実に表した輪郭を得たい場合には、画像エネルギーを算出する式（３）の重み付けパラメータをより大きくすることで、元のパターン画像により近い輪郭に補正することが可能である。
【００７１】
ここでまた図１のフローに戻る。
【００７２】
次に輪郭データの変換処理（Ｓ７）を行う。これは、ウェハやフォトマスクのパターン画像（主にＳＥＭ画像）において、図１０のようにパターンの縁の部分が白く光っていて太さを持っている場合に対応するためのものである。
【００７３】
パターンの縁が太さを持っている場合には、その内側・外側・中心のいずれの部分を真の輪郭として抽出すれば良いか分からない。そこで、本発明では図１のエッジのサイド入力（Ｓ８）で利用者が内側・外側・中心のいずれかを選択できるようにし、輪郭データの変換処理（Ｓ７）によって所望の輪郭が抽出されるようにした。
【００７４】
なお、内側・外側という表現では直線パターンなどの場合に対応できないので、本発明においては太さを持った白い縁に対して、より暗く濃度が濃い方を暗部のエッジ、その反対側を明部のエッジ、両者の中心を中央のエッジと呼び、そのいずれかを選択することとする。また、暗部のエッジは明部のエッジに比べエッジデータが大きいことから、図１の（Ｓ６）までの処理によって、最初は暗部のエッジの輪郭データが抽出される。
【００７５】
図１１に輪郭データの変換処理のフローを、図１２にその説明図を示す。
【００７６】
最初に、図１１に示す輪郭データの変換処理のフロー図に沿って説明する。
（ａ）図１のＳ８で入力されたエッジの種類を確認（５０１）する。それが暗部のエッジである場合はそのまま終了し、それ以外（明部のエッジ、中央のエッジ）の場合に輪郭データの変換処理を行う。
（ｂ）まず、パターンの縁が太さを持っていて明部のエッジが存在するかを確かめるため、明部のエッジの有無確認（５０２）をする。これは、任意の階層の階層エッジデータを利用して、輪郭データの始点の近傍領域を調べ、あるしきい値以上のエッジデータの有無を確認することで行う。
（ｃ）もし、明部のエッジがみつからない場合は、エラー処理（５０３）として、暗部のエッジのみしか抽出できない旨のメッセージを出力する。明部のエッジが存在することが確認できた場合は、輪郭データの始点と次の点を結んだ基準ベクトルを作成する。
（ｄ）明部のエッジが基準ベクトルを右左のどちらに回転した方向に存在するのかを調べ、変換方向（＋ｏｒ  −）を算出（５０４）する。なお、右回転方向を＋とする。図１２の例では、明部のエッジは基準ベクトルを左回転させた方向にあるので、変換方向は−となる。
【００７７】
次に全ての輪郭データについて順に以下の処理を行う。
（ｅ）まず、一つ前（ｉ-１）と、一つ先（ｉ+１）の輪郭データを結ぶベクトルｄ（ｉ）を生成（５０６）する。
（ｆ）ベクトルｄ（ｉ）の法線ベクトルｎ（ｉ）をi番目の輪郭データを始点として生成する（５０７）。法線ベクトルｎ（ｉ）の向きは、ベクトルｄ（ｉ）を変換方向に回転させた方向、つまり明部のエッジが存在する方向とする。法線ベクトルｎ（ｉ）は各輪郭データを移動させる方向を設定するものである。
（ｇ）次に、法線ベクトルｎ（ｉ）の終点を見つけ、長さを算出（５０８）する。法線ベクトルｎ（ｉ）の終点は、法線ベクトルｎ（ｉ）を伸縮させて終点位置にある階層エッジデータが最大となる地点を探す。つまり、明部のエッジの位置を法線ベクトルｎ（ｉ）の終点とする。
（ｈ）ここで、抽出するエッジとして中央のエッジが選択されている場合は、法線ベクトルｎ（ｉ）を１／２にする（５１０）。これは、中央のエッジは暗部のエッジと明部のエッジの中間に位置していると考えられるからである。
（ｉ）全ての輪郭データについて法線ベクトルｎ（ｉ）を生成後、法線ベクトルｎ（ｉ）の平均長を算出（５１３）する。
（ｊ）そして最後に、全輪郭データを各法線ベクトルｎ（ｉ）により変換し（５１４）、明部のエッジ又は中央のエッジの輪郭データを生成する。このとき変換の方式として、輪郭データを各法線ベクトルｎ（ｉ）の終点位置へ移動させる方式と、各法線ベクトルｎ（ｉ）の方向に平均長だけ移動させる方式とがある。前者の場合は、太さを持った縁の幅が一定でない場合に有効であり、パターン画像に忠実な輪郭が得られるが、輪郭のノイズが多くなる可能性がある。後者の場合は、変換した結果の輪郭はノイズが少なく滑らかさを維持することができるが、太さを持った縁の幅が一定でない場合には、パターン画像とずれが生じる可能性がある。従って、どちらの方式を利用するかは、パターン画像の縁の状態や画質によって判断する必要がある。
【００７８】
再び図１のフローに戻る。
【００７９】
これまでの処理によって求められた輪郭データは離散値であるので、これを連続値になるように補間計算して輪郭線の生成（Ｓ９）を行う。補間方法としては、輪郭データの各ポイント間を単純に直線で結ぶ方法や、スプライン関数によって補間する方法などがある。
【００８０】
次に、選択領域内にある複数パターンを一括で輪郭抽出するため、まだパターンが残っていないかを確認する残りパターンの判定処理（Ｓ１０）を行う。
【００８１】
このフローを図１３に示す。
（ａ）まず、ある階層の縦横方向のエッジデータにおいて最大値と最小値の平均を計算して残りパターン判定しきい値を求める（６０１）。
（ｂ）次に、各階層の縦横方向のエッジデータについて輪郭線領域のデータを0にする（６０２）。輪郭線領域というのは、輪郭線にある一定の幅を持たせたもので、元のパターンの縁が太さを持っている場合を考慮し、輪郭線付近のデータを全て0にすることを目的としている。
（ｃ）そして、ある階層の縦横方向のエッジデータをそれぞれ一行毎に走査して、残りパターン判定しきい値以上のエッジデータが横方向もしくは縦方向に連続して存在するか確認する（６０３）。
【００８２】
ステップ（６０３）の結果、しきい値以上のデータが連続して存在する場合は、別のパターンがまだ存在するものと判定し、図１のフローの"パターンあり"へ進み、一連の処理を繰り返して別のパターンの輪郭抽出を行う。一方、存在しない場合は選択領域内には別のパターンはもう存在しないものと判定し、図１のフローの"パターンなし"へ進み、終了する。
【００８３】
【実施例】
ここで、本発明による輪郭抽出の実施例を示す。
【００８４】
図１７は濃淡ムラがあるパターン画像の例である。パターン画像の右側より左側の方が明るくなっていることが分かる。このようなパターン画像の場合、画像を2値化してから輪郭を抽出する従来の方法ではうまくいかない。
【００８５】
図１８の（ａ）はモード法によりしきい値設定、２値化して輪郭抽出したものである。この場合はしきい値が一つしか設定されないために、輪郭線が途中でくずれてしまっていることが分かる。また図１８の（ｂ）は画像を分割して、それぞれの領域で判別分析法によりしきい値を求め、2値化及び輪郭抽出したものである。この場合は、（ａ）のような輪郭線のくずれはないが、分割した各領域でパターン部分若しくは背景部分のみしかないところではノイズが抽出され、パターン輪郭のみの抽出はできていない。
【００８６】
そこで、本発明の請求項１に沿って輪郭抽出を実施する。
【００８７】
まず、パターンの領域を選択（Ｓ１）し、選択領域の濃淡データから階層エッジデータを作成する（Ｓ２）。次に輪郭追跡開始点を抽出して（Ｓ３）、そこから輪郭追跡処理（Ｓ４）を行う。輪郭追跡処理によって得られた輪郭データを図１９に示す。従来方法による結果と比べ、パターンの輪郭線のみが元画像通りに抽出できていることが分かる。
【００８８】
しかしながら、パターンの輪郭線にはガタガタしたノイズが含まれているため、次にこれを除去するための処理を行う。輪郭データから代表ポイントを抽出し、動的輪郭モデルによる輪郭データの補正処理（Ｓ５）を行う。その後、補正された輪郭データを直線又はスプライン曲線で繋いで輪郭線を生成（Ｓ９）する。生成した輪郭線を図２０に示す。この図から、元画像のパターンとほぼ一致し、かつノイズのない滑らかな輪郭線が得られていることが分かる。
【００８９】
濃淡ムラ画像の輪郭抽出について、本発明の実施例をもう一つ示す。
【００９０】
フォトマスクのＳＥＭ画像の場合、撮影条件が画質に大きく影響する。特に図２１に示すように、フォトマスクのガラス部分のチャージアップによってパターンの各部分ごとに濃淡ムラが発生した場合、従来の手法では輪郭線を抽出することは不可能であった。しかしながら、本発明の請求項１による輪郭抽出方法により、このようなパターン画像においても最適な輪郭抽出が可能となった。輪郭抽出の結果を図２２に示す。
【００９１】
次に、パターン画像のノイズやコントラスト不足などの原因で、抽出した輪郭線に多くのノイズが発生する場合において、動的輪郭モデルを利用した輪郭データの補正処理の際に、重み係数を調整して最適な輪郭線を抽出する例について述べる。
【００９２】
図２３に示すパターン画像は、パターン部と背景部のコントラストがあまり明瞭でなく、画像のノイズも大きい。このようなパターン画像について、輪郭データの抽出後、輪郭の滑らかさを調整する重み係数と画像との一致度を調整する重み係数が等しい補正パラメータを入力（Ｓ６）し、輪郭データ補正処理（Ｓ５）を行った結果を図２４に示す。図２４の輪郭線には微小なノイズが含まれていることが分かる。この微小ノイズは、パターン画像の画質が良くないために出現したもので、本来のパターンには含まれていないものと考えられる。このようなノイズは、輪郭線からパターンの特徴量を計測する際の弊害となる。
【００９３】
そこで補正パラメータを変更し、輪郭の滑らかさを調整する重み係数を大きく、画像との一致度を調整する重み係数を小さくして、先ほどと同様に輪郭データの補正処理（Ｓ５）を行った結果を図２５に示す。今回の輪郭線では先ほどの微小ノイズがきれいに無くなっている事が分かる。しかも、元のパターン画像の右側エッジ中央付近に見られる凹凸形状は、ノイズとして削除されずに残されていることが確認できる。この結果は、本手法がパターンそのものが持っている特徴を輪郭線として忠実に表現し、不要なノイズだけを削除する手法として非常に有効であることを示している。
【００９４】
次に、パターン画像の縁が白く光る太さを持っている場合に、その内側・外側・中央（本発明では暗部のエッジ・明部のエッジ・中央のエッジ）のいずれかのエッジを選択して抽出する例について述べる。
【００９５】
図２６は縁が太さを持っているパターン画像の例である。このようなパタ−ン画像において、太さを持つ縁の任意のエッジを輪郭線として抽出する。
【００９６】
本発明においてはパターン画像を輪郭抽出処理すると、まずコントラストが大きい方のエッジを先に抽出するため、図２６の場合は図１のＳ５までの処理で、暗部のエッジ（上側のエッジ）の輪郭が抽出される。従って、Ｓ８で選択入力したエッジが暗部のエッジの場合は、輪郭データの変換処理（Ｓ７）ではなにもしない。一方、明部のエッジもしくは中央のエッジの場合は輪郭データの変換処理を行い、各輪郭データの座標を明部のエッジ又は中央のエッジがある位置に移動させることで、各エッジに対応する輪郭線を生成する。
【００９７】
図２６のパターン画像において暗部のエッジ、明部のエッジ、中央のエッジの輪郭線をそれぞれ抽出した結果を図２７に示す。各輪郭線がそれぞれのエッジに合わせて正しく抽出されていることが分かる。
【００９８】
【発明の効果】
以上のように、本発明の輪郭抽出方法では、輪郭追跡処理によって抽出した輪郭データに対して動的輪郭モデルを利用した補正処理を施すことにより、ノイズや濃淡ムラがあるウェハパターン画像やフォトマスクパターン画像においても、元のパターン画像と一致する滑らかな輪郭線を抽出することができる。また、輪郭データの補正処理時に補正パラメータを調整することにより、パターン画像の画質が悪い場合でも画質に影響されることなく、パターンの特徴を忠実に表す輪郭線を抽出することが可能である。さらに、縁が太さを持つパターンにおいては、選択されたエッジに応じて輪郭データを変換処理することによって、任意のエッジの輪郭線を抽出することが可能である。
【図面の簡単な説明】
【図１】本発明の輪郭抽出の処理手順を表すフロー図である。
【図２】階層エッジデータの作成フロー図である。
【図３】階層エッジデータの計算方法図である。
【図４】追跡開始点の抽出処理フロー図である。
【図５】輪郭追跡処理方法の手順を表すフロー図である。
【図６】近傍データの方向に対応する数値を表す図である。
【図７】輪郭追跡処理において追跡方向と追跡距離から追跡範囲を定める模式図である。
【図８】輪郭データの補正処理についてのフロー図である。
【図９】動的輪郭モデルによる輪郭データの補正処理の様子を表す模式図である。
【図１０】パターンの縁の部分が白く光り、太さを持っている場合のパターン画像の例である。
【図１１】輪郭データの変換処理手順を表すフロー図である。
【図１２】輪郭データの変換処理方法についての説明図である。
【図１３】残りパターンの判定処理のフロー図である。
【図１４】パターン部と背景部が存在する画像のヒストグラムを表す模式図である。
【図１５】濃淡ムラがあるパターン画像と画像全体に対するしきい値処理結果の例である。
【図１６】濃淡ムラがあるパターン画像と画像を分割してしきい値処理した結果の例である。
【図１７】濃淡ムラがあるパターン画像の例である。
【図１８】従来の方法によって輪郭抽出処理した結果を表す図である。
【図１９】輪郭追跡処理の結果を表す図である。
【図２０】輪郭データの補正処理の結果を表す図である。
【図２１】チャージアップによる濃淡ムラがあるパターン画像の例である。
【図２２】チャージアップによる濃淡ムラがあるパターン画像を輪郭抽出した結果である。
【図２３】ノイズが大きくコントラストが小さいパターン画像の例である。
【図２４】輪郭データの補正処理において輪郭の滑らかさを調整する重み係数と画像との一致度を調整する重み係数を同じにした場合に抽出される輪郭線である。
【図２５】輪郭データの補正処理において輪郭の滑らかさを調整する重み係数を大きくし、画像との一致度を調整する重み係数を小さくした場合に抽出される輪郭線である。
【図２６】パターンの縁の部分が白く光り、太さを持っているパターン画像である。
【図２７】輪郭データの変換処理によって抽出された明部のエッジ、暗部のエッジ、中央のエッジの輪郭線である。
【図１】
0004085635.tif 000002
【図２】
0004085635.tif 000003
【図３】
0004085635.tif 000004
【図４】
0004085635.tif 000005
【図５】
0004085635.tif 000006
【図６】
0004085635.tif 000007
【図７】
0004085635.tif 000008
【図８】
0004085635.tif 000009
【図９】
0004085635.tif 000010
【図１０】
0004085635.tif 000011
【図１１】
0004085635.tif 000012
【図１２】
0004085635.tif 000013
【図１３】
0004085635.tif 000014
【図１４】
0004085635.tif 000015
【図１５】
0004085635.tif 000016
【図１６】
0004085635.tif 000017
【図１７】
0004085635.tif 000018
【図１８】
0004085635.tif 000019
【図１９】
0004085635.tif 000020
【図２０】
0004085635.tif 000021
【図２１】
0004085635.tif 000022
【図２２】
0004085635.tif 000023
【図２３】
0004085635.tif 000024
【図２４】
0004085635.tif 000025
【図２５】
0004085635.tif 000026
【図２６】
0004085635.tif 000027
【図２７】
0004085635.tif 000028