From 9ad6816d5d408d1dfa062d6f235d659e9d4517d3 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Fri, 5 May 2023 15:02:23 +0000 Subject: automatic import of python-layoutparser --- .gitignore | 1 + python-layoutparser.spec | 320 +++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 322 insertions(+) create mode 100644 python-layoutparser.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..c4b118a 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/layoutparser-0.3.4.tar.gz diff --git a/python-layoutparser.spec b/python-layoutparser.spec new file mode 100644 index 0000000..2e2e2e5 --- /dev/null +++ b/python-layoutparser.spec @@ -0,0 +1,320 @@ +%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 diff --git a/sources b/sources new file mode 100644 index 0000000..67aa8f9 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +c020dd8d304da93b56ade8be594bdcf6 layoutparser-0.3.4.tar.gz -- cgit v1.2.3