用opencv进行人脸识别,在训练阶段利用opencv自带的函数cvCalcEigenObjects获取pca的子空间,代码如下:
cvCalcEigenObjects(
nTrainFaces,
//参加训练的图片
(void*)faceImgArr,
//得到的特征脸
(void*)eigenVectArr,
CV_EIGOBJ_NO_CALLBACK,
0,
0,
&calcLimit,
//得到的平均脸
pAvgTrainImg,
eigenValMat->data.fl
);
执行该函数后,用cvShowImage()进行特征脸eigenVectArr的显示,特征脸显示结果都是一片漆黑,看网页上正常显示的特征脸应该是这样的吧图片说明
而且我得出的平均脸pAvgTraining显示为一张白色图片,也是什么都没有的。
我用的人脸库是jaffe,想问下各位大神是什么原因导致无法得出特征脸和平均脸?
在此谢过。
这个,感觉可能是你数据的问题吧,我想你单步调试一下看看,每个参数是不是都符合cvCalcEigenObjects的规则,
你说得到纯白黑的结果可能就是函数没有算出来吧
我也是新手,我猜测的