OpenCV Train Cascade创建样本

时间:2015-10-28 19:33:18

标签: opencv object-detection haar-classifier

我想要一个HAAR级联培训来检测图片上的文件。所以目前我有大约700张随机纸张的图像。那些图像只包含一张纸,没有背景。

当我用' opencv_createsamples -img paper1.png -vec vec -num 10 -w 250 -h 177 -bg negatives'创建一个vec文件时使用10张图像创建一张纸的vec文件。宽度和高度是任意的,但比例与原始纸张尺寸相匹配。

现在,当我查看vec文件时,有很多图像是纸张旋转或歪斜的。没关系,但很多论文都在图像之外。旋转正方形时,例如左上角或右上角落在图像之外。

我不想识别图片上看不到的纸张。那么我该如何解决这个问题呢?

图片显示了vec文件中的图像以说明问题。在此图像中删除了纸张的内容。 paper in vec file with contents removed afterwards

1 个答案:

答案 0 :(得分:1)

opencv_createsamples还提供了三个有关旋转的参数

-maxxangle <max_x_rotation_angle>
-maxyangle <max_y_rotation_angle>
-maxzangle <max_z_rotation_angle>

其中所有角度都以弧度给出。

根据opencv_createsamples的来源,这些参数使用默认值

进行初始化
double maxxangle = 1.1;
double maxyangle = 1.1;
double maxzangle = 0.5;

因此,当遗漏时,opencv_createsamples仍然会对您的样本应用旋转。

您现在可以尝试手动将最大角度设置为0。