tutorial library descargar ios swift ocr tesseract

ios - library - Los datos entrenados de Tesseract no funcionan en el proyecto Swift 3.0 utilizando la versiĆ³n 4.0



tesseract ocr swift 4 (2)

Estoy intentando usar Tesseract-OCR-iOS en un nuevo proyecto Swift 3.0. Estoy usando Xcode versión 8.1 (8B62). CocoaPods es la versión 1.1.1.

Cuando intento usar tesseract.recognize() , mi aplicación falla y obtengo el siguiente resultado en la consola:

actual_tessdata_num_entries_ <= TESSDATA_NUM_ENTRIES:Error:Assert failed:in file tessdatamanager.cpp, line 53

Encontré esta publicación , que suena que estoy usando la versión incorrecta de traineddata . Descargué tessdata del tessdata tesseract-ocr / tessdata , así que estoy desconcertado de por qué tendría una discrepancia en los números de versión.

Cualquier sugerencia sobre cómo hacer funcionar Tesseract es muy apreciada. A continuación hay información adicional sobre mi configuración.

Podfile es como se ve mi Podfile :

# Uncomment the next line to define a global platform for your project platform :ios, ''9.0'' target ''TesseractDemo'' do # Comment the next line if you''re not using Swift and don''t want to use dynamic frameworks use_frameworks! # Pods for TesseractDemo pod ''TesseractOCRiOS'', ''4.0.0'' end

He arrastrado una carpeta de tessdata contiene eng.traineddata al directorio raíz de mi proyecto fuera de Xcode y arrastré una referencia desde Finder al Project Navigator de Xcode.

Todo funciona bien hasta este punto. No hay errores de compilación, UIViewController enlazador, etc. En un UIViewController estoy importando TesseratOCR y llamándolo así:

// MARK: - OCR Methods func scanImage(image: UIImage) { if let tesseract = G8Tesseract(language: "eng") { tesseract.delegate = self tesseract.image = imageToScan?.g8_blackAndWhite() tesseract.recognize() textView.text = tesseract.recognizedText } }

Actualizar Encontré un enlace a un repositorio de archivos entrenados de datos para la versión 4.0 . Descubrí mi antiguo archivo eng.traineddata y lo reemplacé con el del repositorio 4.0. Me sale el mismo error que hace referencia a la misma línea.


Ayer tuve el mismo problema, creo que el problema está en el diccionario, acabo de cambiar el diccionario de github para el "Tutorial brillante de Tesseract de Lyndsey Scott en el diccionario de Ray Wenderlich" (líneas publicadas anteriormente) y funciona muy bien. Tengo xcode 9.4.1 y reconozco el archivo lyndsey de una manera diferente a la del archivo github


La versión actual de eng.traineddata vinculada anteriormente en GitHub no funcionará con la versión actual de Tesseract-OCR-iOS .

Las instrucciones de instalación publicadas en GitHub funcionan a la perfección si tienes el archivo <language>.traineddata .

Descubrí esto después de arrastrar el eng.traineddata del brillante tutorial Tesseract de Lyndsey Scott sobre Ray Wenderlich .

Este repositorio contiene el archivo eng.traineddata que necesitaba para que Tesseract funcionara. No estoy seguro de si eso se aplica a todos los idiomas.