%global _empty_manifest_terminate_build 0
Name: python-layoutparser
Version: 0.3.4
Release: 1
Summary: A unified toolkit for Deep Learning Based Document Image Analysis
License: Apache-2.0
URL: https://github.com/Layout-Parser/layout-parser
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/95/16/3ff7629fd684047ad9779394aadc7b612c5ae91e41a27f1bad1469e23f05/layoutparser-0.3.4.tar.gz
BuildArch: noarch
Requires: python3-numpy
Requires: python3-opencv-python
Requires: python3-scipy
Requires: python3-pandas
Requires: python3-pillow
Requires: python3-pyyaml
Requires: python3-iopath
Requires: python3-pdfplumber
Requires: python3-pdf2image
Requires: python3-torch
Requires: python3-torchvision
Requires: python3-effdet
Requires: python3-google-cloud-vision
Requires: python3-torch
Requires: python3-torchvision
Requires: python3-effdet
Requires: python3-google-cloud-vision
Requires: python3-pytesseract
Requires: python3-paddlepaddle
Requires: python3-pytesseract
%description
## What is LayoutParser
![Example Usage](https://github.com/Layout-Parser/layout-parser/raw/main/.github/example.png)
LayoutParser aims to provide a wide range of tools that aims to streamline Document Image Analysis (DIA) tasks. Please check the LayoutParser [demo video](https://youtu.be/8yA5xB4Dg8c) (1 min) or [full talk](https://www.youtube.com/watch?v=YG0qepPgyGY) (15 min) for details. And here are some key features:
- LayoutParser provides a rich repository of deep learning models for layout detection as well as a set of unified APIs for using them. For example,
Perform DL layout detection in 4 lines of code
```python
import layoutparser as lp
model = lp.AutoLayoutModel('lp://EfficientDete/PubLayNet')
# image = Image.open("path/to/image")
layout = model.detect(image)
```
- LayoutParser comes with a set of layout data structures with carefully designed APIs that are optimized for document image analysis tasks. For example,
Selecting layout/textual elements in the left column of a page
```python
image_width = image.size[0]
left_column = lp.Interval(0, image_width/2, axis='x')
layout.filter_by(left_column, center=True) # select objects in the left column
```
Performing OCR for each detected Layout Region
```python
ocr_agent = lp.TesseractAgent()
for layout_region in layout:
image_segment = layout_region.crop(image)
text = ocr_agent.detect(image_segment)
```
Flexible APIs for visualizing the detected layouts
```python
lp.draw_box(image, layout, box_width=1, show_element_id=True, box_alpha=0.25)
```
Loading layout data stored in json, csv, and even PDFs
```python
layout = lp.load_json("path/to/json")
layout = lp.load_csv("path/to/csv")
pdf_layout = lp.load_pdf("path/to/pdf")
```
- LayoutParser is also a open platform that enables the sharing of layout detection models and DIA pipelines among the community.
Check the LayoutParser open platform
Submit your models/pipelines to LayoutParser
## Installation
After several major updates, layoutparser provides various functionalities and deep learning models from different backends. But it still easy to install layoutparser, and we designed the installation method in a way such that you can choose to install only the needed dependencies for your project:
```bash
pip install layoutparser # Install the base layoutparser library with
pip install "layoutparser[layoutmodels]" # Install DL layout model toolkit
pip install "layoutparser[ocr]" # Install OCR toolkit
```
Extra steps are needed if you want to use Detectron2-based models. Please check [installation.md](installation.md) for additional details on layoutparser installation.
## Examples
We provide a series of examples for to help you start using the layout parser library:
1. [Table OCR and Results Parsing](https://github.com/Layout-Parser/layout-parser/blob/main/examples/OCR%20Tables%20and%20Parse%20the%20Output.ipynb): `layoutparser` can be used for conveniently OCR documents and convert the output in to structured data.
2. [Deep Layout Parsing Example](https://github.com/Layout-Parser/layout-parser/blob/main/examples/Deep%20Layout%20Parsing.ipynb): With the help of Deep Learning, `layoutparser` supports the analysis very complex documents and processing of the hierarchical structure in the layouts.
## Contributing
We encourage you to contribute to Layout Parser! Please check out the [Contributing guidelines](.github/CONTRIBUTING.md) for guidelines about how to proceed. Join us!
## Citing `layoutparser`
If you find `layoutparser` helpful to your work, please consider citing our tool and [paper](https://arxiv.org/pdf/2103.15348.pdf) using the following BibTeX entry.
```
@article{shen2021layoutparser,
title={LayoutParser: A Unified Toolkit for Deep Learning Based Document Image Analysis},
author={Shen, Zejiang and Zhang, Ruochen and Dell, Melissa and Lee, Benjamin Charles Germain and Carlson, Jacob and Li, Weining},
journal={arXiv preprint arXiv:2103.15348},
year={2021}
}
```
%package -n python3-layoutparser
Summary: A unified toolkit for Deep Learning Based Document Image Analysis
Provides: python-layoutparser
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-layoutparser
## What is LayoutParser
![Example Usage](https://github.com/Layout-Parser/layout-parser/raw/main/.github/example.png)
LayoutParser aims to provide a wide range of tools that aims to streamline Document Image Analysis (DIA) tasks. Please check the LayoutParser [demo video](https://youtu.be/8yA5xB4Dg8c) (1 min) or [full talk](https://www.youtube.com/watch?v=YG0qepPgyGY) (15 min) for details. And here are some key features:
- LayoutParser provides a rich repository of deep learning models for layout detection as well as a set of unified APIs for using them. For example,
Perform DL layout detection in 4 lines of code
```python
import layoutparser as lp
model = lp.AutoLayoutModel('lp://EfficientDete/PubLayNet')
# image = Image.open("path/to/image")
layout = model.detect(image)
```
- LayoutParser comes with a set of layout data structures with carefully designed APIs that are optimized for document image analysis tasks. For example,
Selecting layout/textual elements in the left column of a page
```python
image_width = image.size[0]
left_column = lp.Interval(0, image_width/2, axis='x')
layout.filter_by(left_column, center=True) # select objects in the left column
```
Performing OCR for each detected Layout Region
```python
ocr_agent = lp.TesseractAgent()
for layout_region in layout:
image_segment = layout_region.crop(image)
text = ocr_agent.detect(image_segment)
```
Flexible APIs for visualizing the detected layouts
```python
lp.draw_box(image, layout, box_width=1, show_element_id=True, box_alpha=0.25)
```
Loading layout data stored in json, csv, and even PDFs
```python
layout = lp.load_json("path/to/json")
layout = lp.load_csv("path/to/csv")
pdf_layout = lp.load_pdf("path/to/pdf")
```
- LayoutParser is also a open platform that enables the sharing of layout detection models and DIA pipelines among the community.
Check the LayoutParser open platform
Submit your models/pipelines to LayoutParser
## Installation
After several major updates, layoutparser provides various functionalities and deep learning models from different backends. But it still easy to install layoutparser, and we designed the installation method in a way such that you can choose to install only the needed dependencies for your project:
```bash
pip install layoutparser # Install the base layoutparser library with
pip install "layoutparser[layoutmodels]" # Install DL layout model toolkit
pip install "layoutparser[ocr]" # Install OCR toolkit
```
Extra steps are needed if you want to use Detectron2-based models. Please check [installation.md](installation.md) for additional details on layoutparser installation.
## Examples
We provide a series of examples for to help you start using the layout parser library:
1. [Table OCR and Results Parsing](https://github.com/Layout-Parser/layout-parser/blob/main/examples/OCR%20Tables%20and%20Parse%20the%20Output.ipynb): `layoutparser` can be used for conveniently OCR documents and convert the output in to structured data.
2. [Deep Layout Parsing Example](https://github.com/Layout-Parser/layout-parser/blob/main/examples/Deep%20Layout%20Parsing.ipynb): With the help of Deep Learning, `layoutparser` supports the analysis very complex documents and processing of the hierarchical structure in the layouts.
## Contributing
We encourage you to contribute to Layout Parser! Please check out the [Contributing guidelines](.github/CONTRIBUTING.md) for guidelines about how to proceed. Join us!
## Citing `layoutparser`
If you find `layoutparser` helpful to your work, please consider citing our tool and [paper](https://arxiv.org/pdf/2103.15348.pdf) using the following BibTeX entry.
```
@article{shen2021layoutparser,
title={LayoutParser: A Unified Toolkit for Deep Learning Based Document Image Analysis},
author={Shen, Zejiang and Zhang, Ruochen and Dell, Melissa and Lee, Benjamin Charles Germain and Carlson, Jacob and Li, Weining},
journal={arXiv preprint arXiv:2103.15348},
year={2021}
}
```
%package help
Summary: Development documents and examples for layoutparser
Provides: python3-layoutparser-doc
%description help
## What is LayoutParser
![Example Usage](https://github.com/Layout-Parser/layout-parser/raw/main/.github/example.png)
LayoutParser aims to provide a wide range of tools that aims to streamline Document Image Analysis (DIA) tasks. Please check the LayoutParser [demo video](https://youtu.be/8yA5xB4Dg8c) (1 min) or [full talk](https://www.youtube.com/watch?v=YG0qepPgyGY) (15 min) for details. And here are some key features:
- LayoutParser provides a rich repository of deep learning models for layout detection as well as a set of unified APIs for using them. For example,
Perform DL layout detection in 4 lines of code
```python
import layoutparser as lp
model = lp.AutoLayoutModel('lp://EfficientDete/PubLayNet')
# image = Image.open("path/to/image")
layout = model.detect(image)
```
- LayoutParser comes with a set of layout data structures with carefully designed APIs that are optimized for document image analysis tasks. For example,
Selecting layout/textual elements in the left column of a page
```python
image_width = image.size[0]
left_column = lp.Interval(0, image_width/2, axis='x')
layout.filter_by(left_column, center=True) # select objects in the left column
```
Performing OCR for each detected Layout Region
```python
ocr_agent = lp.TesseractAgent()
for layout_region in layout:
image_segment = layout_region.crop(image)
text = ocr_agent.detect(image_segment)
```
Flexible APIs for visualizing the detected layouts
```python
lp.draw_box(image, layout, box_width=1, show_element_id=True, box_alpha=0.25)
```
Loading layout data stored in json, csv, and even PDFs
```python
layout = lp.load_json("path/to/json")
layout = lp.load_csv("path/to/csv")
pdf_layout = lp.load_pdf("path/to/pdf")
```
- LayoutParser is also a open platform that enables the sharing of layout detection models and DIA pipelines among the community.
Check the LayoutParser open platform
Submit your models/pipelines to LayoutParser
## Installation
After several major updates, layoutparser provides various functionalities and deep learning models from different backends. But it still easy to install layoutparser, and we designed the installation method in a way such that you can choose to install only the needed dependencies for your project:
```bash
pip install layoutparser # Install the base layoutparser library with
pip install "layoutparser[layoutmodels]" # Install DL layout model toolkit
pip install "layoutparser[ocr]" # Install OCR toolkit
```
Extra steps are needed if you want to use Detectron2-based models. Please check [installation.md](installation.md) for additional details on layoutparser installation.
## Examples
We provide a series of examples for to help you start using the layout parser library:
1. [Table OCR and Results Parsing](https://github.com/Layout-Parser/layout-parser/blob/main/examples/OCR%20Tables%20and%20Parse%20the%20Output.ipynb): `layoutparser` can be used for conveniently OCR documents and convert the output in to structured data.
2. [Deep Layout Parsing Example](https://github.com/Layout-Parser/layout-parser/blob/main/examples/Deep%20Layout%20Parsing.ipynb): With the help of Deep Learning, `layoutparser` supports the analysis very complex documents and processing of the hierarchical structure in the layouts.
## Contributing
We encourage you to contribute to Layout Parser! Please check out the [Contributing guidelines](.github/CONTRIBUTING.md) for guidelines about how to proceed. Join us!
## Citing `layoutparser`
If you find `layoutparser` helpful to your work, please consider citing our tool and [paper](https://arxiv.org/pdf/2103.15348.pdf) using the following BibTeX entry.
```
@article{shen2021layoutparser,
title={LayoutParser: A Unified Toolkit for Deep Learning Based Document Image Analysis},
author={Shen, Zejiang and Zhang, Ruochen and Dell, Melissa and Lee, Benjamin Charles Germain and Carlson, Jacob and Li, Weining},
journal={arXiv preprint arXiv:2103.15348},
year={2021}
}
```
%prep
%autosetup -n layoutparser-0.3.4
%build
%py3_build
%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%files -n python3-layoutparser -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Fri May 05 2023 Python_Bot - 0.3.4-1
- Package Spec generated