À propos du projet
EasyOCR est une bibliothèque open-source de reconnaissance optique de caractères (OCR) conçue pour être prête à l'emploi dès la sortie de la boîte. Selon son README, elle prend en charge plus de 80 langues et tous les systèmes d'écriture populaires, y compris le latin, le chinois, l'arabe, le devanagari et le cyrillique.
L'installation se fait via pip (`pip install easyocr`), et un Dockerfile est également fourni. Sous Windows, il est conseillé d'installer PyTorch et torchvision préalablement. Les poids des modèles pour les langues sélectionnées sont téléchargés automatiquement ou peuvent être placés manuellement dans le dossier `~/.EasyOCR/model`.
L'utilisation de base en Python consiste à charger un lecteur une seule fois puis à traiter des images :
```python
import easyocr
reader = easyocr.Reader(['ch_sim','en'])
result = reader.readtext('chinese.jpg')
```
La sortie est une liste d'éléments, chacun contenant une boîte englobante, le texte détecté et un score de confiance. L'option `detail=0` ne renvoie que les chaînes reconnues. Les entrées peuvent être des chemins de fichiers, des objets d'image OpenCV/numpy, des octets d'image ou une URL vers une image brute. Le mode CPU uniquement est disponible avec `gpu=False`. Une interface en ligne de commande est également incluse, par exemple `easyocr -l ch_sim en -f chinese.jpg --detail=1 --gpu=True`.
Le README indique que plusieurs langues peuvent être passées simultanément, bien que toutes les combinaisons ne soient pas compatibles ; l'anglais est décrit comme compatible avec chaque langue, et les langues partageant des caractères communs sont généralement compatibles entre elles.
Sous le capot, la détection utilise l'algorithme CRAFT et la reconnaissance emploie un CRNN composé d'extraction de caractéristiques (ResNet/VGG), d'étiquetage de séquence (LSTM) et de décodage CTC, le tout exécuté avec PyTorch. Le projet reconnaît plusieurs dépôts de recherche amont et articles. Les utilisateurs peuvent entraîner ou utiliser leurs propres modèles de reconnaissance et de détection, avec une documentation liée pour les deux.
La feuille de route évoque le support prévu du texte manuscrit et une restructuration permettant d'échanger les algorithmes de détection et de reconnaissance. Les contributions sont les bienvenues via des pull requests, des signalements d'incidents et l'ajout de langues ; l'ajout d'une nouvelle langue nécessite des fichiers de caractères et de dictionnaire. Le README précise également que les problèmes datant de plus de six mois peuvent être fermés automatiquement, et que Jaided AI propose un support entreprise.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.