ConfigureTesseractOCR

OCR, configuratie

Beschrijving

Maakt een Tesseract-provider in instantiebezit aan en wijst die toe aan OnOCRPage, zodat de OCR-methoden voor pagina en document bruikbaar zijn zonder applicatie-callback

Syntaxis

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);

Parameters

ExecutableHet pad naar een bestaande Tesseract-executable
TessDataDirectoryDe map met getrainde data, of een lege string om de engine zijn normale datazoekopdracht te laten uitvoeren
DetectOrientationStaat standaard op False; true draait OSD vóór de herkenning en corrigeert de gerapporteerde kloksgewijze rotatie van 0, 90, 180 of 270 graden expliciet
MinOrientationConfidenceEen eindige, niet-negatieve Tesseract OSD-betrouwbaarheidsscore, standaard 15; deze score staat los van de 0-tot-1-betrouwbaarheidsdrempel per woord
TimeoutMSDe positieve time-out in milliseconden per engineproces, standaard 120000; een georiënteerde pagina kan aparte OSD- en herkenningsprocessen draaien

Retourwaarden

Delphi geeft true terug wanneer de configuratie wordt geaccepteerd; DLL en ActiveX geven 1 terug bij succes en 0 bij een ongeldige configuratie

Opmerkingen

De engine is optioneel en wordt door de applicatie aangeleverd; de configuratie installeert geen executable, downloadt geen modellen en past de Tesseract-configuratie van de gebruiker niet aan

Het executable-pad en het optionele datamappad worden tijdens de configuratie gecontroleerd; de beschikbaarheid van modellen en de daadwerkelijke engine-uitvoering worden gecontroleerd wanneer een pagina wordt herkend

De gevraagde taal heeft zijn bestand met getrainde data nodig, zoals eng.traineddata; oriëntatiedetectie heeft ook osd.traineddata nodig

De Windows-adapter start de executable direct op zonder shell of zichtbare console, gebruikt privé-tijdelijke bestanden, handhaaft tijd- en uitvoerlimieten en parseert de hOCR-hiërarchie en geverifieerde reglebaselines

Oriëntatiedetectie staat standaard uit; wanneer die aan staat, faalt een ontbrekend OSD-resultaat of een resultaat met lage betrouwbaarheid expliciet in plaats van een richting te gokken

Een geverifieerde correctie roteert ondersteunde noninterlaced 8-bit PNG-pixels een kwartslag zonder interpolatie, herkent de rechtop staande afbeelding en mapt daarna woordboxes en baseline-eindpunten terug naar de oorspronkelijke beeldcoördinaten

De gemapte baseline draagt al de textrichting mee en krijgt de oriëntatiehoek geen tweede keer

Een ongeldige herconfiguratie behoudt de bestaande provider; een geaccepteerde herconfiguratie vervangt de vorige provider in bibliotheekbezit

Een daarna toegewezen applicatie-callback blijft in applicatiebezit en blijft behouden bij ClearTesseractOCR en bij het vernietigen van de instantie

Voorbeeld

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;

Zie ook

ClearTesseractOCR, OCRPageEx, OCRDocumentEx, GetOCRDiagnosticsJSON, OnOCRPage