0

ピクセルが の画像に属しているかどうかを調べる次の関数を作成しましたmatlab

最初は、セット内の数値が次のようなベクトルに属しているかのようにテストしたかったのです。

function traverse_pixels(img)
for i:1:length(img)
    c(i) = img(i)
end

しかし、たとえば次のコマンドを実行すると、最後にエラーが表示されます。

>> A = [ 34 565 456 535 34 54 5 5 4532 434 2345 234 32332434];
>> traverse_pixels(A);
??? Error: File: traverse_pixels.m Line: 2 Column: 6
Unexpected MATLAB operator.

何故ですか?どうすれば問題を解決できますか?

ありがとう。

4

2 に答える 2

2

for ループの先頭に構文エラーがあります。次のようになっているはずです。

for i = 1:length(img)

また、配列に特定の値が含まれているかどうかを確認するには、次を使用できます。

A = [1 2 3]
if sum(A==2)>0
    disp('there is at least one 2 in A')
end

forループが含まれていないため、これはより高速になるはずです。

于 2013-02-08T09:50:35.237 に答える
2

i = 1 の場合: 長さ (画像)

ばかげたエラー、:ではなく=です

于 2013-02-08T09:51:03.640 に答える