画像の読み取りと輝度値の分散について

添付の画像をMATLABで読み取り、線加工された部分の輝度値の分散を計算したいのですが、どのようにすればいいのでしょうか?

2 个评论

Kei Otsuka
Kei Otsuka 2018-9-17
"線加工された部分"がどこかを明示することはできますか?
画像を見ると十字に線が入っているように見えますが、、どこまでの範囲を
線と定義するかによって、分散の値が大きく変わりそうです。
Taiki Murakawa
Taiki Murakawa 2018-9-20
コメントありがとうございます。
十字の部分の輝度値の分散を求めるつもりです。 今の所、線加工を中心として30*30pixelに画像を切り取り、分散値を算出する予定です。

请先登录,再进行评论。

 采纳的回答

Etsuo Maeda
Etsuo Maeda 2018-9-20

1 个投票

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

4 个评论

Taiki Murakawa
Taiki Murakawa 2018-9-20
回答ありがとうございます。 画像はレーザーで試料を線加工したものを光学顕微鏡で観察したものです。
回答の通り行って見ましたが、imread関数を使うと次のようなエラーが出てきました。
エラー: imread>get_full_filename (line 516) ファイル "sample.bmp" は存在しません
エラー: imread (line 340) fullname = get_full_filename(filename);
まずはじめに画像をワークスペースに保存する必要があるのでしょうか。 MATLABを使い始めたばかりで全くわからないです。 お時間がございましたら、ご教示願います。
Etsuo Maeda
Etsuo Maeda 2018-9-20
编辑:michio 2018-9-20
エラーメッセージからすると、imread関数を実行した場所にsample.bmpが存在していないようです。もし、別の場所にある場合は、
A = imread('C:\MyFiles\sample.bmp')
のように、ファイルパスも指定する必要があります。MATLABに限らず、完全にプログラミング初心者ということであれば、MATLABの基礎コース【無料】の受講をおすすめします。(文面だけで説明するのはかなり難しいですので・・・)
また、私の手元で確認した限り、輝度の高い場所が画像中心からずれているようです。試料の水平や、光学顕微鏡のコンデンサレンズの調整もしておいた方がいいと思います。
HTH
Taiki Murakawa
Taiki Murakawa 2018-9-20
返答ありがとうございます。
プログラミング初心者なので、基礎コースの方で勉強してきます。
画像がずれてるのは、私のトリミングでのミスです。
ご教授ありがとうございました。
Etsuo Maeda
Etsuo Maeda 2018-9-20
お返事ありがとうございます。基礎コースを終了されれば、私のコードもすぐに理解できると思います。また疑問点がありましたら、MATLAB Answersでご質問ください。

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Read, Write, and Modify Image 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!