python-doctr 0.8.1__py3-none-any.whl → 0.10.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.
- doctr/__init__.py +1 -1
- doctr/contrib/__init__.py +0 -0
- doctr/contrib/artefacts.py +131 -0
- doctr/contrib/base.py +105 -0
- doctr/datasets/cord.py +10 -1
- doctr/datasets/datasets/pytorch.py +2 -2
- doctr/datasets/funsd.py +11 -1
- doctr/datasets/generator/base.py +6 -5
- doctr/datasets/ic03.py +11 -1
- doctr/datasets/ic13.py +10 -1
- doctr/datasets/iiit5k.py +26 -16
- doctr/datasets/imgur5k.py +11 -2
- doctr/datasets/loader.py +1 -6
- doctr/datasets/sroie.py +11 -1
- doctr/datasets/svhn.py +11 -1
- doctr/datasets/svt.py +11 -1
- doctr/datasets/synthtext.py +11 -1
- doctr/datasets/utils.py +9 -3
- doctr/datasets/vocabs.py +15 -4
- doctr/datasets/wildreceipt.py +12 -1
- doctr/file_utils.py +45 -12
- doctr/io/elements.py +52 -10
- doctr/io/html.py +2 -2
- doctr/io/image/pytorch.py +6 -8
- doctr/io/image/tensorflow.py +1 -1
- doctr/io/pdf.py +5 -2
- doctr/io/reader.py +6 -0
- doctr/models/__init__.py +0 -1
- doctr/models/_utils.py +57 -20
- doctr/models/builder.py +73 -15
- doctr/models/classification/magc_resnet/tensorflow.py +13 -6
- doctr/models/classification/mobilenet/pytorch.py +47 -9
- doctr/models/classification/mobilenet/tensorflow.py +51 -14
- doctr/models/classification/predictor/pytorch.py +28 -17
- doctr/models/classification/predictor/tensorflow.py +26 -16
- doctr/models/classification/resnet/tensorflow.py +21 -8
- doctr/models/classification/textnet/pytorch.py +3 -3
- doctr/models/classification/textnet/tensorflow.py +11 -5
- doctr/models/classification/vgg/tensorflow.py +9 -3
- doctr/models/classification/vit/tensorflow.py +10 -4
- doctr/models/classification/zoo.py +55 -19
- doctr/models/detection/_utils/__init__.py +1 -0
- doctr/models/detection/_utils/base.py +66 -0
- doctr/models/detection/differentiable_binarization/base.py +4 -3
- doctr/models/detection/differentiable_binarization/pytorch.py +2 -2
- doctr/models/detection/differentiable_binarization/tensorflow.py +34 -12
- doctr/models/detection/fast/base.py +6 -5
- doctr/models/detection/fast/pytorch.py +4 -4
- doctr/models/detection/fast/tensorflow.py +15 -12
- doctr/models/detection/linknet/base.py +4 -3
- doctr/models/detection/linknet/tensorflow.py +23 -11
- doctr/models/detection/predictor/pytorch.py +15 -1
- doctr/models/detection/predictor/tensorflow.py +17 -3
- doctr/models/detection/zoo.py +7 -2
- doctr/models/factory/hub.py +8 -18
- doctr/models/kie_predictor/base.py +13 -3
- doctr/models/kie_predictor/pytorch.py +45 -20
- doctr/models/kie_predictor/tensorflow.py +44 -17
- doctr/models/modules/layers/pytorch.py +2 -3
- doctr/models/modules/layers/tensorflow.py +6 -8
- doctr/models/modules/transformer/pytorch.py +2 -2
- doctr/models/modules/transformer/tensorflow.py +0 -2
- doctr/models/modules/vision_transformer/pytorch.py +1 -1
- doctr/models/modules/vision_transformer/tensorflow.py +1 -1
- doctr/models/predictor/base.py +97 -58
- doctr/models/predictor/pytorch.py +35 -20
- doctr/models/predictor/tensorflow.py +35 -18
- doctr/models/preprocessor/pytorch.py +4 -4
- doctr/models/preprocessor/tensorflow.py +3 -2
- doctr/models/recognition/crnn/tensorflow.py +8 -6
- doctr/models/recognition/master/pytorch.py +2 -2
- doctr/models/recognition/master/tensorflow.py +9 -4
- doctr/models/recognition/parseq/pytorch.py +4 -3
- doctr/models/recognition/parseq/tensorflow.py +14 -11
- doctr/models/recognition/sar/pytorch.py +7 -6
- doctr/models/recognition/sar/tensorflow.py +10 -12
- doctr/models/recognition/vitstr/pytorch.py +1 -1
- doctr/models/recognition/vitstr/tensorflow.py +9 -4
- doctr/models/recognition/zoo.py +1 -1
- doctr/models/utils/pytorch.py +1 -1
- doctr/models/utils/tensorflow.py +15 -15
- doctr/models/zoo.py +2 -2
- doctr/py.typed +0 -0
- doctr/transforms/functional/base.py +1 -1
- doctr/transforms/functional/pytorch.py +5 -5
- doctr/transforms/modules/base.py +37 -15
- doctr/transforms/modules/pytorch.py +73 -14
- doctr/transforms/modules/tensorflow.py +78 -19
- doctr/utils/fonts.py +7 -5
- doctr/utils/geometry.py +141 -31
- doctr/utils/metrics.py +34 -175
- doctr/utils/reconstitution.py +212 -0
- doctr/utils/visualization.py +5 -118
- doctr/version.py +1 -1
- {python_doctr-0.8.1.dist-info → python_doctr-0.10.0.dist-info}/METADATA +85 -81
- python_doctr-0.10.0.dist-info/RECORD +173 -0
- {python_doctr-0.8.1.dist-info → python_doctr-0.10.0.dist-info}/WHEEL +1 -1
- doctr/models/artefacts/__init__.py +0 -2
- doctr/models/artefacts/barcode.py +0 -74
- doctr/models/artefacts/face.py +0 -63
- doctr/models/obj_detection/__init__.py +0 -1
- doctr/models/obj_detection/faster_rcnn/__init__.py +0 -4
- doctr/models/obj_detection/faster_rcnn/pytorch.py +0 -81
- python_doctr-0.8.1.dist-info/RECORD +0 -173
- {python_doctr-0.8.1.dist-info → python_doctr-0.10.0.dist-info}/LICENSE +0 -0
- {python_doctr-0.8.1.dist-info → python_doctr-0.10.0.dist-info}/top_level.txt +0 -0
- {python_doctr-0.8.1.dist-info → python_doctr-0.10.0.dist-info}/zip-safe +0 -0
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
doctr/__init__.py,sha256=q-1tv1hf-BRaZtxsrbPVxYNL6ZtyIOSDvlZOSt85TmU,170
|
|
2
|
+
doctr/file_utils.py,sha256=YRxb_xnV980ONPrYTS9XtKCeWsNfo_DamnqaeSvWygI,4442
|
|
3
|
+
doctr/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
|
+
doctr/version.py,sha256=hPF6G3uWBAkCELBsDxYD6Z0PDEzrjDfFIIWewytUf-U,24
|
|
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=J10eXeu6i90qnQjGNHR2C1o20-1vQeMKliTRthJvTBg,5288
|
|
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=_3r3BCWtUtQhH317JkNSfWMUWLouvMvJVtReRAPnVyE,4710
|
|
13
|
+
doctr/datasets/ic03.py,sha256=49vfjAcM0v1Pwp1dCDZa-MfX8dChbVze_K3O4c3W_mA,5577
|
|
14
|
+
doctr/datasets/ic13.py,sha256=l8fmVmtXaJZbOu7UDfmnCvIkF61TWUczfOAnOUSXVG0,4517
|
|
15
|
+
doctr/datasets/iiit5k.py,sha256=_z1EVQB0QOM7MjW5nXLawJiQ9HY_XVjK6Na5G8BYcr0,4417
|
|
16
|
+
doctr/datasets/iiithws.py,sha256=MFWgIW5bNJSvxWU-USZvbYVHNlkBsnzzMaSGrbut-zQ,2778
|
|
17
|
+
doctr/datasets/imgur5k.py,sha256=aNwHH9PT5aLqDFlbaSQ9oZuuvgbT1Z5eCowPVC9nnqQ,7222
|
|
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=2FJawrbG0evONbOkiS9ns5zoHQPOGMrsUYkU7SuQtxo,4442
|
|
24
|
+
doctr/datasets/svhn.py,sha256=VbHt51ZC3Y7t9sp3E-rdXryPkjB0MVV3WEyMwgxCXDY,5767
|
|
25
|
+
doctr/datasets/svt.py,sha256=2pIM8GIPXUXqzMKz5p_bKxM_7IlnOyjOhQZ4A2x2fY8,5054
|
|
26
|
+
doctr/datasets/synthtext.py,sha256=AKReG9jprETBrc8HEQ5EbMeBuf3rHq3nM3z4nrwbc7c,5925
|
|
27
|
+
doctr/datasets/utils.py,sha256=Mz6ErQPhEAn_ogJ3-1L-7A0PTqtQicuzbtokBkEgTEI,7753
|
|
28
|
+
doctr/datasets/vocabs.py,sha256=-NL0lJqSK6ECj2sJBe4mCcT-NyrMybZLXzDUvRIQlEo,4143
|
|
29
|
+
doctr/datasets/wildreceipt.py,sha256=Ce9Eqv2rgOhinlMnT15To1X9KKv0XOqi4C_e4mNWNSw,5130
|
|
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=-RkM5WQG72CA3zUUYs7Epa8M0jh3-qrGaN9nke0hj-g,25061
|
|
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=b_HeUevO_GoVgPZYmD2qg06Jx_PvSmNTETdsiNSoVM0,20661
|
|
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=BGPAt1-6ma7BfPU6Fw4z8cMOnbbIq5vY5A7Nxspuggg,3927
|
|
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=DGyzKwDtPqVcmDkvHzZJlMxY8hH80cphCMtTeA5KIkw,6761
|
|
57
|
+
doctr/models/classification/mobilenet/__init__.py,sha256=FBZ2YT2Cq3mj6vpDC3ff5TcMpagNWFhwxQ_brdsgBqo,172
|
|
58
|
+
doctr/models/classification/mobilenet/pytorch.py,sha256=p3bp9CwDo5-1sfRP5G33Gl66iAlcwlfUJwhCPwTFzsY,9392
|
|
59
|
+
doctr/models/classification/mobilenet/tensorflow.py,sha256=1J7mWvPmdMum0NZatTXwtV8nSoEoTBV4jU_ZnNIWv_w,15942
|
|
60
|
+
doctr/models/classification/predictor/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
61
|
+
doctr/models/classification/predictor/pytorch.py,sha256=YwWCO3ZsxYe-W6WlEtVVDmDxKgbk-MXbEgyb0VwsPho,2640
|
|
62
|
+
doctr/models/classification/predictor/tensorflow.py,sha256=EQq_00FdJ_2uUIsSo5nqkcHFA1dgv6TL_Haw6ZEfH0A,2369
|
|
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=Ivof4ki1VQILXiQG6w3IJ8n7x8oaBM5GJ-x4Gjmu6RI,13816
|
|
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=YuqLBbi95uGMIP7o_l2RuMhanKCEy7vmGg4mNoOAjkc,10100
|
|
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=fqbU_SO0DQA7vuJa-L67rEg9sw3S4oHIwXSOZ-vtxfM,4387
|
|
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=W2pbZH-4HTbcHWebNwj2Aq2QfUj8YEV1a_U4VoQUmgA,6173
|
|
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=XWZr1jB9i487LcrUphn7tZrZTWwJ_T3VaBvN6my-Z4c,15277
|
|
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=ZzEtP--oSXc21hCb6_sGllcexTb3wBvRUuoU8FLbnE8,15904
|
|
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=tZquu24-mSNe_SPg7Hsar_Q1g1__b7p5MHx9js3-oaM,13240
|
|
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=MwsrIDDfqbU0llJ9RAW8N1QzZA2dmoOmMMj4SGF0tr8,2448
|
|
97
|
+
doctr/models/factory/__init__.py,sha256=cKPoH2V2157lLMTR2zsljG3_IQHziodqR-XK_LG0D_I,19
|
|
98
|
+
doctr/models/factory/hub.py,sha256=_JJMgJGM-eT6kFtq8SgGIbmvnpGwRe2vUN-isei6xFg,7454
|
|
99
|
+
doctr/models/kie_predictor/__init__.py,sha256=lwmH917kRdbUUBsE02fELIuXQNRNePpIj3iK43ey6Bg,159
|
|
100
|
+
doctr/models/kie_predictor/base.py,sha256=6ZFsOYWbyd6aN3OAX32ZaOHuDLeQT8_4b9phHb38McY,2316
|
|
101
|
+
doctr/models/kie_predictor/pytorch.py,sha256=hwPhjldL01h6HiMRQ6Kh69JzYql9iD211fUrEBIPfp4,8179
|
|
102
|
+
doctr/models/kie_predictor/tensorflow.py,sha256=ei-qEj8B9NooWnq4Pa1MIfkBePqAjX0peDeLO25XN_g,7864
|
|
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=eJjxb9B0PYD4R4ga0VQjY0RKrGyzJhOty6i5TFNNBV0,9074
|
|
110
|
+
doctr/models/modules/vision_transformer/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
111
|
+
doctr/models/modules/vision_transformer/pytorch.py,sha256=h1L7w1SIKIQ9eDU8WEXzntdum-tWMgiVnuqU_Vz81cI,3968
|
|
112
|
+
doctr/models/modules/vision_transformer/tensorflow.py,sha256=OENBhKQf3rw6iUW2-h63pH8aCapTG5GyPN8pOtMGR7A,4197
|
|
113
|
+
doctr/models/predictor/__init__.py,sha256=lwmH917kRdbUUBsE02fELIuXQNRNePpIj3iK43ey6Bg,159
|
|
114
|
+
doctr/models/predictor/base.py,sha256=FQqIG7H7ZTBGLWKmJtJ1mcAgSidlge07iZu3XeFpQD4,8754
|
|
115
|
+
doctr/models/predictor/pytorch.py,sha256=LWlpgkk16gLS03uUS2TlO56YHEcZVbGec413qCxU1lI,6703
|
|
116
|
+
doctr/models/predictor/tensorflow.py,sha256=y11toyEbZV_nVa2FfX5QchdX5o9xn9eX0pDwHWgl26k,6465
|
|
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=1DvrgdReXqwj6QKYTHhMYzRE3RmrOQzBGC-6odTRVvg,4643
|
|
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=CgAU0VTG7nI-fNMsQuEY6XhyWkSvvYnFI2LUoztFbiA,11885
|
|
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=vXHDyWzU3K2P8fOX_6IwWWYKAV_LGPg8y5domYWf61I,12368
|
|
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=ormv2HpA7dLaajBQGDLN6jGGEMHLQCGpbquCeszxj3U,21816
|
|
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=CqxQp9zNXxvWsAcgFMlwB40prbtIkUMTWPWYnwgSiOk,15281
|
|
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=Ighm92HE1h5A0Xv4fJR0wcwygxGehBmiz85XpFEDVsI,9915
|
|
146
|
+
doctr/models/utils/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
147
|
+
doctr/models/utils/pytorch.py,sha256=RiCNOVnOoMMXboOcyOxMnmi_88x40Ed9q8gNrq8qOZM,5520
|
|
148
|
+
doctr/models/utils/tensorflow.py,sha256=JYGH16yYn_8cy1g0NEcizDzRhSaopAYH-K4ooCwt7Hk,6179
|
|
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=_7ZjWlwadGOvh4Qf--0mWYbtzK7A3Crbgo-2yNIF1yg,5031
|
|
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=J-6QwbQYD7mq0ohEvIPOCvNqlB-Wvd7mzMkYxGudyqo,10872
|
|
157
|
+
doctr/transforms/modules/tensorflow.py,sha256=zcTESs-A92Ktrqyumb6MeNb5NaCQqt1wzJ04uBb6T8U,20440
|
|
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=Lwj9h8P5p7zLQDsf03nxrBRRyvVJRCnS1RINsSELafw,19641
|
|
163
|
+
doctr/utils/metrics.py,sha256=-9Ks1myFqa3NPfLKMYUxuH09Bd-dz_VZLzNrM95j5c4,20552
|
|
164
|
+
doctr/utils/multithreading.py,sha256=iEM6o_qjutH-CxFTz7K1VQseYpVaHH3Hpw_yNDoQBSw,1989
|
|
165
|
+
doctr/utils/reconstitution.py,sha256=LPujIo2NMduqnfXH6gFcT5LZXnYgrjdq3X-RvzLJdlA,7323
|
|
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.10.0.dist-info/LICENSE,sha256=75RTSsXOsAYhGpxsHc9U41ep6GS7vrUPufeekgoeOXM,11336
|
|
169
|
+
python_doctr-0.10.0.dist-info/METADATA,sha256=aYC4njpsGWuHN6z2qS_n3PmBJ4mftnzHBV5tKoVLvf4,33350
|
|
170
|
+
python_doctr-0.10.0.dist-info/WHEEL,sha256=OVMc5UfuAQiSplgO0_WdW7vXVGAt9Hdd6qtN4HotdyA,91
|
|
171
|
+
python_doctr-0.10.0.dist-info/top_level.txt,sha256=lCgp4pmjPI3HYph62XhfzA3jRwM715kGtJPmqIUJ9t8,6
|
|
172
|
+
python_doctr-0.10.0.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
173
|
+
python_doctr-0.10.0.dist-info/RECORD,,
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
# Copyright (C) 2021-2024, Mindee.
|
|
2
|
-
|
|
3
|
-
# This program is licensed under the Apache License 2.0.
|
|
4
|
-
# See LICENSE or go to <https://opensource.org/licenses/Apache-2.0> for full license details.
|
|
5
|
-
|
|
6
|
-
from typing import List, Tuple
|
|
7
|
-
|
|
8
|
-
import cv2
|
|
9
|
-
import numpy as np
|
|
10
|
-
|
|
11
|
-
__all__ = ["BarCodeDetector"]
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
class BarCodeDetector:
|
|
15
|
-
"""Implements a Bar-code detector.
|
|
16
|
-
For now, only horizontal (or with a small angle) bar-codes are supported
|
|
17
|
-
|
|
18
|
-
Args:
|
|
19
|
-
----
|
|
20
|
-
min_size: minimum relative size of a barcode on the page
|
|
21
|
-
canny_minval: lower bound for canny hysteresis
|
|
22
|
-
canny_maxval: upper-bound for canny hysteresis
|
|
23
|
-
"""
|
|
24
|
-
|
|
25
|
-
def __init__(self, min_size: float = 1 / 6, canny_minval: int = 50, canny_maxval: int = 150) -> None:
|
|
26
|
-
self.min_size = min_size
|
|
27
|
-
self.canny_minval = canny_minval
|
|
28
|
-
self.canny_maxval = canny_maxval
|
|
29
|
-
|
|
30
|
-
def __call__(
|
|
31
|
-
self,
|
|
32
|
-
img: np.ndarray,
|
|
33
|
-
) -> List[Tuple[float, float, float, float]]:
|
|
34
|
-
"""Detect Barcodes on the image
|
|
35
|
-
Args:
|
|
36
|
-
img: np image
|
|
37
|
-
|
|
38
|
-
Returns
|
|
39
|
-
-------
|
|
40
|
-
A list of tuples: [(xmin, ymin, xmax, ymax), ...] containing barcodes rel. coordinates
|
|
41
|
-
"""
|
|
42
|
-
# get image size and define parameters
|
|
43
|
-
height, width = img.shape[:2]
|
|
44
|
-
k = (1 + int(width / 512)) * 10 # spatial extension of kernels, 512 -> 20, 1024 -> 30, ...
|
|
45
|
-
min_w = int(width * self.min_size) # minimal size of a possible barcode
|
|
46
|
-
|
|
47
|
-
# Detect edges
|
|
48
|
-
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
|
|
49
|
-
edges = cv2.Canny(gray, self.canny_minval, self.canny_maxval, apertureSize=3)
|
|
50
|
-
|
|
51
|
-
# Horizontal dilation to aggregate bars of the potential barcode
|
|
52
|
-
# without aggregating text lines of the page vertically
|
|
53
|
-
edges = cv2.dilate(edges, np.ones((1, k), np.uint8))
|
|
54
|
-
|
|
55
|
-
# Instantiate a barcode-shaped kernel and erode to keep only vertical-bar structures
|
|
56
|
-
bar_code_kernel: np.ndarray = np.zeros((k, 3), np.uint8)
|
|
57
|
-
bar_code_kernel[..., [0, 2]] = 1
|
|
58
|
-
edges = cv2.erode(edges, bar_code_kernel, iterations=1)
|
|
59
|
-
|
|
60
|
-
# Opening to remove noise
|
|
61
|
-
edges = cv2.morphologyEx(edges, cv2.MORPH_OPEN, np.ones((k, k), np.uint8))
|
|
62
|
-
|
|
63
|
-
# Dilation to retrieve vertical length (lost at the first dilation)
|
|
64
|
-
edges = cv2.dilate(edges, np.ones((k, 1), np.uint8))
|
|
65
|
-
|
|
66
|
-
# Find contours, and keep the widest as barcodes
|
|
67
|
-
contours, _ = cv2.findContours(edges, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
|
|
68
|
-
barcodes = []
|
|
69
|
-
for contour in contours:
|
|
70
|
-
x, y, w, h = cv2.boundingRect(contour)
|
|
71
|
-
if w >= min_w:
|
|
72
|
-
barcodes.append((x / width, y / height, (x + w) / width, (y + h) / height))
|
|
73
|
-
|
|
74
|
-
return barcodes
|
doctr/models/artefacts/face.py
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
# Copyright (C) 2021-2024, Mindee.
|
|
2
|
-
|
|
3
|
-
# This program is licensed under the Apache License 2.0.
|
|
4
|
-
# See LICENSE or go to <https://opensource.org/licenses/Apache-2.0> for full license details.
|
|
5
|
-
|
|
6
|
-
from typing import List, Tuple
|
|
7
|
-
|
|
8
|
-
import cv2
|
|
9
|
-
import numpy as np
|
|
10
|
-
|
|
11
|
-
from doctr.utils.repr import NestedObject
|
|
12
|
-
|
|
13
|
-
__all__ = ["FaceDetector"]
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class FaceDetector(NestedObject):
|
|
17
|
-
"""Implements a face detector to detect profile pictures on resumes, IDS, driving licenses, passports...
|
|
18
|
-
Based on open CV CascadeClassifier (haarcascades)
|
|
19
|
-
|
|
20
|
-
Args:
|
|
21
|
-
----
|
|
22
|
-
n_faces: maximal number of faces to detect on a single image, default = 1
|
|
23
|
-
"""
|
|
24
|
-
|
|
25
|
-
def __init__(
|
|
26
|
-
self,
|
|
27
|
-
n_faces: int = 1,
|
|
28
|
-
) -> None:
|
|
29
|
-
self.n_faces = n_faces
|
|
30
|
-
# Instantiate classifier
|
|
31
|
-
self.detector = cv2.CascadeClassifier(
|
|
32
|
-
cv2.data.haarcascades + "haarcascade_frontalface_default.xml" # type: ignore[attr-defined]
|
|
33
|
-
)
|
|
34
|
-
|
|
35
|
-
def extra_repr(self) -> str:
|
|
36
|
-
return f"n_faces={self.n_faces}"
|
|
37
|
-
|
|
38
|
-
def __call__(
|
|
39
|
-
self,
|
|
40
|
-
img: np.ndarray,
|
|
41
|
-
) -> List[Tuple[float, float, float, float]]:
|
|
42
|
-
"""Detect n_faces on the img
|
|
43
|
-
|
|
44
|
-
Args:
|
|
45
|
-
----
|
|
46
|
-
img: image to detect faces on
|
|
47
|
-
|
|
48
|
-
Returns:
|
|
49
|
-
-------
|
|
50
|
-
A list of size n_faces, each face is a tuple of relative xmin, ymin, xmax, ymax
|
|
51
|
-
"""
|
|
52
|
-
height, width = img.shape[:2]
|
|
53
|
-
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
|
|
54
|
-
|
|
55
|
-
faces = self.detector.detectMultiScale(gray, 1.5, 3)
|
|
56
|
-
# If faces are detected, keep only the biggest ones
|
|
57
|
-
rel_faces = []
|
|
58
|
-
if len(faces) > 0:
|
|
59
|
-
x, y, w, h = sorted(faces, key=lambda x: x[2] + x[3])[-min(self.n_faces, len(faces))]
|
|
60
|
-
xmin, ymin, xmax, ymax = x / width, y / height, (x + w) / width, (y + h) / height
|
|
61
|
-
rel_faces.append((xmin, ymin, xmax, ymax))
|
|
62
|
-
|
|
63
|
-
return rel_faces
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
from .faster_rcnn import *
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
# Copyright (C) 2021-2024, Mindee.
|
|
2
|
-
|
|
3
|
-
# This program is licensed under the Apache License 2.0.
|
|
4
|
-
# See LICENSE or go to <https://opensource.org/licenses/Apache-2.0> for full license details.
|
|
5
|
-
|
|
6
|
-
from typing import Any, Dict
|
|
7
|
-
|
|
8
|
-
from torchvision.models.detection import FasterRCNN, FasterRCNN_MobileNet_V3_Large_FPN_Weights, faster_rcnn
|
|
9
|
-
|
|
10
|
-
from ...utils import load_pretrained_params
|
|
11
|
-
|
|
12
|
-
__all__ = ["fasterrcnn_mobilenet_v3_large_fpn"]
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
default_cfgs: Dict[str, Dict[str, Any]] = {
|
|
16
|
-
"fasterrcnn_mobilenet_v3_large_fpn": {
|
|
17
|
-
"input_shape": (3, 1024, 1024),
|
|
18
|
-
"mean": (0.485, 0.456, 0.406),
|
|
19
|
-
"std": (0.229, 0.224, 0.225),
|
|
20
|
-
"classes": ["background", "qr_code", "bar_code", "logo", "photo"],
|
|
21
|
-
"url": "https://doctr-static.mindee.com/models?id=v0.4.1/fasterrcnn_mobilenet_v3_large_fpn-d5b2490d.pt&src=0",
|
|
22
|
-
},
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
def _fasterrcnn(arch: str, pretrained: bool, **kwargs: Any) -> FasterRCNN:
|
|
27
|
-
_kwargs = {
|
|
28
|
-
"image_mean": default_cfgs[arch]["mean"],
|
|
29
|
-
"image_std": default_cfgs[arch]["std"],
|
|
30
|
-
"box_detections_per_img": 150,
|
|
31
|
-
"box_score_thresh": 0.5,
|
|
32
|
-
"box_positive_fraction": 0.35,
|
|
33
|
-
"box_nms_thresh": 0.2,
|
|
34
|
-
"rpn_nms_thresh": 0.2,
|
|
35
|
-
"num_classes": len(default_cfgs[arch]["classes"]),
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
# Build the model
|
|
39
|
-
_kwargs.update(kwargs)
|
|
40
|
-
model = faster_rcnn.__dict__[arch](weights=None, weights_backbone=None, **_kwargs)
|
|
41
|
-
model.cfg = default_cfgs[arch]
|
|
42
|
-
|
|
43
|
-
if pretrained:
|
|
44
|
-
# Load pretrained parameters
|
|
45
|
-
load_pretrained_params(model, default_cfgs[arch]["url"])
|
|
46
|
-
else:
|
|
47
|
-
# Filter keys
|
|
48
|
-
state_dict = {
|
|
49
|
-
k: v
|
|
50
|
-
for k, v in faster_rcnn.__dict__[arch](weights=FasterRCNN_MobileNet_V3_Large_FPN_Weights.DEFAULT)
|
|
51
|
-
.state_dict()
|
|
52
|
-
.items()
|
|
53
|
-
if not k.startswith("roi_heads.")
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
# Load state dict
|
|
57
|
-
model.load_state_dict(state_dict, strict=False)
|
|
58
|
-
|
|
59
|
-
return model
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
def fasterrcnn_mobilenet_v3_large_fpn(pretrained: bool = False, **kwargs: Any) -> FasterRCNN:
|
|
63
|
-
"""Faster-RCNN architecture with a MobileNet V3 backbone as described in `"Faster R-CNN: Towards Real-Time
|
|
64
|
-
Object Detection with Region Proposal Networks" <https://arxiv.org/pdf/1506.01497.pdf>`_.
|
|
65
|
-
|
|
66
|
-
>>> import torch
|
|
67
|
-
>>> from doctr.models.obj_detection import fasterrcnn_mobilenet_v3_large_fpn
|
|
68
|
-
>>> model = fasterrcnn_mobilenet_v3_large_fpn(pretrained=True)
|
|
69
|
-
>>> input_tensor = torch.rand((1, 3, 1024, 1024), dtype=torch.float32)
|
|
70
|
-
>>> out = model(input_tensor)
|
|
71
|
-
|
|
72
|
-
Args:
|
|
73
|
-
----
|
|
74
|
-
pretrained (bool): If True, returns a model pre-trained on our object detection dataset
|
|
75
|
-
**kwargs: keyword arguments of the FasterRCNN architecture
|
|
76
|
-
|
|
77
|
-
Returns:
|
|
78
|
-
-------
|
|
79
|
-
object detection architecture
|
|
80
|
-
"""
|
|
81
|
-
return _fasterrcnn("fasterrcnn_mobilenet_v3_large_fpn", pretrained, **kwargs)
|
|
@@ -1,173 +0,0 @@
|
|
|
1
|
-
doctr/__init__.py,sha256=m6lezpfDosfTVFssFVrN7aH0tDzM4h9OgCCi0Nevq8g,161
|
|
2
|
-
doctr/file_utils.py,sha256=P6Ld5_rFSMwv1m91yhARdJgF7KIXWzgUJXUXaUiUNgc,3156
|
|
3
|
-
doctr/version.py,sha256=M-PQbswhc8YrXcs4GoOEbQ4Ze9_y4MlJlfbrXibvsTs,23
|
|
4
|
-
doctr/datasets/__init__.py,sha256=umI2ABbgWIKuhswl8RGaF6CefFiI8DdEGVb0Kbd8aZA,574
|
|
5
|
-
doctr/datasets/cord.py,sha256=p9ObLgqV3uB7TYoS5Puag0q-JtFTPrXUztkxL36U69U,4746
|
|
6
|
-
doctr/datasets/detection.py,sha256=H6inFO6rjdvU_Asm9UTod5r5bjjpmJJWGityv0RTJ8M,3607
|
|
7
|
-
doctr/datasets/doc_artefacts.py,sha256=KKOlwE1oUG-sbC43an-TTh2m9PopuryXtUWM471TgO4,3258
|
|
8
|
-
doctr/datasets/funsd.py,sha256=RtWztUkgPmzjmNbZi55OU8mKzK8fvLSJXpHb3K9ccNg,4174
|
|
9
|
-
doctr/datasets/ic03.py,sha256=2HEHvW9tLYFiSEaPeNM4vrqL3ICjth6LUUXPcHjrHjQ,5066
|
|
10
|
-
doctr/datasets/ic13.py,sha256=5qjGMmotEOo_8N2gp0XUdZPW5t2gvVe-cTestlfD6Mc,4010
|
|
11
|
-
doctr/datasets/iiit5k.py,sha256=7y4pv4WG-FdXCn7aXLsUodXnk63gRBR8325HfqqlQ3k,3936
|
|
12
|
-
doctr/datasets/iiithws.py,sha256=MFWgIW5bNJSvxWU-USZvbYVHNlkBsnzzMaSGrbut-zQ,2778
|
|
13
|
-
doctr/datasets/imgur5k.py,sha256=UrDisvRDFJpuD2utLwUDgqVQEZCdesbVIR6upoG1tu4,6705
|
|
14
|
-
doctr/datasets/loader.py,sha256=px4IeA8ttqf61b6sRcUtQiXS_UBDhPmeiv6DZ7zuZTk,3044
|
|
15
|
-
doctr/datasets/mjsynth.py,sha256=Sybpaxiib8jDOc33OQgl2gGQ4XX8kKsnZaNokKmt08o,4063
|
|
16
|
-
doctr/datasets/ocr.py,sha256=wSAU62NUdFgt52vxo65bXPsuKeVWArlAkD5kxWKypiM,2550
|
|
17
|
-
doctr/datasets/orientation.py,sha256=PZfSQGfBSqzwRlg84L7BA7Lb2jseBvxkKqzh36TtFXk,1113
|
|
18
|
-
doctr/datasets/recognition.py,sha256=bXNkHqJUgPx10lhPfMBK7B0wmpLd20-MFbuGJXAGW2w,1881
|
|
19
|
-
doctr/datasets/sroie.py,sha256=bAkPLmw9aVSu_MyEix_FKFW0pbYye1w16vIkumnQ4E8,3939
|
|
20
|
-
doctr/datasets/svhn.py,sha256=Q4M84eRGWLWQ5Bsw0zvouhHTUQl46B9-pS06ZYKT5j8,5251
|
|
21
|
-
doctr/datasets/svt.py,sha256=eos2IUqeM8AW98zJ4PjHQ-hM0hUiJ-cumFhctQrpZp4,4551
|
|
22
|
-
doctr/datasets/synthtext.py,sha256=Q0WKA_UJtgjdBaHHQ888n6ltT-NBuf5kTYQv5SB40IQ,5387
|
|
23
|
-
doctr/datasets/utils.py,sha256=_5gV_Ti3OfkOjIRsS3hud-V7RcNNVKfgx2AndyEVu6g,7551
|
|
24
|
-
doctr/datasets/vocabs.py,sha256=uJ-y5qm76o5Wd-JZ023zmFRXTpGzb26Sn-gJt2FVOb0,3121
|
|
25
|
-
doctr/datasets/wildreceipt.py,sha256=HvnAaxo9lLwC8UMUYYKKJo6HkG8xm2yIHopBsN5G1LA,4566
|
|
26
|
-
doctr/datasets/datasets/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
27
|
-
doctr/datasets/datasets/base.py,sha256=TUK8GMosZnkTBsJm8zOc7AIy3FUMIV2vOTu3YbTjnSQ,4874
|
|
28
|
-
doctr/datasets/datasets/pytorch.py,sha256=ZMSJcYS3v_Mdzqd4OxW2AIZEf4K2T3nuEp7MbQuy2bo,1981
|
|
29
|
-
doctr/datasets/datasets/tensorflow.py,sha256=Ivx_T6o2ttHXjyUy5wi0LpsmKZYOVb7xL1fHKvRlE80,1975
|
|
30
|
-
doctr/datasets/generator/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
31
|
-
doctr/datasets/generator/base.py,sha256=TLSPPTUKIOdkXp5SooYDZbX0hyOZMBMY11Di5jTOLnc,5659
|
|
32
|
-
doctr/datasets/generator/pytorch.py,sha256=HUmdHUm7rU84gXv18BeXdYTDBCHabtw21Xdpm-p02ik,2134
|
|
33
|
-
doctr/datasets/generator/tensorflow.py,sha256=Yj9vgEjdNnOwrM4Ew2w5TfkEwNXgy6ACZuEnExZcUMs,2229
|
|
34
|
-
doctr/io/__init__.py,sha256=kS7tKGFvzxOCWBOun-Y8n9CsziwRKNynjwpZEUUI03M,106
|
|
35
|
-
doctr/io/elements.py,sha256=IGKU2TGQFeJYsv6mHt-mJAQRIwnmi5jJ6tj5ou-QRAY,23241
|
|
36
|
-
doctr/io/html.py,sha256=PY3bJBn7M2V4fDaSS5RV_9cr-EC4SCDWOnm3VqiBM8U,715
|
|
37
|
-
doctr/io/pdf.py,sha256=vCZFNB0jabldMG2yLu5_fa1OQY7-LGVyCgS2nBP3Hjk,1320
|
|
38
|
-
doctr/io/reader.py,sha256=9PEGgvarm7IzxbQgpzev91CYODVrBSA9MNAP1di96gM,2540
|
|
39
|
-
doctr/io/image/__init__.py,sha256=SqJtZIvr9dIDPLW39kHIX_MxufCKbI54aX28VrjeauE,193
|
|
40
|
-
doctr/io/image/base.py,sha256=g6kdcoIEQVN0dhFsVUA-gwGedhRhyKjFVrPu9QbR_UQ,1740
|
|
41
|
-
doctr/io/image/pytorch.py,sha256=dVGXIU2ZgeGDLkOgJ55RneVf5wyJUv9CZbIDh9SVjqA,3254
|
|
42
|
-
doctr/io/image/tensorflow.py,sha256=4bdeGDo13EFDImNHkxInTSGpzBU4WaXtxPg-hh4trU4,3207
|
|
43
|
-
doctr/models/__init__.py,sha256=SNHAyfMOn_18tjh8nmdl4vv7XLW2JDXX4fdbiDKcZdA,148
|
|
44
|
-
doctr/models/_utils.py,sha256=4whOjayC7ZZFd0rp84sAmnM8F4rLXYrlNFeGIQsuKys,5759
|
|
45
|
-
doctr/models/builder.py,sha256=QcHEuTycC5oH2QAUqZJi1gO5AmFsNkMpAzrGgth4DtM,17890
|
|
46
|
-
doctr/models/core.py,sha256=SMXYuX1o_Q2zrjcF-vzfqj7IkLKlDyzEOc-4HeiEZ8g,501
|
|
47
|
-
doctr/models/zoo.py,sha256=6VeOSI_1y8ecvpmOSSLJpEc9Ut1LKqPAsgPQyOCqL_w,9322
|
|
48
|
-
doctr/models/artefacts/__init__.py,sha256=ZPEGVgF1rk1JudUb_9EWijngdQRGsAthWdth28Hjb1U,43
|
|
49
|
-
doctr/models/artefacts/barcode.py,sha256=46QPq7J0i9PG4qtYIsRbGhoJMiNzTht2TCOKDCJiPsU,2721
|
|
50
|
-
doctr/models/artefacts/face.py,sha256=oN2tD6QO7bp79dib9IXK2Y4NB67AIMuoO92n6E1oKqI,1893
|
|
51
|
-
doctr/models/classification/__init__.py,sha256=HeErE29Bs1-91FtS9HqNghHe89XZGzI_11MO_E6GJ7s,154
|
|
52
|
-
doctr/models/classification/zoo.py,sha256=ZlQATwhEMj3dwRyJUisPC0XByq6z2I5GdfeidDsm8DQ,2489
|
|
53
|
-
doctr/models/classification/magc_resnet/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
54
|
-
doctr/models/classification/magc_resnet/pytorch.py,sha256=UY65c3_Ux2o4hOm_USEQYP7O69bj76qbUB-PCb_0Lng,5603
|
|
55
|
-
doctr/models/classification/magc_resnet/tensorflow.py,sha256=4UDrEcom_2wcyE1QjwmT-u6rtpzQ5ViyB1U6HxpT_XI,6423
|
|
56
|
-
doctr/models/classification/mobilenet/__init__.py,sha256=FBZ2YT2Cq3mj6vpDC3ff5TcMpagNWFhwxQ_brdsgBqo,172
|
|
57
|
-
doctr/models/classification/mobilenet/pytorch.py,sha256=yio6IMHP658AnRVW_gtUjiT9EWr3Byf96YIG3Mp3nrw,8009
|
|
58
|
-
doctr/models/classification/mobilenet/tensorflow.py,sha256=VauT18woqAl1UqI8mxt1xklvEV5MVK-fdLkAdRinJWA,14364
|
|
59
|
-
doctr/models/classification/predictor/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
60
|
-
doctr/models/classification/predictor/pytorch.py,sha256=Jah8NsP7eCJFw8-y2tJAxkhjmoqxx7WpW5-uUZ1I0sU,1883
|
|
61
|
-
doctr/models/classification/predictor/tensorflow.py,sha256=PNOJGkyajRbuRrw2qrbZE0AbzFgXujVQF8gIRuEhhnk,1698
|
|
62
|
-
doctr/models/classification/resnet/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
63
|
-
doctr/models/classification/resnet/pytorch.py,sha256=VVkNit3HEezRfOPw8wfuiEEAUCEnYSauCvWaCFF3cwo,12442
|
|
64
|
-
doctr/models/classification/resnet/tensorflow.py,sha256=jBGiL6Mucnq7JGkyIa4Y9A6BQz2ol88cm-eBxJjsTPo,13185
|
|
65
|
-
doctr/models/classification/textnet/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
66
|
-
doctr/models/classification/textnet/pytorch.py,sha256=69vbyqRktq-k-JLiKTjkPZCtkP2trIj4VFfnfLxvf6M,10163
|
|
67
|
-
doctr/models/classification/textnet/tensorflow.py,sha256=XB1O6vw7Swf0zPgYaVzQd3mWcVMVZiYsWbh8I-WZSqo,9789
|
|
68
|
-
doctr/models/classification/vgg/__init__.py,sha256=FBZ2YT2Cq3mj6vpDC3ff5TcMpagNWFhwxQ_brdsgBqo,172
|
|
69
|
-
doctr/models/classification/vgg/pytorch.py,sha256=b_q9oWmtlazD4uk9DFYezWgsgAwwN-3ewEz15E2cJR4,3136
|
|
70
|
-
doctr/models/classification/vgg/tensorflow.py,sha256=mVuyIXtX7iu622K0GwXkALOM7gzFtlGX9IABLP2NR2Y,4090
|
|
71
|
-
doctr/models/classification/vit/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
72
|
-
doctr/models/classification/vit/pytorch.py,sha256=770ZrCPX7LlVUjE9XNFrzcb2i_0lHStJ8Q4vXEhXEHs,6096
|
|
73
|
-
doctr/models/classification/vit/tensorflow.py,sha256=TtglXtKAE6y_gfzk8DOhUwoQNIMhK86tmhCB1SbT-k0,5869
|
|
74
|
-
doctr/models/detection/__init__.py,sha256=RqSz5beehLiqhW0PwFLFmCfTyMjofO-0umcQJLDMHjY,105
|
|
75
|
-
doctr/models/detection/core.py,sha256=K2uQTIu3ttgxj7YF7i1a-X6djIGCSFjZnQQ57JQBDv0,3566
|
|
76
|
-
doctr/models/detection/zoo.py,sha256=c0wm0g6ihkCkSR1G7iaY-IyAnfbEKpa-jbY6kVv4zrY,3032
|
|
77
|
-
doctr/models/detection/_utils/__init__.py,sha256=jDHErtF1nkN-uICx8prmdvmGTSoN6U27ZVmHLoqtcNo,131
|
|
78
|
-
doctr/models/detection/_utils/pytorch.py,sha256=UZ-PK5Uw0dVN978JGj5MVtF7kLXTL4EtugCoq_VVkVk,1063
|
|
79
|
-
doctr/models/detection/_utils/tensorflow.py,sha256=9D2ita4ZqJus2byLe7bkSIhyYExAiOLAGBbC7-oRZDU,979
|
|
80
|
-
doctr/models/detection/differentiable_binarization/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
81
|
-
doctr/models/detection/differentiable_binarization/base.py,sha256=ucjNmclcN0SfTBZxgucaGC1qWqI3UvBLHfMGzR6LsZI,16323
|
|
82
|
-
doctr/models/detection/differentiable_binarization/pytorch.py,sha256=-bByMRDipo_0WIXuFPf9DUPfWduVgLd0UIn48GP3f94,15983
|
|
83
|
-
doctr/models/detection/differentiable_binarization/tensorflow.py,sha256=l4QltrgDMLK_eY0dxEaCDzrB8rlhVpwUmOAPNIzd_70,14506
|
|
84
|
-
doctr/models/detection/fast/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
85
|
-
doctr/models/detection/fast/base.py,sha256=AL3OZ0_OOxOgeE8EJO8EO7RR1c-TVUKepuXlHpG2a74,10818
|
|
86
|
-
doctr/models/detection/fast/pytorch.py,sha256=u6yjf3zYNrF-qdPoDlUXlWx9cbrw2CH6oX0tfzs3zRI,15920
|
|
87
|
-
doctr/models/detection/fast/tensorflow.py,sha256=yz7Eb9siNSVba4USDHJIOE9BLXFNDEvA_ZZsLcOqmvQ,15571
|
|
88
|
-
doctr/models/detection/linknet/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
89
|
-
doctr/models/detection/linknet/base.py,sha256=51teowVwuJ_PKJnL7die_KWLNpdnZTIYVh1TXstfIOs,10508
|
|
90
|
-
doctr/models/detection/linknet/pytorch.py,sha256=sodWXaCDv1taRl3g6lgwxitvhU-ZszfN-OIofsorkp8,13810
|
|
91
|
-
doctr/models/detection/linknet/tensorflow.py,sha256=PK3adzBG6wz_SA5lMrh0KBKpbDu-e3FaKwTZ8-ZaN-s,12914
|
|
92
|
-
doctr/models/detection/predictor/__init__.py,sha256=lwmH917kRdbUUBsE02fELIuXQNRNePpIj3iK43ey6Bg,159
|
|
93
|
-
doctr/models/detection/predictor/pytorch.py,sha256=bKSOe5Gfo5ctvqGAle3CyCKMP-zZpdIH-h-j0D7bBbA,2083
|
|
94
|
-
doctr/models/detection/predictor/tensorflow.py,sha256=ZVpRrxsje91InWJrOSOfxdtTdvZg-0IXwEBVJBktBRA,1868
|
|
95
|
-
doctr/models/factory/__init__.py,sha256=cKPoH2V2157lLMTR2zsljG3_IQHziodqR-XK_LG0D_I,19
|
|
96
|
-
doctr/models/factory/hub.py,sha256=iyktX-LE1wQmtvoFKmRHS2AofkloGBvni6TH0aF_xRI,7918
|
|
97
|
-
doctr/models/kie_predictor/__init__.py,sha256=lwmH917kRdbUUBsE02fELIuXQNRNePpIj3iK43ey6Bg,159
|
|
98
|
-
doctr/models/kie_predictor/base.py,sha256=XHnTOzaFiqJiwb6nA7osjFwEHfeTVi4FwfjRDIFJNzU,1784
|
|
99
|
-
doctr/models/kie_predictor/pytorch.py,sha256=OW0BAVT11R7PKCminD8VbyZ6En12TyaE103zMrSeG4s,6940
|
|
100
|
-
doctr/models/kie_predictor/tensorflow.py,sha256=JAbHyhEE-OEx1r3NIqWYTlhAb9ECY7ZfW5Jc4d-LwVw,6697
|
|
101
|
-
doctr/models/modules/__init__.py,sha256=pouP7obVTu4p6aHkyaqa1yHKbynpvT0Hgo-LO_1U2R4,83
|
|
102
|
-
doctr/models/modules/layers/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
103
|
-
doctr/models/modules/layers/pytorch.py,sha256=wKdfoUDCn_jYOgZiLVc4_4K0DlkYY9If4-NhJwUBYOY,6938
|
|
104
|
-
doctr/models/modules/layers/tensorflow.py,sha256=yslZpOtR2fP5Do7fOxR-GD08DPm6mCLo2fDMhp23QTI,7278
|
|
105
|
-
doctr/models/modules/transformer/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
106
|
-
doctr/models/modules/transformer/pytorch.py,sha256=Bn6KPvhBdtS2MlRQmQT7c_d63maRfwfMias3P8eJ9fA,7725
|
|
107
|
-
doctr/models/modules/transformer/tensorflow.py,sha256=NTF-Q6ClUIMdSWDqus6kPZjOlKC3XcJ3HqUeyZTqtnU,9113
|
|
108
|
-
doctr/models/modules/vision_transformer/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
109
|
-
doctr/models/modules/vision_transformer/pytorch.py,sha256=D6BbqNPV_7OFRogM0iaiWbn_6uLe3Thbo6GKRSYpfTQ,3970
|
|
110
|
-
doctr/models/modules/vision_transformer/tensorflow.py,sha256=PaDbTtCc5YGqZNd_NFMdxeq6oNxs0WtVGYwhLCjJWFY,4199
|
|
111
|
-
doctr/models/obj_detection/__init__.py,sha256=7TJnvLcLYaQtnrXaiBS38qvELgSC-hW6jIhsIfNXob4,27
|
|
112
|
-
doctr/models/obj_detection/faster_rcnn/__init__.py,sha256=LOFUrXC37tQ8hDYF_xTxiD11YEgnLsW2wY0_MJDKszk,144
|
|
113
|
-
doctr/models/obj_detection/faster_rcnn/pytorch.py,sha256=xT1U-Wo0tJLcRXe7QOwoaDDYeJKRqHAM5-TsmSGDJG0,2855
|
|
114
|
-
doctr/models/predictor/__init__.py,sha256=lwmH917kRdbUUBsE02fELIuXQNRNePpIj3iK43ey6Bg,159
|
|
115
|
-
doctr/models/predictor/base.py,sha256=IL2WNF0kTkFKERAMAwur29ptDtvp7aYbc6WStTLvt9A,6688
|
|
116
|
-
doctr/models/predictor/pytorch.py,sha256=Dwf23IXE_q6RL3rrsbvK9U1yeoeP27M1mwntdoR4lQs,5954
|
|
117
|
-
doctr/models/predictor/tensorflow.py,sha256=pYaTv3y_ELgMfgmMCzL2lPzFu2VvNwsoTzaElshuBj0,5800
|
|
118
|
-
doctr/models/preprocessor/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
119
|
-
doctr/models/preprocessor/pytorch.py,sha256=C6s07Xaky0NqCEpjfZB3-mgegkT16dwBXVRaFCfvAN0,4993
|
|
120
|
-
doctr/models/preprocessor/tensorflow.py,sha256=i_Crf-ZGRzC2cMLQDg9P5aHEfmK_xtF1_HXzu-Ul-4M,4483
|
|
121
|
-
doctr/models/recognition/__init__.py,sha256=902nfVyvjOuUGHDKSGZgoS0fKC52J3jcUJQJhIpvOIY,124
|
|
122
|
-
doctr/models/recognition/core.py,sha256=dbg8SebgfK8CPHXR-7rzmCI9XMLXmWW0jLd1yLLv_34,1593
|
|
123
|
-
doctr/models/recognition/utils.py,sha256=GhNehWmCjl3GJ1ZFneA3cBRrZZk36856uU5i727FaQg,3550
|
|
124
|
-
doctr/models/recognition/zoo.py,sha256=MakzszAsbiAgAJS4AhA02F6dWG47qTc1DklNXoey8JQ,2505
|
|
125
|
-
doctr/models/recognition/crnn/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
126
|
-
doctr/models/recognition/crnn/pytorch.py,sha256=AE8Ey-Z5VZNGUldL-crbMdyKI__OUMBmn8nYC2790Pc,11802
|
|
127
|
-
doctr/models/recognition/crnn/tensorflow.py,sha256=dcT1X_zLmEqPiWG628lQTe9WMmfEWubXgCWFYs1BhJo,11666
|
|
128
|
-
doctr/models/recognition/master/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
129
|
-
doctr/models/recognition/master/base.py,sha256=5yQ0mUaS_ZWmUUzTAobgAlNS3Vp90PFvrzAcQXUF758,1540
|
|
130
|
-
doctr/models/recognition/master/pytorch.py,sha256=Endn_S7svrN27IGdXDgAXXlZ_p0_IpasjvPPiJuxSiI,12318
|
|
131
|
-
doctr/models/recognition/master/tensorflow.py,sha256=rbrPMz49ySW8Wpd72dBNOH8dvcoAl3NwBi2ID7qVkxA,12140
|
|
132
|
-
doctr/models/recognition/parseq/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
133
|
-
doctr/models/recognition/parseq/base.py,sha256=8MMqibB8zZLw2qU-iyx79Zpr4MdEtbnF3f3ikfLrBjU,1534
|
|
134
|
-
doctr/models/recognition/parseq/pytorch.py,sha256=lXpjXfgRRLzyHdCJCoc_0xsNN8_67ywoBb6tgoYCnj0,19868
|
|
135
|
-
doctr/models/recognition/parseq/tensorflow.py,sha256=YNvJoddq8jYtxsW-wEsw1-p0a8gnkxOCEgklATQ2M-0,21558
|
|
136
|
-
doctr/models/recognition/predictor/__init__.py,sha256=lwmH917kRdbUUBsE02fELIuXQNRNePpIj3iK43ey6Bg,159
|
|
137
|
-
doctr/models/recognition/predictor/_utils.py,sha256=y6hDoGS8reluLmx8JmTxM2f1uhlYnjOouh0BOr6wNTA,3389
|
|
138
|
-
doctr/models/recognition/predictor/pytorch.py,sha256=snMHU0GopDEJ9HDdzpVxuvfJxVL-91Le-rc_dSqKCA0,2785
|
|
139
|
-
doctr/models/recognition/predictor/tensorflow.py,sha256=o4Mhbxf9BUofqTV863U7-Zi0H77imX3LfhqzYLc2m4k,2549
|
|
140
|
-
doctr/models/recognition/sar/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
141
|
-
doctr/models/recognition/sar/pytorch.py,sha256=IuZ2KQO-2Du6FKRoJQud90fwNEhTFQy7e8t7pZaCuQE,15102
|
|
142
|
-
doctr/models/recognition/sar/tensorflow.py,sha256=wkOlGdqK8NA_PYLQhcrgiv3Rqmeoj_HAi0Ku29QD5ds,15249
|
|
143
|
-
doctr/models/recognition/vitstr/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
144
|
-
doctr/models/recognition/vitstr/base.py,sha256=Xt7hq45tq999boF0XgW62x_cX5wJXx7VLxWA9H06U_o,1488
|
|
145
|
-
doctr/models/recognition/vitstr/pytorch.py,sha256=8IxKWHt2uy6yXCsT_JTiccFoPToYKENH0H3tP-yTmHI,9596
|
|
146
|
-
doctr/models/recognition/vitstr/tensorflow.py,sha256=_8k6Jxd715uH8lsBqUCn4C_3tlgE75h_BXt4AlfYrk8,9671
|
|
147
|
-
doctr/models/utils/__init__.py,sha256=zwLK6mpproUGFH-1PUNiQyoR9IrAAakj7RgOiTJaBjk,200
|
|
148
|
-
doctr/models/utils/pytorch.py,sha256=bO8a432TzpHTuqAsFuAi2ld6NOT12E2rlghQlW4nAjg,5494
|
|
149
|
-
doctr/models/utils/tensorflow.py,sha256=VccfK6cyPoWuWGWAWbl17MkLa1srtHU-HJCbb_MXePw,6322
|
|
150
|
-
doctr/transforms/__init__.py,sha256=0VHbvUZ7llFd1e_7_JdWTaxYMCvaR6KbUJaYJequmQI,23
|
|
151
|
-
doctr/transforms/functional/__init__.py,sha256=FBZ2YT2Cq3mj6vpDC3ff5TcMpagNWFhwxQ_brdsgBqo,172
|
|
152
|
-
doctr/transforms/functional/base.py,sha256=mFb2XGEX6g-36k_FSMhjj1MvW4ZXaqxv1GROCSc1cUg,6969
|
|
153
|
-
doctr/transforms/functional/pytorch.py,sha256=aonwJAzPECgYeEWiigAQfbJHP8my_60Ul0x8LGdD-TI,5015
|
|
154
|
-
doctr/transforms/functional/tensorflow.py,sha256=35dYnCtA9A9SvjndEvckxD8rK_uZ1_4BTgBZ7WiBtGI,9959
|
|
155
|
-
doctr/transforms/modules/__init__.py,sha256=a4GXc5YZWt26eeBKo2HqLmbDn1_qo-uko6GoPNrniC0,221
|
|
156
|
-
doctr/transforms/modules/base.py,sha256=_WboS3OoaM3yVBEApGG36RE61v8rzgSKZOSSsdVXgOU,9126
|
|
157
|
-
doctr/transforms/modules/pytorch.py,sha256=sPJDRoAgfd9XSjI7DKV-3uZrcD-t6TH4jvL4Mi5yBP4,8606
|
|
158
|
-
doctr/transforms/modules/tensorflow.py,sha256=5rQ_NcerIlsUWdFicApbDOdvmKZDD9bbojvXuWBOTTE,17959
|
|
159
|
-
doctr/utils/__init__.py,sha256=uQY9ibZ24V896fmihIsK23QOIZdKtk0HyKoCVJ_lLuM,95
|
|
160
|
-
doctr/utils/common_types.py,sha256=KXG-4mvL1MPmkrjuhCs8vAfiaBmdGRmt2yQcNlgALM8,584
|
|
161
|
-
doctr/utils/data.py,sha256=26iN_Ra1OJD_LHIEbefADMxU2yVtCpu3gYdhCW5K9B4,4280
|
|
162
|
-
doctr/utils/fonts.py,sha256=Ugjac4WPEJLsAf4U8j0f6DIoOpER_w13jHZ_GyvD0Xs,1224
|
|
163
|
-
doctr/utils/geometry.py,sha256=Cfdw0kdH_K3qFMoioGlKdDgrRhgD2DhxXjy_lhIbpVQ,15685
|
|
164
|
-
doctr/utils/metrics.py,sha256=hYRRlIW-e8onLPsYvnJL9HzBtwZT3x-p_yu52INz4uw,25935
|
|
165
|
-
doctr/utils/multithreading.py,sha256=iEM6o_qjutH-CxFTz7K1VQseYpVaHH3Hpw_yNDoQBSw,1989
|
|
166
|
-
doctr/utils/repr.py,sha256=3GdMquo1NtwNkQPoB-nmDm_AFmU3sLc4T3VfGck9uoQ,2111
|
|
167
|
-
doctr/utils/visualization.py,sha256=iIO6mEqqVKvkxGpDQJomJmGeplCxAuwuS8Vur0vEtYg,17758
|
|
168
|
-
python_doctr-0.8.1.dist-info/LICENSE,sha256=75RTSsXOsAYhGpxsHc9U41ep6GS7vrUPufeekgoeOXM,11336
|
|
169
|
-
python_doctr-0.8.1.dist-info/METADATA,sha256=E2AtXeYk0nHqDzCDhfnGceCC4rR2HFU9lZvLDKYVIa4,33155
|
|
170
|
-
python_doctr-0.8.1.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
|
171
|
-
python_doctr-0.8.1.dist-info/top_level.txt,sha256=lCgp4pmjPI3HYph62XhfzA3jRwM715kGtJPmqIUJ9t8,6
|
|
172
|
-
python_doctr-0.8.1.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
173
|
-
python_doctr-0.8.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|