我想在for循环中执行逻辑语句。
如果我的图像尺寸为480(高度)×640(宽度),我想在一个部分扫描图像,这部分是宽度635到640之间的整个高度。我想知道是否有任何(x,y)坐标可在单元格“cellData”中找到。该单元格包含整个(x,y)坐标列表,可以在整个图像中找到。
h = height
w = width
for h = 1:480
for w = 635:640
if cellData = 1;
cellData(x,y) = SecondCoordinate(x,y);
end
end
end
基本上我试图在上面提到的部分中选择一个点。该点必须来自单元格“cellData”。我这样做是否正确?代码在cellData中检测到的第一个(x,y)坐标是否会被存储为“SecondCoordinate(x,y)”中的(x,y)坐标?
答案 0 :(得分:3)
你应该看看find。它不仅比使用嵌套for循环的当前方法短得多,而且效率更高。
[row, col] = find(cellData)
会返回cellData
不为零的所有坐标。
如果cellData包含除了1和0之外的其他值,则它将是
[row, col] = find(cellData ~= 0)