0

MATLAB に 161*32 の行列 (「indpic」というラベルが付いています) があり、行に表示される特定の数値の頻度を見つけようとしています。したがって、値ごとに各行を個別に分析する必要があると思いますが、これを行う方法については非常に確信が持てません (私は MATLAB の初心者です)。これはまた、私がループなどで信じられないほど役に立たないことも意味します。

どんな助けでも大歓迎です!

4

3 に答える 3

2

特定の数字が各行に表示される回数を数えたい場合は、次のようにします。

sum(indpic == val, 2)

どこindpicにあなたの行列(画像など)がありval数えたい値です。

説明: 各要素と値の等価性をチェックすると、カウントされた値の位置に「1」があるブール行列が生成されます。各行を合計します (つまり、2番目valの次元に沿って合計すると、目的の列ベクトルが得られます。各要素は、対応する行で繰り返される回数に等しくなります)。

画像内で各値が繰り返される回数を数えたい場合、これはヒストグラムと呼ばれ、コマンドを使用してhistcそれを達成できます。例えば:

histc(indpic, 1:256)

1 から 256 までの各値が image に出現する回数をカウントしますindpic

于 2013-03-29T01:43:03.530 に答える
0

このような、

sum(indpic(rownum,:) == 7)

明らかに 7 を何にでも変更します。

于 2013-03-29T01:42:54.193 に答える
0

あなたはただ書くことができます

length(find(indpic(row_num,:)==some_value))

そして、行列「indpic」の「row_num」行の「some_value」に等しい要素の数が得られます

于 2013-03-29T06:07:25.147 に答える