0

全体または大部分が黒である画像を定義するアルゴリズムを作成しています。
いくつかの画像を確認したところ、これらの種類の RGB 形式の画像の値はほとんどが 30 から 40 であることがわかりました
。私の考えは正しいですか?
そうである場合、マトリックス内のほとんどの値 (この場合、マトリックスは私の画像です) が 30 から 40 の間であるかどうかを確認するにはどうすればよいですか?
使用meanしましたが、結果はまだ配列にあり、使用しましたが、次のnormエラーがあります:
「uint8」型の入力引数に対して未定義の関数「ノルム」

4

2 に答える 2

1

画像に含まれる値を確認したい場合は、次のようにします。

画像 M があるとします。

M = uint8(magic(5));

大まかな分布を取得する方法は次のとおりです。

hist(double(M(:)))

これを画像全体に一度に使用するか、以下に示すようにチャネルごとに使用できます。

M = uint8(round(255*randn(5,5,3)))

hist(double(M(:))) % Will give the results for all color channels at once
hist(double(M(:,:,1))) % Will give the results for only the first (red?) color channel

を使用histすると、分布の一般的なアイデアが得られますが、最も発生する正確な値を知りたい場合は. histあらゆる場所を に置き換えますmode

于 2013-11-08T13:10:08.690 に答える
1

画像のサイズが M x N x3 (幅 x 高さ x RGB コンポーネント) で、3 つのコンポーネント (R、G、B) がすべて40 未満の平均ピクセル数が必要であると想定しています(これらは暗いピクセル)。次に、単に行う

    mean(mean(all(matrix<40,3),2),1)
于 2013-11-08T13:04:22.680 に答える