基本上我必须弄清楚object上的标签是否是直的。我有一个物体的边缘图像。我想计算单行中任意一条边的两条边的距离。我的算法涉及到遍历一行,直到找到一个白色像素。然后计算黑色像素的数量,直到找到下一个白色像素。但是,当我运行代码时,答案始终是零。
代码:
for(int i = 0; i < img.cols; i++)
{
int num = nms_result.at<int>(i,100);
//cout <<num<<endl;
if(num > 0) {
stage2 = true;
}
if (stage2 ==true)
counter4++;
{
int num2 = nms_result.at<int>(i,100);
;
if ((num2 < 1) && (counter4 >=1 )) {
counter2++;
}
else counter4 = 0;
}
}
我尝试了很多方法,但似乎都不管用。
发布于 2013-11-14 05:48:22
问题1:如果我没看错你的代码,'num‘和'num2’总是一样的,因为它们在同一个循环中。
问题2:这里的输出是什么?用你的格式有点难以辨别。考虑在嵌套的if中使用一些缩进。
https://stackoverflow.com/questions/19964393
复制相似问题