1、圖片識別文字
導入框架
#import <Vision/Vision.h>
#import <VisionKit/VisionKit.h>
- (void)documentCameraViewController:(UIImage *)image {
if (@available(iOS 13.0, *)) {
VNRecognizeTextRequest *request = [[VNRecognizeTextRequest alloc] initWithCompletionHandler:^(VNRequest * _Nonnull request, NSError * _Nullable error) {
if (error) {
NSLog(@"%@", error);
return;
}
NSLog(@"開始識別");
int i =1;
for (VNRecognizedTextObservation *observation in request.results) {
NSString *text = [observation topCandidates:1].firstObject.string;
NSLog(@"識別片段%d -> 識別結果:%@",i, text);
i++;
}
NSLog(@"識別結束");
}];
request.recognitionLevel = VNRequestTextRecognitionLevelAccurate; // 可以選擇 accurate 或 fast 兩種模式
NSArray<NSString *> *customWords = @[@"卡密", @"卡號"];
[request setCustomWords:customWords];
// 設置識別區域和識別語言
request.regionOfInterest = CGRectMake(0, 0, 1, 1); // 全圖識別
request.recognitionLanguages = @[@"zh-Hans"]; // 指定識別語言為中文
VNImageRequestHandler *handler = [[VNImageRequestHandler alloc] initWithCGImage:image.CGImage options:@{}];
[handler performRequests:@[request] error:nil];
} else {
// Fallback on earlier versions
}
}