Linux下用OpenCV制作自己的人脸识别xml文件

(个人认为在Linux上比在Windows上方便)

工具   1. opencv_traincascade

          2. opencv_createsamples

          3. 一台安装Linux系统的电脑

首先你的电脑上要安装OpenCV,如果没有安装终端使用命令sudo apt-get opencv -python安装(我是用Python调用opencv)

安装好了在/usr/bin/下就能找到opencv_traincascade和opencv_createsamples  如何没有可以在https://download.csdn.net/download/crazy696/10846394下载

下面将这两个文件复制到一个新建的文件夹下在这两个文件夹下新建neg,pos,data文件夹

pos用来存正片(你的脸部图片我这里用的尺寸是20*20)

neg用来存负片(无关的图片尺寸比正片要大尺寸要一样)

data保存生成的XML文件

正负片最好多一点,比例1:4 到1:5比较好

准备好了素材就可以开始了输入命令  

ls ./neg/*.*>neg.txt

ls ./pos/*.*>pos.dat

   

打开pos.dat用替换加上尺寸等参数 .png  1 0 0 20 20

然后保存,接下来输入命令 

opencv_createsamples -vec pos.vec -info pos.dat -bg neg.txt -w 20 -h 20

其中-w 20 -h 20是正片的尺寸。

生成pos.vec文件,然后输入命令 

opencv_traincascade -data data -vec pos.vec -bg neg.txt -numPos 1000 -numNeg 4500 -numStages 20 -w 20 -h 20 -minHitRate 0.9999 -maxFalseAlarmRate 0.5 -mode ALL

开始训练

-numPos 1000 -numNeg 4500 是正负片的张数

numStages 20是训练的级数,级数越多时间越长但是精度越高,级数尽量多一点不然使用时屏幕上会出现很多框

接下来就是等待了.......

好了之后就会生成cascade.xml文件和一些中间文件

接下来就可以去使用自己训练的文件了。

 

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值