2012-11-09 18 views
0

我正在使用JavaCV在Android臉部識別應用問題。我目前遇到的問題是訪問facesata.xml文件,該文件將包含訓練圖像中的數據。這是我的代碼:Android的臉部識別應用程序 - 與CvOpenFileStorage()

CvFileStorage fileStorage; 

fileStorage = cvOpenFileStorage("/sdcard/external_sd/facedata.xml", null,   CV_STORAGE_WRITE, null); 

cvOpenFileStorage returns null 

我不確定這是JavaCV的問題還是我做錯了。它應該非常簡單。

+0

請確保您提供的文件的路徑是正確的。 – nikhil

回答

0

我都用這個,貌似做同樣的事情,我的代碼是:

fileStorage = cvOpenFileStorage("/sdcard/FaceDB/facedata.xml", // filename 
      null, // memstorage 
      CV_STORAGE_WRITE, // flags 
      null); // encoding 

剛剛從查看文件的路徑我會說,最有可能是錯誤的,因爲它看起來很奇怪有在您的SD卡中名爲external_sd的文件夾。 如果不是這可能是另一個問題,我發現了很多奇怪的問題,很難用JavaCV拍攝時遇到問題。

0

它的接縫,cvOpenFileStorage無法爲facesata.xml分配內存。 當我使用大尺寸(20meg)創建facesata.xml時,它具有手工操作的功能,可以寫入facesata.xml文件。 因此,只需在您的目錄(「/ sdcard/external_sd /」)中複製大尺寸的facesata.xml文件即可。