カテゴリー
画像処理

ブロブカウンターの公開

ブロブとは塊を意味し、似た特徴を持った画像内の領域のことを指します。

OpenCVには、簡単に使用できるブロブ検出の関数があります。今回、それを用いたブロブのカウントを行うアプリを公開します。

https://share.streamlit.io/horiems/blobcounter/app.py

検出指定した形状のブロブ(塊)を検出して、その外周を赤く縁取りするとともに、ブロブのリスト表示とサイズ毎の度数分布を表示します。得られたブロブリストはCSVファイルとしてダウンロードできます。

0

 ブロブ検出結果の例

サイズ毎のヒストグラム

更新情報

2022.03.27 色相強調処理(Color Enhancement)機能の追加

カテゴリー
光学

ワイヤグリッド偏光子

ガラスや樹脂フィルムの表面上に周期的に配置された微細な金属ワイヤーを形成することで、偏光素子になります。

ワイヤグリッド偏光子では、p偏光成分を透過し、s偏光成分を反射(一部吸収)することで偏光特性が得られます。

p偏光成分のロスが少なく、薄型で広帯域の偏光特性が得られます。基板がガラスなどの無機材料で構成されている場合、熱に強い特徴があります。一方、基板が樹脂フィルムの場合、安価に生産でき屈曲が可能であることが特徴です。

この偏光特性を、構造色シミュレータStructural color simulatorを用いシミュレーションしてみます。

基板をクオーツとし、金属ワイヤーをアルミ(線幅50nm)で100nm周期にします。アルミの厚さを100nmとすると、以下のような光学特性が得られます。

ワイヤグリッド偏光子のシミュレーション結果(入射角0度)

グラフのTsおよびTpから、波長350nm以上で偏光素子として使用可能なことがわかります。また、ワイヤーグリッド偏光素子は異方性結晶による偏光素子とは異なり、光の入射角が多少変化しても偏光性能を維持します。以下は、入射角を15度としたときの光学特性のグラフですが、偏光性能は大差ないことがわかります。

ワイヤグリッド偏光子のシミュレーション結果(入射角15度)

カテゴリー
光学

構造色シミュレータの公開

光の波長以下の微細構造から生じる構造色の反射・透過スペクトルを計算する構造色シミュレータStructural color simulatorを公開します。使用するには以下のリンクをクリックしてください。

https://share.streamlit.io/horiems/strcolor/app.py

自然界には輝くような色の生物が沢山います。昆虫ではモルフォチョウや玉虫などは、構造色と呼ばれる発色の仕組みを持っています。 色素による吸収の色ではなく、光の波長程度の微細な構造が、干渉や散乱などの光学現象を起こして着色しています。

最近では自動車やスマートフォンの外装に用いられることも増えてきます。 CDやDVDの表面色も構造色といえます。

また半導体デバイスの表面も微細な周期構造を作りこむため、構造色が生じます。この構造色から逆にその構造を詳しく求めることも実際に行われています。これは、スキャトロメトリー(scatterometry)と称し、光を用いてその波長以下の構造を解析する技術です。

構造色は、光の波長あるいはそれ以下の微細構造による、分光に由来する発色現象を指す。身近な構造色にはコンパクトディスクやシャボン玉などが挙げられる。コンパクトディスクやシャボンには、それ自身には色がついていないが、その微細な構造によって光が干渉するため、色づいて見える。

ウイキペディア

構造色は、その周期性から回折格子のように取り扱いできます。

その周期性を利用してRCWA(rigorous coupled-wave analysis:厳密結合波解析)と呼ばれる高速で安定な演算方法が用いられます。

このWebアプリは使い方を簡単にするため、ライン&スペースのような多層の一次元周期構造のみを扱います。

使い方は、先に公開した光学薄膜シミュレータと同様なので、相違点を中心に説明します。

・左のサイドバー
 入射角度と波長範囲を指定します。
 Atmosphereで媒質の屈折率(通常は空気なので1)を指定します。
 Substrateで基板名を選択します。(初期設定はSilicon)

・上部のFilm parameters
 層数,周期[nm], 最大回折次数を指定します。
 周期が波長以下になると特徴的なスペクトルが得られます。また、最大回折次数が大きいほど計算精度は上がりますが、計算速度が大幅に低下します。

・各層の設定
 各層の材料名, 線幅, 膜厚[nm]を指定します。
 なお、線幅は周期に対する比率であり、例えば周期が80nmのとき線幅を0.4とすると、実際の線幅は80x0.4=32nmとなります。

構造色シミュレータの画面例

カテゴリー
光学

表面プラズモン共鳴

表面プラズモン共鳴は、特定の条件下で金属薄膜中の自由電子波が表面で光と相互作用する現象である。その結果、光吸収が生じたり、表面近傍の電場強度の増強が起こったりする。

表面プラズモン共鳴(ひょうめんプラズモンきょうめい、: Surface Plasmon Resonance、略称:SPR)は、固体あるいは液体中の電子が、それら(固体あるいは液体)に入射した光によって集団振動を誘導される現象、あるいは、その集団振動のことである。

出典: フリー百科事典『ウィキペディア(Wikipedia)』

下図のように底部に金属を薄くコートしたプリズムを使ってp-偏光の光を入射した際の反射率を測定すると、共鳴が生じる入射角で反射率が低下して最小となる。この角度を共鳴角と呼ぶ。

クレッチマン配置

金属層の表面に誘電体層が吸着したり周辺物質の屈折率が変化すると、共鳴角が変化するため、屈折率やバイオ由来物質のための光学センサとして用いられる。

この現象を光学薄膜シミュレータ(Optical film simulator)で計算してみる。

周辺物質には水(n=1.33)を、プリズムには高屈折ガラス(n=1.86)を想定し、金属コートには金コート(厚さ47nm)とした。また、金コートと水の間には厚さ10nmのSiO2相当の材料が存在するものとした。

入射光条件とプリズムの屈折率は、左のサイドバーで以下のように入力する。

入射光条件と媒質(プリズム)の屈折率を設定
各層の材料名と膜厚を設定

計算結果は以下のようになる。

表面プラズモン共鳴

SiO2の膜厚を変えていくと、共鳴角が変化することがわかる。

角度の測定精度は、0.01度~0.001度であるため、0.01nm以下の膜厚に相当する微小な物質の吸脱着が測定できることがわかる。

カテゴリー
光学

ブラッグミラー

ブラッグミラー(Bragg reflector)は、光ファイバーなどの導波路で使用される反射鏡です。これは、屈折率が変化する、または誘電体導波路の特性(高さなど)の周期的な変化によって、ガイドの実効屈折率が周期的に変化する、交互の材料の複数の層から形成される構造です。波長が層の光学的厚さの4倍に近いと、多層膜は高品質の反射器として機能します。

繰り返しの層数を増やすと、ミラーの反射率が増加し、各層の屈折率差が増加すると、反射率と帯域幅の両方が増加します。

このブラッグミラーをシリコン(Silicon)とシリコン酸化膜(SiO2)の多層膜で設計してみます。

設計波長を600nmとします。

シリコン(Silicon)の膜厚は、設計波長の1/4をシリコンの屈折率(n=3.943@600nm)で割った値、つまり600/4/3.943=38.04nm≒38nmとなります。

シリコン酸化膜(SiO2)の膜厚は、設計波長の1/4をシリコンの屈折率(n=1.548@600nm)で割った値、つまり600/4/1.548=96.89nm≒97nmとなります。

このパラメータを光学薄膜シミュレータに設定します。

https://share.streamlit.io/horiems/filmsimulator/app.py

一旦、層数を9層として以下のように入力します。

ブラッグミラーの膜構造の例

反射率スペクトルのシミュレーション結果は、以下のようになります。

ブラッグミラーのシミュレーション例(設計波長600nm)

また、そのときのXYZ色度座標と色は以下のようになります。

XYZ色度座標

また、入射角30度になると以下のように反射スペクトルになることがわかります。

入射角30度でのブラッグミラーのスペクトル
カテゴリー
光学

光学薄膜シミュレータ

光学薄膜の反射スペクトルと干渉色を計算するWebアプリを公開します。使用するには以下のリンクをクリックしてください。

https://share.streamlit.io/horiems/filmsimulator/app.py

物理現象の説明はWikipedia 薄膜干渉の項を参照してください。

薄膜干渉は、薄膜の上下の境界で反射された光波が互いに干渉し、特定の波長の反射光を増強または低減させる自然現象である。

ウィキペディア

特徴

  • 入射角を変えて100層までの多層膜の分光反射率を計算
  • 839種の材料の屈折率データ
  • D65光源下での色度座標およびRGB値を計算
  • 結果はCSV形式でダウンロード可能
  • Webアプリなので端末を問わず利用可能
  • インタラクティブな操作

使い方

  • 左のサイドバーで、入射角(0度が垂直入射),波長範囲[nm],波長間隔[nm]を指定します。
  • 画面右上のFilm stackでフィルムの層数を入力した後、上層から順に各層の材料名と膜厚を入力します。
  • パラメータを設定すると、分光反射率とD65標準光源下での色度座標値(XYZ)を表示します。
  • 必要に応じて、最下段のダウンロードボタンを押して、結果を保存します。

画面

  • 照明条件の設定
入射角度,波長範囲,波長間隔,媒質の屈折率を指定
  • 膜構造の設定
層数と各層の材質名,膜厚[nm],基板の材質名を設定
  • 反射スペクトル
分光反射率の表示(画像の保存および指定領域の拡大可能)
  • 反射色と色度座標の表示
反射色と色度値の計算

更新情報

  • 2022.02.19 グラフ表示をmatplotlibからplotlyに変更
    不具合修正(媒質の屈折率の未反映)

カテゴリー
光学

TSV測定の光学系

目的
高アスペクト比構造(シリコン貫通電極,トレンチ等)TSVの光学検査用に低NAの反射型対物レンズを設計

TSVの断面図

要求:
NA<0.01

可視光源による実験

可視通常光源

LDLS光源による実験

LDLS光源

DUV光源による実験

DUV wavelength range (180-700nm)

反射対物レンズ

Objective design Approach
Delete vignetted rays

課題:

小さなNAと小さなスポットサイズを達成するために、ほとんどの光パワーが無駄になります。DUV波長域では、LDLS(スーパーコンティニューム)光源は使用できません。また、スループット対策としては、光源としてレーザー光源の使用やセンサとして高電子増倍管の使用が考えられます。

カテゴリー
光学

イメージングエリプソメーター(反射屈折系)

かって半導体チップの検査,計測用に分光式イメージングエリプソメータを検討していたので、その記録。

波長範囲:200~900nm

撮像範囲:約20mm□ (ダイサイズに相当)

測定時間:数秒以下

入射角:約70度

斜め方向から画像を取得するので、シャインプルーフ(Scheimpflug)系となり、撮像カメラをあおる必要がある。

NAを小さくする必要があるため、光学系は非常に暗い。そのためスループットを得るには超高輝度光源(例えばLDLS:レーザー励起プラズマ白色光源)を用いる必要がある。

下図は、反射屈折光学系(Catadioptric系)による設計例

イメージングエリプソメータ(反射屈折光学系)
解像度曲線(OTF)

カテゴリー
光学

イメージングエリプソメータ(オフナー光学系)

かって半導体チップの検査,計測用に分光式イメージングエリプソメータを検討していたので、その記録。

波長範囲:250~800nm

撮像範囲:約20mm□ (ダイサイズに相当)

測定時間:数秒以下

入射角:約70度

斜め方向から画像を取得するので、シャインプルーフ(Scheimpflug)系となり、撮像カメラをあおる必要がある。

下図は、オフナー光学系による設計例。ミラーのみで構成可能なため、色収差が発生しないのがメリットであるが、倍率は1倍固定となる。

オフナー光学系によるイメージングエリプソメータ
MTF特性

カテゴリー
韓国

DMZ近くの蒸気機関車

韓国と北朝鮮の境界には非武装地帯(DMZ:軍事境界線)が存在します。

その近くに古い蒸気機関車が屋外で朽ち果てていたので、写真をとってきました。かっては満州や中国まで通っていたんでしょうね。

DMZ付近にあった蒸気機関車