【笔记】Swift实现离线OCR识别

前言

Swift实现离线OCR识别

正文

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
let requestHandler = VNImageRequestHandler(cgImage: cgImage)
let request = VNRecognizeTextRequest() { (request: VNRequest?, error: Error?) in
if let error = error {
print("ERROR: \(error)")
return
}
guard let results = request?.results, results.count > 0 else {
print("No text found")
return
}

for result in results {
if let observation = result as? VNRecognizedTextObservation {
for text in observation.topCandidates(1) {
let string = text.string
print("OCR识别结果: \(string)")
}
}
}
}
request.recognitionLevel = .accurate
// 设置文本识别的语言 ["en-US", "fr-FR", "it-IT", "de-DE", "es-ES", "pt-BR", "zh-Hans", "zh-Hant", "yue-Hans", "yue-Hant", "ko-KR", "ja-JP", "ru-RU", "uk-UA", "th-TH", "vi-VT"]
request.recognitionLanguages = ["en"]
do {
try requestHandler.perform([request])
} catch {
print("Unable to perform the requests: \(error).")
}

完成

参考文献

叶落阁的博客
CSDN——zhonguncle