首次学习使用opencv的opencv_traincascade来训练级联分类器,特做记录。
首先是准备正负样本,正样本我准备了1486张64*64的人脸图片,负样本随意寻找了3000张图片,不包含人脸。
工程如下:
data–存放训练出来的数据
neg-背景图片
pos-人脸图片
test-用于测试的图片
准备负样本
将3000张负样本图片放入neg目录下,
进入neg目录,执行dir /b > neg.txt
得到neg.txt文件:
neg-0002.jpg
neg-0003.jpg
neg-0004.jpg
neg-0005.jpg
neg-0006.jpg
neg-0007.jpg
neg-0009.jpg
neg-0010.jpg
...
这样发现无法训练,因为可执行未见和负样本不在同一个目录,所以又使用UE编辑器的列块模式,在所有条目前面加了neg/,最后记得删掉最后一行–一般是文件名
neg/neg-0002.jpg
neg/neg-0003.jpg
neg/neg-0004.jpg
neg/neg-0005.jpg
neg/neg-0006.jpg
neg/neg-0007.jpg
neg/neg-0009.jpg
neg/neg-0010.jpg
...
准备正样本
将1486张64*64的人脸图片放入pos目录下,
进入pos目录,执行dir /b > pos.txt
得到pos.txt文件:
fd_001_1.jpg
fd_001_2.jpg
fd_002_1.jpg
fd_002_2.jpg
fd_003_1.jpg
fd_003_2.jpg
fd_004_1.jpg
...
我们必须给每一个图片添加描述信息&#