一直在复习期末考试,没能及时的将整个检测过程写来了。正好最近考完了,而且上个月做的检测结果出现部分的漏检,于是决定从头再来一次,就当做是加深印象了。做的这个实验是百香果的识别与检测,类似行人和人脸检测,下面简单写点自己对训练级联分类器整个流程浅薄的认识。下面就开始啦,整个训练检测过程主要是这样的 :样本处理—>训练分类器—>目标检测。
一:样本的处理
1:正样本的处理。正样本,也就是我们包含需要检测的目标的样本集,如行人检测当中的行人、人脸识别当中的人脸。这里就需要我们自己准备样本了,拍照或者是提取视频帧。一般在正式使用正样本之前需要对其进行归一化处理,人工裁剪很难保证精度而且费时费力,可以用一段精简的matlab程序就可以解决,作用是将尺寸不一的正样本归一化成大小统一的如30X30、50X50的训练样本。然后就是重命名问题了,简单来做就是按数字排序来命名,1.jpg、2.jpg。。n.jpg以此类推,接着就要运用批处理命令,获取正样本路径列表,这其实就是为了之后生成正样本的的VEC文件做准备。
其中/s是取绝对路径,/b只取当前路径,我们用的是/b俩者都可,只是在获得正样本vec文件是命令书写差异而已。
生成的文件格式如图所示,其中要把非样本路径的删掉,然后再将jpg替换成jpg 1 0 0 m m ,1代表个数,可以理解成正样本为1,
后四位代表图像坐标 left top width height。至此,正样本准备已经结束,下面就是生成vec文件了,vec文件其实就是保存的每一个samples图,