2017-09-26 5 views
0

Im Verwenden von Tesseract für Texterkennung. Mein Problem ist, das Foto aus der Fotobibliothek zu bekommen und dann tesseract zu verwenden.xcode/tesseract, verwenden Sie Bild aus Fotobibliothek

Mein Code:

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) %") 
    } 

} 

in der Zeile:

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

heißt es:

Kann nicht konvertieren Wert vom Typ UIImagePickerController

Wie behebe ich das?

Antwort

1

Sie deklarieren image Objekt als Typ UIImagePickerController:

let image = UIImagePickerController() 

Doch, bist du es als String in UIImage(named: image)?... vorbei.

Sie müssen eine Zeichenfolge für den Initialisierer UIImage(named: String) wie UIImage(named: "myImage.png") setzen.
Wenn Sie möchten, dass der Benutzer in der Lage ist, ein Bild auszuwählen und es dann zu verarbeiten, müssen Sie das Bild aus der UIImagePickerController auswählen und dann dieses Bild verarbeiten.
Es gibt viele Tutorials zu diesem Thema online verfügbar, wie this one.

Verwandte Themen