如何使用 OpenCV 排除被遮挡的对象?

问题描述 投票:0回答:0

我是一名学生,准备参加一个涉及使用OpenCV等库进行识别和处理的比赛。我已经学习 OpenCV 的基础知识一个多月了,我遇到了一个非常棘手的问题。我能够使用 OpenCV 识别具有五种随机类型和七种颜色的多边形。我已经解决了识别颜色和形状的问题,但我不知道如何排除被遮挡的多边形。详情请看第二栏

我正在尝试使用Android版的OpenCV来解决多边形识别的问题。目前使用的方法是使用

inRange()
方法得到二值图像,然后使用
findContours()
方法求轮廓,对得到的轮廓进行开闭操作,然后使用
approxPolyDP()
方法进行多边形逼近.最后用
convexHull()
方法检测角点,判断多边形的类型。这种方法可以识别简单的多边形,但它也可以识别被前景覆盖的多边形,这些多边形是无效的(应该排除)。我应该怎么做才能排除这些被覆盖的多边形?

示例图片: enter image description here

有人可以帮助我吗?非常感谢!

java android opencv opencv4android
© www.soinside.com 2019 - 2024. All rights reserved.