0以外の値を平均したいです

30 次查看(过去 30 天)
宗樹 岡本
宗樹 岡本 2023-12-5
画像のRGB値からR値、G値、B値(それぞれ0以外の値)の平均値を算出したいです。ご教授よろしくお願いいたします。
下記のプログラムでは0も含んだ平均値となってしまいます
I = imread("");
R = double(I(:,:,1));
G = double(I(:,:,2));
B = double(I(:,:,3));
Rmean = mean2(R);
Gmean = mean2(G);
Bmean = mean2(B);

采纳的回答

Kenjiro Sugimoto
Kenjiro Sugimoto 2023-12-5
こちらでいかがでしょうか。
R = [ 1, 0, 0; 0, 1, 0; 0, 0, 1 ];
Rmean = mean(R, "all")
Rmean = 0.3333
idx = (R ~= 0) % 非ゼロの箇所を取得
idx = 3×3 logical array
1 0 0 0 1 0 0 0 1
Rmean = mean(R(idx), "all")
Rmean = 1
  1 个评论
宗樹 岡本
宗樹 岡本 2023-12-5
ありがとうございました。

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 ライティング、透明度、およびシェーディング 的更多信息

标签

产品


版本

R2022a

Community Treasure Hunt

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

Start Hunting!