python - 如何提高OpenCV中Haar级联的准确性?

标签 python opencv haar-classifier

我已经收集了1000张正(50 * 50)图像和1000张负(50 * 50)图像,并在OpenCV中训练了Haar Cascade。我正在尝试检测手机。
培训代码:

opencv_traincascade -data data -vec crop1.vec -bg mob_neg.txt -numPos 900 -numNeg 900 -numStages 15 -w 50 -h 50 bgcolor 255 -bgthresh 100

级联无法准确检测移动设备(它正在检测移动设备以及许多其他对象,例如鼠标, key ,钱包,手等)
你能帮我解决这个问题吗
我使用连拍模式通过相机拍摄了手机​​的图像。通过不同 Angular 和不同旋转 Angular 捕获正像
负片是从互联网上拍摄的。

我该怎么做才能提高级联精度?

我应该改变正片或负片的尺寸吗?
提前致谢

最佳答案

我非常新手,但发现本文很有帮助:

https://pythonprogramming.net/haar-cascade-object-detection-python-opencv-tutorial/

作者在其中提到了使用负数两倍的正数的经验法则。他还讨论了一种通过使用opencv_createsamples将正图像叠加在负图像上来生成正图像的方法(也会为您旋转正图像)。

他还正在缩放负片,并将其转换为灰度,然后再生成和训练正像样本。

我希望这是有帮助的。

关于python - 如何提高OpenCV中Haar级联的准确性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37670973/

相关文章:

python - 二值化后如何从图像中去除粗糙的线条伪影

c++ - opencv-3.0.0 ubuntu 14.04 "nonfree/nonfree.hpp"构建错误

opencv - 手部检测和跟踪方法

c++ - OpenCV:为什么 Haar 分类器只检测到一张脸和一只眼睛?

python - python中使用shutil.copytree()的问题

python - 如何增加 Seaborn Line 的线条粗细

python - 语法错误: invalid syntax line 138 unexpected error

c++ - 错误 : QueryFrame not a member of cv

python - 在 Visual Studio Code 中运行外部程序时出现 "Unable to find thread for evaluation."

opencv - 手部检测Opencv