python 对整个目录执行 Tesseract OCR
Perform Tesseract OCR on entire directory with python
我在目录中有多个图像,想将其从图像转换为文本文件。我必须在终端中一个一个地手动完成。这是令人头疼的过程。所以,我的问题是如何 运行 我的代码在那个包含图像的文件夹上。
Here is the terminal command to convert it into text :
convert captcha.png -resize 200% -type Grayscale input.tif #instead of input.tif i want same file name so, i can recognise easily
tesseract -l eng input.tif output #output name as same as file name
更简单的方法,没有 Python,只使用两个终端命令,一个将所有文件转换为 TIFF,另一个对每个 TIFF 文件调用 tesseract:
将所有图像转换为 TIFF
convert '*.png' -resize 200% -type Grayscale +adjoin -set filename:name "%t" '%[filename:name].tif'
对结果调用 tesseract:
for f in *.tif;do tesseract -l eng "$f" "$(basename "$f" .tif).txt";done
(如果您的文件名中没有空格,您可以跳过双引号 ("
)。
如果输出名称看起来很奇怪,则替换步骤 1):
for f in *.png;do convert "$f" -resize 200% -type Grayscale "$(basename "$f" .png).tif";done
我在目录中有多个图像,想将其从图像转换为文本文件。我必须在终端中一个一个地手动完成。这是令人头疼的过程。所以,我的问题是如何 运行 我的代码在那个包含图像的文件夹上。
Here is the terminal command to convert it into text :
convert captcha.png -resize 200% -type Grayscale input.tif #instead of input.tif i want same file name so, i can recognise easily
tesseract -l eng input.tif output #output name as same as file name
更简单的方法,没有 Python,只使用两个终端命令,一个将所有文件转换为 TIFF,另一个对每个 TIFF 文件调用 tesseract:
将所有图像转换为 TIFF
convert '*.png' -resize 200% -type Grayscale +adjoin -set filename:name "%t" '%[filename:name].tif'
对结果调用 tesseract:
for f in *.tif;do tesseract -l eng "$f" "$(basename "$f" .tif).txt";done
(如果您的文件名中没有空格,您可以跳过双引号 (
"
)。
如果输出名称看起来很奇怪,则替换步骤 1):
for f in *.png;do convert "$f" -resize 200% -type Grayscale "$(basename "$f" .png).tif";done