繁体   English   中英

使用for Loop检测坐标的Matlab图像处理

[英]Matlab Image Processing Using for Loop to detect a coordinate

我想在for循环中执行逻辑语句。

如果我的图像尺寸为480(高度)乘以640(宽度),则我想在一个部分中扫描图像,该部分是宽度635至640之间的整个高度。我想找出是否有在单元格“ cellData”中找到的(x,y)坐标。 该单元格包含(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)坐标是否将作为(x,y)坐标存储在“ SecondCoordinate(x,y)”中?

您应该看看find 与嵌套循环的当前方法相比,它不仅更短,而且效率更高。

[row, col] = find(cellData)将返回cellData不为零的所有坐标。

如果cellData包含除一和零以外的其他值,则为

[row, col] = find(cellData ~= 0)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM