画像の関心領域部分を​選択し​、一定の輝度​値以上の面積と水平面​からの傾きを求める方​法はありますか?

この液滴内部に含まれる粒子の面積,水平面からの傾きを求める方法を教えて頂きたいです.

 Accepted Answer

Hernia Baby
Hernia Baby on 27 Oct 2022
Edited: Hernia Baby on 31 Oct 2022

1 vote

clear,clc;
I = imread('image.bmp');
I = imcrop(I,[150 175 300 inf]);
輝度で物体を白抜きしてみます
idx = I < 50;
I(idx) = uint8(255);
imshow(I)
白抜きの部分は以下の通りです。
I_sum = sum(idx,"all")
I_sum = 243
角度については少し自信ありません…
物体の各座標最大(いちばん下&いちばん右)
[r,c] = find(idx);
T = [r c];
[~,idx1]=max(T)
idx1 = 1×2
58 240
T1 = [T(idx1,:), zeros(2,1)]
T1 = 2×3
59 170 0 45 183 0
theta = rad2deg(subspace([1,0,0]',diff(T1)'))
theta = 42.8789

4 Comments

Naoki Hashiguchi
Naoki Hashiguchi on 28 Oct 2022
迅速なご対応ありがとうございます.
頂いたプログラムで白抜きの面積を求めることができました.
角度については私ももう少し検討を行います.
Naoki Hashiguchi
Naoki Hashiguchi on 28 Oct 2022
追加で質問ですが,theta = 5.3248 というのは液滴の屈折の影響を考慮したものでしょうか.
私が屈折の影響を考慮せずに物理的に計測した角度は約45度でした.もし分かりましたらご教示お願いします.
Hernia Baby
Hernia Baby on 31 Oct 2022
すみません、2点の角度を取っていました。
回答修正しました。これはx軸と2点で結んだ線の角度になります。
Naoki Hashiguchi
Naoki Hashiguchi on 1 Nov 2022
回答ありがとうございます.
おかげさまで解析を行うことができました.

Sign in to comment.

More Answers (0)

Categories

Find more on 数学 in Help Center and File Exchange

Products

Release

R2022a

Community Treasure Hunt

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

Start Hunting!