我正在尝试使用OpenCV实现面部识别。我已成功使用Haar Transformations来检测图片中的脸部。然而,由于人脸识别需要相同尺寸的图像才能进行训练,我感到很困惑。
Ptr<FaceRecognizer> model = createEigenFaceRecognizer(0,Threshold);
Mat m0 = imread(".\\1.jpg",0);
Mat m1 = imread(".\\2.jpg",0);
Mat m2 = imread(".\\3.jpg",0);
vector<int> labels = {1,2,3};
vector<Mat> m = {m0,m1,m2};
model->train(m,labels); // This throws if the images are not the same size
我应该如何正确实施呢?我应该将所有图像放大到最大图像的尺寸吗?但是在这种情况下,如果图像的其余部分小于最大尺寸图像,我是否会在图像的其余部分填充“透明”颜色?
最诚挚的问候。