メールマガジン・新着情報一覧
- TOP
- メールマガジン・新着情報一覧
- D-0014. 表面形状の微分 — TT
2010.04.10
D-0014. 表面形状の微分 — TT
◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇ 表面形状の微分 発行:エスオーエル株式会社 https://www.sol-j.co.jp/ 連載「知って得する干渉計測定技術!」 2010年4月10日号 VOL.014 平素は格別のお引き立てを賜り、厚く御礼申し上げます。 干渉計による精密測定やアプリケーション開発情報などをテーマに、 無料にてメールマガジンを配信いたしております。 ◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇ 以前のメールマガジンで、「ハーモニック解析と加速度解析」をご紹介しました。 そこでは、あたかも表面形状の関数が分かっているものとして、説明してあります。 関数が分かっているなら、「その2階微分を計算して、加速度を出しています」 という説明も納得できます。 しかし、実際には様々な表面形状があり、 その関数を完全に求めてから解析という訳にはいきません。 では、関数形の未知な表面形状をどうやって微分しているのでしょうか。 まず、表面形状はどのようなデータとして扱われているかを考えます。 理想的には、表面上の位置 (x,y) を指定すると、 高さ z が定まる連続データが得られていれば良いのですが、 実際は、CCDカメラの各ピクセル (i,j) に対して離散的な 高さ Z しか得られていません。 ますます疑問は深まります。 連続関数の微分は分かるが、離散データなのに微分?を考えることになり、混乱してきます。 答えを言うと、離散データの微分に当たるものは、差分になります。 では、実際にどのような計算をしているかを見ていきましょう。 3×3ピクセルの高さデータとして、 Z(1), Z(2), Z(3) Z(4), Z(5), Z(6) Z(7), Z(8), Z(9) が得られていると考えます。 実際には、全部で512×512ピクセルのデータがあるのですが、 そのうちの3×3ピクセルに注目しています。 今、真ん中のピクセル(Z(5)の位置)における局所勾配を計算します。 各点における局所勾配を計算することが、まさに表面形状の微分になるわけです。 その計算は、以下のような差分になります。 X方向: ⊿X(5) ={2×Z(6) - 2×Z(4) + Z(3) + Z(9) - Z(1) - Z(7)}/(ピクセル間距離) Y方向: ⊿Y(5) ={2×Z(8) - 2×Z(2) + Z(7) + Z(9) - Z(1) - Z(3)}/(ピクセル間距離) 傾きベクトルの大きさ: ⊿XY(5) = √{ ( ⊿X(5) )^2 + ( ⊿Y(5) )^2 } そして、傾きベクトルは、 (⊿X , ⊿Y) となります。 差分と聞いて、この式を見ると、あれ?っと思うかもしれません。 差分なら、⊿X(5)を求めるのに Z(6) と Z(4)、⊿Y(5)を求めるのに Z(8) と Z(2) の差をそれぞれ見れば十分なのに、それ以外のピクセルのデータも入っています。 この計算は、少しややこしく見えるかもしれませんが、 周りのデータも適切に重み付けして考慮した、より良い計算方法です。 画像処理工学的(数学的)に言うと、Sobel演算を作用させたことになります。 全ピクセルで同様の計算を行えば、微分した形状となり、 後は、その最大値を見付けたり、平均値を出したりするのは、簡単です。 今回は、表面形状の微分について解説しました。 -- 高野智暢