MATLAB (単純な for ループ) で画像 (128x128 Uint8) を合計しようとしていますが、合計は 255 の値までしか上がりません。
これは、私の変数に Uint8 か何かが割り当てられているということですか? もしそうなら、どうすればこれを変更できますか?
乾杯!
MATLAB (単純な for ループ) で画像 (128x128 Uint8) を合計しようとしていますが、合計は 255 の値までしか上がりません。
これは、私の変数に Uint8 か何かが割り当てられているということですか? もしそうなら、どうすればこれを変更できますか?
乾杯!
はい、おそらくあなたのデータは Uint8 型です。ただし、ループして合計する必要はありませんsum
。関数を使用するだけです。データが次の場所にあると仮定しますx
。
total = sum(double(x(:)))
sum
double(x)
単一の次元で動作するため、直接渡した場合、1x128
行列が返されます。ここでは、( を使用して) 1 次元ベクトルに再形成されたすべてのデータを渡し(:)
、関数を使用して double に変換されていdouble
ます。
変数のタイプは、名前とサイズとともにワークスペース ウィンドウに表示されることに注意してください。