【发布时间】:2014-09-09 11:17:28
【问题描述】:
在我的IOS项目中我实现了一个tesseract示例,在这个示例中我需要集成opencv。我用过this sample project,它有默认的tesseract和opencv。
但是我尝试用这个项目实现人脸检测,使用下面的代码,
NSString* cascadePath = [[NSBundle mainBundle]
pathForResource:@"haarcascade_frontalface_alt"
ofType:@"xml"];
faceDetector.load( [cascadePath UTF8String] );
但我收到以下错误:
Undefined symbols for architecture armv7:
"cv::CascadeClassifier::load(std::string const&)", referenced from:
-[ViewController viewDidLoad] in ViewController.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
现在在构建设置 -> C++ 编译器 -> 选择“默认编译器”。我已经尝试了这个link 的编译器设置。如果我这样设置,“Tesseract”代码就会出错。
创建的 faceDetector 如下:
@interface ViewController : UIViewController<UIImagePickerControllerDelegate, UINavigationControllerDelegate, UIActionSheetDelegate>{
UIImagePickerController *mediaPicker;
UIImage *takenImage;
UIImage *processedImage;
cv::CascadeClassifier faceDetector;
}
我该如何解决这个问题?
【问题讨论】:
标签: c++ ios objective-c opencv tesseract