Я пытаюсь воссоздать абзацы и отступы из вывода текста изображения OCR, например:
Ввод (представьте, что это изображение, а не типизированное):
Вывод (с несколькими ошибками):
Как видите, разрывы абзацев и отступы не сохраняются.
Используя Python, я попробовал такой подход, но он не работает (слишком часто дает сбой):
Код:
def smart_format(text):
textList = text.split('\n')
temp = ''
averageLL = sum([len(line) for line in textList]) / len(textList)
for line in textList:
if (line.strip().endswith('!') or line.strip().endswith('.') or line.strip().endswith('?')) and not line.strip().endswith('-'):
if averageLL - len(line) > 7:
temp += '{{ paragraph }}' + line + '\n'
else:
temp += line + '\n'
else:
temp += line + '\n'
return temp.replace(' -\n', '').replace('-\n', '').replace(' \n', '').replace('\n', ' ').replace('{{ paragraph }}', '\n\n ')
У кого-нибудь есть предложения, как я могу воссоздать этот макет? Я работаю со старыми книгами, поэтому я надеялся перепечатать их с помощью LaTeX, так как для этого довольно просто создать скрипт Python.
Спасибо!
tesseract
, скомпилированный из SVN несколько недель назад. Это единственная бесплатная программа, дающая хорошие результаты (почти идеальные для английских текстов). Кажется, происходит некоторый анализ документов, но я понятия не имею, может ли он делать то, что я хочу... - person Blender   schedule 08.05.2011