Fork me on GitHub

haar+adaboost制作自己的分类器过程

做haar特征的原因

  1. 有些深度学习的目标检测算法有时候在物体非常相近的时候,误检率会非常高。所以我们可以先进行深度学习然后检测出大概的区域,然后再使用传统的机器学习算法来检测
  2. opencv里面只有眼,脸之类的分类器,如果要实现自己的分类器就需要自己训练

https://blog.csdn.net/baolinq/article/details/78579317 # 可以从这里看一下有什么传统的算法

以下几个网站都可以学

  1. https://blog.csdn.net/weixin_30536513/article/details/96878204?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-2

  2. https://blog.csdn.net/weixin_41695564/article/details/80071090(必看)

  3. https://blog.csdn.net/zhuangxiaobin/article/details/25476833(必看)

  4. https://blog.csdn.net/yangdashi888/article/details/80385041

  5. https://blog.csdn.net/xiao_lxl/article/details/44655819

注意的点

  1. 参数搞清楚就好了,一定要看清楚参数!,可以直接在百度搜xxx.exe的参数意义
  2. 如果想在Windows里面运行Linux命令就用gitbash打开文件夹然后运行就ok了
  3. haar_trainings和traincascade是有不同的,traincascade可以选择不同的训练特征,这个自己在设置参数的时候改变就好了
  4. 非最大抑制(待写)
  5. 负样本的意义(待写)

问题

  1. 如果出现了问题,可以百度搜索用opencv建立自己的分类器(因为这个做haar特征这个过程就是做分类器)
  2. 如果opencv里面没有createsamples.exe文件(opencv没有exe文件),必须用Cmake来编译opencv的那个文件夹才行(必须要去编译)。不知道python可不可以实现,知道的小伙伴可以告诉我

实现代码

https://github.com/deepcourse/cv_tutorial.git

posted @ 2020-05-10 13:05  WalterJ726  阅读(332)  评论(0编辑  收藏  举报