使用OpenCV Haar级联分类器查找形状

时间:2012-08-22 14:04:56

标签: image-processing opencv object-recognition

我在一些雷达数据中寻找抛物线。我正在使用OpenCV Haar级联分类器。我的正面图像是20x20 PNG,其中所有像素都是黑色的,除了那些跟踪抛物线形状的像素 - 每个正像的一个抛物线。

我的问题是:这些积极因素会训练分类器寻找带有抛物线的黑匣子,还是会训练分类器来寻找抛物线形状?

我应该在正片上添加一层中等噪音,还是应该是不切实际的清晰和高对比度?

以下是原始数据的示例。

The original data.

这是我使用GIMP执行简单边缘检测后的数据示例。抛物线形状在白框中突出显示

Data after edge detection.

这是我的一个正面形象。

A sample positive image.

1 个答案:

答案 0 :(得分:1)

我想出了一种方法,最初使用OpenCV中的MatchTemplate方法检测抛物线。起初,我使用的是Python cv和后来的cv2库,但我必须确保输入图像是8位无符号整数数组。我最终使用scipy.signal.correlate2d( image, template, mode='same')获得了类似的效果而不那么大惊小怪。 mode='same'将输出大小调整为image的大小。当我完成时,我使用numpy.where()函数执行阈值处理,并使用scipy.ndimage模块打开和关闭以消除盐和胡椒噪声。

这是输出,在阈值处理之前。

enter image description here