You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Go to file
vahidrezanezhad 5ab14758c4
Update README.md
4 years ago
qurator 🔧 ocrd-tool.json: Update description, steps and categories 4 years ago
.gitignore Revert "Merge branch 'master' of https://github.com/qurator-spk/sbb_textline_detector" 5 years ago
.gitkeep 🧹 sbb_textline_docker: Rename to sbb_textline_detector 5 years ago
Dockerfile 🧹 sbb_textline_detector: Use same structure as the other projects 5 years ago
LICENSE Revert "Merge branch 'master' of https://github.com/qurator-spk/sbb_textline_detector" 5 years ago
README.md Update README.md 4 years ago
ocrd-tool.json sbb_textline_detector: Add a OCR-D interface 5 years ago
requirements.txt Enforce older version of Keras which does not use TensorFlow 2 4 years ago
setup.py Revert "Merge branch 'master' of https://github.com/qurator-spk/sbb_textline_detector" 5 years ago

README.md

Textline Detection

Detect textlines in document images

Introduction

This tool performs printspace, region and textline detection from document image data and returns the results as PAGE-XML. The goal of this project is to extract textlines of a document to feed an ocr model. This is achieved by four successive stages as follows:

Printspace or border extraction

From ocr point of view and in order to avoid texts outside printspace region, you need to detect and extract printspace region. As mentioned briefly earlier this is done by a binary pixelwise-segmentation. We have trained our model by a dataset of 2000 documents where about 1200 of them was from dhsegment project (you can download the dataset from here https://github.com/dhlab-epfl/dhSegment/releases/download/v0.2/pages.zip) and the rest was annotated by myself using our dataset in SBB. This is worthy to mention that for page (printspace or border) extractation you have to feed model whole image at once and not in patches.

Installation

pip install .

Models

In order to run this tool you also need trained models. You can download our pretrained models from here:
https://qurator-data.de/sbb_textline_detector/

Usage

sbb_textline_detector -i <image file name> -o <directory to write output xml> -m <directory of models>

Usage with OCR-D

ocrd-example-binarize -I OCR-D-IMG -O OCR-D-IMG-BIN
ocrd-sbb-textline-detector -I OCR-D-IMG-BIN -O OCR-D-SEG-LINE-SBB \
        -p '{ "model": "/path/to/the/models/textline_detection" }'

Segmentation works on raw RGB images, but retains AlternativeImages from binarization steps, so it's OK to do binarization first, then perform the textline detection. The used binarization processor must produce an AlternativeImage for the binarized image, not replace the original raw RGB image.