Package net.sourceforge.tess4j
Class Tesseract1
java.lang.Object
net.sourceforge.tess4j.TessAPI1
net.sourceforge.tess4j.Tesseract1
- All Implemented Interfaces:
com.sun.jna.Library,ITessAPI,ITesseract
An object layer on top of
Support for PDF documents is available through
Any program that uses the library will need to ensure that the required libraries (the
TessAPI1, provides character
recognition support for common image formats, and multi-page TIFF images
beyond the uncompressed, binary TIFF format supported by Tesseract OCR
engine. The extended capabilities are provided by the
Java Advanced Imaging Image I/O Tools.Support for PDF documents is available through
PDFBox.Any program that uses the library will need to ensure that the required libraries (the
.jar files for jna and
jai-imageio) are in its compile and run-time
classpath.-
Nested Class Summary
Nested classes/interfaces inherited from interface net.sourceforge.tess4j.ITessAPI
ITessAPI.CANCEL_FUNC, ITessAPI.EANYCODE_CHAR, ITessAPI.ETEXT_DESC, ITessAPI.TessBaseAPI, ITessAPI.TessCancelFunc, ITessAPI.TessChoiceIterator, ITessAPI.TessMutableIterator, ITessAPI.TessOcrEngineMode, ITessAPI.TessOrientation, ITessAPI.TessPageIterator, ITessAPI.TessPageIteratorLevel, ITessAPI.TessPageSegMode, ITessAPI.TessParagraphJustification, ITessAPI.TessPolyBlockType, ITessAPI.TessProgressFunc, ITessAPI.TessResultIterator, ITessAPI.TessResultRenderer, ITessAPI.TessTextlineOrder, ITessAPI.TessWritingDirection, ITessAPI.TimeValNested classes/interfaces inherited from interface net.sourceforge.tess4j.ITesseract
ITesseract.RenderedFormatNested classes/interfaces inherited from interface com.sun.jna.Library
com.sun.jna.Library.Handler -
Field Summary
Fields inherited from interface net.sourceforge.tess4j.ITesseract
DOCUMENT_TITLE, htmlBeginTag, htmlEndTag, PAGE_SEPARATORFields inherited from interface com.sun.jna.Library
OPTION_ALLOW_OBJECTS, OPTION_CALLING_CONVENTION, OPTION_CLASSLOADER, OPTION_FUNCTION_MAPPER, OPTION_INVOCATION_MAPPER, OPTION_OPEN_FLAGS, OPTION_STRING_ENCODING, OPTION_STRUCTURE_ALIGNMENT, OPTION_SYMBOL_PROVIDER, OPTION_TYPE_MAPPER -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcreateDocuments(String[] filenames, String[] outputbases, List<ITesseract.RenderedFormat> formats) Creates documents for given renderer.createDocumentsWithResults(BufferedImage[] bis, String[] filenames, String[] outputbases, List<ITesseract.RenderedFormat> formats, int pageIteratorLevel) Creates documents with OCR results for given renderers at specified page iterator level.createDocumentsWithResults(BufferedImage bi, String filename, String outputbase, List<ITesseract.RenderedFormat> formats, int pageIteratorLevel) Creates documents with OCR result for given renderers at specified page iterator level.createDocumentsWithResults(String[] filenames, String[] outputbases, List<ITesseract.RenderedFormat> formats, int pageIteratorLevel) Creates documents with OCR results for given renderers at specified page iterator level.createDocumentsWithResults(String filename, String outputbase, List<ITesseract.RenderedFormat> formats, int pageIteratorLevel) Creates documents with OCR result for given renderers at specified page iterator level.protected voiddispose()Releases all of the native resources used by this instance.doOCR(int xsize, int ysize, ByteBuffer buf, int bpp, String filename, List<Rectangle> rects) Performs OCR operation.Performs OCR operation.Performs OCR operation.protected ITessAPI.TessBaseAPIReturns API handle.protected StringgetOCRText(String filename, int pageNum) Gets recognized text.getOSD(BufferedImage bi) Gets the detected orientation of the input image and apparent script (alphabet).Gets the detected orientation of the input image and apparent script (alphabet).getSegmentedRegions(BufferedImage bi, int pageIteratorLevel) Gets segmented regions at specified page iterator level.getWords(List<BufferedImage> biList, int pageIteratorLevel) Gets recognized words at specified page iterator level.protected voidinit()Initializes Tesseract engine.voidsetConfigs(List<String> configs) Sets configs to be passed to Tesseract'sInitmethod.voidsetDatapath(String datapath) Sets path totessdata.protected voidsetImage(int xsize, int ysize, ByteBuffer buf, int bpp) Sets image to be processed.protected voidsetImage(RenderedImage image) A wrapper forsetImage(int, int, ByteBuffer, int).voidsetLanguage(String language) Sets language for OCR.voidsetOcrEngineMode(int ocrEngineMode) Sets OCR engine mode.voidsetPageSegMode(int mode) Sets page segmentation mode.protected voidSets region of interest.voidsetVariable(String key, String value) Set the value of Tesseract's internal parameter.protected voidSets Tesseract's internal parameters.Methods inherited from class net.sourceforge.tess4j.TessAPI1
TessAltoRendererCreate, TessBaseAPIAdaptToWordStr, TessBaseAPIAllWordConfidences, TessBaseAPIAnalyseLayout, TessBaseAPIClear, TessBaseAPIClearAdaptiveClassifier, TessBaseAPIClearPersistentCache, TessBaseAPICreate, TessBaseAPIDelete, TessBaseAPIDetectOrientationScript, TessBaseAPIEnd, TessBaseAPIGetAltoText, TessBaseAPIGetAvailableLanguagesAsVector, TessBaseAPIGetBoolVariable, TessBaseAPIGetBoxText, TessBaseAPIGetComponentImages, TessBaseAPIGetComponentImages1, TessBaseAPIGetConnectedComponents, TessBaseAPIGetDatapath, TessBaseAPIGetDoubleVariable, TessBaseAPIGetGradient, TessBaseAPIGetHOCRText, TessBaseAPIGetInitLanguagesAsString, TessBaseAPIGetInputImage, TessBaseAPIGetInputName, TessBaseAPIGetIntVariable, TessBaseAPIGetIterator, TessBaseAPIGetLoadedLanguagesAsVector, TessBaseAPIGetLSTMBoxText, TessBaseAPIGetMutableIterator, TessBaseAPIGetPageSegMode, TessBaseAPIGetPAGEText, TessBaseAPIGetRegions, TessBaseAPIGetSourceYResolution, TessBaseAPIGetStringVariable, TessBaseAPIGetStrips, TessBaseAPIGetTextDirection, TessBaseAPIGetTextlines, TessBaseAPIGetTextlines1, TessBaseAPIGetThresholdedImage, TessBaseAPIGetThresholdedImageScaleFactor, TessBaseAPIGetTsvText, TessBaseAPIGetUnichar, TessBaseAPIGetUNLVText, TessBaseAPIGetUTF8Text, TessBaseAPIGetWords, TessBaseAPIGetWordStrBoxText, TessBaseAPIInit1, TessBaseAPIInit2, TessBaseAPIInit3, TessBaseAPIInit4, TessBaseAPIInit5, TessBaseAPIInitForAnalysePage, TessBaseAPIIsValidWord, TessBaseAPIMeanTextConf, TessBaseAPIPrintVariablesToFile, TessBaseAPIProcessPage, TessBaseAPIProcessPages, TessBaseAPIReadConfigFile, TessBaseAPIRecognize, TessBaseAPIRect, TessBaseAPISetImage, TessBaseAPISetImage2, TessBaseAPISetInputImage, TessBaseAPISetInputName, TessBaseAPISetOutputName, TessBaseAPISetPageSegMode, TessBaseAPISetRectangle, TessBaseAPISetSourceResolution, TessBaseAPISetVariable, TessBoxTextRendererCreate, TessChoiceIteratorConfidence, TessChoiceIteratorDelete, TessChoiceIteratorGetUTF8Text, TessChoiceIteratorNext, TessDeleteIntArray, TessDeleteResultRenderer, TessDeleteText, TessDeleteTextArray, TessHOcrRendererCreate, TessHOcrRendererCreate2, TessLSTMBoxRendererCreate, TessMonitorCreate, TessMonitorDelete, TessMonitorGetCancelThis, TessMonitorGetProgress, TessMonitorSetCancelFunc, TessMonitorSetCancelThis, TessMonitorSetDeadlineMSecs, TessMonitorSetProgressFunc, TessPageIteratorBaseline, TessPageIteratorBegin, TessPageIteratorBlockType, TessPageIteratorBoundingBox, TessPageIteratorCopy, TessPageIteratorDelete, TessPageIteratorGetBinaryImage, TessPageIteratorGetImage, TessPageIteratorIsAtBeginningOf, TessPageIteratorIsAtFinalElement, TessPageIteratorNext, TessPageIteratorOrientation, TessPageIteratorParagraphInfo, TessPAGERendererCreate, TessPDFRendererCreate, TessResultIteratorConfidence, TessResultIteratorCopy, TessResultIteratorDelete, TessResultIteratorGetChoiceIterator, TessResultIteratorGetPageIterator, TessResultIteratorGetPageIteratorConst, TessResultIteratorGetUTF8Text, TessResultIteratorNext, TessResultIteratorSymbolIsDropcap, TessResultIteratorSymbolIsSubscript, TessResultIteratorSymbolIsSuperscript, TessResultIteratorWordFontAttributes, TessResultIteratorWordIsFromDictionary, TessResultIteratorWordIsNumeric, TessResultIteratorWordRecognitionLanguage, TessResultRendererAddImage, TessResultRendererBeginDocument, TessResultRendererEndDocument, TessResultRendererExtention, TessResultRendererImageNum, TessResultRendererInsert, TessResultRendererNext, TessResultRendererTitle, TessTextRendererCreate, TessTsvRendererCreate, TessUnlvRendererCreate, TessVersion, TessWordStrBoxRendererCreateMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.sourceforge.tess4j.ITesseract
createDocuments, doOCR, doOCR, doOCR, doOCR, doOCR, doOCR, doOCR, doOCR, doOCR, getWords, setTessVariable
-
Constructor Details
-
Tesseract1
public Tesseract1()
-
-
Method Details
-
getHandle
Returns API handle.- Returns:
- handle
-
setDatapath
Sets path totessdata.- Specified by:
setDatapathin interfaceITesseract- Parameters:
datapath- the tessdata path to set
-
setLanguage
Sets language for OCR.- Specified by:
setLanguagein interfaceITesseract- Parameters:
language- the language code, which follows ISO 639-3 standard.
-
setOcrEngineMode
public void setOcrEngineMode(int ocrEngineMode) Sets OCR engine mode.- Specified by:
setOcrEngineModein interfaceITesseract- Parameters:
ocrEngineMode- the OcrEngineMode to set
-
setPageSegMode
public void setPageSegMode(int mode) Sets page segmentation mode.- Specified by:
setPageSegModein interfaceITesseract- Parameters:
mode- the page segmentation mode to set
-
setVariable
Set the value of Tesseract's internal parameter.- Specified by:
setVariablein interfaceITesseract- Parameters:
key- variable name, e.g.,tessedit_create_hocr,tessedit_char_whitelist, etc.value- value for corresponding variable, e.g., "1", "0", "0123456789", etc.
-
setConfigs
Sets configs to be passed to Tesseract'sInitmethod.- Specified by:
setConfigsin interfaceITesseract- Parameters:
configs- list of config filenames, e.g., "digits", "bazaar", "quiet"
-
doOCR
Performs OCR operation.- Specified by:
doOCRin interfaceITesseract- Parameters:
inputFile- an image filerects- list of the bounding rectangles defines the regions of the image to be recognized. A rectangle of zero dimension ornullindicates the whole image.- Returns:
- the recognized text
- Throws:
TesseractException
-
doOCR
public String doOCR(List<IIOImage> imageList, String filename, List<List<Rectangle>> roiss) throws TesseractException Performs OCR operation.- Specified by:
doOCRin interfaceITesseract- Parameters:
imageList- a list ofIIOImageobjectsfilename- input file name. Needed only for training and reading a UNLV zone file.roiss- list of list of the bounding rectangles defines the regions of the images to be recognized. A rectangle of zero dimension ornullindicates the whole image.- Returns:
- the recognized text
- Throws:
TesseractException
-
doOCR
public String doOCR(int xsize, int ysize, ByteBuffer buf, int bpp, String filename, List<Rectangle> rects) throws TesseractException Performs OCR operation. UseSetImage, (optionally)SetRectangle, and one or more of theGet*Textfunctions.- Specified by:
doOCRin interfaceITesseract- Parameters:
xsize- width of imageysize- height of imagebuf- pixel databpp- bits per pixel, represents the bit depth of the image, with 1 for binary bitmap, 8 for gray, and 24 for color RGB.filename- input file name. Needed only for training and reading a UNLV zone file.rects- list of the bounding rectangles defines the regions of the image to be recognized. A rectangle of zero dimension ornullindicates the whole image.- Returns:
- the recognized text
- Throws:
TesseractException
-
init
protected void init()Initializes Tesseract engine. -
setVariables
protected void setVariables()Sets Tesseract's internal parameters. -
setImage
A wrapper forsetImage(int, int, ByteBuffer, int).- Parameters:
image- a rendered image- Throws:
IOException
-
setImage
Sets image to be processed.- Parameters:
xsize- width of imageysize- height of imagebuf- pixel databpp- bits per pixel, represents the bit depth of the image, with 1 for binary bitmap, 8 for gray, and 24 for color RGB.
-
setROI
Sets region of interest.- Parameters:
rect- region of interest
-
getOCRText
Gets recognized text.- Parameters:
filename- input file name. Needed only for reading a UNLV zone file.pageNum- page number; needed for hocr paging.- Returns:
- the recognized text
-
createDocuments
public void createDocuments(String[] filenames, String[] outputbases, List<ITesseract.RenderedFormat> formats) throws TesseractException Creates documents for given renderer.- Specified by:
createDocumentsin interfaceITesseract- Parameters:
filenames- array of input filesoutputbases- array of output filenames without extensionformats- types of renderer- Throws:
TesseractException
-
getSegmentedRegions
public List<Rectangle> getSegmentedRegions(BufferedImage bi, int pageIteratorLevel) throws TesseractException Gets segmented regions at specified page iterator level.- Specified by:
getSegmentedRegionsin interfaceITesseract- Parameters:
bi- input buffered imagepageIteratorLevel- TessPageIteratorLevel enum- Returns:
- list of
Rectangle - Throws:
TesseractException
-
getWords
Gets recognized words at specified page iterator level.- Specified by:
getWordsin interfaceITesseract- Parameters:
biList- list of input buffered imagespageIteratorLevel- TessPageIteratorLevel enum- Returns:
- list of
Word
-
createDocumentsWithResults
public OCRResult createDocumentsWithResults(BufferedImage bi, String filename, String outputbase, List<ITesseract.RenderedFormat> formats, int pageIteratorLevel) throws TesseractException Creates documents with OCR result for given renderers at specified page iterator level.- Specified by:
createDocumentsWithResultsin interfaceITesseract- Parameters:
bi- input buffered imagefilename- filename (optional)outputbase- output filenames without extensionformats- types of rendererpageIteratorLevel- TessPageIteratorLevel enum- Returns:
- OCR result
- Throws:
TesseractException
-
createDocumentsWithResults
public List<OCRResult> createDocumentsWithResults(BufferedImage[] bis, String[] filenames, String[] outputbases, List<ITesseract.RenderedFormat> formats, int pageIteratorLevel) throws TesseractException Creates documents with OCR results for given renderers at specified page iterator level.- Specified by:
createDocumentsWithResultsin interfaceITesseract- Parameters:
bis- array of input buffered imagesfilenames- array of filenamesoutputbases- array of output filenames without extensionformats- types of rendererpageIteratorLevel- TessPageIteratorLevel enum- Returns:
- list of OCR results
- Throws:
TesseractException
-
createDocumentsWithResults
public OCRResult createDocumentsWithResults(String filename, String outputbase, List<ITesseract.RenderedFormat> formats, int pageIteratorLevel) throws TesseractException Creates documents with OCR result for given renderers at specified page iterator level.- Specified by:
createDocumentsWithResultsin interfaceITesseract- Parameters:
filename- input fileoutputbase- output filenames without extensionformats- types of rendererpageIteratorLevel- TessPageIteratorLevel enum- Returns:
- OCR result
- Throws:
TesseractException
-
createDocumentsWithResults
public List<OCRResult> createDocumentsWithResults(String[] filenames, String[] outputbases, List<ITesseract.RenderedFormat> formats, int pageIteratorLevel) throws TesseractException Creates documents with OCR results for given renderers at specified page iterator level.- Specified by:
createDocumentsWithResultsin interfaceITesseract- Parameters:
filenames- array of input filesoutputbases- array of output filenames without extensionformats- types of rendererpageIteratorLevel- TessPageIteratorLevel enum- Returns:
- list of OCR results
- Throws:
TesseractException
-
getOSD
Gets the detected orientation of the input image and apparent script (alphabet).- Specified by:
getOSDin interfaceITesseract- Parameters:
imageFile- an image file- Returns:
- image orientation and script name
-
getOSD
Gets the detected orientation of the input image and apparent script (alphabet).- Specified by:
getOSDin interfaceITesseract- Parameters:
bi- a buffered image- Returns:
- image orientation and script name
-
dispose
protected void dispose()Releases all of the native resources used by this instance.
-