整个过程分为两步: 1. 创建样本 2. 训练分类器现在让我一一讲述。 1. 创建样本◆样本分两种: 正样本与负样本( 也有人翻译成: 正例样本和反例样本), 其中正样本是指待检目标样本( 例如人脸,汽车,鼻子等) ,负样本指其它任意图片。◆所有样本图片都应该有同一尺寸,如 20 * 20 ,并放在相应文件目录下, ◆集合文件格式( collection file format )和描述文件格式( description file format ) 集合文件格式( collection file format )就是如下形的描述文件: [filename] [filename] [filename] ……描述文件格式( description file format )就是如下形的描述文件: [filename] [# of objects] [[xy width height] [... 2nd object] ...] [filename] [# of objects] [[xy width height] [... 2nd object] ...] [filename] [# of objects] [[xy width height] [... 2nd object] ...] ……. (x, y) 指左上角的坐标, width 和 height 分别是样本的宽和高,这里我的图片是 20*20 的, 所以两个值都是 20 ◆负样本用集合文件格式描述,正样本用描述文件格式描述!(这点网上很多文章都搞错了!) ▼创建样本步骤: 一. 把所有正样本图片放在 posdata 的文件夹下, 把所有负样本图片放在 negdata 文件夹下(这里我以人脸图片样本为例) (注:以上这些 20*20 的图片均来自 MIT 人脸库,可以在 csdn 下载) 二. 分别为正样本和负样本创建描述文件 A. 为正样本创建描述文件格式文件 , 并且把这个文件放在与样本图片同一目录下, 例如我的目录为 C:/ a) 在命令行下输入以下命令: dir /b> b) 打开 , 按 ctrl+h, 把所有的 bmp 换成 bmp 100 20 20 c) 删除 最后一行的“ ” d) 结果如下: B. 为负样本创建集合文件格式文件 , 并且把这个文件放在与样本图片同一目录下, 例如我的目录为 I:/negdata a) 在命令行下输入以下命令: dir /b> b) 删除 最后一行的“ ” c) 结果如下: 三. 创建样本。 Opencv 自带有创建样本的 exe 文件,在…/ 目录下, 这里我创建 10 个 sample: 命令是: -info C:/ -vec -num 10 -w 20 -h 20 如图: 结果如图: (关于 的参数用法,在参考英文资料网址 http://note./SciSoft
训练样本创造 来自淘豆网m.daumloan.com转载请标明出处.