使用OpenCV中FindContour函数找外轮廓会找到画布轮廓的解决办法

有时在用mode=RETR_EXTERNAL寻找最外层轮廓时会出现找到的最外层轮廓是画布的轮廓,这时需要调整threshold最后一个参数,即把THRESH_BINARY_INV 改为THRESH_BINARY 或者把THRESH_BINARY 改为THRESH_BINARY_INV,这是因为findContours是从黑色背景中寻找白色轮廓。

Imgproc.threshold (grayMat_1, grayMat_1, 127, 255, Imgproc.THRESH_BINARY_INV);

Imgproc.findContours (grayMat_1, contours, hierarchy, Imgproc.RETR_EXTERNAL, Imgproc.CHAIN_APPROX_NONE);// 找最外层轮廓



猜你喜欢

转载自blog.csdn.net/lw450770448/article/details/69569206