最佳答案
由于红色边框是你自己画的,所以根本不需要分析红色分量。通过这样做,您就像打印 txt 文件屏幕并尝试对其进行 OCR 的人一样!
解决方案:
cv::BoundingBox
围绕第一个红色轮廓点。- 获取矩形的
ROI
并将其存储在单独的cv::Mat
中。 - 创建一个新的 black(
0
)cv::Mat
,其 header 与之前的 cv::Mat 相同。 - 使用
cv::fillPoly
用白色 (255
) 绘制轮廓。 cv::bitwise_and
位于两个cv::Mats
之间。
关于c++ - 提取opencv中特定颜色的形状,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34512002/