我面临的问题是,当我运行opencv代码来检测图像中的轮廓时,我无法进入图像的边界,因此程序会在图像的边界上获得轮廓。
Mat3b xyres;
cvtColor(img, xyres, COLOR_GRAY2BGR);
for (int i = 0; i < rects.size(); ++i)
{
rectangle(xyres, rects[i], Scalar(0, 0, 255), 2);
}
Size size2(700, 800);
resize(xyres, xyres, size2);
imshow("XY-Cut Result", xyres);
waitKey();
答案 0 :(得分:2)
findContours
我们white objects on black background
。
虽然您的二进制图片为black chars on white background
,但您应threshold
使用标记为THRESH_BINARY_INV
的图片,以获得黑色白色。然后执行findContours
。