0
我是新來的ios。目前我正在使用一個使用opencv facetracker的應用程序。因此我在Objective-C中使用C++。我的問題是,處理facetracking部分的C++類的構造器需要級聯文件的文件位置。構造函數看起來是這樣的:ios opencv級聯文件的路徑
VideoFaceDetector(const std::string cascadeFilePath);
不幸的是,下面的代碼無法正常工作(文件路徑改變匿名的原因):
const cv::String CASCADE_FILE("/../../../../haarcascade_frontalface_default.xml");
雖然haarcascade_frontalface_default.xml文件是Xcode項目中,它不能被加載。 有沒有辦法在C++代碼中獲取級聯文件的文件路徑?我試過用戶的方法:r4ghu
NSString *faceCascadePath = [[NSBundle mainBundle]
pathForResource:@"<your_cascade_name>"
ofType:@"xml"];
const CFIndex CASCADE_NAME_LEN = 2048;
char *CASCADE_NAME = (char *) malloc(CASCADE_NAME_LEN);
CFStringGetFileSystemRepresentation((CFStringRef)faceCascadePath,
CASCADE_NAME,
CASCADE_NAME_LEN);
if(!face_cascade.load(CASCADE_NAME)) {
cout << "Unable to load the face detector!!!!" << endl;
exit(-1);
}
它沒有爲我工作。 還有別的辦法嗎?
thx