画像の読み取りと輝度値の分散について
47 views (last 30 days)
Show older comments
添付の画像をMATLABで読み取り、線加工された部分の輝度値の分散を計算したいのですが、どのようにすればいいのでしょうか?
Accepted Answer
Etsuo Maeda
on 20 Sep 2018
画像の雰囲気からすると、Siチップにレーザー系のツールで線加工をしたものでしょうか。 画像の汚れからすると、光学顕微鏡を使って観察をしたように見えます。 私の予想が当たっている場合は、対物レンズ専用の用紙と洗浄液で掃除してあげてください。 もし、走査型電子顕微鏡で観察しているならば、サンプルロード前にエアを吹くなどして表面をきれいにしておきましょう。
画像の読み取りにはimread関数を使うことが出来ます。
A = imread('sample.bmp');
生成されるAはRGBの情報を含んでいるようです。 観察に使ったカメラの設定を変えればグレースケールの情報が出力されるはずですので、ご検討ください。
次に輝度値についてです。 一般に輝度はある方向からみた単位面積あたりの明るさとして定義されます。 カメラの設定、スケールが全く不明の状態ですから、厳密性を無視して極々簡単に単位面積当たりの画像の明るさを輝度とするならば、読み込んだAがそのまま輝度の分布となります。
B = rgb2gray(A);
としてグレースケール変換してからプロットをすると、下記のようになります。
h = surf(B);
h.EdgeColor = 'none';

線加工された部分の定義が難しいようでしたら、このプロットからご自身で条件を付けてみましょう。 なお、分散についてはvar関数などが準備されています。
HTH
4 Comments
Etsuo Maeda
on 20 Sep 2018
お返事ありがとうございます。基礎コースを終了されれば、私のコードもすぐに理解できると思います。また疑問点がありましたら、MATLAB Answersでご質問ください。
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!