Я знаю, что это тот вопрос, который можно задать каждый день, но факт в том, что ответ может быть различным для каждого вопроса, и я еще не нашел его.Использование незаявленного идентификатора в ViewController
В настоящее время я являюсь настоящим новичком в Objective C, и я разрабатываю приложение с использованием рамки OpenCV
.
Я слежу за этим website для обучения , а затем у меня возникла проблема.
Я скопировал/вставил 3 методы, которые даны на сайте, чтобы преобразовать резюме :: Mat в UIImage и UIImage в сорте :: Мат, но я не могу их использовать:
Мой * .PCH файл :
#import <Availability.h>
#ifndef __IPHONE_5_0
#warning "This project uses features only available in iOS SDK 5.0 and later."
#endif
#ifdef __cplusplus
#import <opencv2/opencv.hpp>
#endif
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#endif
мой ViewController.hh файл
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
- (cv::Mat)cvMatFromUIImage:(UIImage *)image;
- (cv::Mat)cvMatGrayFromUIImage:(UIImage *)image;
- (UIImage *)UIImageFromCVMat:(cv::Mat)cvMat;
@end
и мой ViewController.mm файл
#import "ViewController.hh"
@interface ViewController()
@end
@implementation ViewController
- (cv::Mat)cvMatFromUIImage:(UIImage *)image
{
@@@//what is given in the linked website
return cvMat;
}
- (cv::Mat)cvMatGrayFromUIImage:(UIImage *)image
{
@@@//what is given in the linked website
return cvMat;
}
-(UIImage *)UIImageFromCVMat:(cv::Mat)cvMat
{
@@@//what is given in the linked website
return finalImage;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
NSString* filename = [[NSBundle mainBundle] pathForResource:@"openCV" ofType:@"jpg"];
UIImage *image = [UIImage imageWithContentsOfFile:filename];
cv::Mat inputMat = cvMatFromUIImage(image);
UIImage *newImage = UIImageFromCVMat(inputMat);
self.view.backgroundColor = [UIColor colorWithPatternImage:newImage];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"HelloWorld !" message:@"Welcome to OpenCV !" delegate:self cancelButtonTitle:@"Continue" otherButtonTitles:nil, nil];
[alert show];
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
@end
2 ошибки указаны на линиях, которые находятся в одном (void) viewDidLoad
в файле .mm
, в нем говорится, что оба cvMatFromUIImage
и UIImageFromCVMat
не объявлены.
Возможно, это был глупый вопрос, я думаю, что что-то пропустил, но не знаю, что.
Пожалуйста, помогите мне :)
Хорошо, спасибо, теперь получил отчёт, но шаг за шагом, все будет хорошо ^^ – Tiffado