Xcode/tesseract,使用图片库中的图像



im使用tesseract进行文本识别。我的问题是从照片库中获取照片,然后使用Tesseract。

我的代码:

import UIKit
import TesseractOCR
class ViewController: UIViewController, G8TesseractDelegate, 
UINavigationControllerDelegate, UIImagePickerControllerDelegate {
@IBOutlet weak var TextView: UITextView!
@IBAction func takePhoto(_ sender: UIButton) {
    let image = UIImagePickerController()
    image.delegate = self
    image.sourceType = UIImagePickerControllerSourceType.photoLibrary
    image.allowsEditing = false

    self.present(image, animated: true){
    }

    if let tesseract = G8Tesseract(language: "dan+eng") {
        tesseract.delegate = self
        tesseract.image = UIImage(named: image)?.g8_blackAndWhite()
        tesseract.recognize()
        TextView.text = tesseract.recognizedText
    }
    func progressImageRecognition(for tesseract: G8Tesseract!) {
        print("Recognition Progress (tesseract.progress) %")
    }
}

在线:

tesseract.image = UIImage(named: image)?.g8_blackAndWhite()

它说:

无法转换类型的uiimagePickerController

的值

我该如何解决?

您将image对象声明为类型UIImagePickerController

let image = UIImagePickerController()

然而,您将其作为字符串传递在UIImage(named: image)?...中。

您需要为初始器UIImage(named: String)放置一个字符串,例如UIImage(named: "myImage.png")
如果您希望用户能够选择图像然后对其进行处理,则需要从UIImagePickerController获取图像,然后处理该图像。
关于此主题有很多教程在线可用,例如此主题。

最新更新