我正在使用JavaCV在Android上开发人脸识别应用程序。我目前在访问facesata.xml文件时遇到问题,该文件将包含受过训练的图像中的数据。这是我的代码:
CvFileStorage fileStorage;
fileStorage = cvOpenFileStorage("/sdcard/external_sd/facedata.xml", null, CV_STORAGE_WRITE, null);
cvOpenFileStorage returns null
我不确定这是JavaCV的问题还是我做错了。它应该非常直接。
答案 0 :(得分:0)
我用过这个,看似完全一样,我的代码是:
fileStorage = cvOpenFileStorage("/sdcard/FaceDB/facedata.xml", // filename
null, // memstorage
CV_STORAGE_WRITE, // flags
null); // encoding
仅仅从查看文件路径,我会说这很可能是错误的,因为在你的SD卡中有一个名为external_sd的文件夹看起来很奇怪。 如果不是它可能是另一个问题,我发现很多奇怪的问题很难用JavaCV拍摄
答案 1 :(得分:0)
它接缝,cvOpenFileStorage无法为facesata.xml分配内存。 当我创建大尺寸(20meg)的facingata.xml时,manualy,它可以写入facesata.xml文件。 因此,只需在目录中复制一个大尺寸的facesata.xml文件(" / sdcard / external_sd /")。