我试图在OpenCV的帮助下检测输入视频流中的形状(十字形).目前我正在设法获得我的十字架的二进制图像效果非常好.不幸的是,我决定提取的blob是否是交叉的算法并不是很好.如下图所示,并非在某些视角下检测到所有角落.
我正在使用findContours()并approxPolyDP()获得我的轮廓的近似值.如果我在此近似曲线中检测到12个角/顶点,则假定斑点为十字形.
findContours()
approxPolyDP()
有没有更好的方法来解决这个问题?我想到了SIFT,但算法必须实时执行,我读到SIFT并不真正适合实时.
c++ video opencv feature-detection
c++ ×1
feature-detection ×1
opencv ×1
video ×1