0
我正在尝试使用OpenCV for Android实现面部识别与特征脸。使用OpenCV的PCACompute功能
我有一组训练图像,它们都是100x100像素的灰度图像。我目前使用Highgui.imread来读取这些图像,因此每个图像都是宽度和高度为100的Mat。我试图使用Core.PCACompute函数来查找这组图像的主要组件。
public static void PCACompute(Mat data, Mat mean, Mat eigenvectors, int maxComponents)
所以我的问题是:第一个参数(Mat数据)需要什么尺寸?即使数据只是单个Mat,是否可以传递一组多个图像?
或者我做错了,这不是正确的功能用于特征面?我见过的一个教程使用了一个名为cvCalcEigenObjects的C++函数,但我无法找到等效的Java方法...
在您链接的Cognotics文章(第5部分,第4页)中,他们使用参数nTrainFaces和faceImgArr调用cvCalcEigenObjects。 faceImgArr是一个nTrainFaces图像数组。在特征脸的上下文中,代码中的Mat数据对象是否代表三个脸部图像? – user1031921 2011-12-17 01:31:00