ConfigureTesseractOCR
OCR, configuration
Description
Crée un fournisseur Tesseract détenu par l’instance et l’attribue à OnOCRPage, ce qui rend les méthodes OCR de page et de document utilisables sans rappel applicatif
Syntaxe
Delphi
Function TPDFlib.ConfigureTesseractOCR(Const Executable,
TessDataDirectory: WideString; DetectOrientation: Boolean= False;
MinOrientationConfidence: Double= 15; TimeoutMS: Integer= 120000): Boolean;
ActiveX
Function PDFlib::ConfigureTesseractOCR(Executable As String,
TessDataDirectory As String, DetectOrientation As Long,
MinOrientationConfidence As Double, TimeoutMS As Long) As Long
DLL
int DLConfigureTesseractOCR(int InstanceID, const wchar_t* Executable,
const wchar_t* TessDataDirectory, int DetectOrientation,
double MinOrientationConfidence, int TimeoutMS);
int DLConfigureTesseractOCRA(int InstanceID, const char* Executable,
const char* TessDataDirectory, int DetectOrientation,
double MinOrientationConfidence, int TimeoutMS);
Paramètres
| Executable | Le chemin vers un exécutable Tesseract existant |
|---|---|
| TessDataDirectory | Le répertoire des données entraînées, ou une chaîne vide pour laisser le moteur utiliser sa recherche de données habituelle |
| DetectOrientation | False par défaut ; true exécute l’OSD avant la reconnaissance et corrige explicitement la rotation horaire signalée de 0, 90, 180 ou 270 degrés |
| MinOrientationConfidence | Un score de confiance OSD Tesseract fini et non négatif, 15 par défaut ; ce score est distinct du seuil de confiance des mots, lui compris entre 0 et 1 |
| TimeoutMS | Le timeout positif en millisecondes pour chaque processus du moteur, 120000 par défaut ; une page orientée peut exécuter des processus OSD et de reconnaissance séparés |
Valeurs de retour
Delphi renvoie true lorsque la configuration est acceptée ; DLL et ActiveX renvoient 1 en cas de succès et 0 pour une configuration invalide
Remarques
Le moteur est optionnel et est fourni par l’application ; la configuration n’installe aucun exécutable, ne télécharge aucun modèle et ne modifie pas la configuration Tesseract de l’utilisateur
Le chemin de l’exécutable et le chemin optionnel du répertoire de données sont vérifiés pendant la configuration ; la disponibilité des modèles et l’exécution effective du moteur sont vérifiées lors de la reconnaissance d’une page
La langue demandée requiert son fichier de données entraînées, tel que eng.traineddata ; la détection d’orientation requiert en outre osd.traineddata
L’adaptateur Windows lance l’exécutable directement, sans shell ni console visible, utilise des fichiers temporaires privés, applique des limites de temps et de sortie, et analyse la hiérarchie hOCR ainsi que les lignes de base vérifiées
La détection d’orientation est désactivée par défaut ; lorsqu’elle est activée, un résultat OSD absent ou à faible confiance échoue explicitement au lieu de deviner une direction
Une correction vérifiée fait pivoter d’un quart de tour, sans interpolation, les pixels PNG 8 bits non entrelacés pris en charge, reconnaît l’image redressée, puis ramène les boîtes de mots et les extrémités de lignes de base aux coordonnées de l’image d’origine
La ligne de base ramenée porte déjà la direction du texte et ne reçoit pas une seconde fois l’angle d’orientation
Une reconfiguration invalide préserve le fournisseur existant ; une reconfiguration acceptée remplace le fournisseur propriétaire précédent
Un rappel applicatif attribué ensuite reste détenu par l’application et est préservé par ClearTesseractOCR ainsi que par la destruction de l’instance
Exemple
if not PDF.ConfigureTesseractOCR('C:\Tools\Tesseract\tesseract.exe',
'C:\OCR\tessdata', True, 15, 120000) then
raise Exception.Create(PDF.LastOCRError);
Processed := PDF.OCRDocumentEx('', 300, 'eng', 'Arial', 0.5,
PDF_OCR_SKIP_EXISTING_TEXT or PDF_OCR_REPLACE_OWNED_LAYER);
ReportJSON := PDF.GetOCRDiagnosticsJSON;
Voir aussi
ClearTesseractOCR, OCRPageEx, OCRDocumentEx, GetOCRDiagnosticsJSON, OnOCRPage