目前我正在尝试使用OpenCV和Fisherface算法进行性别识别/分类。目前,我正在使用不同的照明来训练我的程序,大约有2500多张图像。
问题是我需要35分钟才能执行我的文件。每次我执行我的文件,我必须重新训练我的程序。这将处理2500多张图像,并在视频人脸识别程序出现前需要35分钟。
我在终端的执行行
./main haarcascade_frontalface_alt.xml image_to_train.txt 0
./ main将是Windows中cpp / .exe的对象构建
haarcascade_frontalface_alt.xml用于opencv提供的面部检测
image_to_train.txt是2500张图片的地方
0适用于网络摄像头
无论如何都要在iamges上预先建立.txt文件,所以我不必每次都重新训练它们。我在考虑一个数据库,但是数据库通常会再次通过整个数据库运行单个图像处理(暴力概念)。
该计划的培训代码是整个视频识别过程中的这两行。图像被逐一传递到这些函数中,用于2500个图像,从而执行时间。看到OpenCV文档,我仍然不知道如何从中提取数据并处理它们以使执行速度更快。一个预制的激励训练师。
Ptr<FaceRecognizer> model = createFisherFaceRecognizer();
model->train(images, labels);