python-doctr 0.9.0__py3-none-any.whl → 0.11.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. doctr/contrib/__init__.py +1 -0
  2. doctr/contrib/artefacts.py +7 -9
  3. doctr/contrib/base.py +8 -17
  4. doctr/datasets/cord.py +17 -7
  5. doctr/datasets/datasets/__init__.py +4 -4
  6. doctr/datasets/datasets/base.py +16 -16
  7. doctr/datasets/datasets/pytorch.py +12 -12
  8. doctr/datasets/datasets/tensorflow.py +10 -10
  9. doctr/datasets/detection.py +6 -9
  10. doctr/datasets/doc_artefacts.py +3 -4
  11. doctr/datasets/funsd.py +17 -6
  12. doctr/datasets/generator/__init__.py +4 -4
  13. doctr/datasets/generator/base.py +16 -17
  14. doctr/datasets/generator/pytorch.py +1 -3
  15. doctr/datasets/generator/tensorflow.py +1 -3
  16. doctr/datasets/ic03.py +14 -5
  17. doctr/datasets/ic13.py +13 -5
  18. doctr/datasets/iiit5k.py +31 -20
  19. doctr/datasets/iiithws.py +4 -5
  20. doctr/datasets/imgur5k.py +15 -5
  21. doctr/datasets/loader.py +4 -7
  22. doctr/datasets/mjsynth.py +6 -5
  23. doctr/datasets/ocr.py +3 -4
  24. doctr/datasets/orientation.py +3 -4
  25. doctr/datasets/recognition.py +3 -4
  26. doctr/datasets/sroie.py +16 -5
  27. doctr/datasets/svhn.py +16 -5
  28. doctr/datasets/svt.py +14 -5
  29. doctr/datasets/synthtext.py +14 -5
  30. doctr/datasets/utils.py +37 -27
  31. doctr/datasets/vocabs.py +21 -7
  32. doctr/datasets/wildreceipt.py +25 -10
  33. doctr/file_utils.py +18 -4
  34. doctr/io/elements.py +69 -81
  35. doctr/io/html.py +1 -3
  36. doctr/io/image/__init__.py +3 -3
  37. doctr/io/image/base.py +2 -5
  38. doctr/io/image/pytorch.py +3 -12
  39. doctr/io/image/tensorflow.py +2 -11
  40. doctr/io/pdf.py +5 -7
  41. doctr/io/reader.py +5 -11
  42. doctr/models/_utils.py +14 -22
  43. doctr/models/builder.py +32 -50
  44. doctr/models/classification/magc_resnet/__init__.py +3 -3
  45. doctr/models/classification/magc_resnet/pytorch.py +10 -13
  46. doctr/models/classification/magc_resnet/tensorflow.py +21 -17
  47. doctr/models/classification/mobilenet/__init__.py +3 -3
  48. doctr/models/classification/mobilenet/pytorch.py +7 -17
  49. doctr/models/classification/mobilenet/tensorflow.py +22 -29
  50. doctr/models/classification/predictor/__init__.py +4 -4
  51. doctr/models/classification/predictor/pytorch.py +13 -11
  52. doctr/models/classification/predictor/tensorflow.py +13 -11
  53. doctr/models/classification/resnet/__init__.py +4 -4
  54. doctr/models/classification/resnet/pytorch.py +21 -31
  55. doctr/models/classification/resnet/tensorflow.py +41 -39
  56. doctr/models/classification/textnet/__init__.py +3 -3
  57. doctr/models/classification/textnet/pytorch.py +10 -17
  58. doctr/models/classification/textnet/tensorflow.py +19 -20
  59. doctr/models/classification/vgg/__init__.py +3 -3
  60. doctr/models/classification/vgg/pytorch.py +5 -7
  61. doctr/models/classification/vgg/tensorflow.py +18 -15
  62. doctr/models/classification/vit/__init__.py +3 -3
  63. doctr/models/classification/vit/pytorch.py +8 -14
  64. doctr/models/classification/vit/tensorflow.py +16 -16
  65. doctr/models/classification/zoo.py +36 -19
  66. doctr/models/core.py +3 -3
  67. doctr/models/detection/_utils/__init__.py +4 -4
  68. doctr/models/detection/_utils/base.py +4 -7
  69. doctr/models/detection/_utils/pytorch.py +1 -5
  70. doctr/models/detection/_utils/tensorflow.py +1 -5
  71. doctr/models/detection/core.py +2 -8
  72. doctr/models/detection/differentiable_binarization/__init__.py +4 -4
  73. doctr/models/detection/differentiable_binarization/base.py +7 -17
  74. doctr/models/detection/differentiable_binarization/pytorch.py +27 -30
  75. doctr/models/detection/differentiable_binarization/tensorflow.py +49 -37
  76. doctr/models/detection/fast/__init__.py +4 -4
  77. doctr/models/detection/fast/base.py +6 -14
  78. doctr/models/detection/fast/pytorch.py +24 -31
  79. doctr/models/detection/fast/tensorflow.py +28 -37
  80. doctr/models/detection/linknet/__init__.py +4 -4
  81. doctr/models/detection/linknet/base.py +6 -15
  82. doctr/models/detection/linknet/pytorch.py +24 -27
  83. doctr/models/detection/linknet/tensorflow.py +36 -33
  84. doctr/models/detection/predictor/__init__.py +5 -5
  85. doctr/models/detection/predictor/pytorch.py +6 -7
  86. doctr/models/detection/predictor/tensorflow.py +7 -8
  87. doctr/models/detection/zoo.py +27 -7
  88. doctr/models/factory/hub.py +8 -13
  89. doctr/models/kie_predictor/__init__.py +5 -5
  90. doctr/models/kie_predictor/base.py +8 -5
  91. doctr/models/kie_predictor/pytorch.py +22 -19
  92. doctr/models/kie_predictor/tensorflow.py +21 -15
  93. doctr/models/modules/layers/__init__.py +3 -3
  94. doctr/models/modules/layers/pytorch.py +6 -9
  95. doctr/models/modules/layers/tensorflow.py +5 -7
  96. doctr/models/modules/transformer/__init__.py +3 -3
  97. doctr/models/modules/transformer/pytorch.py +12 -13
  98. doctr/models/modules/transformer/tensorflow.py +9 -12
  99. doctr/models/modules/vision_transformer/__init__.py +3 -3
  100. doctr/models/modules/vision_transformer/pytorch.py +3 -4
  101. doctr/models/modules/vision_transformer/tensorflow.py +4 -4
  102. doctr/models/predictor/__init__.py +5 -5
  103. doctr/models/predictor/base.py +52 -41
  104. doctr/models/predictor/pytorch.py +16 -13
  105. doctr/models/predictor/tensorflow.py +16 -10
  106. doctr/models/preprocessor/__init__.py +4 -4
  107. doctr/models/preprocessor/pytorch.py +13 -17
  108. doctr/models/preprocessor/tensorflow.py +11 -15
  109. doctr/models/recognition/core.py +3 -7
  110. doctr/models/recognition/crnn/__init__.py +4 -4
  111. doctr/models/recognition/crnn/pytorch.py +20 -28
  112. doctr/models/recognition/crnn/tensorflow.py +19 -29
  113. doctr/models/recognition/master/__init__.py +3 -3
  114. doctr/models/recognition/master/base.py +3 -7
  115. doctr/models/recognition/master/pytorch.py +22 -24
  116. doctr/models/recognition/master/tensorflow.py +21 -26
  117. doctr/models/recognition/parseq/__init__.py +3 -3
  118. doctr/models/recognition/parseq/base.py +3 -7
  119. doctr/models/recognition/parseq/pytorch.py +26 -26
  120. doctr/models/recognition/parseq/tensorflow.py +26 -30
  121. doctr/models/recognition/predictor/__init__.py +5 -5
  122. doctr/models/recognition/predictor/_utils.py +7 -10
  123. doctr/models/recognition/predictor/pytorch.py +6 -6
  124. doctr/models/recognition/predictor/tensorflow.py +5 -6
  125. doctr/models/recognition/sar/__init__.py +4 -4
  126. doctr/models/recognition/sar/pytorch.py +20 -21
  127. doctr/models/recognition/sar/tensorflow.py +19 -24
  128. doctr/models/recognition/utils.py +5 -10
  129. doctr/models/recognition/vitstr/__init__.py +4 -4
  130. doctr/models/recognition/vitstr/base.py +3 -7
  131. doctr/models/recognition/vitstr/pytorch.py +18 -20
  132. doctr/models/recognition/vitstr/tensorflow.py +21 -24
  133. doctr/models/recognition/zoo.py +22 -11
  134. doctr/models/utils/__init__.py +4 -4
  135. doctr/models/utils/pytorch.py +13 -16
  136. doctr/models/utils/tensorflow.py +31 -30
  137. doctr/models/zoo.py +1 -5
  138. doctr/transforms/functional/__init__.py +3 -3
  139. doctr/transforms/functional/base.py +4 -11
  140. doctr/transforms/functional/pytorch.py +21 -29
  141. doctr/transforms/functional/tensorflow.py +10 -22
  142. doctr/transforms/modules/__init__.py +4 -4
  143. doctr/transforms/modules/base.py +48 -55
  144. doctr/transforms/modules/pytorch.py +65 -28
  145. doctr/transforms/modules/tensorflow.py +33 -44
  146. doctr/utils/common_types.py +8 -9
  147. doctr/utils/data.py +8 -12
  148. doctr/utils/fonts.py +2 -7
  149. doctr/utils/geometry.py +120 -64
  150. doctr/utils/metrics.py +18 -38
  151. doctr/utils/multithreading.py +4 -6
  152. doctr/utils/reconstitution.py +157 -75
  153. doctr/utils/repr.py +2 -3
  154. doctr/utils/visualization.py +16 -29
  155. doctr/version.py +1 -1
  156. {python_doctr-0.9.0.dist-info → python_doctr-0.11.0.dist-info}/METADATA +59 -57
  157. python_doctr-0.11.0.dist-info/RECORD +173 -0
  158. {python_doctr-0.9.0.dist-info → python_doctr-0.11.0.dist-info}/WHEEL +1 -1
  159. python_doctr-0.9.0.dist-info/RECORD +0 -173
  160. {python_doctr-0.9.0.dist-info → python_doctr-0.11.0.dist-info}/LICENSE +0 -0
  161. {python_doctr-0.9.0.dist-info → python_doctr-0.11.0.dist-info}/top_level.txt +0 -0
  162. {python_doctr-0.9.0.dist-info → python_doctr-0.11.0.dist-info}/zip-safe +0 -0
@@ -1,10 +1,10 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: python-doctr
3
- Version: 0.9.0
3
+ Version: 0.11.0
4
4
  Summary: Document Text Recognition (docTR): deep Learning for high-performance OCR on documents.
5
5
  Author-email: Mindee <contact@mindee.com>
6
6
  Maintainer: François-Guillaume Fernandez, Charles Gaillard, Olivier Dulcy, Felix Dittrich
7
- License: Apache License
7
+ License: Apache License
8
8
  Version 2.0, January 2004
9
9
  http://www.apache.org/licenses/
10
10
 
@@ -219,14 +219,14 @@ Classifier: License :: OSI Approved :: Apache Software License
219
219
  Classifier: Natural Language :: English
220
220
  Classifier: Operating System :: OS Independent
221
221
  Classifier: Programming Language :: Python :: 3
222
- Classifier: Programming Language :: Python :: 3.9
223
222
  Classifier: Programming Language :: Python :: 3.10
224
223
  Classifier: Programming Language :: Python :: 3.11
224
+ Classifier: Programming Language :: Python :: 3.12
225
225
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
226
- Requires-Python: <4,>=3.9.0
226
+ Requires-Python: <4,>=3.10.0
227
227
  Description-Content-Type: text/markdown
228
228
  License-File: LICENSE
229
- Requires-Dist: numpy<2.0.0,>=1.16.0
229
+ Requires-Dist: numpy<3.0.0,>=1.16.0
230
230
  Requires-Dist: scipy<2.0.0,>=1.4.0
231
231
  Requires-Dist: h5py<4.0.0,>=3.1.0
232
232
  Requires-Dist: opencv-python<5.0.0,>=4.5.0
@@ -240,20 +240,54 @@ Requires-Dist: Pillow>=9.2.0
240
240
  Requires-Dist: defusedxml>=0.7.0
241
241
  Requires-Dist: anyascii>=0.3.2
242
242
  Requires-Dist: tqdm>=4.30.0
243
+ Provides-Extra: tf
244
+ Requires-Dist: tensorflow[and-cuda]<3.0.0,>=2.15.0; sys_platform == "linux" and extra == "tf"
245
+ Requires-Dist: tensorflow<3.0.0,>=2.15.0; sys_platform != "linux" and extra == "tf"
246
+ Requires-Dist: tf-keras<3.0.0,>=2.15.0; extra == "tf"
247
+ Requires-Dist: tf2onnx<2.0.0,>=1.16.0; extra == "tf"
248
+ Provides-Extra: torch
249
+ Requires-Dist: torch<3.0.0,>=2.0.0; extra == "torch"
250
+ Requires-Dist: torchvision>=0.15.0; extra == "torch"
251
+ Requires-Dist: onnx<3.0.0,>=1.12.0; extra == "torch"
252
+ Provides-Extra: html
253
+ Requires-Dist: weasyprint>=55.0; extra == "html"
254
+ Provides-Extra: viz
255
+ Requires-Dist: matplotlib>=3.1.0; extra == "viz"
256
+ Requires-Dist: mplcursors>=0.3; extra == "viz"
243
257
  Provides-Extra: contrib
244
258
  Requires-Dist: onnxruntime>=1.11.0; extra == "contrib"
259
+ Provides-Extra: testing
260
+ Requires-Dist: pytest>=5.3.2; extra == "testing"
261
+ Requires-Dist: coverage[toml]>=4.5.4; extra == "testing"
262
+ Requires-Dist: onnxruntime>=1.11.0; extra == "testing"
263
+ Requires-Dist: requests>=2.20.0; extra == "testing"
264
+ Requires-Dist: psutil>=5.9.5; extra == "testing"
265
+ Provides-Extra: quality
266
+ Requires-Dist: ruff>=0.1.5; extra == "quality"
267
+ Requires-Dist: mypy>=0.812; extra == "quality"
268
+ Requires-Dist: pre-commit>=2.17.0; extra == "quality"
269
+ Provides-Extra: docs
270
+ Requires-Dist: sphinx!=3.5.0,>=3.0.0; extra == "docs"
271
+ Requires-Dist: sphinxemoji>=0.1.8; extra == "docs"
272
+ Requires-Dist: sphinx-copybutton>=0.3.1; extra == "docs"
273
+ Requires-Dist: docutils<0.22; extra == "docs"
274
+ Requires-Dist: recommonmark>=0.7.1; extra == "docs"
275
+ Requires-Dist: sphinx-markdown-tables>=0.0.15; extra == "docs"
276
+ Requires-Dist: sphinx-tabs>=3.3.0; extra == "docs"
277
+ Requires-Dist: furo>=2022.3.4; extra == "docs"
245
278
  Provides-Extra: dev
246
- Requires-Dist: tensorflow<2.16.0,>=2.11.0; extra == "dev"
279
+ Requires-Dist: tensorflow[and-cuda]<3.0.0,>=2.15.0; sys_platform == "linux" and extra == "dev"
280
+ Requires-Dist: tensorflow<3.0.0,>=2.15.0; sys_platform != "linux" and extra == "dev"
281
+ Requires-Dist: tf-keras<3.0.0,>=2.15.0; extra == "dev"
247
282
  Requires-Dist: tf2onnx<2.0.0,>=1.16.0; extra == "dev"
248
- Requires-Dist: torch<3.0.0,>=1.12.0; extra == "dev"
249
- Requires-Dist: torchvision>=0.13.0; extra == "dev"
283
+ Requires-Dist: torch<3.0.0,>=2.0.0; extra == "dev"
284
+ Requires-Dist: torchvision>=0.15.0; extra == "dev"
250
285
  Requires-Dist: onnx<3.0.0,>=1.12.0; extra == "dev"
251
286
  Requires-Dist: weasyprint>=55.0; extra == "dev"
252
287
  Requires-Dist: matplotlib>=3.1.0; extra == "dev"
253
288
  Requires-Dist: mplcursors>=0.3; extra == "dev"
254
289
  Requires-Dist: pytest>=5.3.2; extra == "dev"
255
290
  Requires-Dist: coverage[toml]>=4.5.4; extra == "dev"
256
- Requires-Dist: hdf5storage>=0.1.18; extra == "dev"
257
291
  Requires-Dist: onnxruntime>=1.11.0; extra == "dev"
258
292
  Requires-Dist: requests>=2.20.0; extra == "dev"
259
293
  Requires-Dist: psutil>=5.9.5; extra == "dev"
@@ -268,44 +302,12 @@ Requires-Dist: recommonmark>=0.7.1; extra == "dev"
268
302
  Requires-Dist: sphinx-markdown-tables>=0.0.15; extra == "dev"
269
303
  Requires-Dist: sphinx-tabs>=3.3.0; extra == "dev"
270
304
  Requires-Dist: furo>=2022.3.4; extra == "dev"
271
- Provides-Extra: docs
272
- Requires-Dist: sphinx!=3.5.0,>=3.0.0; extra == "docs"
273
- Requires-Dist: sphinxemoji>=0.1.8; extra == "docs"
274
- Requires-Dist: sphinx-copybutton>=0.3.1; extra == "docs"
275
- Requires-Dist: docutils<0.22; extra == "docs"
276
- Requires-Dist: recommonmark>=0.7.1; extra == "docs"
277
- Requires-Dist: sphinx-markdown-tables>=0.0.15; extra == "docs"
278
- Requires-Dist: sphinx-tabs>=3.3.0; extra == "docs"
279
- Requires-Dist: furo>=2022.3.4; extra == "docs"
280
- Provides-Extra: html
281
- Requires-Dist: weasyprint>=55.0; extra == "html"
282
- Provides-Extra: quality
283
- Requires-Dist: ruff>=0.1.5; extra == "quality"
284
- Requires-Dist: mypy>=0.812; extra == "quality"
285
- Requires-Dist: pre-commit>=2.17.0; extra == "quality"
286
- Provides-Extra: testing
287
- Requires-Dist: pytest>=5.3.2; extra == "testing"
288
- Requires-Dist: coverage[toml]>=4.5.4; extra == "testing"
289
- Requires-Dist: hdf5storage>=0.1.18; extra == "testing"
290
- Requires-Dist: onnxruntime>=1.11.0; extra == "testing"
291
- Requires-Dist: requests>=2.20.0; extra == "testing"
292
- Requires-Dist: psutil>=5.9.5; extra == "testing"
293
- Provides-Extra: tf
294
- Requires-Dist: tensorflow<2.16.0,>=2.11.0; extra == "tf"
295
- Requires-Dist: tf2onnx<2.0.0,>=1.16.0; extra == "tf"
296
- Provides-Extra: torch
297
- Requires-Dist: torch<3.0.0,>=1.12.0; extra == "torch"
298
- Requires-Dist: torchvision>=0.13.0; extra == "torch"
299
- Requires-Dist: onnx<3.0.0,>=1.12.0; extra == "torch"
300
- Provides-Extra: viz
301
- Requires-Dist: matplotlib>=3.1.0; extra == "viz"
302
- Requires-Dist: mplcursors>=0.3; extra == "viz"
303
305
 
304
306
  <p align="center">
305
307
  <img src="https://github.com/mindee/doctr/raw/main/docs/images/Logo_doctr.gif" width="40%">
306
308
  </p>
307
309
 
308
- [![Slack Icon](https://img.shields.io/badge/Slack-Community-4A154B?style=flat-square&logo=slack&logoColor=white)](https://slack.mindee.com) [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE) ![Build Status](https://github.com/mindee/doctr/workflows/builds/badge.svg) [![Docker Images](https://img.shields.io/badge/Docker-4287f5?style=flat&logo=docker&logoColor=white)](https://github.com/mindee/doctr/pkgs/container/doctr) [![codecov](https://codecov.io/gh/mindee/doctr/branch/main/graph/badge.svg?token=577MO567NM)](https://codecov.io/gh/mindee/doctr) [![CodeFactor](https://www.codefactor.io/repository/github/mindee/doctr/badge?s=bae07db86bb079ce9d6542315b8c6e70fa708a7e)](https://www.codefactor.io/repository/github/mindee/doctr) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/340a76749b634586a498e1c0ab998f08)](https://app.codacy.com/gh/mindee/doctr?utm_source=github.com&utm_medium=referral&utm_content=mindee/doctr&utm_campaign=Badge_Grade) [![Doc Status](https://github.com/mindee/doctr/workflows/doc-status/badge.svg)](https://mindee.github.io/doctr) [![Pypi](https://img.shields.io/badge/pypi-v0.9.0-blue.svg)](https://pypi.org/project/python-doctr/) [![Hugging Face Spaces](https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Spaces-blue)](https://huggingface.co/spaces/mindee/doctr) [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/mindee/notebooks/blob/main/doctr/quicktour.ipynb)
310
+ [![Slack Icon](https://img.shields.io/badge/Slack-Community-4A154B?style=flat-square&logo=slack&logoColor=white)](https://slack.mindee.com) [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE) ![Build Status](https://github.com/mindee/doctr/workflows/builds/badge.svg) [![Docker Images](https://img.shields.io/badge/Docker-4287f5?style=flat&logo=docker&logoColor=white)](https://github.com/mindee/doctr/pkgs/container/doctr) [![codecov](https://codecov.io/gh/mindee/doctr/branch/main/graph/badge.svg?token=577MO567NM)](https://codecov.io/gh/mindee/doctr) [![CodeFactor](https://www.codefactor.io/repository/github/mindee/doctr/badge?s=bae07db86bb079ce9d6542315b8c6e70fa708a7e)](https://www.codefactor.io/repository/github/mindee/doctr) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/340a76749b634586a498e1c0ab998f08)](https://app.codacy.com/gh/mindee/doctr?utm_source=github.com&utm_medium=referral&utm_content=mindee/doctr&utm_campaign=Badge_Grade) [![Doc Status](https://github.com/mindee/doctr/workflows/doc-status/badge.svg)](https://mindee.github.io/doctr) [![Pypi](https://img.shields.io/badge/pypi-v0.11.0-blue.svg)](https://pypi.org/project/python-doctr/) [![Hugging Face Spaces](https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Spaces-blue)](https://huggingface.co/spaces/mindee/doctr) [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/mindee/notebooks/blob/main/doctr/quicktour.ipynb) [![Gurubase](https://img.shields.io/badge/Gurubase-Ask%20docTR%20Guru-006BFF)](https://gurubase.io/g/doctr)
309
311
 
310
312
 
311
313
  **Optical Character Recognition made seamless & accessible to anyone, powered by TensorFlow 2 & PyTorch**
@@ -438,7 +440,7 @@ The KIE predictor results per page are in a dictionary format with each key repr
438
440
 
439
441
  ### Prerequisites
440
442
 
441
- Python 3.9 (or higher) and [pip](https://pip.pypa.io/en/stable/) are required to install docTR.
443
+ Python 3.10 (or higher) and [pip](https://pip.pypa.io/en/stable/) are required to install docTR.
442
444
 
443
445
  ### Latest release
444
446
 
@@ -464,7 +466,7 @@ pip install "python-doctr[torch,viz,html,contib]"
464
466
  For MacBooks with M1 chip, you will need some additional packages or specific versions:
465
467
 
466
468
  - TensorFlow 2: [metal plugin](https://developer.apple.com/metal/tensorflow-plugin/)
467
- - PyTorch: [version >= 1.12.0](https://pytorch.org/get-started/locally/#start-locally)
469
+ - PyTorch: [version >= 2.0.0](https://pytorch.org/get-started/locally/#start-locally)
468
470
 
469
471
  ### Developer mode
470
472
 
@@ -557,37 +559,37 @@ Check out our [TensorFlow.js demo](https://github.com/mindee/doctr-tfjs-demo) to
557
559
 
558
560
  ### Docker container
559
561
 
560
- [We offer Docker container support for easy testing and deployment](https://github.com/mindee/doctr/pkgs/container/doctr).
562
+ We offer Docker container support for easy testing and deployment. [Here are the available docker tags.](https://github.com/mindee/doctr/pkgs/container/doctr).
561
563
 
562
564
  #### Using GPU with docTR Docker Images
563
565
 
564
- The docTR Docker images are GPU-ready and based on CUDA `11.8`.
565
- However, to use GPU support with these Docker images, please ensure that Docker is configured to use your GPU.
566
+ The docTR Docker images are GPU-ready and based on CUDA `12.2`. Make sure your host is **at least `12.2`**, otherwise Torch or TensorFlow won't be able to initialize the GPU.
567
+ Please ensure that Docker is configured to use your GPU.
566
568
 
567
569
  To verify and configure GPU support for Docker, please follow the instructions provided in the [NVIDIA Container Toolkit Installation Guide](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html).
568
570
 
569
571
  Once Docker is configured to use GPUs, you can run docTR Docker containers with GPU support:
570
572
 
571
573
  ```shell
572
- docker run -it --gpus all ghcr.io/mindee/doctr:tf-py3.8.18-gpu-2023-09 bash
574
+ docker run -it --gpus all ghcr.io/mindee/doctr:torch-py3.9.18-2024-10 bash
573
575
  ```
574
576
 
575
577
  #### Available Tags
576
578
 
577
- The Docker images for docTR follow a specific tag nomenclature: `<framework>-py<python_version>-<system>-<doctr_version|YYYY-MM>`. Here's a breakdown of the tag structure:
579
+ The Docker images for docTR follow a specific tag nomenclature: `<deps>-py<python_version>-<doctr_version|YYYY-MM>`. Here's a breakdown of the tag structure:
578
580
 
579
- - `<framework>`: `tf` (TensorFlow) or `torch` (PyTorch).
580
- - `<python_version>`: `3.8.18`, `3.9.18`, or `3.10.13`.
581
- - `<system>`: `cpu` or `gpu`
582
- - `<doctr_version>`: a tag >= `v0.7.1`
583
- - `<YYYY-MM>`: e.g. `2023-09`
581
+ - `<deps>`: `tf`, `torch`, `tf-viz-html-contrib` or `torch-viz-html-contrib`.
582
+ - `<python_version>`: `3.9.18`, `3.10.13` or `3.11.8`.
583
+ - `<doctr_version>`: a tag >= `v0.11.0`
584
+ - `<YYYY-MM>`: e.g. `2014-10`
584
585
 
585
586
  Here are examples of different image tags:
586
587
 
587
588
  | Tag | Description |
588
589
  |----------------------------|---------------------------------------------------|
589
- | `tf-py3.8.18-cpu-v0.7.1` | TensorFlow version `3.8.18` with docTR `v0.7.1`. |
590
- | `torch-py3.9.18-gpu-2023-09`| PyTorch version `3.9.18` with GPU support and a monthly build from `2023-09`. |
590
+ | `tf-py3.10.13-v0.11.0` | TensorFlow version `3.10.13` with docTR `v0.11.0`. |
591
+ | `torch-viz-html-contrib-py3.11.8-2024-10` | Torch with extra dependencies version `3.11.8` from latest commit on `main` in `2024-10`. |
592
+ | `torch-py3.11.8-2024-10`| PyTorch version `3.11.8` from latest commit on `main` in `2024-10`. |
591
593
 
592
594
  #### Building Docker Images Locally
593
595
 
@@ -0,0 +1,173 @@
1
+ doctr/__init__.py,sha256=q-1tv1hf-BRaZtxsrbPVxYNL6ZtyIOSDvlZOSt85TmU,170
2
+ doctr/file_utils.py,sha256=IACtJvyOWm54l2zLb_K3uszYTomGPFFA6pMyokvCMxU,4227
3
+ doctr/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ doctr/version.py,sha256=e0CpFyMYqpqhIfpkFC1B5x2yb-TjoiRUJv_M-6zAUlU,24
5
+ doctr/contrib/__init__.py,sha256=EKeAGa3TOuJVWR4H_HJvuKO5VPEnJWXW305JMw3ufic,40
6
+ doctr/contrib/artefacts.py,sha256=sIVEx21GIXKCaYG4RVRvXRmjyGkAdTI9O8GB8vIw8kc,5291
7
+ doctr/contrib/base.py,sha256=g0VAg51NZNB5etQe3gZy-7kSm_NLzg26j7Jb4v8lLBk,3273
8
+ doctr/datasets/__init__.py,sha256=umI2ABbgWIKuhswl8RGaF6CefFiI8DdEGVb0Kbd8aZA,574
9
+ doctr/datasets/cord.py,sha256=VGN6nWLhhiwrXVRBO_oAE_G9TD7Kps9MAjCyiV3WrKM,5270
10
+ doctr/datasets/detection.py,sha256=CXz_qzMw5SjjhEGtgl83YZIpN1sLXUqDKXm1rAfQNBU,3531
11
+ doctr/datasets/doc_artefacts.py,sha256=h8NtwwZmC_xIlpJyJRi83dVuOFZPF_FhtK1v7f7aXlY,3230
12
+ doctr/datasets/funsd.py,sha256=-87Di2sQC41kh60ygQ8_M3Y7DRUhW4K6a6Im7DRrzf0,4698
13
+ doctr/datasets/ic03.py,sha256=4empqiMDUUDJCwvrJV9xswVRjlzuRTYp7xKUsS4TDGo,5543
14
+ doctr/datasets/ic13.py,sha256=ognjXcWf-fZd_CrNsL5qX5bUTPXqN_wl3r1vped-v5M,4483
15
+ doctr/datasets/iiit5k.py,sha256=bflr8qr17749fC2QdVqmXs0MmffEHA83BFUFi6WgQCE,4405
16
+ doctr/datasets/iiithws.py,sha256=cgitit-ePAtZFTO6tRZFNua7MuCJuXYzgkgHybqjnzk,2768
17
+ doctr/datasets/imgur5k.py,sha256=iD5xiqsoSrA7k9Ux7MElj0f9HIiFYOo-wi12CTFh28Q,7211
18
+ doctr/datasets/loader.py,sha256=NqidaahuHFHbXcZFwyrfQVdTsVGpBbg5to6O9PkFCPo,2769
19
+ doctr/datasets/mjsynth.py,sha256=RuVtTjLtIe0tEOF5AibwmMx8Z_hdu3gE04jxQ1iMCz0,4075
20
+ doctr/datasets/ocr.py,sha256=v_F1rTp03wNLE2nLhIqW7T9SQSTHf2ok1Eq-pTCX_ys,2522
21
+ doctr/datasets/orientation.py,sha256=HaF2dKyK7kDUFluY5B2mBtxw8nyO9UNOsbP1dDrD8Lk,1091
22
+ doctr/datasets/recognition.py,sha256=37WIgV2gWT10emPsQop6FUCDCMnA-yAHPLxMJU4gvcE,1859
23
+ doctr/datasets/sroie.py,sha256=bKrsvw98zcEfOw5Re0F7-06MzJRv-E73t7BYwmSokoA,4430
24
+ doctr/datasets/svhn.py,sha256=n86WrKu5a5zPWrEk9HsCEjMR4s87cYijcVIbqmniWX0,5763
25
+ doctr/datasets/svt.py,sha256=yJ3x8UxKHGXvRfASskXG69NEhEqGzFX4XQ_wp1qN5jg,5020
26
+ doctr/datasets/synthtext.py,sha256=GQTj_rPL9QpqzwtT_IXO4yWh9AIo-k07BEnxav-R95Q,5891
27
+ doctr/datasets/utils.py,sha256=boEQRq91P0yLjH3kAS8EHUo3W3_mKL9sFJTb5yByQtE,8000
28
+ doctr/datasets/vocabs.py,sha256=4QPcHJUyDOfs3cVnhF86Q5DVXCrCc6_Pp6Vnf6R5VI0,4610
29
+ doctr/datasets/wildreceipt.py,sha256=ipnLArx_CGDmmkegm6rQUxVGHzFF0EzJREcezY0ap7s,5213
30
+ doctr/datasets/datasets/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
31
+ doctr/datasets/datasets/base.py,sha256=wxpVVYPLnuPBYFGIR-5vG_FDEzT8wx57xPaUipiM-6c,4826
32
+ doctr/datasets/datasets/pytorch.py,sha256=KLdB_3jBRxrdCfzbPnr9TceDSfDV92TlpoZDDhz_1W8,1972
33
+ doctr/datasets/datasets/tensorflow.py,sha256=rCCzSwo0e2PJsP6iEs7DP-ym-JCypAzHXKmaJ_ge1os,1966
34
+ doctr/datasets/generator/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
35
+ doctr/datasets/generator/base.py,sha256=xMymMfWhzQwsfpWGG6a7KxPP8T262ilUWrE0OelT90k,5706
36
+ doctr/datasets/generator/pytorch.py,sha256=-6WD696LOS09Caq0ohHlivK22RTK2Ke3YwqAx8n8qQ8,2116
37
+ doctr/datasets/generator/tensorflow.py,sha256=OZ7uecBSZtiS31UxnB-w6pwr2hWyrZlzq0sD3ZRmk88,2211
38
+ doctr/io/__init__.py,sha256=kS7tKGFvzxOCWBOun-Y8n9CsziwRKNynjwpZEUUI03M,106
39
+ doctr/io/elements.py,sha256=4NDuYC0KX74f2-ZVdqcN1GY66f6IPl_q5fDOmn0xvM4,24739
40
+ doctr/io/html.py,sha256=3wSKH5qD03f2RqxA7D_d8oEBRVdTs4lLVvFZCkR2jrc,698
41
+ doctr/io/pdf.py,sha256=1fbmMKU4XAk4sY-wVES48_5EwMdGz4SiilAFcaPq94M,1308
42
+ doctr/io/reader.py,sha256=yES-J4KVIMqG2X-LHriqLm1R6kyQWcNlOAnfkW9Vjsw,2732
43
+ doctr/io/image/__init__.py,sha256=EOWEVxpbu7V5chNglIMiL0ppj5USs1EhCUYX968trPs,193
44
+ doctr/io/image/base.py,sha256=fD6hfJ6myvxo_5LSUVbzOqExK-aSE0qi_l0MY3Pm0fQ,1681
45
+ doctr/io/image/pytorch.py,sha256=eVQKAgTesQOIYhb4bACRNgQ9ofMwdF-719mxqKesMX4,3171
46
+ doctr/io/image/tensorflow.py,sha256=AvmthcYAt2NLNTdocoYyksVRcln8tAnJmFxXZA_VAGE,3104
47
+ doctr/models/__init__.py,sha256=yn_mXUL8B5L27Uaat1rLGRQHgLR8VLVxzBuPfNuN1YE,124
48
+ doctr/models/_utils.py,sha256=vZOb-A__hvJ7y0u1pEsVD9qQY870nkt2ZmQRhR3Llm0,7358
49
+ doctr/models/builder.py,sha256=UKZBuKutxA0iVM7i8owFdKiwQp9KwyC5Hb4Aio0l0hg,20370
50
+ doctr/models/core.py,sha256=CAgymBtEsVAJ70SHdtaBroM67nbNf6osXN6dWC6qAF4,482
51
+ doctr/models/zoo.py,sha256=89E60O61USlQ9a1bTP5SRY2_Gjk4pTvk3TNoCQC4AiI,9276
52
+ doctr/models/classification/__init__.py,sha256=HeErE29Bs1-91FtS9HqNghHe89XZGzI_11MO_E6GJ7s,154
53
+ doctr/models/classification/zoo.py,sha256=F9Ia4XBHT2dyPRtkSTJM2KzxbA_SkWty6RGy62RWPFQ,4437
54
+ doctr/models/classification/magc_resnet/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
55
+ doctr/models/classification/magc_resnet/pytorch.py,sha256=NRIEG_h17Iyl5uVBQGBShPu5oug03T_8_K0Z9JA9iVw,5535
56
+ doctr/models/classification/magc_resnet/tensorflow.py,sha256=tpXo9PFljQwssExcY_2y86iR4eJ8PZVLgQMJlLd22hc,6699
57
+ doctr/models/classification/mobilenet/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
58
+ doctr/models/classification/mobilenet/pytorch.py,sha256=9EXXoD82OdG1n8UzONaHabhOv0pHbvL4SQbPVkTvGus,9238
59
+ doctr/models/classification/mobilenet/tensorflow.py,sha256=qNLGy_3IlY2mBqMpQ7d0ZDIXYBVyRIRn6leD-_MiaIM,15756
60
+ doctr/models/classification/predictor/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
61
+ doctr/models/classification/predictor/pytorch.py,sha256=EZi9YwJhPjnryLzaAWedqy9vaxoLgW5cFh3xi40u20E,2560
62
+ doctr/models/classification/predictor/tensorflow.py,sha256=TrH5hydWNpNFwoeRaOL6SsLXxxtzTg3_KRrPeYPfHmE,2301
63
+ doctr/models/classification/resnet/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
64
+ doctr/models/classification/resnet/pytorch.py,sha256=Cpy9Dtl5wvFy6fYFIiRbPxbZPLuyfZ55AqxSDR1aT-o,12308
65
+ doctr/models/classification/resnet/tensorflow.py,sha256=D7YS4dJO1kctQlT8Azn9tpTifX1Vwt10MxOfbvboEZc,13676
66
+ doctr/models/classification/textnet/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
67
+ doctr/models/classification/textnet/pytorch.py,sha256=sqR0oUSzsITVB70rw9r3ASjSRsGx8EqBP-wg9vRGfa0,10046
68
+ doctr/models/classification/textnet/tensorflow.py,sha256=l6hPXy3-kipptPDUJjccMxYebIb0tzGbWEgIrjYg1RI,9986
69
+ doctr/models/classification/vgg/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
70
+ doctr/models/classification/vgg/pytorch.py,sha256=QKt_lgrR3WUNZd5o8FZwJpGMqoG6Etp9f1EFznddKZs,3090
71
+ doctr/models/classification/vgg/tensorflow.py,sha256=RZO4cM1IZAP0cWHJMdRbg-JbnTrHNxrMPK50EXkvbbw,4322
72
+ doctr/models/classification/vit/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
73
+ doctr/models/classification/vit/pytorch.py,sha256=eDc2erLBNnIpDZ1z4ZpWFFAf_f5lg7QplDNPfOVGal4,6001
74
+ doctr/models/classification/vit/tensorflow.py,sha256=wnYRc09UDmgHLxqv9O9C0PwmCi3sW2EjL8XVp865tS4,6087
75
+ doctr/models/detection/__init__.py,sha256=RqSz5beehLiqhW0PwFLFmCfTyMjofO-0umcQJLDMHjY,105
76
+ doctr/models/detection/core.py,sha256=-hOsFM199Qmicz95Ns3ClUNPmERkumK34aDPWT8ETuQ,3475
77
+ doctr/models/detection/zoo.py,sha256=VNb4kGaivy5hqY9CQR45y7VXwTCnGl_XCtGP9WS_qVo,4194
78
+ doctr/models/detection/_utils/__init__.py,sha256=-uBG9mM73HDxY1fBYVOO63l8zbj6Q1xOHMeoUJ1MknM,192
79
+ doctr/models/detection/_utils/base.py,sha256=fi8XLUVcWG4J-dhxHeTuB6gYL_brt02T0HIP0TVR8jQ,2475
80
+ doctr/models/detection/_utils/pytorch.py,sha256=81AlwGUZGmqCF18Svh_Mwm96-MPXYg-iR6xHXCEE3u0,1021
81
+ doctr/models/detection/_utils/tensorflow.py,sha256=_QUhLVGNWKLM3vpNflMnofpBypRECu25xaGSeKztNN8,937
82
+ doctr/models/detection/differentiable_binarization/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
83
+ doctr/models/detection/differentiable_binarization/base.py,sha256=BRzaSOyTvuHDioE1KLScxO-4yACFTCSAqeI926kzQp8,16241
84
+ doctr/models/detection/differentiable_binarization/pytorch.py,sha256=OGTPhV9YQDk4FvVN0qmzoap1FJ3Ac1imYtdb1UjXktU,16132
85
+ doctr/models/detection/differentiable_binarization/tensorflow.py,sha256=bke71SCYEKtWABPEq_3kO0O9S3KFYrj_DWPOoPGNbBg,15118
86
+ doctr/models/detection/fast/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
87
+ doctr/models/detection/fast/base.py,sha256=3D6Q1TsTlcUJZRAWSL01x-G3nTKxCIDLqHd_ai9lZmY,10758
88
+ doctr/models/detection/fast/pytorch.py,sha256=4omkaLQySnu42z067cf-26FyKa-cK1pQNEqZqiKHpjw,16236
89
+ doctr/models/detection/fast/tensorflow.py,sha256=NrUaRBPFjwD2OEEvE8o52zKvej5Ubj-m9NQsv6jkiwU,15707
90
+ doctr/models/detection/linknet/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
91
+ doctr/models/detection/linknet/base.py,sha256=aX0n0_dacD-J0GaZeKQNO11oGnbtW81T2SBL5kw762Y,10439
92
+ doctr/models/detection/linknet/pytorch.py,sha256=6KPNnedlWZNPM3LiSaIpgQ9vbrzA3sBUDJlP5KHOg7o,13984
93
+ doctr/models/detection/linknet/tensorflow.py,sha256=HwCswDBFmvXIiNf79pv9J3eucS1zOu79PX0BLRjiBRU,13101
94
+ doctr/models/detection/predictor/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
95
+ doctr/models/detection/predictor/pytorch.py,sha256=6ODigirC6bWd7x06De8Fp3oP5P-B2FjgaatLJP1-95k,2642
96
+ doctr/models/detection/predictor/tensorflow.py,sha256=KUDXbODUCZ5gRq8Gm5ZOXvdt9FD__WBkXT4d0f9flOI,2401
97
+ doctr/models/factory/__init__.py,sha256=cKPoH2V2157lLMTR2zsljG3_IQHziodqR-XK_LG0D_I,19
98
+ doctr/models/factory/hub.py,sha256=A6LNNIQoe4QdyFwdEzKhghJZ--ICGOSA6wUTbxmDzWc,7401
99
+ doctr/models/kie_predictor/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
100
+ doctr/models/kie_predictor/base.py,sha256=c8mmLJMLlpnVb5GNDP3hm-oefZ42fbk2dkmKMYVf8Gc,2291
101
+ doctr/models/kie_predictor/pytorch.py,sha256=iwfIwsNpQIepgM9_rG5Mx8MeIc1HHl4YJGIkyQ2z6S0,7991
102
+ doctr/models/kie_predictor/tensorflow.py,sha256=ejSB5_02uyscER2R6RZsPVNEuYOJHjW9mWu4vMOb15s,7802
103
+ doctr/models/modules/__init__.py,sha256=pouP7obVTu4p6aHkyaqa1yHKbynpvT0Hgo-LO_1U2R4,83
104
+ doctr/models/modules/layers/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
105
+ doctr/models/modules/layers/pytorch.py,sha256=e5o6pS2eqpFbgDsVnHyiB9SLPan72iraqufC6r2yKMY,6805
106
+ doctr/models/modules/layers/tensorflow.py,sha256=9qDHq-8d833ISuf4mdeJyOsFrRly16B54a0dSWySD34,7105
107
+ doctr/models/modules/transformer/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
108
+ doctr/models/modules/transformer/pytorch.py,sha256=yv9W39pjPwuVNXXPV34WACrK5FUyYvcPYHYoKTcdJXg,7718
109
+ doctr/models/modules/transformer/tensorflow.py,sha256=MIFMtvhkWm17vdy-JHPtx3YfOZoiuETw-oYFayC-WkU,9044
110
+ doctr/models/modules/vision_transformer/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
111
+ doctr/models/modules/vision_transformer/pytorch.py,sha256=Tpl-zdePOXj_uHJvnfsg-IAZ5cb3klE2rvJKugppjaI,3943
112
+ doctr/models/modules/vision_transformer/tensorflow.py,sha256=W9bOfbb510ZXTrDF3nDSKNhHk-Sn8g8LttR1ZVALvwk,4190
113
+ doctr/models/predictor/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
114
+ doctr/models/predictor/base.py,sha256=YTDOfuoHfFqp_meuK23MiZpyPVE4nROHJ3AH__388Ns,8718
115
+ doctr/models/predictor/pytorch.py,sha256=E5gP5fPB7fLW1yVn7ZYGp2XFjTuXH4ZGSnIalVWVCrQ,6523
116
+ doctr/models/predictor/tensorflow.py,sha256=gx6NmLJrWNWWp5pT3KOzh-zGLE-ONDo8grGHQdSSRUs,6383
117
+ doctr/models/preprocessor/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
118
+ doctr/models/preprocessor/pytorch.py,sha256=JxTMyoGuhYLuULoT3ZgKg3FYwTcKg0Fz56-PoLNghqk,4955
119
+ doctr/models/preprocessor/tensorflow.py,sha256=-LX-ke4T7Zh93j8c_V8_fI_NPxsMdWRvkieKZXhTMbQ,4605
120
+ doctr/models/recognition/__init__.py,sha256=902nfVyvjOuUGHDKSGZgoS0fKC52J3jcUJQJhIpvOIY,124
121
+ doctr/models/recognition/core.py,sha256=VLfNOFc9lx6YOLCOK3f7lRuIS9lMXDSvs6je3FmfaZ0,1524
122
+ doctr/models/recognition/utils.py,sha256=X6cG-rB_FaGijPnhw5bB6Git5wjQm2TztbirYdy71FU,3486
123
+ doctr/models/recognition/zoo.py,sha256=nqJdHNNibb0ThywDSwXM5nACpy54k6zke_st0JJ-gxA,3063
124
+ doctr/models/recognition/crnn/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
125
+ doctr/models/recognition/crnn/pytorch.py,sha256=yiexQ6sB6ZkYDHZ3LjI-Of7x48dOr6g2y37L_BmC9X4,11867
126
+ doctr/models/recognition/crnn/tensorflow.py,sha256=wU2SAWNpQkVHvV8Hg_wzDsCZgbjAQXELWtX35KtuUJE,11696
127
+ doctr/models/recognition/master/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
128
+ doctr/models/recognition/master/base.py,sha256=SFo8AyoSC8sCkelPiVXB6dBVcdAmZVObCzzel0_RXM4,1471
129
+ doctr/models/recognition/master/pytorch.py,sha256=SXjxnVHpB8DtyjT_Se2OaHpowLhIk_PSrRjXLV4Wneo,12467
130
+ doctr/models/recognition/master/tensorflow.py,sha256=QWYij6WEhScyrFWOM94_DUD3CeDrwg92NIrZPnDPTNQ,12207
131
+ doctr/models/recognition/parseq/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
132
+ doctr/models/recognition/parseq/base.py,sha256=C-J0mm1kWmiVH3X_A1GZizmtqzVYzkFb8Z2bb9e5uww,1465
133
+ doctr/models/recognition/parseq/pytorch.py,sha256=LMxnMyj-GelztL4ZGxC_89NMi3T8PfLGNWaMw6oq2Qc,20165
134
+ doctr/models/recognition/parseq/tensorflow.py,sha256=zvfCRs_Ga0NaE9IJgpPQ8nL-jrNrlpLIkPEJUCth7jY,21701
135
+ doctr/models/recognition/predictor/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
136
+ doctr/models/recognition/predictor/_utils.py,sha256=sFwFCU9q1cpnDQwm-jilAQYd_MOd2zErhrxemZ-2qm4,3312
137
+ doctr/models/recognition/predictor/pytorch.py,sha256=MD0oHLrvbsCZrIS_t2s76aTVJczjfntnwKaU1-xWqws,2803
138
+ doctr/models/recognition/predictor/tensorflow.py,sha256=-4qjw0JA3JuMfvOhlSjEFh6uQcvqSxwOrGxhpmNk1rQ,2514
139
+ doctr/models/recognition/sar/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
140
+ doctr/models/recognition/sar/pytorch.py,sha256=y80zMlHILM45lxc70HkdJc70ER4l30EJw3L0OPtb1ao,15319
141
+ doctr/models/recognition/sar/tensorflow.py,sha256=YCiiAO5tlEY2AnUA9IFXJiBYrUns8ZrUfSdmsRnvzno,15145
142
+ doctr/models/recognition/vitstr/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
143
+ doctr/models/recognition/vitstr/base.py,sha256=5ZjYF0WPgH5sSSaoHeoiw4Os2IZey-souszvkYKgzV8,1419
144
+ doctr/models/recognition/vitstr/pytorch.py,sha256=mwgfQZ-XjI8o6_koZnit7p7nt9iMnBBqrRYCfJByDzM,9760
145
+ doctr/models/recognition/vitstr/tensorflow.py,sha256=BsXiQPHHpIR7mqJkvzfaoTIWv9SbtaDP01q7Fs8OA3M,9788
146
+ doctr/models/utils/__init__.py,sha256=CijDtIRsWiCPpUJmDrJGhkA-RAoEUds7eDCuCBhkJnI,200
147
+ doctr/models/utils/pytorch.py,sha256=ClXBs05UdCdHGbiBKmArmRtha5rs6p36xOV_ZWw5yrU,5488
148
+ doctr/models/utils/tensorflow.py,sha256=QKWDaQVg2uNKkx2Z2A3nht908KunRBqcMZ14S2oxa0c,6357
149
+ doctr/transforms/__init__.py,sha256=0VHbvUZ7llFd1e_7_JdWTaxYMCvaR6KbUJaYJequmQI,23
150
+ doctr/transforms/functional/__init__.py,sha256=JEQlG6MD2UQJ9I5Mtqa8ffKbySiE7A7jigFjJ705URA,172
151
+ doctr/transforms/functional/base.py,sha256=K3taCHB1WGIWJ1FE47VPONZFPr2iAU1wgy6S8fRuODA,6842
152
+ doctr/transforms/functional/pytorch.py,sha256=1oqGHESipDsX0_7VlHymH9-dr75t7ynfndSleCJaXQ4,5110
153
+ doctr/transforms/functional/tensorflow.py,sha256=IEVdcZFDmIZUINNI1S6RT8VI6IsZlOP1rvl7McsXihM,9823
154
+ doctr/transforms/modules/__init__.py,sha256=o2az0yTmrnpI3z5ifzywkRRb79aN1-6sFpR3GVj8QdA,221
155
+ doctr/transforms/modules/base.py,sha256=PZeSQ_RLFu1IevlaJPFSJ_4-wKTl_-79Jvdgcc27e9Q,9874
156
+ doctr/transforms/modules/pytorch.py,sha256=E_L3DhrMKEUlxhB3KTty6fxs0pGtlRXO0EtWeFDDwXI,11862
157
+ doctr/transforms/modules/tensorflow.py,sha256=btfrSJSu6CC7zpbceITU8T2Nsi3Zdpva5MtRx9Dl02I,20252
158
+ doctr/utils/__init__.py,sha256=uQY9ibZ24V896fmihIsK23QOIZdKtk0HyKoCVJ_lLuM,95
159
+ doctr/utils/common_types.py,sha256=ebBlz_61A2gUp_CD2R_8o1pJ5CpCSJimJWzAyGas1uQ,534
160
+ doctr/utils/data.py,sha256=7vY2yr7XvXvlzNMfI2ERqobRJZsXABhLmlQbQQUW1L0,4188
161
+ doctr/utils/fonts.py,sha256=1vEakG5wfOe-XmsXC63Pi_nox6XZaoHcDsJPjafGo-Q,1265
162
+ doctr/utils/geometry.py,sha256=5rTRHKprLuGnKeWdn2b9lzcu6AoVtGw0JINqHRH1vEU,19175
163
+ doctr/utils/metrics.py,sha256=u2d9nz5NY3gHKpmj5DlcK9OjMlB6zwoZrr-vxVntvp4,20249
164
+ doctr/utils/multithreading.py,sha256=FinxQSGRpMs6WL8paixeOGd5CNAkG2VYqC-5d1izYBE,1972
165
+ doctr/utils/reconstitution.py,sha256=mWEGVPhtxnVDKbUDr8E1tad4HaGISGC3DenJvm8I0uM,7256
166
+ doctr/utils/repr.py,sha256=zw4vLHFIqpTGqsEFosGLkM7aLAjy6RLu_yUz5SyI_YA,2087
167
+ doctr/utils/visualization.py,sha256=ywnhKjZ3RsIKHrxGiAu-O8FYn2xPLNNU3CxOe8psz0A,13092
168
+ python_doctr-0.11.0.dist-info/LICENSE,sha256=75RTSsXOsAYhGpxsHc9U41ep6GS7vrUPufeekgoeOXM,11336
169
+ python_doctr-0.11.0.dist-info/METADATA,sha256=gb5X7HqbCN5mbUmJHN8gyz859xLAjRgZwUGEAZ2g4kY,33941
170
+ python_doctr-0.11.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
171
+ python_doctr-0.11.0.dist-info/top_level.txt,sha256=lCgp4pmjPI3HYph62XhfzA3jRwM715kGtJPmqIUJ9t8,6
172
+ python_doctr-0.11.0.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
173
+ python_doctr-0.11.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (72.1.0)
2
+ Generator: setuptools (75.8.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,173 +0,0 @@
1
- doctr/__init__.py,sha256=q-1tv1hf-BRaZtxsrbPVxYNL6ZtyIOSDvlZOSt85TmU,170
2
- doctr/file_utils.py,sha256=3LUSkLXfMsxJgLY_Gah9Qlb7-l-Bxx1y6Wm9hlVXJig,3738
3
- doctr/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- doctr/version.py,sha256=BSHwM5KsOpEVgNNeYRIr89q04Tayoadwt508Blp8nAo,23
5
- doctr/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
- doctr/contrib/artefacts.py,sha256=xXkTkZVMrjalzffeBDOXktRhMn-EmUVEdURpDsV0-h8,5351
7
- doctr/contrib/base.py,sha256=dKUcKvVMyPFvZp_-IekocFNG3JmCJ1cNt0V8BQ5zdV0,3426
8
- doctr/datasets/__init__.py,sha256=umI2ABbgWIKuhswl8RGaF6CefFiI8DdEGVb0Kbd8aZA,574
9
- doctr/datasets/cord.py,sha256=p9ObLgqV3uB7TYoS5Puag0q-JtFTPrXUztkxL36U69U,4746
10
- doctr/datasets/detection.py,sha256=H6inFO6rjdvU_Asm9UTod5r5bjjpmJJWGityv0RTJ8M,3607
11
- doctr/datasets/doc_artefacts.py,sha256=KKOlwE1oUG-sbC43an-TTh2m9PopuryXtUWM471TgO4,3258
12
- doctr/datasets/funsd.py,sha256=RtWztUkgPmzjmNbZi55OU8mKzK8fvLSJXpHb3K9ccNg,4174
13
- doctr/datasets/ic03.py,sha256=2HEHvW9tLYFiSEaPeNM4vrqL3ICjth6LUUXPcHjrHjQ,5066
14
- doctr/datasets/ic13.py,sha256=5qjGMmotEOo_8N2gp0XUdZPW5t2gvVe-cTestlfD6Mc,4010
15
- doctr/datasets/iiit5k.py,sha256=7y4pv4WG-FdXCn7aXLsUodXnk63gRBR8325HfqqlQ3k,3936
16
- doctr/datasets/iiithws.py,sha256=MFWgIW5bNJSvxWU-USZvbYVHNlkBsnzzMaSGrbut-zQ,2778
17
- doctr/datasets/imgur5k.py,sha256=CeSh2R_U-1iPTg-DZOgY5L6t4F-fX1WkqiMP0C6jivQ,6679
18
- doctr/datasets/loader.py,sha256=77ErVBRQsXAhe4pTJstZ-wk4wOZSFdw9w-_OMv89IKg,2803
19
- doctr/datasets/mjsynth.py,sha256=Sybpaxiib8jDOc33OQgl2gGQ4XX8kKsnZaNokKmt08o,4063
20
- doctr/datasets/ocr.py,sha256=wSAU62NUdFgt52vxo65bXPsuKeVWArlAkD5kxWKypiM,2550
21
- doctr/datasets/orientation.py,sha256=PZfSQGfBSqzwRlg84L7BA7Lb2jseBvxkKqzh36TtFXk,1113
22
- doctr/datasets/recognition.py,sha256=bXNkHqJUgPx10lhPfMBK7B0wmpLd20-MFbuGJXAGW2w,1881
23
- doctr/datasets/sroie.py,sha256=bAkPLmw9aVSu_MyEix_FKFW0pbYye1w16vIkumnQ4E8,3939
24
- doctr/datasets/svhn.py,sha256=Q4M84eRGWLWQ5Bsw0zvouhHTUQl46B9-pS06ZYKT5j8,5251
25
- doctr/datasets/svt.py,sha256=eos2IUqeM8AW98zJ4PjHQ-hM0hUiJ-cumFhctQrpZp4,4551
26
- doctr/datasets/synthtext.py,sha256=Q0WKA_UJtgjdBaHHQ888n6ltT-NBuf5kTYQv5SB40IQ,5387
27
- doctr/datasets/utils.py,sha256=xdKi9z0hSvW0TOS_Pb_VJabX_pyCgRmMvRxIZBXpjg8,7584
28
- doctr/datasets/vocabs.py,sha256=TABYcaDr2ZviJJWaH2-DrZTLaQYUVTsUTAGgFia3c4k,3834
29
- doctr/datasets/wildreceipt.py,sha256=HvnAaxo9lLwC8UMUYYKKJo6HkG8xm2yIHopBsN5G1LA,4566
30
- doctr/datasets/datasets/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
31
- doctr/datasets/datasets/base.py,sha256=TUK8GMosZnkTBsJm8zOc7AIy3FUMIV2vOTu3YbTjnSQ,4874
32
- doctr/datasets/datasets/pytorch.py,sha256=M75erZOBP_Cg05Vk4D01yQZSyyqEbN0omHch1afe4pY,2039
33
- doctr/datasets/datasets/tensorflow.py,sha256=Ivx_T6o2ttHXjyUy5wi0LpsmKZYOVb7xL1fHKvRlE80,1975
34
- doctr/datasets/generator/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
35
- doctr/datasets/generator/base.py,sha256=SpzbEqVYUpPZr5NTgccXtpw_yD37WxJ0Jx4HDwa_EKk,5769
36
- doctr/datasets/generator/pytorch.py,sha256=HUmdHUm7rU84gXv18BeXdYTDBCHabtw21Xdpm-p02ik,2134
37
- doctr/datasets/generator/tensorflow.py,sha256=Yj9vgEjdNnOwrM4Ew2w5TfkEwNXgy6ACZuEnExZcUMs,2229
38
- doctr/io/__init__.py,sha256=kS7tKGFvzxOCWBOun-Y8n9CsziwRKNynjwpZEUUI03M,106
39
- doctr/io/elements.py,sha256=bGAIS34Kq_KMGl4zHjIloGCjsbyB6VcrkGq7fvQY71k,24854
40
- doctr/io/html.py,sha256=cXDCMKztiFafCdPy_AMU5Ven52q1A0FJWXhPnJMLHGg,719
41
- doctr/io/pdf.py,sha256=V2GAwPFvGAjBqhT85Y6uVejlLy0vn5S94_0ZJVPQLiE,1350
42
- doctr/io/reader.py,sha256=68pr31K19Tej6UHAqhfAlD11paGX6h3IeSvEje8GaOg,2829
43
- doctr/io/image/__init__.py,sha256=SqJtZIvr9dIDPLW39kHIX_MxufCKbI54aX28VrjeauE,193
44
- doctr/io/image/base.py,sha256=g6kdcoIEQVN0dhFsVUA-gwGedhRhyKjFVrPu9QbR_UQ,1740
45
- doctr/io/image/pytorch.py,sha256=13F8tFXultegdF9yZqCMXSM9Jn4ojwT9YLYWMF5nZ6M,3310
46
- doctr/io/image/tensorflow.py,sha256=47a-zW4VoAeaoihTsppFJlFyK_8dvGzjGF1GB3Ti0Ig,3213
47
- doctr/models/__init__.py,sha256=yn_mXUL8B5L27Uaat1rLGRQHgLR8VLVxzBuPfNuN1YE,124
48
- doctr/models/_utils.py,sha256=zt-wXy0OP8Mw9JhnCLPFhX5d5efdcijgPlLnVKBdRhw,7540
49
- doctr/models/builder.py,sha256=9b6fCFDJvHo5XOyP8oz6PkrEjyGxyHUecEWYjdHv0IA,20665
50
- doctr/models/core.py,sha256=SMXYuX1o_Q2zrjcF-vzfqj7IkLKlDyzEOc-4HeiEZ8g,501
51
- doctr/models/zoo.py,sha256=G52XurwqjVdLRHOZWrEu2QbmZQWsCPdZVIPu874gL_E,9318
52
- doctr/models/classification/__init__.py,sha256=HeErE29Bs1-91FtS9HqNghHe89XZGzI_11MO_E6GJ7s,154
53
- doctr/models/classification/zoo.py,sha256=HM2p1fFM83CLqrz7-Vlj-_oBEPNRpuC1bD_0AKquh0E,3503
54
- doctr/models/classification/magc_resnet/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
55
- doctr/models/classification/magc_resnet/pytorch.py,sha256=UY65c3_Ux2o4hOm_USEQYP7O69bj76qbUB-PCb_0Lng,5603
56
- doctr/models/classification/magc_resnet/tensorflow.py,sha256=4UDrEcom_2wcyE1QjwmT-u6rtpzQ5ViyB1U6HxpT_XI,6423
57
- doctr/models/classification/mobilenet/__init__.py,sha256=FBZ2YT2Cq3mj6vpDC3ff5TcMpagNWFhwxQ_brdsgBqo,172
58
- doctr/models/classification/mobilenet/pytorch.py,sha256=bko2qHGmGfJay2EZmEZlrzgnDah7vhLpibNYIxVFWqo,9318
59
- doctr/models/classification/mobilenet/tensorflow.py,sha256=VUMq9auHRcDafvjhayCq4fV1fLS14Nxp_O6OEtA7R6A,15601
60
- doctr/models/classification/predictor/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
61
- doctr/models/classification/predictor/pytorch.py,sha256=NEeFSUJ5QhUqtG9pDw5s3ZzR8wSORhicmxESPTVSErw,2288
62
- doctr/models/classification/predictor/tensorflow.py,sha256=asJl1GiDFq8WJM_J56tx4xPR-Kqrnroc1ZGty5znkDg,2071
63
- doctr/models/classification/resnet/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
64
- doctr/models/classification/resnet/pytorch.py,sha256=VVkNit3HEezRfOPw8wfuiEEAUCEnYSauCvWaCFF3cwo,12442
65
- doctr/models/classification/resnet/tensorflow.py,sha256=jBGiL6Mucnq7JGkyIa4Y9A6BQz2ol88cm-eBxJjsTPo,13185
66
- doctr/models/classification/textnet/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
67
- doctr/models/classification/textnet/pytorch.py,sha256=z2BwTM-7ClEzanHWXB5Uie-_X62k1OZZ2Y6m08V_zUM,10163
68
- doctr/models/classification/textnet/tensorflow.py,sha256=RVg7Nic0cn8A3eswq-YauoqvnDrdxiuzvx_h4qAGubQ,9789
69
- doctr/models/classification/vgg/__init__.py,sha256=FBZ2YT2Cq3mj6vpDC3ff5TcMpagNWFhwxQ_brdsgBqo,172
70
- doctr/models/classification/vgg/pytorch.py,sha256=b_q9oWmtlazD4uk9DFYezWgsgAwwN-3ewEz15E2cJR4,3136
71
- doctr/models/classification/vgg/tensorflow.py,sha256=mVuyIXtX7iu622K0GwXkALOM7gzFtlGX9IABLP2NR2Y,4090
72
- doctr/models/classification/vit/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
73
- doctr/models/classification/vit/pytorch.py,sha256=770ZrCPX7LlVUjE9XNFrzcb2i_0lHStJ8Q4vXEhXEHs,6096
74
- doctr/models/classification/vit/tensorflow.py,sha256=TtglXtKAE6y_gfzk8DOhUwoQNIMhK86tmhCB1SbT-k0,5869
75
- doctr/models/detection/__init__.py,sha256=RqSz5beehLiqhW0PwFLFmCfTyMjofO-0umcQJLDMHjY,105
76
- doctr/models/detection/core.py,sha256=K2uQTIu3ttgxj7YF7i1a-X6djIGCSFjZnQQ57JQBDv0,3566
77
- doctr/models/detection/zoo.py,sha256=OJP8K3CKzLRmhaSe0CtvFPioXBcZcvf8__As_6xflFo,3332
78
- doctr/models/detection/_utils/__init__.py,sha256=6f2JchSfAnB8ZShc4dvR2uZtWXEEIZ22vwt4yENoqXg,151
79
- doctr/models/detection/_utils/base.py,sha256=56OnQhSmAdG2YRd6D-2tl_YXtZ60OyOyBoyJxuTNZJI,2526
80
- doctr/models/detection/_utils/pytorch.py,sha256=UZ-PK5Uw0dVN978JGj5MVtF7kLXTL4EtugCoq_VVkVk,1063
81
- doctr/models/detection/_utils/tensorflow.py,sha256=9D2ita4ZqJus2byLe7bkSIhyYExAiOLAGBbC7-oRZDU,979
82
- doctr/models/detection/differentiable_binarization/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
83
- doctr/models/detection/differentiable_binarization/base.py,sha256=fFnXH8iGLXFk4La5G19rqvId_7RDOh5H-v_IRyb1hA0,16432
84
- doctr/models/detection/differentiable_binarization/pytorch.py,sha256=nYOLVLsLF4zrnXK9u6mTPue7X2JR7WQe2gUb_UMDI6I,15955
85
- doctr/models/detection/differentiable_binarization/tensorflow.py,sha256=l4QltrgDMLK_eY0dxEaCDzrB8rlhVpwUmOAPNIzd_70,14506
86
- doctr/models/detection/fast/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
87
- doctr/models/detection/fast/base.py,sha256=Ydm8fzKwYO_NBMnGazAYg1hpzlXZcRWJ-oKGir36DsE,10927
88
- doctr/models/detection/fast/pytorch.py,sha256=4FYCaMZ2vzr_j4Phu2bOXs73L_Cfvgu4LDE0Q7m8hz0,16143
89
- doctr/models/detection/fast/tensorflow.py,sha256=ps0x_AYFW5GYA2SlVQip1S4x61o2mhlSNhhJdaALnF4,15797
90
- doctr/models/detection/linknet/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
91
- doctr/models/detection/linknet/base.py,sha256=R12TMBNeOsY_UTjSFbPr7-FmLsMIJSwxdHc3e3pFLKw,10617
92
- doctr/models/detection/linknet/pytorch.py,sha256=sodWXaCDv1taRl3g6lgwxitvhU-ZszfN-OIofsorkp8,13810
93
- doctr/models/detection/linknet/tensorflow.py,sha256=PK3adzBG6wz_SA5lMrh0KBKpbDu-e3FaKwTZ8-ZaN-s,12914
94
- doctr/models/detection/predictor/__init__.py,sha256=lwmH917kRdbUUBsE02fELIuXQNRNePpIj3iK43ey6Bg,159
95
- doctr/models/detection/predictor/pytorch.py,sha256=sNuMGvcKQeeOcW8QG-xWK0W59DohGYxXlKv0yK2HcNQ,2689
96
- doctr/models/detection/predictor/tensorflow.py,sha256=W96CJhjYC3-MTcLA3FTH1lLX5DZ3ueYha2b_7A4GxNk,2448
97
- doctr/models/factory/__init__.py,sha256=cKPoH2V2157lLMTR2zsljG3_IQHziodqR-XK_LG0D_I,19
98
- doctr/models/factory/hub.py,sha256=5IsoyiLfZO_QxM6-dK0-oaAleY8bMvvi9yP_n_W1FHs,7464
99
- doctr/models/kie_predictor/__init__.py,sha256=lwmH917kRdbUUBsE02fELIuXQNRNePpIj3iK43ey6Bg,159
100
- doctr/models/kie_predictor/base.py,sha256=YTGdKda8zqM1H9gB8B2zFEN7C8NjFA00I-o3fRtipvA,2115
101
- doctr/models/kie_predictor/pytorch.py,sha256=TcWjWb51aoXdfRal4diRbSbJohBOwpKsDUpci6d3VfE,7990
102
- doctr/models/kie_predictor/tensorflow.py,sha256=MJTP5BlSlG50emhofPPMTKl5MgRdRTGzRhg53tdsMoE,7626
103
- doctr/models/modules/__init__.py,sha256=pouP7obVTu4p6aHkyaqa1yHKbynpvT0Hgo-LO_1U2R4,83
104
- doctr/models/modules/layers/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
105
- doctr/models/modules/layers/pytorch.py,sha256=UIidAIKfXQxlX9MbVWADLGrrPE7J496BMfgRHR73jMY,6853
106
- doctr/models/modules/layers/tensorflow.py,sha256=etXoKXuIeFr_LD-L0x0fhVlL-cUrjL5vFTh4cmci2P8,7145
107
- doctr/models/modules/transformer/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
108
- doctr/models/modules/transformer/pytorch.py,sha256=93wDIrV7odRORV_wOLFNsw-QSH_COjUcp9J55PPp_qA,7664
109
- doctr/models/modules/transformer/tensorflow.py,sha256=NTF-Q6ClUIMdSWDqus6kPZjOlKC3XcJ3HqUeyZTqtnU,9113
110
- doctr/models/modules/vision_transformer/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
111
- doctr/models/modules/vision_transformer/pytorch.py,sha256=D6BbqNPV_7OFRogM0iaiWbn_6uLe3Thbo6GKRSYpfTQ,3970
112
- doctr/models/modules/vision_transformer/tensorflow.py,sha256=PaDbTtCc5YGqZNd_NFMdxeq6oNxs0WtVGYwhLCjJWFY,4199
113
- doctr/models/predictor/__init__.py,sha256=lwmH917kRdbUUBsE02fELIuXQNRNePpIj3iK43ey6Bg,159
114
- doctr/models/predictor/base.py,sha256=LY910Umd0u00rrZxQNoPDcizCdsMa2cnDEg6ZQEFFjg,8157
115
- doctr/models/predictor/pytorch.py,sha256=nc2QJSdUmFLel2x6kTTgRFRNFDXNZnOKwJMSF0WmRWQ,6518
116
- doctr/models/predictor/tensorflow.py,sha256=Foiji8uEXCLX62E1JWdvlWDX3psLAQtiNd4Fpl0vyuc,6243
117
- doctr/models/preprocessor/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
118
- doctr/models/preprocessor/pytorch.py,sha256=blJVqP1Xsa5GBX4pWrmaHJetCjP08Im8fry7BzLks-U,4877
119
- doctr/models/preprocessor/tensorflow.py,sha256=6ZXPxKjXQ8NRTC_FGZZ_6-mEV_5xdzmZhJzdgR2cdl4,4625
120
- doctr/models/recognition/__init__.py,sha256=902nfVyvjOuUGHDKSGZgoS0fKC52J3jcUJQJhIpvOIY,124
121
- doctr/models/recognition/core.py,sha256=dbg8SebgfK8CPHXR-7rzmCI9XMLXmWW0jLd1yLLv_34,1593
122
- doctr/models/recognition/utils.py,sha256=GhNehWmCjl3GJ1ZFneA3cBRrZZk36856uU5i727FaQg,3550
123
- doctr/models/recognition/zoo.py,sha256=GFe7TikjfjF5nxuINrFJP7jK3hqan44kjNWoIFyYylA,2506
124
- doctr/models/recognition/crnn/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
125
- doctr/models/recognition/crnn/pytorch.py,sha256=AE8Ey-Z5VZNGUldL-crbMdyKI__OUMBmn8nYC2790Pc,11802
126
- doctr/models/recognition/crnn/tensorflow.py,sha256=dcT1X_zLmEqPiWG628lQTe9WMmfEWubXgCWFYs1BhJo,11666
127
- doctr/models/recognition/master/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
128
- doctr/models/recognition/master/base.py,sha256=5yQ0mUaS_ZWmUUzTAobgAlNS3Vp90PFvrzAcQXUF758,1540
129
- doctr/models/recognition/master/pytorch.py,sha256=-RpyO6mBW3ql-BjNjnh5T-EMCvxIHLIJSUkB1lzX7Uw,12260
130
- doctr/models/recognition/master/tensorflow.py,sha256=rbrPMz49ySW8Wpd72dBNOH8dvcoAl3NwBi2ID7qVkxA,12140
131
- doctr/models/recognition/parseq/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
132
- doctr/models/recognition/parseq/base.py,sha256=8MMqibB8zZLw2qU-iyx79Zpr4MdEtbnF3f3ikfLrBjU,1534
133
- doctr/models/recognition/parseq/pytorch.py,sha256=PAojvRwtz1qzKzW3JI_tTm1pco7mPHuX-Y-lah5mZOk,19927
134
- doctr/models/recognition/parseq/tensorflow.py,sha256=Y0DCm4p2Sjxv8_9zAYP_9rkBQZTMMtlQHoYq4hLk8-0,21632
135
- doctr/models/recognition/predictor/__init__.py,sha256=lwmH917kRdbUUBsE02fELIuXQNRNePpIj3iK43ey6Bg,159
136
- doctr/models/recognition/predictor/_utils.py,sha256=y6hDoGS8reluLmx8JmTxM2f1uhlYnjOouh0BOr6wNTA,3389
137
- doctr/models/recognition/predictor/pytorch.py,sha256=snMHU0GopDEJ9HDdzpVxuvfJxVL-91Le-rc_dSqKCA0,2785
138
- doctr/models/recognition/predictor/tensorflow.py,sha256=o4Mhbxf9BUofqTV863U7-Zi0H77imX3LfhqzYLc2m4k,2549
139
- doctr/models/recognition/sar/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
140
- doctr/models/recognition/sar/pytorch.py,sha256=pN68aLfuqWKN6dexxeMy3DFJq1YP-MWUsUFj4BBHtXs,15118
141
- doctr/models/recognition/sar/tensorflow.py,sha256=GLChryUwWZKAc77MxwDwTS8wc9GUzQaxlVv5PpYPuGA,15045
142
- doctr/models/recognition/vitstr/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
143
- doctr/models/recognition/vitstr/base.py,sha256=Xt7hq45tq999boF0XgW62x_cX5wJXx7VLxWA9H06U_o,1488
144
- doctr/models/recognition/vitstr/pytorch.py,sha256=21N7PJbaYmO_mQKW8uS0MGXTtTyFr4QYWRsX6PTKhtU,9568
145
- doctr/models/recognition/vitstr/tensorflow.py,sha256=_8k6Jxd715uH8lsBqUCn4C_3tlgE75h_BXt4AlfYrk8,9671
146
- doctr/models/utils/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
147
- doctr/models/utils/pytorch.py,sha256=bO8a432TzpHTuqAsFuAi2ld6NOT12E2rlghQlW4nAjg,5494
148
- doctr/models/utils/tensorflow.py,sha256=VccfK6cyPoWuWGWAWbl17MkLa1srtHU-HJCbb_MXePw,6322
149
- doctr/transforms/__init__.py,sha256=0VHbvUZ7llFd1e_7_JdWTaxYMCvaR6KbUJaYJequmQI,23
150
- doctr/transforms/functional/__init__.py,sha256=FBZ2YT2Cq3mj6vpDC3ff5TcMpagNWFhwxQ_brdsgBqo,172
151
- doctr/transforms/functional/base.py,sha256=c2PYwU4ZDDDwTGqgaIdOTP71XZ7lo458yc3CimYxiWQ,6943
152
- doctr/transforms/functional/pytorch.py,sha256=itjgP7LgIdnPNbIjPqtrZHcxGAlTFg8NP8yBtg9bEco,5007
153
- doctr/transforms/functional/tensorflow.py,sha256=35dYnCtA9A9SvjndEvckxD8rK_uZ1_4BTgBZ7WiBtGI,9959
154
- doctr/transforms/modules/__init__.py,sha256=a4GXc5YZWt26eeBKo2HqLmbDn1_qo-uko6GoPNrniC0,221
155
- doctr/transforms/modules/base.py,sha256=fwaXQhjuR514-fl4FqVZnb_NsOxkRtE8Yh_hiE2uCTU,9970
156
- doctr/transforms/modules/pytorch.py,sha256=RCQ1MT9M4bipp5ghIQnxArvg7SjnT7xzHgShtlZmJcA,10937
157
- doctr/transforms/modules/tensorflow.py,sha256=z1bR_Qk_QKSqeJByKrMTUsJyEekuCjr-ik8NO66nyyo,20348
158
- doctr/utils/__init__.py,sha256=uQY9ibZ24V896fmihIsK23QOIZdKtk0HyKoCVJ_lLuM,95
159
- doctr/utils/common_types.py,sha256=KXG-4mvL1MPmkrjuhCs8vAfiaBmdGRmt2yQcNlgALM8,584
160
- doctr/utils/data.py,sha256=26iN_Ra1OJD_LHIEbefADMxU2yVtCpu3gYdhCW5K9B4,4280
161
- doctr/utils/fonts.py,sha256=QqtfTDNCEKPb1drUbpXEhVDxtHWhKCKcGHC1l_t2_iI,1336
162
- doctr/utils/geometry.py,sha256=zMgWMshx5uUqqUPgv8DJGAso96qa7yHu_0UnbzqsGOA,16459
163
- doctr/utils/metrics.py,sha256=rWZUZGDhIaR422riqH3E5Mhvy_D6QwjKIz55PnILWlI,20552
164
- doctr/utils/multithreading.py,sha256=iEM6o_qjutH-CxFTz7K1VQseYpVaHH3Hpw_yNDoQBSw,1989
165
- doctr/utils/reconstitution.py,sha256=O-AaibQRlfhKxCAiqd_lYhXzgoRtFMQgdRwCtuQU1fI,4770
166
- doctr/utils/repr.py,sha256=3GdMquo1NtwNkQPoB-nmDm_AFmU3sLc4T3VfGck9uoQ,2111
167
- doctr/utils/visualization.py,sha256=L6UXyxecH2NVSA_u-OL0_TJ0HGLD5ROAyEaL59I7buI,13277
168
- python_doctr-0.9.0.dist-info/LICENSE,sha256=75RTSsXOsAYhGpxsHc9U41ep6GS7vrUPufeekgoeOXM,11336
169
- python_doctr-0.9.0.dist-info/METADATA,sha256=KU5hLGiNSLrBVfS7SBrgNkr4vGIB-OSXaU-nPQf8fRM,33351
170
- python_doctr-0.9.0.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
171
- python_doctr-0.9.0.dist-info/top_level.txt,sha256=lCgp4pmjPI3HYph62XhfzA3jRwM715kGtJPmqIUJ9t8,6
172
- python_doctr-0.9.0.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
173
- python_doctr-0.9.0.dist-info/RECORD,,