A Python Library for Document Layout Understanding
Layout Parser is a deep learning based tool for document image layout analysis tasks.
Use pip or conda to install the library: ```bash pip install layoutparser
pip install 'git+https://github.com/facebookresearch/detectron2.git#egg=detectron2'
pip install layoutparser[ocr]
```
This by default will install the CPU version of the Detectron2, and it should be able to run on most of the computers. But if you have a GPU, you can consider the GPU version of the Detectron2, referring to the official instructions.
We provide a series of examples for to help you start using the layout parser library:
Table OCR and Results Parsing:
layoutparsercan be used for conveniently OCR documents and convert the output in to structured data.
Deep Layout Parsing Example: With the help of Deep Learning,
layoutparsersupports the analysis very complex documents and processing of the hierarchical structure in the layouts.
The images shown in the figure above are: a screenshot of this paper, an image from the PRIMA Layout Analysis Dataset, a screenshot of the WSJ website, and an image from the HJDataset.
With only 4 lines of code in
layoutparse, you can unlock the information from complex documents that existing tools could not provide. You can either choose a deep learning model from the ModelZoo, or load the model that you trained on your own. And use the following code to predict the layout as well as visualize it:
>>> import layoutparser as lp >>> model = lp.Detectron2LayoutModel('lp://PrimaLayout/mask_rcnn_R_50_FPN_3x/config') >>> layout = model.detect(image) # You need to load the image somewhere else, e.g., image = cv2.imread(...) >>> lp.draw_box(image, layout,) # With extra configurations
layoutparser
If you find
layoutparserhelpful to your work, please consider citing our tool using the following BibTeX entry.
@misc{shen2020layoutparser, author = {Zejiang Shen and Ruochen Zhang and Melissa Dell}, title = {LayoutParser}, howpublished = {\url{https://github.com/Layout-Parser/layout-parser}}, year = {2020} }