画像の正置からの回転角度検知装置および方法
【課題】
画像の正置位置からの回転角度を求める。できれば高速に、精度良く求めたい。
【解決手段】
画像の正置位置からの回転角度を求める。入力画像の横方向に0を詰めて拡張し、縦方向に1/8縮小した前処理画像について、各方向の線の程度を示す評価値を計算する。例えば、前処理画像の横方向に対する角度を少しづつ変えながら求めた評価値の変化から画像の回転角度を求めるために、各方向について平行線を引いてプロジェクションを取り、2乗和してその方向の評価値とする。評価値の最も高い方向が求める正置位置からの回転方向となる。各方向のプロジェクションは、各方向に引かれた平行線と横軸の座標線の交点を参照する。
画像の正置位置からの回転角度を求める。できれば高速に、精度良く求めたい。
【解決手段】
画像の正置位置からの回転角度を求める。入力画像の横方向に0を詰めて拡張し、縦方向に1/8縮小した前処理画像について、各方向の線の程度を示す評価値を計算する。例えば、前処理画像の横方向に対する角度を少しづつ変えながら求めた評価値の変化から画像の回転角度を求めるために、各方向について平行線を引いてプロジェクションを取り、2乗和してその方向の評価値とする。評価値の最も高い方向が求める正置位置からの回転方向となる。各方向のプロジェクションは、各方向に引かれた平行線と横軸の座標線の交点を参照する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理技術に関し、特に正置画像からの回転角度を検知する技術に関する。
【背景技術】
【0002】
従来から、画像の正置からの回転角度を検知する技術が知られている。
【0003】
例えば、下記の特許文献1では、スキャナ等から読み取った文書画像の正置からの回転角度(傾き)を自動的に検知して回転補正して正置画像を作る処理が開示されている。特許文献1では、文章画像の中から2つの部分領域を選択し、それぞれの部分領域内で射影したデータを作り、2つの射影データ間の相関から傾き角度を求める。その最、選択した部分領域の射影量から、文章が途切れているかどうかチェックして、文章が途切れていない領域を選んで評価する。
【0004】
また、下記の非特許文献1には、紙面を微小角度毎に回転させ、各回転角度毎にプロジェクションを取り、プロジェクション間の差の絶対値の最も大きなものを正置位置にあるものとして検知することが望まれる事が記載されている。しかし、非特許文献では、微小回転を何度も行うのは演算量が多いため、非現実的で、8*8の圧縮を行ってから粗い角度でおよその角度を求め、粗く求めた角度の回転補正を行った画像を作成した後、部分領域を複数の帯状領域に分割して、分割した領域について射影して、各分割領域の射影の位相(相関の大きくなる移動量)から傾き角度を求める。
【0005】
また、下記の非特許文献2では、文書画像をフーリエ変換し、ピーク位置から正置からの回転角度を検知する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特許4434802号
【非特許文献】
【0007】
【非特許文献1】著者:秋山照雄ほか、「書式指定情報によらない紙面構成要素抽出法」、電子通信学会論文誌’83/1 Vol.J66−D No.1, pp.111−118
【非特許文献2】著者:長谷雅彦ほか、「2次元フーリエ変換を用いた文書画像領域抽出法」、電子通信学会論文誌 ’84/9 Vol.J67−D No.9, pp.1044−1051
【発明の概要】
【発明が解決しようとする課題】
【0008】
上記従来技術では、文書画像を対象としていたが、半導体製造途中の回路パターンをSEM(Scanning Electron Microscope)で撮影した画像を対象とする場合、対象となる撮影画像は、文字画像と同様に扱えるホールが縦横に規則的に並んだ画像だけではない。縦横の配線が画像上の主な構成物で、文字画像のような小さな形態が規則的に並んだ部分が全くない画像も多く撮影される。このような画像では、上記従来技術では画像の特徴となる前提が異なるため対応できず、画像の正置位置からの回転角度を誤検出する。
【0009】
本発明の目的は、半導体製造途中のSEM画像を対象に、比較的高速に、画像の正置位置からの回転角度を精度良く検出する方法を提供することにある。
【課題を解決するための手段】
【0010】
(0)画像の座標軸、線の傾き角度の定義について
本発明の手段を記載する前に、画像やフーリエ変換した画像の座標系、角度の定義の仕方について説明する。座標系や角度の定義の仕方は各種があるが、ここでは、図11、12で示した定義とする。即ち、画像1104は、左上の点を原点1100、原点1100から右側をX軸1101、下側をY軸1102、とする左手系で定義する。ここで対象とする画像1104は、白黒画像であり、画像上の整数座標位置が画素となり、それぞれの画素に白黒の輝度値がある。画像1104がカラー画像の場合は、YUV変換のY画像など、白黒画像を作ることができるし、RGB画像から適当な演算で白黒画像を作成しても良い。ここでは、画像サイズは、N*Nとして例示する。画像の原点1100の座標を(0,0)とするので、X座標は0〜N−1、Y座標は0〜N−1までが画像1104の範囲となる。画像1104は、整数座標位置に画素があり、輝度値が定義されるが、実数値の座標位置でも、キュービックコンボリューションなど、適当な補間を用いて周囲の画素から補間して値を作り、輝度値を参照することができる。
【0011】
画像1104をフーリエ変換すると、フーリエ変換した画像1114が得られる。フーリエ変換した画像1114も、左上を原点1110とし、原点1110から右側をX軸1111、下側をY軸1112、とする左手系で定義する。同様に画像サイズはN*Nで、整数座標位置だけでなく、実数座標位置でも補間して画素値を参照できる。ただし、画像値はフーリエ変換した値なので、複素数の値を持つ。複素数の絶対値を取って、絶対値画像を作ることもある。
【0012】
フーリエ変換した画像は、0周波数の値を納めた位置、即ち周波数原点(0周波数)1120がある。周波数原点1120は、座標位置(N/2,N/2)とする。
【0013】
図12のように、画像1104にX軸方向の線、例えば線1201があると、フーリエ変換した画像1114では、周波数原点1120を通るY軸方向に値の大きな線状の形1211となる。また、画像1104で別のX軸方向の線1202があると、フーリエ変換した画像1114では、同様に、周波数原点1120を通るY軸方向に値の大きな線状の形1211となる。ただし、元の画像上での線の大きさや位置に応じ、フーリエ変換した後にできるY方向に向いた線状の形1211の値や位相は異なっている。画像1104に、X軸となす角度がθの線1203があると、フーリエ変換した画像では、周波数原点1120を通りY軸とのなす角度がθの方向に値の大きな線状の形1213が現れる。
【0014】
以上より、画像1104では、X軸の正の方向を角度0とし、それから半時計回りの回転方向を正に取り、角度を定義する。また、フールリエ変換した画像1114では、以上のように、画像1104とは90°異なる方向に線が出る性質があるので、周波数原点1120から画像の上方(Y軸1112では負の方向)を角度0とし、それから半時計回りの回転を正に取り、角度を定義する。
(1)本発明第1の手段
本発明の目的を達成するための、本発明の第1の手段は、以下に述べるフーリエ変換を利用した方法である。
【0015】
初めに、撮影画像のエッジを抽出する処理を行う。例えば、撮影画像から、撮影画像を平滑化した画像(例えば15*15画素の平均を取った画像)を引く処理を行う。(正確には、エッジのみ抽出した画像にはならないが、エッジ部分が強く見える画像になるため、ここでは、これも広い意味で、エッジを抽出する処理と呼ぶことにする。)
次に、前処理した画像をフーリエ変換する。フーリエ変換はバタフライ演算を用い、高速に演算する方法を用いることができる。なお、前処理で平均化した画像を引いたことにより、フーリエ変換した画像は、周波数原点(0周波数)近傍の値が小さくなり、その他の成分は残るため、画像の回転角度評価がしやすいものになっている。
【0016】
図13は、フーリエ変換した画像1114について、角度毎に線の程度を示す評価値を計算する幾何的な位置を示した図である。周波数原点1120から、半径N/2の同心円1300上の範囲を評価範囲と定める。周波数原点1120は(N/2, N/2)の位置にあるので、周波数原点1120から上側と左側は、距離N/2行った点が画像上の点としてあるが、右側と左側は、N/2−1迄行く点は画像上に参照点があるが、距離N/2行く点は画像の外側になり、一見参照点がないように見えるが、フーリエ変換の性質として、左右の端と上下の端はサイクリックに接続するので、例えば、(x, N)の点は、(x, 0)の点を参照することになる。
【0017】
ここで、フーリエ変換した画像の画素値は複素数であるが、その絶対値は、周波数原点1120について、原点対象であるので、評価値を求める計算は、上記同心円1300の片側の半円のみで行っても良い。例えば、図13のように、周波数原点1120から上方に行く線方向1301を0°の方向とし、−45°の方向1302から135°の方向1303を満たない角度迄を評価するようにすることができる。すなわち、1°間隔で評価値を計算する場合は、−45°から134°まで1°間隔で評価値を計算するようにする。このようにすると、周波数原点1120から距離N/2行った点を参照する場合、サイクリック接続を考えなくても値を参照でき、サイクリック接続の特例対策の処理を考えなくて済む分、プログラム作成の負担が少なくなる。
【0018】
評価値を出す場合は、参照点は、原点から1サンプリング点毎に参照することにする。例えば、0°の評価値を出す場合は、(N/2, N/2−1),(N/2, N/2−2),……,(N/2, 0)の点を参照する。評価値は、各点の値(複素数値)の絶対値の2乗和とする。その他、評価値は、各点の値(複素数値)の絶対値の和などにすることもできる。
【0019】
各方向の評価値は、フーリエ変換する前の画像で各方向に現れる線の多さを示しているので、求めた評価値データの中で最大の値を持つものの方向が、フーリエ変換する前の画像で最も多く線のある方向である。正置画像の性質として、横の線(水平方向の線)が最も多い場合は、ここで求めた評価値データの中で最大の値を持つものの方向(角度)が、画像の正置位置からの回転角度になっている。画像の正置位置の性質として、横の線(水平方向の線)または縦の線(垂直方向の線)のうち、少なくともどちらか一方の線が最も多いという性質を持つ場合は、ここで求めた評価値データの中で最大の値を持つものの方向(角度)が、画像の正置位置からの回転角度または、正置位置から90°(−90°)回転した角度になっている。
【0020】
なお、+−45°を超えるような回転はないとする場合は、評価データが最大値となる方向(角度)を検知し、その角度が、−45°から44°迄はその角度を回転検知角度とし、45°から134°までの時は90°引いた値を検知角度とする。
また、各方向の評価値は、−45°と135°が同じ評価値としてサイクリックに繋がっているとして、所定の角度の幅を持った平滑化フィルタをかけて平均化した評価値を、新たに評価値と考え、上記のように最大値となる方向を求める正置画像からの回転角度とすることもできる。
【0021】
なお、以上の手段では、評価する画像が、線が途中で大きく途切れた場合は、角度検知の誤差が大きくなる場合があり、検出精度が不安定になるという問題が見つかった。そこで、前処理で線が大きく途切れているか検知して、片側の線を含む領域のみ取りだした処理画像を新たに評価画像とすることで精度良く回転角度の検知をすることもできるが、一般の任意の形態に対して、線の大きく途切れた部分を安定に領域毎に分けて抽出する処理は難しく、本発明第1の手段は、このような特殊な形態を持つ画像は処理の対象外とする方が好ましい。
(2)本発明第2の手段
本発明第2の手段では、本発明第1の手段で問題となる線が大きく途切れた画像の場合も角度検知の誤差が大きくならない特徴がある。
【0022】
初めに、エッジ画像を作成する。(本発明第1の手段と同様。)
次に、エッジ画像に平行線を引き、平行線上の点を参照点としてその平行線の方向の評価値を計算する。平行線の方向を変え、所定の角度の評価値を全て計算する。評価値は、例えば、エッジ画像の平行線上に参照点を取り、参照点の輝度値の和を各線で求め(プロジェクションを取る)、各線の値の2乗和を評価値とすることができる。平行線を引く間隔は、横方向に1画素分の間隔が開くように取り、角度によって平行線の距離(平行線に垂直な距離)が異なるように引く。ここでは、これを疑似ラドン変換と呼ぶことにする。疑似ラドン変換では、平行線の距離(平行線に垂直な距離)が異なるが、所謂一般のラドン変換では、平行線の距離は角度によらず一定であり、ここで用いる疑似ラドン変換とは平行線の引き方が異なる。
【0023】
疑似ラドン変換では、エッジ画像に平行線を引いて、平行線上に参照点を取り、参照点の輝度値の和を各線で求める(プロジェクションを取る)場合、参照点は、各線と横軸の線の交点に取る。横軸方向に見ると、同じ横軸なら、交点の座標の横軸の値は、小数点以下の端数が皆同じものになっており、補間して参照点の値を読む場合、同じ横軸の参照点では皆同じ割合で近傍画素値からの寄与がある。即ち、近傍画素の値に掛ける補間のための係数は、横軸で皆同じである。従って、横軸方向に計算を進めると、補間のための係数計算は同じ横軸上は1度行うだけで済み、同じ横軸上なら皆同じ係数を使える。しかも、参照点の縦軸方向の座標は、整数値となっており、縦方向に補間のため値を参照することも必要がない。そのため、参照点の補間は高速に行うことができる。なお、以上の横軸と縦軸の役割を変えた場合も同様の計算ができ、これも疑似ラドン変換として同様に用いることができる。
【0024】
以上のようにして、高速に、所定の角度の評価値を全て計算し、その中から最大値を持つ角度を正置画像からの回転角度とする。また、各角度の評価値は、所定の角度の幅を持った平滑化フィルタをかけて平均化した評価値を、新たな評価値として、その中の最大値を持つ角度を正置画像からの回転角度とすることもできる。
【0025】
本発明第2の方法では、評価値を求める所定の角度は等間隔である必要はなく、中心部の横軸(Y=N/2の線)上の座標点と、画像の上の線(Y=0の線)上の座標点とを結ぶ角度とし、上の線の座標点が1サンプリング点づつずれた点を通るような離散角度を所定の角度とすることができる。
【0026】
以上の本発明第2の手段では、浅い角度、例えば、+−10°程度の角度の評価は高速に精度良く行うことができる。しかしながら、+−30°など、大きな角度になると、画像の端の部分でデータを参照できない点が増えるので、精度が落ちる場合があり、大きな角度の評価には向かない。
(3)本発明第3の手段
本発明第3の手段は、本発明第1の手段と本発明第2の手段を結合する。はじめに、本発明第1の手段を使い、粗く回転角度を検知する。次に、粗く検知した回転角度分、画像を逆回転して、粗い回転補正画像を作成する。そして、粗い回転補正画像について、本発明第2の手段を用いて、上記第2の手段に記載した浅い角度範囲で、精度良く回転角度を求める。最初に求めた粗い検知角度と、次に求めた精度の良い回転角度を加算すると、元画像の正置位置からの回転角度が求まる。
【発明の効果】
【0027】
本発明によれば、比較的高速に、画像の正置位置からの回転角度を精度良く検出することができる。
【図面の簡単な説明】
【0028】
【図1】実施例1〜3における構成を示す図である。
【図2】実施例1における手順全体を示すフロー図である。
【図3】実施例1における処理の途中経過例を示す図である。
【図4】実施例1における画像と評価データの例を示す図である。
【図5】実施例2における手順全体を示すフロー図である。
【図6】実施例2における処理501の手順を示すフロー図である。
【図7】実施例2における処理の途中画像の例を示す図である。
【図8】実施例2における処理603の入出力画像のサイズ例を示す図である。
【図9】実施例2における処理502の様子を示す模式図である。
【図10】実施例3における手順全体を示すフロー図である。
【図11】画像およびフーリエ変換した画像の座標の取り方を示す図である。
【図12】画像とフーリエ変換した画像の線と角度の関係を示す図である。
【図13】フーリエ変換した画像での角度と評価範囲を示す図である。
【図14】実施例2における参照点の様子の例を示す図である。
【発明を実施するための形態】
【0029】
本発明は、画像の正置位置からの回転角度を検出する機能を実現する装置における画像処理方法に特徴がある。
【0030】
従って、この画像処理方法を実施するための形態は、一般に良く知られているように、様々な形態を取ることができる。たとえば、以下の本発明の画像処理の処理手順を示すことで、ハードウエアの一般知識を持つものであれば、之を実施する機能を持つハードウエアを作成することもできるし、ソフトウエアの一般知識を持つものであれば、本発明の画像処理手順を実現するソフトウエアを作成し、之を市販の汎用計算機に実行させる形態も取ることができる。また、良く知られているように、汎用計算機を用いる場合は、ソフトウエアを記憶した記憶媒体は、計算機を特定せず他の計算機に挿入して実行させることが可能なので、本発明全体を施行するための重要な普遍的要素となり、組み込み先が任意の部品となる本発明の一つの実施形態ともなる。ソフトウエアを記憶した記憶媒体には、CD、DVD、メモリ−カード、HD、インターネットで接続・ダウンロード可能な外部記憶装置などがある。
(1)実施例1
(1−1)構成
図1に、本発明の実施例1の構成を示す。
【0031】
製造途中の半導体を検査する走査型電子顕微鏡には、ステージ101があり、レジストの乗った製造途中の半導体が検査対象102となり、撮影視野に運搬され、電子銃103で電子が打ち出され、検査対象102の所定領域を走査して、出てきた2次電子を2次電子検出部104で捉え、画像化部105で撮影画像の画像データとなる。
【0032】
画像化部105は、撮影画像を得るため、ステージ101、電子銃103、2次電子検出部104を動作させる制御信号を送り、2次電子検出部104で検出される信号を順序良く適切に位置づけ、画像データにする。
【0033】
計算装置106は、画像化部105で作られた撮影画像の画像データを受け取り、所定の画像処理をして、結果を表示装置107に表示させる。計算装置106は、走査型電子顕微鏡に内蔵しても良いし、外部に出しても良い。
【0034】
本発明は、計算装置106が画像処理する画像処理の方法に関し、特に、画像処理の中でも撮影した画像の正置位置からの回転角度を検知する処理方法に特徴がある。
(1−2)処理手順概要
図2に、本発明の実施例1における、撮影画像の正置位置からの回転角度を検知する処理方法の全体のフローを示す。この処理は、計算装置106が行う。以下、図中の番号をステップ番号として説明する。
【0035】
ステップ200: 製造途中の半導体を撮影した画像を入力する。
【0036】
ステップ201: 撮影画像の前処理として、エッジを検出した画像を作成する。エッジを検出する処理は各種ある。例えば、原画像(撮影画像)を所定のサイズで平均した画像を作り、原画像から平均画像を引く処理でエッジ検出を行うことができる。平均のサイズ(平均をとる画像の範囲)を15*15画素とする場合は、画像の着目点を中心に15*15画素の平均値を平均画像の画素値とする処理を画像上の各点で行う。
【0037】
ステップ202: 前処理した画像をフーリエ変換する。フーリエ変換は、FFTと呼ばれる高速計算方法が良く知られている。
【0038】
ステップ203: フーリエ変換した画像から、原画像の各回転角度に対応した線の程度を示す評価値を計算する。例えば図13のように、−45°から134°まで1°間隔で180個の評価値からなる評価値データを求める。評価値の具体の計算方法は次の節で述べる。
【0039】
ステップ204: 各回転角度の評価値データの中で評価値が最大となる回転角度を求める。その角度を正置位置からの回転角度とする。なお、各回転角度の評価値データを所定の角度の幅を持った平滑化フィルタをかけて平均化して、フィルタした評価値データを作り、フィルタした評価値データが最大となる回転角度を求め、その角度を正置位置からの回転角度とすることもできる。
(1−3)ステップ203の処理の具体例
直線のある画像をフーリエ変換すると、元の直線と90°角度が異なるが、フーリエ変換後の画像にも、上記で説明したように、原点(0周波数)を中心とした直線上に値が集中する性質がある。また、フーリエ変換した画像の画素値(複素数)の絶対値は、原点対称である性質を持っているので、原点から片方の外側のデータのみ参照して評価値を作ることができる。例えば、角度θの評価値 V1(θ)を計算する場合、以下の数1で計算することができる。
【0040】
【数1】
【0041】
ただし、G(x, y)は、画素の座標(x, y)におけるフーリエ変換した後の画像の値を意味し、**2は、2乗を意味するが、フーリエ変換した後の画像の値は複素数であるので、**2は、複素数の絶対値を取った2乗を意味する。rは原点からの距離である。画像G(x, y)の画像サイズをN*Nとすると、Σは、r=1からr=N/2迄加算するものとする。
【0042】
以上より、図13を参考にすると、数1は、フーリエ変換した画像の周波数原点1120から、図13で定義したθ方向に1画素づつ行った点を参照し、2乗和を作ることを意味する。
(1−4)ステップ204のフィルタについて
−45°から134°まで1°づつ評価値を取った評価値データにフィルタをかける場合は、−45°と135°の評価値が同一なので、134°の次の評価値が−45°に戻るサイクリック接続をして所定の幅を持った平滑化フィルタをかける。即ち、所定の角度の幅を持って評価値は平滑化される。フィルタサイズは、+−3°など、所定の幅を持つ。フィルタ形状は、単純平均やガウス型の平均、中心を頂点とする三角形型のフィルタなど、評価対象に合わせて、各種のフィルタを用いることができる。
(1−5)処理途中の様子の例
図3に実施例1における処理の途中経過の例を示した。
【0043】
撮影画像の例301は、画像中に横方向に長い形態が映った画像とする。上記ステップ201の処理をすると、前処理した画像例302となる。前処理した画像例302は、エッジ検出をした画像となっており、横の線が大きく、縦の線が小さい。ステップ202の処理を行うと、フーリエ変換した画像例303ができる。フーリエ変換した画像例303では、原点(0周波数)を画像中心に取っている。この例の場合、フーリエ変換前の画像では横方向の線が大きいので、フーリエ変換後の画像では、90°異なる縦の線上の値が大きくなる性質がある。ステップ203の処理をすると、評価値データの例304が得られる。この場合は、0°(元画像では横方向)の評価値が最も高く、正置位置からの回転角度は0°であることが分かる。
(1−6)その他1
以上では、評価値は、数1で計算したが、他にも評価値の計算方法はある。例えば、別の評価値V2(θ)を以下の数2で計算することもできる。
【0044】
【数2】
【0045】
ただし、abs() は、関数の中の値(複素数)の絶対値を取ることを意味し、Σは、数1と同様に、r=1からr=N/2迄加算することを意味する。
【0046】
以上より、数2は、フーリエ変換した画像の原点からθ+90°方向に1画素づつ行った点の値の2乗和を作ることを意味する。
(1−7)その他2
以上では、−45°から134°迄を1°づつ評価する方法を示したが、その他にも、90°ずれた評価値も一緒に評価することもでき、その場合、−45°から44°迄を1°づつ評価した評価値V3(θ)やV4(θ)を以下の数3、数4によって求めることもできる。
【0047】
【数3】
【0048】
【数4】
【0049】
(1−8)その他3
以上では、1°おきに−45°から134°までの評価データを取ったが、0.1°おきに−45°から134.9°までの評価データを取ることもできる。また、0.1°間隔で+−20°の評価データを取るなど、評価データの角度の間隔、範囲を目的に応じて変えることができる。
(1−9)その他4
以上では、画像の正置位置からの回転角度を評価値データの中で評価値の最も大きな角度としたが、画像によっては、評価値の最も大きな方向が正置位置から所定の角度αだけずれた場合もある。このような場合は、評価値の最も高くなる角度から画像固有に決まる所定角度αを引いた角度が、画像の正置位置からの回転角度となる。
【0050】
また、+−45°を超えるような回転はなく、これを超えた場合は90°ずれているとする場合は、45°以上135°未満までは90°引いた値を検知角度とする。
【0051】
その他、90°ずれた角度の評価値どうし加算して新たな評価値を作ることもできる。例えば、45°以上135°未満までの評価値は、90°引いた角度の評価値と加算した評価値を作り、この新たな評価データから角度検知することもできる。
(1−10)誤差の大きくなる場合
本発明の実施例1では、処理対象となる画像の中に映っている直線が大きく途切れている場合に角度検出誤差が大きくなる場合があるという欠点がある。図4にその例を示す。中央付近で大きく途切れた多数の平行線からなる画像401の場合、実施例1の評価では、画像401の評価値データ404のように、本来は最も大きな値となることが期待される、θ0で記述した正置位置の角度405付近が凹み、左右2つにピークが分かれる場合がある。画像の正置位置からの回転角度が僅かにずれるだけで、評価データのピークの形状が異なり、2つに分れたピークの大きさの差も異なって来て、フィルタして平滑化しても、検知する角度が不安定になり、場合によっては誤差が1°を超える場合もある。
【0052】
ここで、上部の平行線の部分のみ抽出した画像411を作ると、評価値データは、上部抽出画像の評価値データ414のようになる。この場合、角度検知すると、正置位置からの誤差は少ない。また、下部の平行線の部分のみ抽出した画像421を作ると、評価値データは、下部抽出画像の評価値データ424のようになり、角度検知すると、正置位置からの誤差は小さくなる。
【0053】
以上より、上部と下部の平行線をそれぞれ分離して評価すると、検知する角度の誤差が小さくなり、上部と下部の双方を含む場合には、検知する角度の誤差が大きい場合もある。以上のように、画像を加算しても、評価値はそれぞれの画像の評価値を加算したものとならない。之は、フーリエ変換後の値が複素数で、評価値を得る際に絶対値を取って評価するためである。
【0054】
以上のように、処理対象となる画像の中に途中で大きく途切れた線がある場合は、片側の線の領域のみ抽出する処理を行った画像を作って、実施例1の処理を行うと、角度検出誤差の少ない画像が得られるという特徴がある。ステップ201では、前処理として、このように、大きく線が途切れた部分があるかどうかをチェックして、線が途切れた部分がある場合、片側の線のみ評価するようにすることもできる。
(2)実施例2
(2−1)実施例1と異なる部分
本発明の実施例2の構成は、本発明の実施例1と同じである。本発明の実施例2の手順は、本発明の実施例1と異なる部分を持つ。特に、ステップ502を持つことが本発明第2の実施例の大きな特徴である。
(2−2)処理手順概要
図5は、本発明の実施例2における、処理方法の全体のフローを示したものである。この処理は、計算装置106が行う。以下、図中の番号をステップ番号として説明する。
【0055】
ステップ200: 製造途中の半導体を撮影した画像を入力する。
【0056】
ステップ501: 撮影画像を入力しとして前処理を行う。前処理の詳細は次節で述べる。
【0057】
ステップ502: 前処理した画像について、所定の回転角度に対応した評価値を、疑似ラドン変換に基づいてそれぞれ計算し、評価値データを作る。所定の回転角度は、画像サイズに応じて決まる比較的浅い角度である。例えば、+−10°程度の範囲を画像サイズに応じた非線形な離散角度毎に設定される角度について、それぞれ疑似ラドン変換に基づいて評価値を求め、評価値データを作る。具体の計算方法は(2−4)節で述べる。
【0058】
ステップ503: 各回転角度の評価値データの中で評価値が最大となる回転角度を求める。その角度を正置位置からの回転角度とする。
(2−3)ステップ502の処理の具体
ステップ501の処理手順を、図6で示す。以下、図6の番号をステップ番号として、ステップ501の手順を分割して説明する。
【0059】
ステップ601: エッジの抽出処理を行う。エッジの抽出処理は、実施例1と同様である。
【0060】
ステップ602: 横方向(0°)を中心に、浅い角度の評価値データを求める場合は、画像を−90°または、90°回転する処理を行う。縦方向(90°)を中心に浅い角度の評価値を求める場合は回転処理を行わない。角度θ1を中心に浅い角度の回転を行う場合は、−θ1−90°、または −θ1+90°回転処理を行い、元の画像で角度θ1の方向が回転後に縦方向になるようにする。
【0061】
ステップ603: 図8のように画像803を、右横にa、左横にbライン追加拡張し、縦方向に画像サイズを1/8に縮小した画像804を作成する処理を行う。b=a+1とする。処理前の画像803をI1(x, y*8+d)、処理後の画像804をI2(x+a,y)とすると、この処理は、以下の数5で表される。
【0062】
【数5】
【0063】
ただし、Σは、d=0からd=7迄加算することを意味する。(x, y)は、処理後の画像のマトリックス上の点の座標位置を示す。なお、I1のy方向(縦方向)のマトリックス数Nが8で割り切れない場合は、最後の方のデータがないので、適当に端の特例処理をする。例えば、最後の端の部分を無視してマトリクスを小さくしても良いし、最後の端の外側部分にデータがない場合にその部分を最後尾と同じデータがあると仮定してあたかも8で割り切れるマトリクス数であるかの扱いにしても良い。
【0064】
図8に、処理前のマトリクスサイズをN*N、この処理後のマトリクスサイズが(N+a+b)*(N/8)である場合について画像例を示している。処理前の画像803は、処理後の画像804の所定の場所に縦方向に1/8に平均縮小され、中央部のマトリクス数がN*(N/8)の部分に代入される。なお、処理後の画像の左側aライン、右側bラインが横方向に増えるが、データ値は0とする。
(2−4)ステップ502
図9に、疑似ラドン変換の様子を示す。前処理によりできた画像804は、左方向にaライン、右方向にbライン拡張された画像である。元の画像は、上述のように、縦方向に1/8縮小され、位置(a, 0)を左上の点とし、位置(a+N−1, N/8−1)を左下の点にして格納されている。
【0065】
図9では、疑似ラドン変換する際の射影方向の線(平行線となる)も図示している。各平行線は、Y=N/16の時に、X=aからX=a+N−1迄の整数座標上の点を必ず通るようにする。また、各平行線は、Y=0の時の横座標Xが整数値となる点を通るように引く。例えば、平行線を示す図901、902、903のように平行性が引かれる。
【0066】
平行線の一番左の線におけるY=0の時のX座標(xLとする)が平行線の方向を表す一つの特徴になる。ここで、c=a−xLと定義して、xLの代わりにcで方向を表すことにする。例えば、平行線を示す図901の場合、方向c=a−1、平行線を示す図902の場合、方向c=a−2、平行線を示す図903の場合、方向c=1−aである。
【0067】
平行線は、方向cによらず、Y=N/16の時は、必ずX=aからX=a+N−1の点を通るように引いたので、Y=N/16の直線上にあるXの値(X=fとする)が、多数の平行線の中から個々の1本の線を区別する特徴となる。g=f−aとすると、gは0からN−1の整数値となり、gを個々の平行線を区別する番号とする。即ち平行線は、左から右に向かい、0番、1番、…N−1番と順番づけされる。
【0068】
方向cで、順番gの線について射影する場合、線上でYが整数の時の値を全て加算する。即ち、以下の数6の式に基づいて、方向cで順番gの線の射影P(c, g)を計算する。
【0069】
【数6】
【0070】
ただし、Σは、y=0からy=(N/8)−1迄の加算を意味する。
【0071】
I2(a−c*((N/16)−y)/(N/16)+g, y)など、参照点は、Y座標は整数値であるが、x座標は、実数値で、一般に整数でないので、画像の画素としての値はなく、周囲の画素から補間して求めることになる。補間の仕方は各種あるが、ここでは、キュービックコンボリューションで補間する場合を、以下に図14を用いて説明する。
【0072】
図14は、方向c、順番g=0の線1401と縮小画像804(I2とする)の位置関係が分かるように図示したものである。線1401とY=yの線の交点周辺1402を、交点周辺を拡大図1403に拡大表示した。線1401と線Y=yの交点(x, y)のX座標xは、実数で、一般に小数を持つ。x=i+αとし、iは整数で、αは0以上1未満の小数とする。この時、交点周辺の拡大図1403のように、交点I2(x, y)は、Y=yの線上の近傍に、縮小画像804(I2)の画素として、I2(i−1, y)、I2(i, y)、I2(i+1, y)、I2(i+2, y)などを持つ。キュービックコンボリューションは、この4点を用いて、I2(x,y)を以下の数7の式に基づいて補間する。
【0073】
【数7】
【0074】
ただし、iは整数、αは0以上1未満の実数(小数)である。I2は縮小画像804で、関数 h() は、以下の数8、数9で計算される補間の係数である。
【0075】
【数8】
【0076】
【数9】
【0077】
以上、方向c、順番g=0の線1401と線Y=yの交点(x, y)について、I2(x, y)=I2(i+α, y)の補間計算方法について述べた。線1401の方向はc、順番g=0であったので、順番がgの場合の線と線Y=yの交点は、(x+g, y)であり、I2(x+g, y)=I2(i+α+g, y)の参照は、上記数7の式における各項のX座標の値にgを加えた式で参照する。ここで重要な性質は、gは整数なので、同じ方向cであれば、線の順番gが変わっても、小数部αは変わらないので、同じY座標を持つ交点を参照するようにしたら、同じ補間の係数hを持つことである。そのため、各平行線の各線の射影P(c, g)を計算する場合、g方向に計算して行く(同じY=yの線上の交点を順番に計算して行く)と、補間のための小数αと係数hの計算が、同じY=yの線上では1回で済み、高速に計算できる。
【0078】
以上のようにして、方向cと順番gについて、全ての範囲(−a+1<=c<=a−1 および 0<=g<=N−1の各整数)で射影P(c, g)を計算する。
【0079】
ステップ602の前処理で、−θ1−90°または−θ1+90°の回転をしていた場合、縮小画像804の上下方向は、元画像のθ1方向を向いていることになる。即ち、射影画像の方向c=0は、元画像では角度θ1の方向を意味する。射影画像の方向cの場合は、元画像では角度θ2の方向であるとすると、θ2とcの関係は、以下の数10で表すことができる。
【0080】
【数10】
【0081】
方向cは、cの値が1−aからa−1迄の整数値を取るので、対応する元画像での角度θ2(c)は、非等間隔の離散角度となる。θ2(c)の評価する範囲はaの値で決まり、arcsin(c/(N/2))が例えば、10°程度迄となるようにaの値を調整することができる。例えば、N=256の場合、a=23でarcsin(c/(N/2))の値は、約9.9°となる。
【0082】
N=256の場合、arcsin(1/128)≒0.448°、arcsin(2/128)≒0.895°、………、arcsin(21/128)≒9.44、arcsin(22/128)≒9.90、と約0.5°程度の間隔で方向毎射影を取ることができる。
【0083】
方向cの時のプロジェクションデータP(c,g)を数6〜数9で求めると、この時の評価値V5(θ(c))は、以下の数11で求めることができる。
【0084】
【数11】
【0085】
ただし、Σは、gが0からN−1までについての和を取ることを意味する。
(2−5)処理途中の様子の例
図7に実施例2における処理の途中経過の例を示した。
【0086】
撮影画像の例301は、上記実施例1における処理の途中経過を示した図3と同じ画像とする。撮影画像の例301に上記ステップ601の処理をすると、上記ステップ601、即ちステップ201の前処理(エッジ抽出処理)をした画像例302となる。この画像をステップ602で回転処理すると、回転処理まで加えた前処理途中の画像例703になる。図7の場合、横方向の画像を縦方向の画像にするように、時計方向に90°回転している。更にステップ603の処理をすると、横方向には拡張し縦方向には縮小した最終的な前処理後の画像例704が作られる。更に、ステップ502の処理をすると、評価値データの例705が得られる。
【0087】
評価値データの例705は、+−10°程度の浅い角度範囲の評価値データとなる。この場合、0°(元画像では横方向)の評価値が最も高く、正置位置からの回転角度は0°であることが分かる。
(2−6)その他1
以上では、評価値は、数11で計算したが、他にも評価値の計算方法はある。例えば、別の評価値V6(θ(c))を以下の数12で計算することもできる。
【0088】
【数12】
【0089】
ただし、abs() は、関数の中の値(複素数)の絶対値を取ることを意味し、
Σは、数11と同様に、xが0からN−1までについての和を取ることを意味する。
【0090】
なお、数11や数12は、評価値として線の程度を計算でき、長い線があった時の全体のウエートをどうするかといった程度の差しかなく、方向によって、線のある程度(線の存在の程度)が大きく異なる場合は、どちらも大差ない角度検出のできる評価値となっている。その他にも、線のある程度を反映する量であれば、評価値として採用することができる。
(2−7)その他2
以上では、ステップ602で角度θ1を中心に浅い角度の回転を行う場合は、θ1−90°、またはθ1+90°回転処理を行ったが、この時の評価値に、更に、90°回転した時の評価値を加えて、新たに之を評価値とすることもできる。
【0091】
また、更に90°回転した時の評価値は、実際に90°回転せず、ステップ603の処理を、縦方向に拡張、横方向に1/8縮小するように変更し、射影する方向を90°変え、横方向に射影するようにすることもできる。
(2−8)その他3
以上では、ステップ503で、各回転角度の評価値データの中で評価値が最大となる回転角度を求めたが、各回転角度の評価値データをフィルタして新たにフィルタした評価値データを作り、フィルタした評価値データが最大となる回転角度を求め、その角度を正置位置からの回転角度とすることもできる。
【0092】
評価データは浅い角度なので、実施例1の時のようなサイクリック接続はできない。
(2−9)その他4
以上では、ステップ503で元画像をθ1回転したが、角度評価を+−10°程度にする場合、更に20°回転した画像から、元の角度に換算して10°から30°程度までの評価データを作り、その他、逆に−20°回転した画像から元の角度に換算して−10°から−30°程度までの評価データを作り、これ等の評価データを繋げて、+−30°程度の評価データを作ることができる。
【0093】
その他、評価する浅い角度を+−10°程度としたが、+−15程度とし、更に回転する角度を+−30°とし、全体で+−45°の評価データを作ることもできる。
(2−10)その他5
以上のステップ603では、縮小処理を1/8縮小としたが、1/4縮小や1/2縮小、場合によっては、そのまま等倍とするなど、評価する角度範囲や入力画像の性質に応じ、縮小率を変えることもできる。
【0094】
また、ステップ603では、横方向の拡張をして拡張部のデータ値を0としたが、a=0、b=0として全く拡張を行わず、画像領域を超えた部分は、プロジェクションに加えないようにすることもできる。
(2−11)特徴
以上の実施例2の処理をすると、実施例1で問題となった線が途中で大きく途切れた場合についても、角度検出誤差が大きくならなかった。
【0095】
ただし、角度の検知範囲は+−10°程度と狭く、大きな角度範囲を検知する場合は、画像の回転をして角度検知し直す必要がある。大きな角度範囲を検知する場合は、上記実施例1に比べ、演算時間が長くなるという欠点もある。
【0096】
なお、ステップ503の処理は、疑似ラドン変換と呼ぶことにがしたが、プロジェクションを取る平行線の距離が平行線の引かれる角度を決めるパラメータcに依存していること、および、プロジェクションを取る平行線と横軸の交点をプロジェクションを取る場合の参照点としたこと、従って、プロジェクション方向の参照点の間隔がcに依存することが特徴となっている。広く知られているラドン変換では、平行線の距離は角度によらず一定で、参照点も、平行線と垂直に交わる格子状の点に取り、プロジェクション方向の間隔も一定となる。そのため、通常のラドン変換では、バイキュービックによる補間は、補間点近傍の16点を参照し、16個の係数も補間点毎に計算するため、時間がかかる。本発明の疑似ラドン変換では、補間点近傍の4点の参照と横軸方向は皆同じ係数を参照することにより、係数計算を大半は省くことができることにより、演算時間は良く知られたラドン変換よりも早いという利点がある。
(3)実施例3
(3−1)実施例1、2と異なる部分
本発明の実施例3の構成は、本発明の実施例1と同じである。本発明の実施例3の手順は、本発明の実施例1と実施例2を組み合わせたものである。
(3−2)処理手順
図10は、本発明の実施例3における、処理方法の全体のフローを示したものである。この処理は、計算装置106が行う。以下、図中の番号をステップ番号として説明する。
【0097】
ステップ200: 製造途中の半導体を撮影した画像を入力する。
【0098】
ステップ1001: 撮影画像の縦と横を1/4縮小する。入力画像の4*4画素の平均値が出力画像の1画素の値となる。
【0099】
ステップ1002: 1/4縮小画像を入力画像として、上記実施例1の方法で正置位置の角度を検出する。すなわち、1/4縮小画像を実施例1の前処理を行い、前処理した画像についてフーリエ変換し、フーリエ変換した画像から、1°間隔に0°から179°迄の評価値を求めて評価値データを作り、評価値データが最大値となるような角度を求める。
【0100】
ステップ1003: ステップ1002で求めた角度が、上下、または左右の所定方向になるよう、撮影画像、または撮影画像を前処理した画像を回転し、回転補正画像を作成する。
【0101】
ステップ1004: ステップ1003で作成した回転補正画像を入力として、上記実施例2の方法で正置位置の角度を検出する。ただし、回転操作は既にできているので、上記実施例のステップ602の回転は回転角0°として行わない。すなわち、ステップ601のエッジ抽出を行った後、ステップ602は飛ばして、ステップ603に進み、実施例2の前処理した画像を作成する。そして、ステップ502の処理を行い、+−10°程度の小さな角度範囲で評価値データを作り、ステップ503の角度検知を行う。
【0102】
元の画像から見た画像の正置位置の角度は、ステップ1002で求めた検知角度とステップ1004で求めた検知角度から求める。
(3−3)検知角度について
ステップ1002が第1の角度検出手段であり、ステップ1003が、第1の角度検出手段で検出した角度に基づいた画像の回転補正手段、ステップ1004が第2の角度検出手段になっている。
【0103】
ステップ1002で求めた検出角度が上下方向になるようにステップ1003で画像を回転する場合は、ステップ1004では、上下方向を中心に狭い角度の検知を行う。また、ステップ1002で求めた検出角度が上下方向になるようにステップ1003で画像を回転する場合は、ステップ1004では、上下方向を中心に狭い角度の検知を行う。
【0104】
この時、画像の正置位置からの回転角度は、ステップ1002で求めた検出角度が上下方向になるようにステップ1003で画像を回転する場合は、ステップ1002で求めた検知角度に、ステップ1004で求めた検知角度を加算した角度から90°引いた角度になる。また、画像の正置位置からの回転角度は、ステップ1002で求めた検出角度が上下方向になるようにステップ1003で画像を回転する場合は、ステップ1002で求めた検知角度に、ステップ1004で求めた検知角度を加算した角度になる。
【0105】
また、+−45°を超えるような回転はないとする場合、以上の検知角度を90°の整数倍掛けた角度を足すか引くかして、+−45°の範囲に入った角度が、求める検知角度となる。
(3−4)特徴
実施例3は、実施例1と実施例2のそれぞれの欠点を補い、高速に精度良く画像の正置位置からの回転角度を検知できるという利点がある。
【符号の説明】
【0106】
101…ステージ、102…検査対象、103…電子銃、104…2次電子検出部、105…画像化部、106…計算装置、107…表示装置、200…画像入力処理、201…前処理、202…フーリエ変換処理、203…各角度の評価値計算処理、204…回転角度検出処理、301…撮影画像例、302…前処理後の画像例、303…フーリエ変換後の画像例、304…評価値データの例、401…画像例、404…画像401の評価値データ、405…正置位置の角度、411…上部の平行線の部分のみ抽出した画像、414…上部抽出画像の評価値データ、421…下部抽出画像の評価値データ、424…下部抽出画像の評価値データ、501…前処理、502…疑似ラドン変換処理、503…回転角度検出処理、601…エッジ抽出処理、602…回転処理、603…横方向拡張および縦方向縮小処理、703…回転処理を行った前処理途中の画像例、704…最終的な前処後の画像例、705…評価値データの例、803…処理前の画像、804…処理後の画像、
904a…前処理によってできた画像、904b…画像例、904c…画像例、904d…画像例、1001…縮小処理、1002…フーリエ変換ベースの角度検出処理、1003…回転処理、1004…疑似ラドン変換ベースの角度検出処理、1100…画像の原点、1101…X軸、1102…Y軸、1104…画像、1110…フーリエ変換した画像の原点、1101…X軸、1112…Y軸、1114フーリエ変換した画像、1120…周波数原点、1201…X軸方向の線、1202…X軸方向の別の線、1203…X軸とのなす角度がθの線、1211…X方向の線状の形、1213…θ方向の線状態の形、1300…同心円、1301…上方に行く線方向、1302…−45°の方向、1303…135°の方向、1401…方向c順番g=0の線、1402…交点周辺、1403…交点周辺の拡大図。
【技術分野】
【0001】
本発明は、画像処理技術に関し、特に正置画像からの回転角度を検知する技術に関する。
【背景技術】
【0002】
従来から、画像の正置からの回転角度を検知する技術が知られている。
【0003】
例えば、下記の特許文献1では、スキャナ等から読み取った文書画像の正置からの回転角度(傾き)を自動的に検知して回転補正して正置画像を作る処理が開示されている。特許文献1では、文章画像の中から2つの部分領域を選択し、それぞれの部分領域内で射影したデータを作り、2つの射影データ間の相関から傾き角度を求める。その最、選択した部分領域の射影量から、文章が途切れているかどうかチェックして、文章が途切れていない領域を選んで評価する。
【0004】
また、下記の非特許文献1には、紙面を微小角度毎に回転させ、各回転角度毎にプロジェクションを取り、プロジェクション間の差の絶対値の最も大きなものを正置位置にあるものとして検知することが望まれる事が記載されている。しかし、非特許文献では、微小回転を何度も行うのは演算量が多いため、非現実的で、8*8の圧縮を行ってから粗い角度でおよその角度を求め、粗く求めた角度の回転補正を行った画像を作成した後、部分領域を複数の帯状領域に分割して、分割した領域について射影して、各分割領域の射影の位相(相関の大きくなる移動量)から傾き角度を求める。
【0005】
また、下記の非特許文献2では、文書画像をフーリエ変換し、ピーク位置から正置からの回転角度を検知する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特許4434802号
【非特許文献】
【0007】
【非特許文献1】著者:秋山照雄ほか、「書式指定情報によらない紙面構成要素抽出法」、電子通信学会論文誌’83/1 Vol.J66−D No.1, pp.111−118
【非特許文献2】著者:長谷雅彦ほか、「2次元フーリエ変換を用いた文書画像領域抽出法」、電子通信学会論文誌 ’84/9 Vol.J67−D No.9, pp.1044−1051
【発明の概要】
【発明が解決しようとする課題】
【0008】
上記従来技術では、文書画像を対象としていたが、半導体製造途中の回路パターンをSEM(Scanning Electron Microscope)で撮影した画像を対象とする場合、対象となる撮影画像は、文字画像と同様に扱えるホールが縦横に規則的に並んだ画像だけではない。縦横の配線が画像上の主な構成物で、文字画像のような小さな形態が規則的に並んだ部分が全くない画像も多く撮影される。このような画像では、上記従来技術では画像の特徴となる前提が異なるため対応できず、画像の正置位置からの回転角度を誤検出する。
【0009】
本発明の目的は、半導体製造途中のSEM画像を対象に、比較的高速に、画像の正置位置からの回転角度を精度良く検出する方法を提供することにある。
【課題を解決するための手段】
【0010】
(0)画像の座標軸、線の傾き角度の定義について
本発明の手段を記載する前に、画像やフーリエ変換した画像の座標系、角度の定義の仕方について説明する。座標系や角度の定義の仕方は各種があるが、ここでは、図11、12で示した定義とする。即ち、画像1104は、左上の点を原点1100、原点1100から右側をX軸1101、下側をY軸1102、とする左手系で定義する。ここで対象とする画像1104は、白黒画像であり、画像上の整数座標位置が画素となり、それぞれの画素に白黒の輝度値がある。画像1104がカラー画像の場合は、YUV変換のY画像など、白黒画像を作ることができるし、RGB画像から適当な演算で白黒画像を作成しても良い。ここでは、画像サイズは、N*Nとして例示する。画像の原点1100の座標を(0,0)とするので、X座標は0〜N−1、Y座標は0〜N−1までが画像1104の範囲となる。画像1104は、整数座標位置に画素があり、輝度値が定義されるが、実数値の座標位置でも、キュービックコンボリューションなど、適当な補間を用いて周囲の画素から補間して値を作り、輝度値を参照することができる。
【0011】
画像1104をフーリエ変換すると、フーリエ変換した画像1114が得られる。フーリエ変換した画像1114も、左上を原点1110とし、原点1110から右側をX軸1111、下側をY軸1112、とする左手系で定義する。同様に画像サイズはN*Nで、整数座標位置だけでなく、実数座標位置でも補間して画素値を参照できる。ただし、画像値はフーリエ変換した値なので、複素数の値を持つ。複素数の絶対値を取って、絶対値画像を作ることもある。
【0012】
フーリエ変換した画像は、0周波数の値を納めた位置、即ち周波数原点(0周波数)1120がある。周波数原点1120は、座標位置(N/2,N/2)とする。
【0013】
図12のように、画像1104にX軸方向の線、例えば線1201があると、フーリエ変換した画像1114では、周波数原点1120を通るY軸方向に値の大きな線状の形1211となる。また、画像1104で別のX軸方向の線1202があると、フーリエ変換した画像1114では、同様に、周波数原点1120を通るY軸方向に値の大きな線状の形1211となる。ただし、元の画像上での線の大きさや位置に応じ、フーリエ変換した後にできるY方向に向いた線状の形1211の値や位相は異なっている。画像1104に、X軸となす角度がθの線1203があると、フーリエ変換した画像では、周波数原点1120を通りY軸とのなす角度がθの方向に値の大きな線状の形1213が現れる。
【0014】
以上より、画像1104では、X軸の正の方向を角度0とし、それから半時計回りの回転方向を正に取り、角度を定義する。また、フールリエ変換した画像1114では、以上のように、画像1104とは90°異なる方向に線が出る性質があるので、周波数原点1120から画像の上方(Y軸1112では負の方向)を角度0とし、それから半時計回りの回転を正に取り、角度を定義する。
(1)本発明第1の手段
本発明の目的を達成するための、本発明の第1の手段は、以下に述べるフーリエ変換を利用した方法である。
【0015】
初めに、撮影画像のエッジを抽出する処理を行う。例えば、撮影画像から、撮影画像を平滑化した画像(例えば15*15画素の平均を取った画像)を引く処理を行う。(正確には、エッジのみ抽出した画像にはならないが、エッジ部分が強く見える画像になるため、ここでは、これも広い意味で、エッジを抽出する処理と呼ぶことにする。)
次に、前処理した画像をフーリエ変換する。フーリエ変換はバタフライ演算を用い、高速に演算する方法を用いることができる。なお、前処理で平均化した画像を引いたことにより、フーリエ変換した画像は、周波数原点(0周波数)近傍の値が小さくなり、その他の成分は残るため、画像の回転角度評価がしやすいものになっている。
【0016】
図13は、フーリエ変換した画像1114について、角度毎に線の程度を示す評価値を計算する幾何的な位置を示した図である。周波数原点1120から、半径N/2の同心円1300上の範囲を評価範囲と定める。周波数原点1120は(N/2, N/2)の位置にあるので、周波数原点1120から上側と左側は、距離N/2行った点が画像上の点としてあるが、右側と左側は、N/2−1迄行く点は画像上に参照点があるが、距離N/2行く点は画像の外側になり、一見参照点がないように見えるが、フーリエ変換の性質として、左右の端と上下の端はサイクリックに接続するので、例えば、(x, N)の点は、(x, 0)の点を参照することになる。
【0017】
ここで、フーリエ変換した画像の画素値は複素数であるが、その絶対値は、周波数原点1120について、原点対象であるので、評価値を求める計算は、上記同心円1300の片側の半円のみで行っても良い。例えば、図13のように、周波数原点1120から上方に行く線方向1301を0°の方向とし、−45°の方向1302から135°の方向1303を満たない角度迄を評価するようにすることができる。すなわち、1°間隔で評価値を計算する場合は、−45°から134°まで1°間隔で評価値を計算するようにする。このようにすると、周波数原点1120から距離N/2行った点を参照する場合、サイクリック接続を考えなくても値を参照でき、サイクリック接続の特例対策の処理を考えなくて済む分、プログラム作成の負担が少なくなる。
【0018】
評価値を出す場合は、参照点は、原点から1サンプリング点毎に参照することにする。例えば、0°の評価値を出す場合は、(N/2, N/2−1),(N/2, N/2−2),……,(N/2, 0)の点を参照する。評価値は、各点の値(複素数値)の絶対値の2乗和とする。その他、評価値は、各点の値(複素数値)の絶対値の和などにすることもできる。
【0019】
各方向の評価値は、フーリエ変換する前の画像で各方向に現れる線の多さを示しているので、求めた評価値データの中で最大の値を持つものの方向が、フーリエ変換する前の画像で最も多く線のある方向である。正置画像の性質として、横の線(水平方向の線)が最も多い場合は、ここで求めた評価値データの中で最大の値を持つものの方向(角度)が、画像の正置位置からの回転角度になっている。画像の正置位置の性質として、横の線(水平方向の線)または縦の線(垂直方向の線)のうち、少なくともどちらか一方の線が最も多いという性質を持つ場合は、ここで求めた評価値データの中で最大の値を持つものの方向(角度)が、画像の正置位置からの回転角度または、正置位置から90°(−90°)回転した角度になっている。
【0020】
なお、+−45°を超えるような回転はないとする場合は、評価データが最大値となる方向(角度)を検知し、その角度が、−45°から44°迄はその角度を回転検知角度とし、45°から134°までの時は90°引いた値を検知角度とする。
また、各方向の評価値は、−45°と135°が同じ評価値としてサイクリックに繋がっているとして、所定の角度の幅を持った平滑化フィルタをかけて平均化した評価値を、新たに評価値と考え、上記のように最大値となる方向を求める正置画像からの回転角度とすることもできる。
【0021】
なお、以上の手段では、評価する画像が、線が途中で大きく途切れた場合は、角度検知の誤差が大きくなる場合があり、検出精度が不安定になるという問題が見つかった。そこで、前処理で線が大きく途切れているか検知して、片側の線を含む領域のみ取りだした処理画像を新たに評価画像とすることで精度良く回転角度の検知をすることもできるが、一般の任意の形態に対して、線の大きく途切れた部分を安定に領域毎に分けて抽出する処理は難しく、本発明第1の手段は、このような特殊な形態を持つ画像は処理の対象外とする方が好ましい。
(2)本発明第2の手段
本発明第2の手段では、本発明第1の手段で問題となる線が大きく途切れた画像の場合も角度検知の誤差が大きくならない特徴がある。
【0022】
初めに、エッジ画像を作成する。(本発明第1の手段と同様。)
次に、エッジ画像に平行線を引き、平行線上の点を参照点としてその平行線の方向の評価値を計算する。平行線の方向を変え、所定の角度の評価値を全て計算する。評価値は、例えば、エッジ画像の平行線上に参照点を取り、参照点の輝度値の和を各線で求め(プロジェクションを取る)、各線の値の2乗和を評価値とすることができる。平行線を引く間隔は、横方向に1画素分の間隔が開くように取り、角度によって平行線の距離(平行線に垂直な距離)が異なるように引く。ここでは、これを疑似ラドン変換と呼ぶことにする。疑似ラドン変換では、平行線の距離(平行線に垂直な距離)が異なるが、所謂一般のラドン変換では、平行線の距離は角度によらず一定であり、ここで用いる疑似ラドン変換とは平行線の引き方が異なる。
【0023】
疑似ラドン変換では、エッジ画像に平行線を引いて、平行線上に参照点を取り、参照点の輝度値の和を各線で求める(プロジェクションを取る)場合、参照点は、各線と横軸の線の交点に取る。横軸方向に見ると、同じ横軸なら、交点の座標の横軸の値は、小数点以下の端数が皆同じものになっており、補間して参照点の値を読む場合、同じ横軸の参照点では皆同じ割合で近傍画素値からの寄与がある。即ち、近傍画素の値に掛ける補間のための係数は、横軸で皆同じである。従って、横軸方向に計算を進めると、補間のための係数計算は同じ横軸上は1度行うだけで済み、同じ横軸上なら皆同じ係数を使える。しかも、参照点の縦軸方向の座標は、整数値となっており、縦方向に補間のため値を参照することも必要がない。そのため、参照点の補間は高速に行うことができる。なお、以上の横軸と縦軸の役割を変えた場合も同様の計算ができ、これも疑似ラドン変換として同様に用いることができる。
【0024】
以上のようにして、高速に、所定の角度の評価値を全て計算し、その中から最大値を持つ角度を正置画像からの回転角度とする。また、各角度の評価値は、所定の角度の幅を持った平滑化フィルタをかけて平均化した評価値を、新たな評価値として、その中の最大値を持つ角度を正置画像からの回転角度とすることもできる。
【0025】
本発明第2の方法では、評価値を求める所定の角度は等間隔である必要はなく、中心部の横軸(Y=N/2の線)上の座標点と、画像の上の線(Y=0の線)上の座標点とを結ぶ角度とし、上の線の座標点が1サンプリング点づつずれた点を通るような離散角度を所定の角度とすることができる。
【0026】
以上の本発明第2の手段では、浅い角度、例えば、+−10°程度の角度の評価は高速に精度良く行うことができる。しかしながら、+−30°など、大きな角度になると、画像の端の部分でデータを参照できない点が増えるので、精度が落ちる場合があり、大きな角度の評価には向かない。
(3)本発明第3の手段
本発明第3の手段は、本発明第1の手段と本発明第2の手段を結合する。はじめに、本発明第1の手段を使い、粗く回転角度を検知する。次に、粗く検知した回転角度分、画像を逆回転して、粗い回転補正画像を作成する。そして、粗い回転補正画像について、本発明第2の手段を用いて、上記第2の手段に記載した浅い角度範囲で、精度良く回転角度を求める。最初に求めた粗い検知角度と、次に求めた精度の良い回転角度を加算すると、元画像の正置位置からの回転角度が求まる。
【発明の効果】
【0027】
本発明によれば、比較的高速に、画像の正置位置からの回転角度を精度良く検出することができる。
【図面の簡単な説明】
【0028】
【図1】実施例1〜3における構成を示す図である。
【図2】実施例1における手順全体を示すフロー図である。
【図3】実施例1における処理の途中経過例を示す図である。
【図4】実施例1における画像と評価データの例を示す図である。
【図5】実施例2における手順全体を示すフロー図である。
【図6】実施例2における処理501の手順を示すフロー図である。
【図7】実施例2における処理の途中画像の例を示す図である。
【図8】実施例2における処理603の入出力画像のサイズ例を示す図である。
【図9】実施例2における処理502の様子を示す模式図である。
【図10】実施例3における手順全体を示すフロー図である。
【図11】画像およびフーリエ変換した画像の座標の取り方を示す図である。
【図12】画像とフーリエ変換した画像の線と角度の関係を示す図である。
【図13】フーリエ変換した画像での角度と評価範囲を示す図である。
【図14】実施例2における参照点の様子の例を示す図である。
【発明を実施するための形態】
【0029】
本発明は、画像の正置位置からの回転角度を検出する機能を実現する装置における画像処理方法に特徴がある。
【0030】
従って、この画像処理方法を実施するための形態は、一般に良く知られているように、様々な形態を取ることができる。たとえば、以下の本発明の画像処理の処理手順を示すことで、ハードウエアの一般知識を持つものであれば、之を実施する機能を持つハードウエアを作成することもできるし、ソフトウエアの一般知識を持つものであれば、本発明の画像処理手順を実現するソフトウエアを作成し、之を市販の汎用計算機に実行させる形態も取ることができる。また、良く知られているように、汎用計算機を用いる場合は、ソフトウエアを記憶した記憶媒体は、計算機を特定せず他の計算機に挿入して実行させることが可能なので、本発明全体を施行するための重要な普遍的要素となり、組み込み先が任意の部品となる本発明の一つの実施形態ともなる。ソフトウエアを記憶した記憶媒体には、CD、DVD、メモリ−カード、HD、インターネットで接続・ダウンロード可能な外部記憶装置などがある。
(1)実施例1
(1−1)構成
図1に、本発明の実施例1の構成を示す。
【0031】
製造途中の半導体を検査する走査型電子顕微鏡には、ステージ101があり、レジストの乗った製造途中の半導体が検査対象102となり、撮影視野に運搬され、電子銃103で電子が打ち出され、検査対象102の所定領域を走査して、出てきた2次電子を2次電子検出部104で捉え、画像化部105で撮影画像の画像データとなる。
【0032】
画像化部105は、撮影画像を得るため、ステージ101、電子銃103、2次電子検出部104を動作させる制御信号を送り、2次電子検出部104で検出される信号を順序良く適切に位置づけ、画像データにする。
【0033】
計算装置106は、画像化部105で作られた撮影画像の画像データを受け取り、所定の画像処理をして、結果を表示装置107に表示させる。計算装置106は、走査型電子顕微鏡に内蔵しても良いし、外部に出しても良い。
【0034】
本発明は、計算装置106が画像処理する画像処理の方法に関し、特に、画像処理の中でも撮影した画像の正置位置からの回転角度を検知する処理方法に特徴がある。
(1−2)処理手順概要
図2に、本発明の実施例1における、撮影画像の正置位置からの回転角度を検知する処理方法の全体のフローを示す。この処理は、計算装置106が行う。以下、図中の番号をステップ番号として説明する。
【0035】
ステップ200: 製造途中の半導体を撮影した画像を入力する。
【0036】
ステップ201: 撮影画像の前処理として、エッジを検出した画像を作成する。エッジを検出する処理は各種ある。例えば、原画像(撮影画像)を所定のサイズで平均した画像を作り、原画像から平均画像を引く処理でエッジ検出を行うことができる。平均のサイズ(平均をとる画像の範囲)を15*15画素とする場合は、画像の着目点を中心に15*15画素の平均値を平均画像の画素値とする処理を画像上の各点で行う。
【0037】
ステップ202: 前処理した画像をフーリエ変換する。フーリエ変換は、FFTと呼ばれる高速計算方法が良く知られている。
【0038】
ステップ203: フーリエ変換した画像から、原画像の各回転角度に対応した線の程度を示す評価値を計算する。例えば図13のように、−45°から134°まで1°間隔で180個の評価値からなる評価値データを求める。評価値の具体の計算方法は次の節で述べる。
【0039】
ステップ204: 各回転角度の評価値データの中で評価値が最大となる回転角度を求める。その角度を正置位置からの回転角度とする。なお、各回転角度の評価値データを所定の角度の幅を持った平滑化フィルタをかけて平均化して、フィルタした評価値データを作り、フィルタした評価値データが最大となる回転角度を求め、その角度を正置位置からの回転角度とすることもできる。
(1−3)ステップ203の処理の具体例
直線のある画像をフーリエ変換すると、元の直線と90°角度が異なるが、フーリエ変換後の画像にも、上記で説明したように、原点(0周波数)を中心とした直線上に値が集中する性質がある。また、フーリエ変換した画像の画素値(複素数)の絶対値は、原点対称である性質を持っているので、原点から片方の外側のデータのみ参照して評価値を作ることができる。例えば、角度θの評価値 V1(θ)を計算する場合、以下の数1で計算することができる。
【0040】
【数1】
【0041】
ただし、G(x, y)は、画素の座標(x, y)におけるフーリエ変換した後の画像の値を意味し、**2は、2乗を意味するが、フーリエ変換した後の画像の値は複素数であるので、**2は、複素数の絶対値を取った2乗を意味する。rは原点からの距離である。画像G(x, y)の画像サイズをN*Nとすると、Σは、r=1からr=N/2迄加算するものとする。
【0042】
以上より、図13を参考にすると、数1は、フーリエ変換した画像の周波数原点1120から、図13で定義したθ方向に1画素づつ行った点を参照し、2乗和を作ることを意味する。
(1−4)ステップ204のフィルタについて
−45°から134°まで1°づつ評価値を取った評価値データにフィルタをかける場合は、−45°と135°の評価値が同一なので、134°の次の評価値が−45°に戻るサイクリック接続をして所定の幅を持った平滑化フィルタをかける。即ち、所定の角度の幅を持って評価値は平滑化される。フィルタサイズは、+−3°など、所定の幅を持つ。フィルタ形状は、単純平均やガウス型の平均、中心を頂点とする三角形型のフィルタなど、評価対象に合わせて、各種のフィルタを用いることができる。
(1−5)処理途中の様子の例
図3に実施例1における処理の途中経過の例を示した。
【0043】
撮影画像の例301は、画像中に横方向に長い形態が映った画像とする。上記ステップ201の処理をすると、前処理した画像例302となる。前処理した画像例302は、エッジ検出をした画像となっており、横の線が大きく、縦の線が小さい。ステップ202の処理を行うと、フーリエ変換した画像例303ができる。フーリエ変換した画像例303では、原点(0周波数)を画像中心に取っている。この例の場合、フーリエ変換前の画像では横方向の線が大きいので、フーリエ変換後の画像では、90°異なる縦の線上の値が大きくなる性質がある。ステップ203の処理をすると、評価値データの例304が得られる。この場合は、0°(元画像では横方向)の評価値が最も高く、正置位置からの回転角度は0°であることが分かる。
(1−6)その他1
以上では、評価値は、数1で計算したが、他にも評価値の計算方法はある。例えば、別の評価値V2(θ)を以下の数2で計算することもできる。
【0044】
【数2】
【0045】
ただし、abs() は、関数の中の値(複素数)の絶対値を取ることを意味し、Σは、数1と同様に、r=1からr=N/2迄加算することを意味する。
【0046】
以上より、数2は、フーリエ変換した画像の原点からθ+90°方向に1画素づつ行った点の値の2乗和を作ることを意味する。
(1−7)その他2
以上では、−45°から134°迄を1°づつ評価する方法を示したが、その他にも、90°ずれた評価値も一緒に評価することもでき、その場合、−45°から44°迄を1°づつ評価した評価値V3(θ)やV4(θ)を以下の数3、数4によって求めることもできる。
【0047】
【数3】
【0048】
【数4】
【0049】
(1−8)その他3
以上では、1°おきに−45°から134°までの評価データを取ったが、0.1°おきに−45°から134.9°までの評価データを取ることもできる。また、0.1°間隔で+−20°の評価データを取るなど、評価データの角度の間隔、範囲を目的に応じて変えることができる。
(1−9)その他4
以上では、画像の正置位置からの回転角度を評価値データの中で評価値の最も大きな角度としたが、画像によっては、評価値の最も大きな方向が正置位置から所定の角度αだけずれた場合もある。このような場合は、評価値の最も高くなる角度から画像固有に決まる所定角度αを引いた角度が、画像の正置位置からの回転角度となる。
【0050】
また、+−45°を超えるような回転はなく、これを超えた場合は90°ずれているとする場合は、45°以上135°未満までは90°引いた値を検知角度とする。
【0051】
その他、90°ずれた角度の評価値どうし加算して新たな評価値を作ることもできる。例えば、45°以上135°未満までの評価値は、90°引いた角度の評価値と加算した評価値を作り、この新たな評価データから角度検知することもできる。
(1−10)誤差の大きくなる場合
本発明の実施例1では、処理対象となる画像の中に映っている直線が大きく途切れている場合に角度検出誤差が大きくなる場合があるという欠点がある。図4にその例を示す。中央付近で大きく途切れた多数の平行線からなる画像401の場合、実施例1の評価では、画像401の評価値データ404のように、本来は最も大きな値となることが期待される、θ0で記述した正置位置の角度405付近が凹み、左右2つにピークが分かれる場合がある。画像の正置位置からの回転角度が僅かにずれるだけで、評価データのピークの形状が異なり、2つに分れたピークの大きさの差も異なって来て、フィルタして平滑化しても、検知する角度が不安定になり、場合によっては誤差が1°を超える場合もある。
【0052】
ここで、上部の平行線の部分のみ抽出した画像411を作ると、評価値データは、上部抽出画像の評価値データ414のようになる。この場合、角度検知すると、正置位置からの誤差は少ない。また、下部の平行線の部分のみ抽出した画像421を作ると、評価値データは、下部抽出画像の評価値データ424のようになり、角度検知すると、正置位置からの誤差は小さくなる。
【0053】
以上より、上部と下部の平行線をそれぞれ分離して評価すると、検知する角度の誤差が小さくなり、上部と下部の双方を含む場合には、検知する角度の誤差が大きい場合もある。以上のように、画像を加算しても、評価値はそれぞれの画像の評価値を加算したものとならない。之は、フーリエ変換後の値が複素数で、評価値を得る際に絶対値を取って評価するためである。
【0054】
以上のように、処理対象となる画像の中に途中で大きく途切れた線がある場合は、片側の線の領域のみ抽出する処理を行った画像を作って、実施例1の処理を行うと、角度検出誤差の少ない画像が得られるという特徴がある。ステップ201では、前処理として、このように、大きく線が途切れた部分があるかどうかをチェックして、線が途切れた部分がある場合、片側の線のみ評価するようにすることもできる。
(2)実施例2
(2−1)実施例1と異なる部分
本発明の実施例2の構成は、本発明の実施例1と同じである。本発明の実施例2の手順は、本発明の実施例1と異なる部分を持つ。特に、ステップ502を持つことが本発明第2の実施例の大きな特徴である。
(2−2)処理手順概要
図5は、本発明の実施例2における、処理方法の全体のフローを示したものである。この処理は、計算装置106が行う。以下、図中の番号をステップ番号として説明する。
【0055】
ステップ200: 製造途中の半導体を撮影した画像を入力する。
【0056】
ステップ501: 撮影画像を入力しとして前処理を行う。前処理の詳細は次節で述べる。
【0057】
ステップ502: 前処理した画像について、所定の回転角度に対応した評価値を、疑似ラドン変換に基づいてそれぞれ計算し、評価値データを作る。所定の回転角度は、画像サイズに応じて決まる比較的浅い角度である。例えば、+−10°程度の範囲を画像サイズに応じた非線形な離散角度毎に設定される角度について、それぞれ疑似ラドン変換に基づいて評価値を求め、評価値データを作る。具体の計算方法は(2−4)節で述べる。
【0058】
ステップ503: 各回転角度の評価値データの中で評価値が最大となる回転角度を求める。その角度を正置位置からの回転角度とする。
(2−3)ステップ502の処理の具体
ステップ501の処理手順を、図6で示す。以下、図6の番号をステップ番号として、ステップ501の手順を分割して説明する。
【0059】
ステップ601: エッジの抽出処理を行う。エッジの抽出処理は、実施例1と同様である。
【0060】
ステップ602: 横方向(0°)を中心に、浅い角度の評価値データを求める場合は、画像を−90°または、90°回転する処理を行う。縦方向(90°)を中心に浅い角度の評価値を求める場合は回転処理を行わない。角度θ1を中心に浅い角度の回転を行う場合は、−θ1−90°、または −θ1+90°回転処理を行い、元の画像で角度θ1の方向が回転後に縦方向になるようにする。
【0061】
ステップ603: 図8のように画像803を、右横にa、左横にbライン追加拡張し、縦方向に画像サイズを1/8に縮小した画像804を作成する処理を行う。b=a+1とする。処理前の画像803をI1(x, y*8+d)、処理後の画像804をI2(x+a,y)とすると、この処理は、以下の数5で表される。
【0062】
【数5】
【0063】
ただし、Σは、d=0からd=7迄加算することを意味する。(x, y)は、処理後の画像のマトリックス上の点の座標位置を示す。なお、I1のy方向(縦方向)のマトリックス数Nが8で割り切れない場合は、最後の方のデータがないので、適当に端の特例処理をする。例えば、最後の端の部分を無視してマトリクスを小さくしても良いし、最後の端の外側部分にデータがない場合にその部分を最後尾と同じデータがあると仮定してあたかも8で割り切れるマトリクス数であるかの扱いにしても良い。
【0064】
図8に、処理前のマトリクスサイズをN*N、この処理後のマトリクスサイズが(N+a+b)*(N/8)である場合について画像例を示している。処理前の画像803は、処理後の画像804の所定の場所に縦方向に1/8に平均縮小され、中央部のマトリクス数がN*(N/8)の部分に代入される。なお、処理後の画像の左側aライン、右側bラインが横方向に増えるが、データ値は0とする。
(2−4)ステップ502
図9に、疑似ラドン変換の様子を示す。前処理によりできた画像804は、左方向にaライン、右方向にbライン拡張された画像である。元の画像は、上述のように、縦方向に1/8縮小され、位置(a, 0)を左上の点とし、位置(a+N−1, N/8−1)を左下の点にして格納されている。
【0065】
図9では、疑似ラドン変換する際の射影方向の線(平行線となる)も図示している。各平行線は、Y=N/16の時に、X=aからX=a+N−1迄の整数座標上の点を必ず通るようにする。また、各平行線は、Y=0の時の横座標Xが整数値となる点を通るように引く。例えば、平行線を示す図901、902、903のように平行性が引かれる。
【0066】
平行線の一番左の線におけるY=0の時のX座標(xLとする)が平行線の方向を表す一つの特徴になる。ここで、c=a−xLと定義して、xLの代わりにcで方向を表すことにする。例えば、平行線を示す図901の場合、方向c=a−1、平行線を示す図902の場合、方向c=a−2、平行線を示す図903の場合、方向c=1−aである。
【0067】
平行線は、方向cによらず、Y=N/16の時は、必ずX=aからX=a+N−1の点を通るように引いたので、Y=N/16の直線上にあるXの値(X=fとする)が、多数の平行線の中から個々の1本の線を区別する特徴となる。g=f−aとすると、gは0からN−1の整数値となり、gを個々の平行線を区別する番号とする。即ち平行線は、左から右に向かい、0番、1番、…N−1番と順番づけされる。
【0068】
方向cで、順番gの線について射影する場合、線上でYが整数の時の値を全て加算する。即ち、以下の数6の式に基づいて、方向cで順番gの線の射影P(c, g)を計算する。
【0069】
【数6】
【0070】
ただし、Σは、y=0からy=(N/8)−1迄の加算を意味する。
【0071】
I2(a−c*((N/16)−y)/(N/16)+g, y)など、参照点は、Y座標は整数値であるが、x座標は、実数値で、一般に整数でないので、画像の画素としての値はなく、周囲の画素から補間して求めることになる。補間の仕方は各種あるが、ここでは、キュービックコンボリューションで補間する場合を、以下に図14を用いて説明する。
【0072】
図14は、方向c、順番g=0の線1401と縮小画像804(I2とする)の位置関係が分かるように図示したものである。線1401とY=yの線の交点周辺1402を、交点周辺を拡大図1403に拡大表示した。線1401と線Y=yの交点(x, y)のX座標xは、実数で、一般に小数を持つ。x=i+αとし、iは整数で、αは0以上1未満の小数とする。この時、交点周辺の拡大図1403のように、交点I2(x, y)は、Y=yの線上の近傍に、縮小画像804(I2)の画素として、I2(i−1, y)、I2(i, y)、I2(i+1, y)、I2(i+2, y)などを持つ。キュービックコンボリューションは、この4点を用いて、I2(x,y)を以下の数7の式に基づいて補間する。
【0073】
【数7】
【0074】
ただし、iは整数、αは0以上1未満の実数(小数)である。I2は縮小画像804で、関数 h() は、以下の数8、数9で計算される補間の係数である。
【0075】
【数8】
【0076】
【数9】
【0077】
以上、方向c、順番g=0の線1401と線Y=yの交点(x, y)について、I2(x, y)=I2(i+α, y)の補間計算方法について述べた。線1401の方向はc、順番g=0であったので、順番がgの場合の線と線Y=yの交点は、(x+g, y)であり、I2(x+g, y)=I2(i+α+g, y)の参照は、上記数7の式における各項のX座標の値にgを加えた式で参照する。ここで重要な性質は、gは整数なので、同じ方向cであれば、線の順番gが変わっても、小数部αは変わらないので、同じY座標を持つ交点を参照するようにしたら、同じ補間の係数hを持つことである。そのため、各平行線の各線の射影P(c, g)を計算する場合、g方向に計算して行く(同じY=yの線上の交点を順番に計算して行く)と、補間のための小数αと係数hの計算が、同じY=yの線上では1回で済み、高速に計算できる。
【0078】
以上のようにして、方向cと順番gについて、全ての範囲(−a+1<=c<=a−1 および 0<=g<=N−1の各整数)で射影P(c, g)を計算する。
【0079】
ステップ602の前処理で、−θ1−90°または−θ1+90°の回転をしていた場合、縮小画像804の上下方向は、元画像のθ1方向を向いていることになる。即ち、射影画像の方向c=0は、元画像では角度θ1の方向を意味する。射影画像の方向cの場合は、元画像では角度θ2の方向であるとすると、θ2とcの関係は、以下の数10で表すことができる。
【0080】
【数10】
【0081】
方向cは、cの値が1−aからa−1迄の整数値を取るので、対応する元画像での角度θ2(c)は、非等間隔の離散角度となる。θ2(c)の評価する範囲はaの値で決まり、arcsin(c/(N/2))が例えば、10°程度迄となるようにaの値を調整することができる。例えば、N=256の場合、a=23でarcsin(c/(N/2))の値は、約9.9°となる。
【0082】
N=256の場合、arcsin(1/128)≒0.448°、arcsin(2/128)≒0.895°、………、arcsin(21/128)≒9.44、arcsin(22/128)≒9.90、と約0.5°程度の間隔で方向毎射影を取ることができる。
【0083】
方向cの時のプロジェクションデータP(c,g)を数6〜数9で求めると、この時の評価値V5(θ(c))は、以下の数11で求めることができる。
【0084】
【数11】
【0085】
ただし、Σは、gが0からN−1までについての和を取ることを意味する。
(2−5)処理途中の様子の例
図7に実施例2における処理の途中経過の例を示した。
【0086】
撮影画像の例301は、上記実施例1における処理の途中経過を示した図3と同じ画像とする。撮影画像の例301に上記ステップ601の処理をすると、上記ステップ601、即ちステップ201の前処理(エッジ抽出処理)をした画像例302となる。この画像をステップ602で回転処理すると、回転処理まで加えた前処理途中の画像例703になる。図7の場合、横方向の画像を縦方向の画像にするように、時計方向に90°回転している。更にステップ603の処理をすると、横方向には拡張し縦方向には縮小した最終的な前処理後の画像例704が作られる。更に、ステップ502の処理をすると、評価値データの例705が得られる。
【0087】
評価値データの例705は、+−10°程度の浅い角度範囲の評価値データとなる。この場合、0°(元画像では横方向)の評価値が最も高く、正置位置からの回転角度は0°であることが分かる。
(2−6)その他1
以上では、評価値は、数11で計算したが、他にも評価値の計算方法はある。例えば、別の評価値V6(θ(c))を以下の数12で計算することもできる。
【0088】
【数12】
【0089】
ただし、abs() は、関数の中の値(複素数)の絶対値を取ることを意味し、
Σは、数11と同様に、xが0からN−1までについての和を取ることを意味する。
【0090】
なお、数11や数12は、評価値として線の程度を計算でき、長い線があった時の全体のウエートをどうするかといった程度の差しかなく、方向によって、線のある程度(線の存在の程度)が大きく異なる場合は、どちらも大差ない角度検出のできる評価値となっている。その他にも、線のある程度を反映する量であれば、評価値として採用することができる。
(2−7)その他2
以上では、ステップ602で角度θ1を中心に浅い角度の回転を行う場合は、θ1−90°、またはθ1+90°回転処理を行ったが、この時の評価値に、更に、90°回転した時の評価値を加えて、新たに之を評価値とすることもできる。
【0091】
また、更に90°回転した時の評価値は、実際に90°回転せず、ステップ603の処理を、縦方向に拡張、横方向に1/8縮小するように変更し、射影する方向を90°変え、横方向に射影するようにすることもできる。
(2−8)その他3
以上では、ステップ503で、各回転角度の評価値データの中で評価値が最大となる回転角度を求めたが、各回転角度の評価値データをフィルタして新たにフィルタした評価値データを作り、フィルタした評価値データが最大となる回転角度を求め、その角度を正置位置からの回転角度とすることもできる。
【0092】
評価データは浅い角度なので、実施例1の時のようなサイクリック接続はできない。
(2−9)その他4
以上では、ステップ503で元画像をθ1回転したが、角度評価を+−10°程度にする場合、更に20°回転した画像から、元の角度に換算して10°から30°程度までの評価データを作り、その他、逆に−20°回転した画像から元の角度に換算して−10°から−30°程度までの評価データを作り、これ等の評価データを繋げて、+−30°程度の評価データを作ることができる。
【0093】
その他、評価する浅い角度を+−10°程度としたが、+−15程度とし、更に回転する角度を+−30°とし、全体で+−45°の評価データを作ることもできる。
(2−10)その他5
以上のステップ603では、縮小処理を1/8縮小としたが、1/4縮小や1/2縮小、場合によっては、そのまま等倍とするなど、評価する角度範囲や入力画像の性質に応じ、縮小率を変えることもできる。
【0094】
また、ステップ603では、横方向の拡張をして拡張部のデータ値を0としたが、a=0、b=0として全く拡張を行わず、画像領域を超えた部分は、プロジェクションに加えないようにすることもできる。
(2−11)特徴
以上の実施例2の処理をすると、実施例1で問題となった線が途中で大きく途切れた場合についても、角度検出誤差が大きくならなかった。
【0095】
ただし、角度の検知範囲は+−10°程度と狭く、大きな角度範囲を検知する場合は、画像の回転をして角度検知し直す必要がある。大きな角度範囲を検知する場合は、上記実施例1に比べ、演算時間が長くなるという欠点もある。
【0096】
なお、ステップ503の処理は、疑似ラドン変換と呼ぶことにがしたが、プロジェクションを取る平行線の距離が平行線の引かれる角度を決めるパラメータcに依存していること、および、プロジェクションを取る平行線と横軸の交点をプロジェクションを取る場合の参照点としたこと、従って、プロジェクション方向の参照点の間隔がcに依存することが特徴となっている。広く知られているラドン変換では、平行線の距離は角度によらず一定で、参照点も、平行線と垂直に交わる格子状の点に取り、プロジェクション方向の間隔も一定となる。そのため、通常のラドン変換では、バイキュービックによる補間は、補間点近傍の16点を参照し、16個の係数も補間点毎に計算するため、時間がかかる。本発明の疑似ラドン変換では、補間点近傍の4点の参照と横軸方向は皆同じ係数を参照することにより、係数計算を大半は省くことができることにより、演算時間は良く知られたラドン変換よりも早いという利点がある。
(3)実施例3
(3−1)実施例1、2と異なる部分
本発明の実施例3の構成は、本発明の実施例1と同じである。本発明の実施例3の手順は、本発明の実施例1と実施例2を組み合わせたものである。
(3−2)処理手順
図10は、本発明の実施例3における、処理方法の全体のフローを示したものである。この処理は、計算装置106が行う。以下、図中の番号をステップ番号として説明する。
【0097】
ステップ200: 製造途中の半導体を撮影した画像を入力する。
【0098】
ステップ1001: 撮影画像の縦と横を1/4縮小する。入力画像の4*4画素の平均値が出力画像の1画素の値となる。
【0099】
ステップ1002: 1/4縮小画像を入力画像として、上記実施例1の方法で正置位置の角度を検出する。すなわち、1/4縮小画像を実施例1の前処理を行い、前処理した画像についてフーリエ変換し、フーリエ変換した画像から、1°間隔に0°から179°迄の評価値を求めて評価値データを作り、評価値データが最大値となるような角度を求める。
【0100】
ステップ1003: ステップ1002で求めた角度が、上下、または左右の所定方向になるよう、撮影画像、または撮影画像を前処理した画像を回転し、回転補正画像を作成する。
【0101】
ステップ1004: ステップ1003で作成した回転補正画像を入力として、上記実施例2の方法で正置位置の角度を検出する。ただし、回転操作は既にできているので、上記実施例のステップ602の回転は回転角0°として行わない。すなわち、ステップ601のエッジ抽出を行った後、ステップ602は飛ばして、ステップ603に進み、実施例2の前処理した画像を作成する。そして、ステップ502の処理を行い、+−10°程度の小さな角度範囲で評価値データを作り、ステップ503の角度検知を行う。
【0102】
元の画像から見た画像の正置位置の角度は、ステップ1002で求めた検知角度とステップ1004で求めた検知角度から求める。
(3−3)検知角度について
ステップ1002が第1の角度検出手段であり、ステップ1003が、第1の角度検出手段で検出した角度に基づいた画像の回転補正手段、ステップ1004が第2の角度検出手段になっている。
【0103】
ステップ1002で求めた検出角度が上下方向になるようにステップ1003で画像を回転する場合は、ステップ1004では、上下方向を中心に狭い角度の検知を行う。また、ステップ1002で求めた検出角度が上下方向になるようにステップ1003で画像を回転する場合は、ステップ1004では、上下方向を中心に狭い角度の検知を行う。
【0104】
この時、画像の正置位置からの回転角度は、ステップ1002で求めた検出角度が上下方向になるようにステップ1003で画像を回転する場合は、ステップ1002で求めた検知角度に、ステップ1004で求めた検知角度を加算した角度から90°引いた角度になる。また、画像の正置位置からの回転角度は、ステップ1002で求めた検出角度が上下方向になるようにステップ1003で画像を回転する場合は、ステップ1002で求めた検知角度に、ステップ1004で求めた検知角度を加算した角度になる。
【0105】
また、+−45°を超えるような回転はないとする場合、以上の検知角度を90°の整数倍掛けた角度を足すか引くかして、+−45°の範囲に入った角度が、求める検知角度となる。
(3−4)特徴
実施例3は、実施例1と実施例2のそれぞれの欠点を補い、高速に精度良く画像の正置位置からの回転角度を検知できるという利点がある。
【符号の説明】
【0106】
101…ステージ、102…検査対象、103…電子銃、104…2次電子検出部、105…画像化部、106…計算装置、107…表示装置、200…画像入力処理、201…前処理、202…フーリエ変換処理、203…各角度の評価値計算処理、204…回転角度検出処理、301…撮影画像例、302…前処理後の画像例、303…フーリエ変換後の画像例、304…評価値データの例、401…画像例、404…画像401の評価値データ、405…正置位置の角度、411…上部の平行線の部分のみ抽出した画像、414…上部抽出画像の評価値データ、421…下部抽出画像の評価値データ、424…下部抽出画像の評価値データ、501…前処理、502…疑似ラドン変換処理、503…回転角度検出処理、601…エッジ抽出処理、602…回転処理、603…横方向拡張および縦方向縮小処理、703…回転処理を行った前処理途中の画像例、704…最終的な前処後の画像例、705…評価値データの例、803…処理前の画像、804…処理後の画像、
904a…前処理によってできた画像、904b…画像例、904c…画像例、904d…画像例、1001…縮小処理、1002…フーリエ変換ベースの角度検出処理、1003…回転処理、1004…疑似ラドン変換ベースの角度検出処理、1100…画像の原点、1101…X軸、1102…Y軸、1104…画像、1110…フーリエ変換した画像の原点、1101…X軸、1112…Y軸、1114フーリエ変換した画像、1120…周波数原点、1201…X軸方向の線、1202…X軸方向の別の線、1203…X軸とのなす角度がθの線、1211…X方向の線状の形、1213…θ方向の線状態の形、1300…同心円、1301…上方に行く線方向、1302…−45°の方向、1303…135°の方向、1401…方向c順番g=0の線、1402…交点周辺、1403…交点周辺の拡大図。
【特許請求の範囲】
【請求項1】
撮影画像の正置位置からの回転角度を検知する装置において、
該撮影画像を入力として、該撮影画像から該撮影画像の平均画像を引く処理を含む前処理画像作成手段と、
該前処理画像をフーリエ変換して、フーリエ変換画像を作成するフーリエ変換画像作成手段と、
該フーリエ変換画像における0周波数の点の中心から、指定した角度の線上にある参照点の値の2乗和、または絶対値の和を評価値とする評価値計算手段と、
所望の離散角度について、各々、該評価値計算手段を用いて評価値を計算して、評価値データを作成する評価値データ作成手段と、
該評価値データを所定の角度の幅を持ったフィルタをする評価値データフィルタ手段と、
該評価値データフィルタ手段により得られたフィルタ後の評価値データの値が最大となる角度を求める角度検知手段と、
を有することを特徴とする画像の正置位置からの回転角度検知装置。
【請求項2】
前記検査装置において、前記前処理画像作成手段は、上記撮影画像に映っている線が大きく途切れた領域がある場合、該途切れた線のどちらか一方のみ含む領域を抽出する処理を含むことを特徴とする請求項1記載の画像の正置位置からの回転角検知装置。
【請求項3】
撮影画像の正置位置からの回転角度を検知する装置において、
該撮影画像、または該撮影画像を所定の前処理をした画像を入力画像として、
該入力画像について、所定の角度を持った等間隔の平行線を考え、該平行線の各々の線について、該入力画像の横座標線との交点または、縦座標線との交点を参照点として値を参照して該所定の角度についての評価値を作る評価値計算手段と、
所望の離散角度について、各々、該評価値計算手段を用いて評価値を計算して、評価値データを作成する評価値データ作成手段と、
該評価値データから所望の角度を検出する角度検出手段と、
を有することを特徴とする画像の正置位置からの回転角度検知装置。
【請求項4】
前記検査装置において、前記所定の前処理は、
上記撮影画像、または、該撮影画像を前処理している途中の画像を所定の一方向に縮小する処理を含むことを特徴とする請求項3記載の画像の正置位置からの回転角度検知装置。
【請求項5】
前記検査装置において、前記所定の前処理は、
上記撮影画像、または、該撮影画像を前処理している途中の画像を、所定の一方の座標軸について、所定の長さだけ長くした画像にコピーする処理を含むことを特徴とする請求項3記載の画像の正置位置からの回転角度検知装置。
【請求項6】
撮影画像の正置位置からの回転角度を検知する装置は、
第1の回転角度検知手段と第2の回転角度検知手段を有し、
前記第1の回転角度検知手段は、該撮影画像、または該撮影画像を前処理した画像をフーリエ変換する処理を含み、フーリエ変換した画像から評価値を作ることにより回転角度を検知し、
前記第2の回転角度検手段は、該第1の回転角度検知手段で検知した角度が、上下、または左右の所定方向になるよう、該撮影画像、または該撮影画像を前処理した画像を回転して回転補正画像を作成する回転補正画像作成手段を有し、
該回転補正画像作成手段により作成された該回転補正画像、または該回転補正画像を前処理した画像を入力画像として、該入力画像上で所定の角度を持った等間隔の平行線を考え、該平行線の各々の線について、該入力画像の横座標線との交点または、縦座標線との交点を参照点として値を参照して該所定の角度についての評価値を作ることにより回転角度を検知し、
該第1の回転角度検知手段で検知した回転角度と、該第2の回転角度検知手段で検知した回転角度から、該撮影画像の正置位置からの回転角度を求めることを特徴とする画像の正置位置からの回転角度検知装置。
【請求項7】
上記請求項1の各手段を実現する手順を記述したプログラム。
【請求項8】
上記請求項3の各手段を実現する手順を記述したプログラム。
【請求項9】
上記請求項6の各手段を実現する手順を記述したプログラム。
【請求項10】
撮影画像を取得する手段及び処理された画像を表示する手段に接続された計算機を用いて画像の正置位置からの回転角度を検知する方法において、
該撮影画像を入力として、該撮影画像から該撮影画像の平均画像を引く処理を行って前処理画像を作成し、
該前処理画像をフーリエ変換して、フーリエ変換画像を作成するフーリエ変換画像を作成し、
該フーリエ変換画像における0周波数の点の中心から、指定した角度の線上にある参照点の値の2乗和、または絶対値の和を評価値として計算し、
所望の離散角度について、各々、該評価値の計算結果を用いて評価値を計算して、評価値データを作成し、
該評価値データを所定の角度の幅を持ったフィルタをする処理を施し、
該評価値データフィルタ処理により得られたフィルタ後の評価値データの値が最大となる角度を求める、
を有することを特徴とする画像の正置位置からの回転角度検知方法。
【請求項11】
撮影画像を取得する手段及び処理された画像を表示する手段に接続された計算機を用いて画像の正置位置からの回転角度を検知する方法において、
該撮影画像、または該撮影画像を所定の前処理をした画像を入力画像として、
該入力画像について、所定の角度を持った等間隔の平行線を考え、該平行線の各々の線について、該入力画像の横座標線との交点または、縦座標線との交点を参照点として値を参照して該所定の角度についての評価値を作成し、
所望の離散角度について、各々、該評価値の作成結果を用いて評価値を計算して、評価値データを作成し、
該評価値データから所望の角度を検出する、
を有することを特徴とする画像の正置位置からの回転角度検知方法。
【請求項12】
撮影画像を取得する手段及び処理された画像を表示する手段に接続された計算機を用いて画像の正置位置からの回転角度を検知する方法において、
前記方法は、第1の回転角度検知処理と第2の回転角度検知処理を含み、
前記第1の回転角度検知処理では、該撮影画像、または該撮影画像を前処理した画像をフーリエ変換する処理を行って、フーリエ変換した画像から評価値を作ることにより回転角度を検知し、
前記第2の回転角度検処理では、該第1の回転角度検知処理で検知した角度が、上下、または左右の所定方向になるよう、該撮影画像、または該撮影画像を前処理した画像を回転して回転補正画像を作成し、
前記作成された回転補正画像、または該回転補正画像を前処理した画像を入力画像として、該入力画像上で所定の角度を持った等間隔の平行線を考え、該平行線の各々の線について、該入力画像の横座標線との交点または、縦座標線との交点を参照点として値を参照して該所定の角度についての評価値を作ることにより回転角度を検知し、
該第1の回転角度検知処理で検知した回転角度と、該第2の回転角度検知処理で検知した回転角度から、該撮影画像の正置位置からの回転角度を求めることを特徴とする画像の正置位置からの回転角度検知方法。
【請求項1】
撮影画像の正置位置からの回転角度を検知する装置において、
該撮影画像を入力として、該撮影画像から該撮影画像の平均画像を引く処理を含む前処理画像作成手段と、
該前処理画像をフーリエ変換して、フーリエ変換画像を作成するフーリエ変換画像作成手段と、
該フーリエ変換画像における0周波数の点の中心から、指定した角度の線上にある参照点の値の2乗和、または絶対値の和を評価値とする評価値計算手段と、
所望の離散角度について、各々、該評価値計算手段を用いて評価値を計算して、評価値データを作成する評価値データ作成手段と、
該評価値データを所定の角度の幅を持ったフィルタをする評価値データフィルタ手段と、
該評価値データフィルタ手段により得られたフィルタ後の評価値データの値が最大となる角度を求める角度検知手段と、
を有することを特徴とする画像の正置位置からの回転角度検知装置。
【請求項2】
前記検査装置において、前記前処理画像作成手段は、上記撮影画像に映っている線が大きく途切れた領域がある場合、該途切れた線のどちらか一方のみ含む領域を抽出する処理を含むことを特徴とする請求項1記載の画像の正置位置からの回転角検知装置。
【請求項3】
撮影画像の正置位置からの回転角度を検知する装置において、
該撮影画像、または該撮影画像を所定の前処理をした画像を入力画像として、
該入力画像について、所定の角度を持った等間隔の平行線を考え、該平行線の各々の線について、該入力画像の横座標線との交点または、縦座標線との交点を参照点として値を参照して該所定の角度についての評価値を作る評価値計算手段と、
所望の離散角度について、各々、該評価値計算手段を用いて評価値を計算して、評価値データを作成する評価値データ作成手段と、
該評価値データから所望の角度を検出する角度検出手段と、
を有することを特徴とする画像の正置位置からの回転角度検知装置。
【請求項4】
前記検査装置において、前記所定の前処理は、
上記撮影画像、または、該撮影画像を前処理している途中の画像を所定の一方向に縮小する処理を含むことを特徴とする請求項3記載の画像の正置位置からの回転角度検知装置。
【請求項5】
前記検査装置において、前記所定の前処理は、
上記撮影画像、または、該撮影画像を前処理している途中の画像を、所定の一方の座標軸について、所定の長さだけ長くした画像にコピーする処理を含むことを特徴とする請求項3記載の画像の正置位置からの回転角度検知装置。
【請求項6】
撮影画像の正置位置からの回転角度を検知する装置は、
第1の回転角度検知手段と第2の回転角度検知手段を有し、
前記第1の回転角度検知手段は、該撮影画像、または該撮影画像を前処理した画像をフーリエ変換する処理を含み、フーリエ変換した画像から評価値を作ることにより回転角度を検知し、
前記第2の回転角度検手段は、該第1の回転角度検知手段で検知した角度が、上下、または左右の所定方向になるよう、該撮影画像、または該撮影画像を前処理した画像を回転して回転補正画像を作成する回転補正画像作成手段を有し、
該回転補正画像作成手段により作成された該回転補正画像、または該回転補正画像を前処理した画像を入力画像として、該入力画像上で所定の角度を持った等間隔の平行線を考え、該平行線の各々の線について、該入力画像の横座標線との交点または、縦座標線との交点を参照点として値を参照して該所定の角度についての評価値を作ることにより回転角度を検知し、
該第1の回転角度検知手段で検知した回転角度と、該第2の回転角度検知手段で検知した回転角度から、該撮影画像の正置位置からの回転角度を求めることを特徴とする画像の正置位置からの回転角度検知装置。
【請求項7】
上記請求項1の各手段を実現する手順を記述したプログラム。
【請求項8】
上記請求項3の各手段を実現する手順を記述したプログラム。
【請求項9】
上記請求項6の各手段を実現する手順を記述したプログラム。
【請求項10】
撮影画像を取得する手段及び処理された画像を表示する手段に接続された計算機を用いて画像の正置位置からの回転角度を検知する方法において、
該撮影画像を入力として、該撮影画像から該撮影画像の平均画像を引く処理を行って前処理画像を作成し、
該前処理画像をフーリエ変換して、フーリエ変換画像を作成するフーリエ変換画像を作成し、
該フーリエ変換画像における0周波数の点の中心から、指定した角度の線上にある参照点の値の2乗和、または絶対値の和を評価値として計算し、
所望の離散角度について、各々、該評価値の計算結果を用いて評価値を計算して、評価値データを作成し、
該評価値データを所定の角度の幅を持ったフィルタをする処理を施し、
該評価値データフィルタ処理により得られたフィルタ後の評価値データの値が最大となる角度を求める、
を有することを特徴とする画像の正置位置からの回転角度検知方法。
【請求項11】
撮影画像を取得する手段及び処理された画像を表示する手段に接続された計算機を用いて画像の正置位置からの回転角度を検知する方法において、
該撮影画像、または該撮影画像を所定の前処理をした画像を入力画像として、
該入力画像について、所定の角度を持った等間隔の平行線を考え、該平行線の各々の線について、該入力画像の横座標線との交点または、縦座標線との交点を参照点として値を参照して該所定の角度についての評価値を作成し、
所望の離散角度について、各々、該評価値の作成結果を用いて評価値を計算して、評価値データを作成し、
該評価値データから所望の角度を検出する、
を有することを特徴とする画像の正置位置からの回転角度検知方法。
【請求項12】
撮影画像を取得する手段及び処理された画像を表示する手段に接続された計算機を用いて画像の正置位置からの回転角度を検知する方法において、
前記方法は、第1の回転角度検知処理と第2の回転角度検知処理を含み、
前記第1の回転角度検知処理では、該撮影画像、または該撮影画像を前処理した画像をフーリエ変換する処理を行って、フーリエ変換した画像から評価値を作ることにより回転角度を検知し、
前記第2の回転角度検処理では、該第1の回転角度検知処理で検知した角度が、上下、または左右の所定方向になるよう、該撮影画像、または該撮影画像を前処理した画像を回転して回転補正画像を作成し、
前記作成された回転補正画像、または該回転補正画像を前処理した画像を入力画像として、該入力画像上で所定の角度を持った等間隔の平行線を考え、該平行線の各々の線について、該入力画像の横座標線との交点または、縦座標線との交点を参照点として値を参照して該所定の角度についての評価値を作ることにより回転角度を検知し、
該第1の回転角度検知処理で検知した回転角度と、該第2の回転角度検知処理で検知した回転角度から、該撮影画像の正置位置からの回転角度を求めることを特徴とする画像の正置位置からの回転角度検知方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2012−203731(P2012−203731A)
【公開日】平成24年10月22日(2012.10.22)
【国際特許分類】
【出願番号】特願2011−68891(P2011−68891)
【出願日】平成23年3月25日(2011.3.25)
【出願人】(501387839)株式会社日立ハイテクノロジーズ (4,325)
【Fターム(参考)】
【公開日】平成24年10月22日(2012.10.22)
【国際特許分類】
【出願日】平成23年3月25日(2011.3.25)
【出願人】(501387839)株式会社日立ハイテクノロジーズ (4,325)
【Fターム(参考)】
[ Back to top ]