【发布时间】:2011-06-30 13:36:36
【问题描述】:
我正在尝试检测绿色场地上物体上的图案,该图案由三种颜色(两侧为粉红色标记,中间为蓝色标记)组成,排列得像个交通信号灯。
起初,我尝试将网络摄像头中的图像转换为 hsv 颜色空间并使用 cvInRangeS 隔离颜色,但由于白天房间内光线的变化,这变得有问题,我要么得到误报,要么失去对物体的追踪。
然后我通过修改 find_obj.cpp 尝试了 SURF,问题是 opencv 只能在我的标记上检测到 2 个冲浪点,这不足以从代码中找到它,看来我至少需要 4 个,我试着玩冲浪参数,但这并没有改变任何东西。
我在谷歌搜索时也遇到了这个,
http://wiki.elphel.com/index.php?title=OpenCV_Tennis_balls_recognizing_tutorial&redirect=no
这表示我也可以使用机器学习来选择我感兴趣的颜色范围,但我找不到任何关于如何做到这一点的信息。
我的问题是,OpenCV 中有什么东西可以让我检测到标记吗?
编辑:关于尝试 haar 训练的另一个问题,我的背景将始终是相同颜色的相同表面,使用相同的对象标记,我可以用 20 个正面 20 个负面图像训练分类器,还是我仍然需要数千张图像让它识别?
【问题讨论】:
-
你在某个地方有一堆示例图像和一些代码吗?
-
对于此类问题,示例图像确实是必须的。听起来很简单,但您需要查看图像(包括您的失败案例)才能说出一些信息。
标签: image-processing opencv pattern-matching computer-vision