#java #tesseract #tess4j
#java #тессеракт #tess4j
Вопрос:
Я немного работаю с tess4j tesseract на Java. Это работает хорошо и позволяет мне делать то, что мне нужно.
Но я столкнулся с проблемой, которую я не могу решить без руководства или помощи.
Допустим, у меня есть следующее изображение:
Затем это дает мне следующий вывод:
Столбец 1 столбец 2 Столбец3
Строка 1 столбец 1 Строка 3 столбец
Строка 2 столбец 1 Строка 2 столбец 2 Строка 2 Столбец 3
Вот мой код
String readFile(String inputFilePath){
Tesseract tesseract = new Tesseract();
tesseract.setDatapath(path);
tesseract.setLanguage("eng");
tesseract.setTessVariable("user_defined_dpi", "300");
String string = null;
try {
string = tesseract.doOCR(new File(inputFilePath));
} catch (TesseractException e) {
e.printStackTrace();
}
return string;
}
Есть ли способ, которым я могу добиться результата, который имитирует то, что находится на изображении? Так что я могу различать столбцы.
Комментарии:
1. похоже, вам придется считать пробелы между заголовками столбцов. Затем примените эту логику к каждой строке таблицы.
2. Сохраните пробелы и подсчитайте их:
tesseract.setTessVariable("preserve_interword_spaces", "1");
3. @nguyenq Потрясающе. Отправьте сообщение в качестве ответа.
Ответ №1:
Вы можете сохранить пробелы, а затем посчитать их:
tesseract.setTessVariable("preserve_interword_spaces", "1");