Image 检查像素是否属于图像
我编写了以下函数,用于在Image 检查像素是否属于图像,image,matlab,pixel,belongs-to,Image,Matlab,Pixel,Belongs To,我编写了以下函数,用于在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
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.
为什么呢?我怎样才能解决这个问题
谢谢。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循环,这应该更快。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循环,因此速度应该更快。对于i=1:length(图像)
愚蠢的错误,不是:,对于i=1:length(图像),它是=
愚蠢的错误,不是:,它是=而不是
sum(x==k)>0
我建议使用any(x==k)
我不知道这个解决方案,它甚至更漂亮。我建议使用sum(x==k)>0
而不是any(x==k)
我不知道这个解决方案,注意,要测试是否相等,还需要输入c(i)
,并且需要使用=
而不是=
。现在您只需为局部变量c
赋值。请注意,要测试是否相等,还需要输入c(i)
,并且需要使用=
而不是=
。现在您只需为局部变量c
赋值。