tesseract: for v4, use --psm while keeping -psm for v3

At the moment v4 accepts both but who knows if this will get dropped,
so do as document for each version.
This commit is contained in:
James R. Barlow
2017-01-18 17:43:47 -08:00
parent 6e27ecd2b9
commit c42d9baa26
2 changed files with 14 additions and 3 deletions
+1
View File
@@ -210,6 +210,7 @@ advanced.add_argument(
help="additional Tesseract configuration files")
advanced.add_argument(
'--tesseract-pagesegmode', action='store', type=int, metavar='PSM',
choices=range(0, 14),
help="set Tesseract page segmentation mode (see tesseract --help)")
advanced.add_argument(
'--pdf-renderer', choices=['auto', 'tesseract', 'hocr'], default='auto',
+13 -3
View File
@@ -62,6 +62,16 @@ def version():
return tesseract_version
def v4():
"Is this Tesseract v4.0?"
return (version() >= '4')
def psm():
"If Tesseract 4.0, use argument --psm instead of -psm"
return '--psm' if v4() else '-psm'
@lru_cache(maxsize=1)
def languages():
args_tess = [
@@ -87,7 +97,7 @@ def get_orientation(input_file, language: list, timeout: float, log):
args_tesseract = [
get_program('tesseract'),
'-l', '+'.join(language),
'-psm', '0',
psm(), '0',
input_file,
'stdout'
]
@@ -176,7 +186,7 @@ def generate_hocr(input_file, output_hocr, language: list, tessconfig: list,
]
if pagesegmode is not None:
args_tesseract.extend(['-psm', str(pagesegmode)])
args_tesseract.extend([psm(), str(pagesegmode)])
args_tesseract.extend([
input_file,
@@ -242,7 +252,7 @@ def generate_pdf(input_image, skip_pdf, output_pdf, language: list,
]
if pagesegmode is not None:
args_tesseract.extend(['-psm', str(pagesegmode)])
args_tesseract.extend([psm(), str(pagesegmode)])
args_tesseract.extend([
input_image,