Veuillez utiliser le cadre de vision d'Apple au lieu de Swiftocr. Il est très rapide, précis et beaucoup moins capricieux.
Swiftocr est une bibliothèque OCR rapide et simple écrite dans Swift. Il utilise un réseau neuronal pour la reconnaissance d'image. À l'heure actuelle, SwiftOCR est optimisé pour reconnaître les codes alphanumériques courts, une longue ligne (par exemple Di4c9cm). Nous prenons actuellement en charge iOS et OS X.
C'est une très bonne question.
Si vous voulez reconnaître le texte normal comme un poème ou un article de presse, optez pour Tesseract, mais si vous voulez reconnaître les codes alphanumériques courts (par exemple, les cartes-cadeaux), je vous conseille de choisir Swiftocr car c'est là que cela dépasse.
Tesseract est écrit en C ++ et plus de 30 ans. Pour l'utiliser, vous devez d'abord écrire un wrapper objectif-c ++ pour cela. Le principal problème qui ralentit Tesseract est la façon dont la mémoire est gérée. Trop d'allocations de mémoire et de versions ralentissent.
J'ai fait quelques tests sur plus de 50 images difficiles contenant des codes alphanumériques. Les résultats sont étonnants. Swiftocr a battu Tesseract dans chaque catégorie.
| Swiftocr | Tisseract | |
|---|---|---|
| Vitesse | 0,08 sec. | 0,63 sec. |
| Précision | 97,7% | 45,2% |
| Processeur | ~ 30% | ~ 90% |
| Mémoire | 45 Mb | 73 MB |
Swiftocr est disponible via Cocoapods. Pour l'installer, ajoutez simplement la ligne suivante à votre podfile:
pod 'SwiftOCR'
Si vous avez déjà utilisé Tesseract, vous savez à quel point il peut être épuisant de mettre en œuvre l'OCR dans votre projet. Swiftocr est exactement l'opposé de Tesseract. Il peut être implémenté en utilisant seulement 6 lignes de code .
import SwiftOCR
let swiftOCRInstance = SwiftOCR ( )
swiftOCRInstance . recognize ( myImage ) { recognizedString in
print ( recognizedString )
} Pour améliorer votre expérience avec SWIFTOCC, vous devez définir votre configuration de build à Release .
La formation de Swiftocr est assez facile. Il n'y a que quelques étapes à faire, avant de pouvoir reconnaître une nouvelle police.
Le moyen le plus simple de former Swiftocr est d'utiliser l'application de formation qui peut être trouvée sous /example/OS X/SwiftOCR Training . Sélectionnez d'abord les polices que vous souhaitez entraîner dans la liste. Après cela, vous pouvez modifier les personnages que vous souhaitez vous entraîner dans le champ de texte. Enfin, vous devez appuyer sur le bouton Start Testing . La seule chose qui reste maintenant, c'est attendre. Selon vos paramètres, cela peut prendre entre deux et deux minutes. Après environ deux minutes, vous pouvez arrêter manuellement la formation. Appuyez sur le bouton Save le réseau formé sur votre bureau. Le bouton Test est utilisé pour évaluer la précision du réseau neuronal qualifié.
Voici un exemple d'image. Swiftocr n'a aucun problème à le reconnaître. Si vous essayez de reconnaître la même image en utilisant Tesseract, la sortie est «LabMensw»?!?! ?.

Cette image est difficile à reconnaître pour deux raisons:
The code in this repository is licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Remarque : Ce logiciel dépend des autres packages qui peuvent être sous licence différentes licences open source.