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