paddlex 2.0.0rc4__py3-none-any.whl → 3.0.0b2__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 (1087) hide show
  1. paddlex/.version +1 -0
  2. paddlex/__init__.py +51 -18
  3. paddlex/__main__.py +40 -0
  4. paddlex/configs/anomaly_detection/STFPM.yaml +41 -0
  5. paddlex/configs/doc_text_orientation/PP-LCNet_x1_0_doc_ori.yaml +41 -0
  6. paddlex/configs/face_detection/BlazeFace-FPN-SSH.yaml +40 -0
  7. paddlex/configs/face_detection/BlazeFace.yaml +40 -0
  8. paddlex/configs/face_detection/PP-YOLOE_plus-S_face.yaml +40 -0
  9. paddlex/configs/face_detection/PicoDet_LCNet_x2_5_face.yaml +40 -0
  10. paddlex/configs/face_recognition/MobileFaceNet.yaml +44 -0
  11. paddlex/configs/face_recognition/ResNet50_face.yaml +44 -0
  12. paddlex/configs/formula_recognition/LaTeX_OCR_rec.yaml +40 -0
  13. paddlex/configs/general_recognition/PP-ShiTuV2_rec.yaml +42 -0
  14. paddlex/configs/general_recognition/PP-ShiTuV2_rec_CLIP_vit_base.yaml +42 -0
  15. paddlex/configs/general_recognition/PP-ShiTuV2_rec_CLIP_vit_large.yaml +41 -0
  16. paddlex/configs/human_detection/PP-YOLOE-L_human.yaml +42 -0
  17. paddlex/configs/human_detection/PP-YOLOE-S_human.yaml +42 -0
  18. paddlex/configs/image_classification/CLIP_vit_base_patch16_224.yaml +41 -0
  19. paddlex/configs/image_classification/CLIP_vit_large_patch14_224.yaml +41 -0
  20. paddlex/configs/image_classification/ConvNeXt_base_224.yaml +41 -0
  21. paddlex/configs/image_classification/ConvNeXt_base_384.yaml +41 -0
  22. paddlex/configs/image_classification/ConvNeXt_large_224.yaml +41 -0
  23. paddlex/configs/image_classification/ConvNeXt_large_384.yaml +41 -0
  24. paddlex/configs/image_classification/ConvNeXt_small.yaml +41 -0
  25. paddlex/configs/image_classification/ConvNeXt_tiny.yaml +41 -0
  26. paddlex/configs/image_classification/FasterNet-L.yaml +40 -0
  27. paddlex/configs/image_classification/FasterNet-M.yaml +40 -0
  28. paddlex/configs/image_classification/FasterNet-S.yaml +40 -0
  29. paddlex/configs/image_classification/FasterNet-T0.yaml +40 -0
  30. paddlex/configs/image_classification/FasterNet-T1.yaml +40 -0
  31. paddlex/configs/image_classification/FasterNet-T2.yaml +40 -0
  32. paddlex/configs/image_classification/MobileNetV1_x0_25.yaml +41 -0
  33. paddlex/configs/image_classification/MobileNetV1_x0_5.yaml +41 -0
  34. paddlex/configs/image_classification/MobileNetV1_x0_75.yaml +41 -0
  35. paddlex/configs/image_classification/MobileNetV1_x1_0.yaml +41 -0
  36. paddlex/configs/image_classification/MobileNetV2_x0_25.yaml +41 -0
  37. paddlex/configs/image_classification/MobileNetV2_x0_5.yaml +41 -0
  38. paddlex/configs/image_classification/MobileNetV2_x1_0.yaml +41 -0
  39. paddlex/configs/image_classification/MobileNetV2_x1_5.yaml +41 -0
  40. paddlex/configs/image_classification/MobileNetV2_x2_0.yaml +41 -0
  41. paddlex/configs/image_classification/MobileNetV3_large_x0_35.yaml +41 -0
  42. paddlex/configs/image_classification/MobileNetV3_large_x0_5.yaml +41 -0
  43. paddlex/configs/image_classification/MobileNetV3_large_x0_75.yaml +41 -0
  44. paddlex/configs/image_classification/MobileNetV3_large_x1_0.yaml +41 -0
  45. paddlex/configs/image_classification/MobileNetV3_large_x1_25.yaml +41 -0
  46. paddlex/configs/image_classification/MobileNetV3_small_x0_35.yaml +41 -0
  47. paddlex/configs/image_classification/MobileNetV3_small_x0_5.yaml +41 -0
  48. paddlex/configs/image_classification/MobileNetV3_small_x0_75.yaml +41 -0
  49. paddlex/configs/image_classification/MobileNetV3_small_x1_0.yaml +41 -0
  50. paddlex/configs/image_classification/MobileNetV3_small_x1_25.yaml +41 -0
  51. paddlex/configs/image_classification/MobileNetV4_conv_large.yaml +41 -0
  52. paddlex/configs/image_classification/MobileNetV4_conv_medium.yaml +41 -0
  53. paddlex/configs/image_classification/MobileNetV4_conv_small.yaml +41 -0
  54. paddlex/configs/image_classification/MobileNetV4_hybrid_large.yaml +41 -0
  55. paddlex/configs/image_classification/MobileNetV4_hybrid_medium.yaml +41 -0
  56. paddlex/configs/image_classification/PP-HGNetV2-B0.yaml +41 -0
  57. paddlex/configs/image_classification/PP-HGNetV2-B1.yaml +41 -0
  58. paddlex/configs/image_classification/PP-HGNetV2-B2.yaml +41 -0
  59. paddlex/configs/image_classification/PP-HGNetV2-B3.yaml +41 -0
  60. paddlex/configs/image_classification/PP-HGNetV2-B4.yaml +41 -0
  61. paddlex/configs/image_classification/PP-HGNetV2-B5.yaml +41 -0
  62. paddlex/configs/image_classification/PP-HGNetV2-B6.yaml +41 -0
  63. paddlex/configs/image_classification/PP-HGNet_base.yaml +41 -0
  64. paddlex/configs/image_classification/PP-HGNet_small.yaml +41 -0
  65. paddlex/configs/image_classification/PP-HGNet_tiny.yaml +41 -0
  66. paddlex/configs/image_classification/PP-LCNetV2_base.yaml +41 -0
  67. paddlex/configs/image_classification/PP-LCNetV2_large.yaml +41 -0
  68. paddlex/configs/image_classification/PP-LCNetV2_small.yaml +41 -0
  69. paddlex/configs/image_classification/PP-LCNet_x0_25.yaml +41 -0
  70. paddlex/configs/image_classification/PP-LCNet_x0_35.yaml +41 -0
  71. paddlex/configs/image_classification/PP-LCNet_x0_5.yaml +41 -0
  72. paddlex/configs/image_classification/PP-LCNet_x0_75.yaml +41 -0
  73. paddlex/configs/image_classification/PP-LCNet_x1_0.yaml +41 -0
  74. paddlex/configs/image_classification/PP-LCNet_x1_5.yaml +41 -0
  75. paddlex/configs/image_classification/PP-LCNet_x2_0.yaml +41 -0
  76. paddlex/configs/image_classification/PP-LCNet_x2_5.yaml +41 -0
  77. paddlex/configs/image_classification/ResNet101.yaml +41 -0
  78. paddlex/configs/image_classification/ResNet101_vd.yaml +41 -0
  79. paddlex/configs/image_classification/ResNet152.yaml +41 -0
  80. paddlex/configs/image_classification/ResNet152_vd.yaml +41 -0
  81. paddlex/configs/image_classification/ResNet18.yaml +41 -0
  82. paddlex/configs/image_classification/ResNet18_vd.yaml +41 -0
  83. paddlex/configs/image_classification/ResNet200_vd.yaml +41 -0
  84. paddlex/configs/image_classification/ResNet34.yaml +41 -0
  85. paddlex/configs/image_classification/ResNet34_vd.yaml +41 -0
  86. paddlex/configs/image_classification/ResNet50.yaml +41 -0
  87. paddlex/configs/image_classification/ResNet50_vd.yaml +41 -0
  88. paddlex/configs/image_classification/StarNet-S1.yaml +41 -0
  89. paddlex/configs/image_classification/StarNet-S2.yaml +41 -0
  90. paddlex/configs/image_classification/StarNet-S3.yaml +41 -0
  91. paddlex/configs/image_classification/StarNet-S4.yaml +41 -0
  92. paddlex/configs/image_classification/SwinTransformer_base_patch4_window12_384.yaml +41 -0
  93. paddlex/configs/image_classification/SwinTransformer_base_patch4_window7_224.yaml +41 -0
  94. paddlex/configs/image_classification/SwinTransformer_large_patch4_window12_384.yaml +41 -0
  95. paddlex/configs/image_classification/SwinTransformer_large_patch4_window7_224.yaml +41 -0
  96. paddlex/configs/image_classification/SwinTransformer_small_patch4_window7_224.yaml +41 -0
  97. paddlex/configs/image_classification/SwinTransformer_tiny_patch4_window7_224.yaml +41 -0
  98. paddlex/configs/image_unwarping/UVDoc.yaml +12 -0
  99. paddlex/configs/instance_segmentation/Cascade-MaskRCNN-ResNet50-FPN.yaml +40 -0
  100. paddlex/configs/instance_segmentation/Cascade-MaskRCNN-ResNet50-vd-SSLDv2-FPN.yaml +40 -0
  101. paddlex/configs/instance_segmentation/Mask-RT-DETR-H.yaml +40 -0
  102. paddlex/configs/instance_segmentation/Mask-RT-DETR-L.yaml +40 -0
  103. paddlex/configs/instance_segmentation/Mask-RT-DETR-M.yaml +40 -0
  104. paddlex/configs/instance_segmentation/Mask-RT-DETR-S.yaml +40 -0
  105. paddlex/configs/instance_segmentation/Mask-RT-DETR-X.yaml +40 -0
  106. paddlex/configs/instance_segmentation/MaskRCNN-ResNeXt101-vd-FPN.yaml +39 -0
  107. paddlex/configs/instance_segmentation/MaskRCNN-ResNet101-FPN.yaml +40 -0
  108. paddlex/configs/instance_segmentation/MaskRCNN-ResNet101-vd-FPN.yaml +40 -0
  109. paddlex/configs/instance_segmentation/MaskRCNN-ResNet50-FPN.yaml +40 -0
  110. paddlex/configs/instance_segmentation/MaskRCNN-ResNet50-vd-FPN.yaml +40 -0
  111. paddlex/configs/instance_segmentation/MaskRCNN-ResNet50.yaml +40 -0
  112. paddlex/configs/instance_segmentation/PP-YOLOE_seg-S.yaml +40 -0
  113. paddlex/configs/instance_segmentation/SOLOv2.yaml +40 -0
  114. paddlex/configs/mainbody_detection/PP-ShiTuV2_det.yaml +41 -0
  115. paddlex/configs/multilabel_classification/CLIP_vit_base_patch16_448_ML.yaml +41 -0
  116. paddlex/configs/multilabel_classification/PP-HGNetV2-B0_ML.yaml +41 -0
  117. paddlex/configs/multilabel_classification/PP-HGNetV2-B4_ML.yaml +41 -0
  118. paddlex/configs/multilabel_classification/PP-HGNetV2-B6_ML.yaml +41 -0
  119. paddlex/configs/multilabel_classification/PP-LCNet_x1_0_ML.yaml +41 -0
  120. paddlex/configs/multilabel_classification/ResNet50_ML.yaml +41 -0
  121. paddlex/configs/object_detection/Cascade-FasterRCNN-ResNet50-FPN.yaml +41 -0
  122. paddlex/configs/object_detection/Cascade-FasterRCNN-ResNet50-vd-SSLDv2-FPN.yaml +42 -0
  123. paddlex/configs/object_detection/CenterNet-DLA-34.yaml +41 -0
  124. paddlex/configs/object_detection/CenterNet-ResNet50.yaml +41 -0
  125. paddlex/configs/object_detection/DETR-R50.yaml +42 -0
  126. paddlex/configs/object_detection/FCOS-ResNet50.yaml +41 -0
  127. paddlex/configs/object_detection/FasterRCNN-ResNeXt101-vd-FPN.yaml +42 -0
  128. paddlex/configs/object_detection/FasterRCNN-ResNet101-FPN.yaml +42 -0
  129. paddlex/configs/object_detection/FasterRCNN-ResNet101.yaml +42 -0
  130. paddlex/configs/object_detection/FasterRCNN-ResNet34-FPN.yaml +42 -0
  131. paddlex/configs/object_detection/FasterRCNN-ResNet50-FPN.yaml +42 -0
  132. paddlex/configs/object_detection/FasterRCNN-ResNet50-vd-FPN.yaml +42 -0
  133. paddlex/configs/object_detection/FasterRCNN-ResNet50-vd-SSLDv2-FPN.yaml +42 -0
  134. paddlex/configs/object_detection/FasterRCNN-ResNet50.yaml +42 -0
  135. paddlex/configs/object_detection/FasterRCNN-Swin-Tiny-FPN.yaml +42 -0
  136. paddlex/configs/object_detection/PP-YOLOE_plus-L.yaml +40 -0
  137. paddlex/configs/object_detection/PP-YOLOE_plus-M.yaml +40 -0
  138. paddlex/configs/object_detection/PP-YOLOE_plus-S.yaml +40 -0
  139. paddlex/configs/object_detection/PP-YOLOE_plus-X.yaml +40 -0
  140. paddlex/configs/object_detection/PicoDet-L.yaml +40 -0
  141. paddlex/configs/object_detection/PicoDet-M.yaml +42 -0
  142. paddlex/configs/object_detection/PicoDet-S.yaml +40 -0
  143. paddlex/configs/object_detection/PicoDet-XS.yaml +42 -0
  144. paddlex/configs/object_detection/RT-DETR-H.yaml +40 -0
  145. paddlex/configs/object_detection/RT-DETR-L.yaml +40 -0
  146. paddlex/configs/object_detection/RT-DETR-R18.yaml +40 -0
  147. paddlex/configs/object_detection/RT-DETR-R50.yaml +40 -0
  148. paddlex/configs/object_detection/RT-DETR-X.yaml +40 -0
  149. paddlex/configs/object_detection/YOLOX-L.yaml +40 -0
  150. paddlex/configs/object_detection/YOLOX-M.yaml +40 -0
  151. paddlex/configs/object_detection/YOLOX-N.yaml +40 -0
  152. paddlex/configs/object_detection/YOLOX-S.yaml +40 -0
  153. paddlex/configs/object_detection/YOLOX-T.yaml +40 -0
  154. paddlex/configs/object_detection/YOLOX-X.yaml +40 -0
  155. paddlex/configs/object_detection/YOLOv3-DarkNet53.yaml +40 -0
  156. paddlex/configs/object_detection/YOLOv3-MobileNetV3.yaml +40 -0
  157. paddlex/configs/object_detection/YOLOv3-ResNet50_vd_DCN.yaml +40 -0
  158. paddlex/configs/pedestrian_attribute/PP-LCNet_x1_0_pedestrian_attribute.yaml +41 -0
  159. paddlex/configs/semantic_segmentation/Deeplabv3-R101.yaml +40 -0
  160. paddlex/configs/semantic_segmentation/Deeplabv3-R50.yaml +40 -0
  161. paddlex/configs/semantic_segmentation/Deeplabv3_Plus-R101.yaml +40 -0
  162. paddlex/configs/semantic_segmentation/Deeplabv3_Plus-R50.yaml +40 -0
  163. paddlex/configs/semantic_segmentation/OCRNet_HRNet-W18.yaml +40 -0
  164. paddlex/configs/semantic_segmentation/OCRNet_HRNet-W48.yaml +40 -0
  165. paddlex/configs/semantic_segmentation/PP-LiteSeg-B.yaml +41 -0
  166. paddlex/configs/semantic_segmentation/PP-LiteSeg-T.yaml +40 -0
  167. paddlex/configs/semantic_segmentation/SeaFormer_base.yaml +40 -0
  168. paddlex/configs/semantic_segmentation/SeaFormer_large.yaml +40 -0
  169. paddlex/configs/semantic_segmentation/SeaFormer_small.yaml +40 -0
  170. paddlex/configs/semantic_segmentation/SeaFormer_tiny.yaml +40 -0
  171. paddlex/configs/semantic_segmentation/SegFormer-B0.yaml +40 -0
  172. paddlex/configs/semantic_segmentation/SegFormer-B1.yaml +40 -0
  173. paddlex/configs/semantic_segmentation/SegFormer-B2.yaml +40 -0
  174. paddlex/configs/semantic_segmentation/SegFormer-B3.yaml +40 -0
  175. paddlex/configs/semantic_segmentation/SegFormer-B4.yaml +40 -0
  176. paddlex/configs/semantic_segmentation/SegFormer-B5.yaml +40 -0
  177. paddlex/configs/small_object_detection/PP-YOLOE_plus_SOD-L.yaml +42 -0
  178. paddlex/configs/small_object_detection/PP-YOLOE_plus_SOD-S.yaml +42 -0
  179. paddlex/configs/small_object_detection/PP-YOLOE_plus_SOD-largesize-L.yaml +42 -0
  180. paddlex/configs/structure_analysis/PicoDet-L_layout_17cls.yaml +40 -0
  181. paddlex/configs/structure_analysis/PicoDet-L_layout_3cls.yaml +40 -0
  182. paddlex/configs/structure_analysis/PicoDet-S_layout_17cls.yaml +40 -0
  183. paddlex/configs/structure_analysis/PicoDet-S_layout_3cls.yaml +40 -0
  184. paddlex/configs/structure_analysis/PicoDet_layout_1x.yaml +40 -0
  185. paddlex/configs/structure_analysis/PicoDet_layout_1x_table.yaml +40 -0
  186. paddlex/configs/structure_analysis/RT-DETR-H_layout_17cls.yaml +40 -0
  187. paddlex/configs/structure_analysis/RT-DETR-H_layout_3cls.yaml +40 -0
  188. paddlex/configs/table_recognition/SLANet.yaml +39 -0
  189. paddlex/configs/table_recognition/SLANet_plus.yaml +39 -0
  190. paddlex/configs/text_detection/PP-OCRv4_mobile_det.yaml +40 -0
  191. paddlex/configs/text_detection/PP-OCRv4_server_det.yaml +40 -0
  192. paddlex/configs/text_detection_seal/PP-OCRv4_mobile_seal_det.yaml +40 -0
  193. paddlex/configs/text_detection_seal/PP-OCRv4_server_seal_det.yaml +40 -0
  194. paddlex/configs/text_recognition/PP-OCRv4_mobile_rec.yaml +39 -0
  195. paddlex/configs/text_recognition/PP-OCRv4_server_rec.yaml +39 -0
  196. paddlex/configs/text_recognition/ch_RepSVTR_rec.yaml +39 -0
  197. paddlex/configs/text_recognition/ch_SVTRv2_rec.yaml +39 -0
  198. paddlex/configs/ts_anomaly_detection/AutoEncoder_ad.yaml +37 -0
  199. paddlex/configs/ts_anomaly_detection/DLinear_ad.yaml +37 -0
  200. paddlex/configs/ts_anomaly_detection/Nonstationary_ad.yaml +37 -0
  201. paddlex/configs/ts_anomaly_detection/PatchTST_ad.yaml +37 -0
  202. paddlex/configs/ts_anomaly_detection/TimesNet_ad.yaml +37 -0
  203. paddlex/configs/ts_classification/TimesNet_cls.yaml +37 -0
  204. paddlex/configs/ts_forecast/DLinear.yaml +38 -0
  205. paddlex/configs/ts_forecast/NLinear.yaml +38 -0
  206. paddlex/configs/ts_forecast/Nonstationary.yaml +38 -0
  207. paddlex/configs/ts_forecast/PatchTST.yaml +38 -0
  208. paddlex/configs/ts_forecast/RLinear.yaml +38 -0
  209. paddlex/configs/ts_forecast/TiDE.yaml +38 -0
  210. paddlex/configs/ts_forecast/TimesNet.yaml +38 -0
  211. paddlex/configs/vehicle_attribute/PP-LCNet_x1_0_vehicle_attribute.yaml +41 -0
  212. paddlex/configs/vehicle_detection/PP-YOLOE-L_vehicle.yaml +41 -0
  213. paddlex/configs/vehicle_detection/PP-YOLOE-S_vehicle.yaml +42 -0
  214. paddlex/engine.py +54 -0
  215. paddlex/inference/__init__.py +17 -0
  216. paddlex/inference/components/__init__.py +18 -0
  217. paddlex/inference/components/base.py +292 -0
  218. paddlex/inference/components/llm/__init__.py +25 -0
  219. paddlex/inference/components/llm/base.py +65 -0
  220. paddlex/inference/components/llm/erniebot.py +212 -0
  221. paddlex/inference/components/paddle_predictor/__init__.py +20 -0
  222. paddlex/inference/components/paddle_predictor/predictor.py +332 -0
  223. paddlex/inference/components/retrieval/__init__.py +15 -0
  224. paddlex/inference/components/retrieval/faiss.py +359 -0
  225. paddlex/inference/components/task_related/__init__.py +33 -0
  226. paddlex/inference/components/task_related/clas.py +124 -0
  227. paddlex/inference/components/task_related/det.py +284 -0
  228. paddlex/inference/components/task_related/instance_seg.py +89 -0
  229. paddlex/inference/components/task_related/seal_det_warp.py +940 -0
  230. paddlex/inference/components/task_related/seg.py +40 -0
  231. paddlex/inference/components/task_related/table_rec.py +191 -0
  232. paddlex/inference/components/task_related/text_det.py +895 -0
  233. paddlex/inference/components/task_related/text_rec.py +353 -0
  234. paddlex/inference/components/task_related/warp.py +43 -0
  235. paddlex/inference/components/transforms/__init__.py +16 -0
  236. paddlex/inference/components/transforms/image/__init__.py +15 -0
  237. paddlex/inference/components/transforms/image/common.py +598 -0
  238. paddlex/inference/components/transforms/image/funcs.py +58 -0
  239. paddlex/inference/components/transforms/read_data.py +67 -0
  240. paddlex/inference/components/transforms/ts/__init__.py +15 -0
  241. paddlex/inference/components/transforms/ts/common.py +393 -0
  242. paddlex/inference/components/transforms/ts/funcs.py +424 -0
  243. paddlex/inference/models/__init__.py +106 -0
  244. paddlex/inference/models/anomaly_detection.py +87 -0
  245. paddlex/inference/models/base/__init__.py +16 -0
  246. paddlex/inference/models/base/base_predictor.py +76 -0
  247. paddlex/inference/models/base/basic_predictor.py +122 -0
  248. paddlex/inference/models/face_recognition.py +21 -0
  249. paddlex/inference/models/formula_recognition.py +55 -0
  250. paddlex/inference/models/general_recognition.py +99 -0
  251. paddlex/inference/models/image_classification.py +101 -0
  252. paddlex/inference/models/image_unwarping.py +43 -0
  253. paddlex/inference/models/instance_segmentation.py +66 -0
  254. paddlex/inference/models/multilabel_classification.py +33 -0
  255. paddlex/inference/models/object_detection.py +129 -0
  256. paddlex/inference/models/semantic_segmentation.py +86 -0
  257. paddlex/inference/models/table_recognition.py +106 -0
  258. paddlex/inference/models/text_detection.py +105 -0
  259. paddlex/inference/models/text_recognition.py +78 -0
  260. paddlex/inference/models/ts_ad.py +68 -0
  261. paddlex/inference/models/ts_cls.py +57 -0
  262. paddlex/inference/models/ts_fc.py +73 -0
  263. paddlex/inference/pipelines/__init__.py +127 -0
  264. paddlex/inference/pipelines/attribute_recognition.py +92 -0
  265. paddlex/inference/pipelines/base.py +86 -0
  266. paddlex/inference/pipelines/face_recognition.py +49 -0
  267. paddlex/inference/pipelines/formula_recognition.py +102 -0
  268. paddlex/inference/pipelines/layout_parsing/__init__.py +15 -0
  269. paddlex/inference/pipelines/layout_parsing/layout_parsing.py +362 -0
  270. paddlex/inference/pipelines/ocr.py +80 -0
  271. paddlex/inference/pipelines/pp_shitu_v2.py +152 -0
  272. paddlex/inference/pipelines/ppchatocrv3/__init__.py +15 -0
  273. paddlex/inference/pipelines/ppchatocrv3/ch_prompt.yaml +14 -0
  274. paddlex/inference/pipelines/ppchatocrv3/ppchatocrv3.py +717 -0
  275. paddlex/inference/pipelines/ppchatocrv3/utils.py +168 -0
  276. paddlex/inference/pipelines/seal_recognition.py +152 -0
  277. paddlex/inference/pipelines/serving/__init__.py +17 -0
  278. paddlex/inference/pipelines/serving/_pipeline_apps/__init__.py +205 -0
  279. paddlex/inference/pipelines/serving/_pipeline_apps/anomaly_detection.py +80 -0
  280. paddlex/inference/pipelines/serving/_pipeline_apps/face_recognition.py +317 -0
  281. paddlex/inference/pipelines/serving/_pipeline_apps/formula_recognition.py +119 -0
  282. paddlex/inference/pipelines/serving/_pipeline_apps/image_classification.py +101 -0
  283. paddlex/inference/pipelines/serving/_pipeline_apps/instance_segmentation.py +112 -0
  284. paddlex/inference/pipelines/serving/_pipeline_apps/layout_parsing.py +205 -0
  285. paddlex/inference/pipelines/serving/_pipeline_apps/multi_label_image_classification.py +90 -0
  286. paddlex/inference/pipelines/serving/_pipeline_apps/object_detection.py +90 -0
  287. paddlex/inference/pipelines/serving/_pipeline_apps/ocr.py +98 -0
  288. paddlex/inference/pipelines/serving/_pipeline_apps/pedestrian_attribute_recognition.py +102 -0
  289. paddlex/inference/pipelines/serving/_pipeline_apps/pp_shitu_v2.py +319 -0
  290. paddlex/inference/pipelines/serving/_pipeline_apps/ppchatocrv3.py +445 -0
  291. paddlex/inference/pipelines/serving/_pipeline_apps/seal_recognition.py +110 -0
  292. paddlex/inference/pipelines/serving/_pipeline_apps/semantic_segmentation.py +82 -0
  293. paddlex/inference/pipelines/serving/_pipeline_apps/small_object_detection.py +92 -0
  294. paddlex/inference/pipelines/serving/_pipeline_apps/table_recognition.py +110 -0
  295. paddlex/inference/pipelines/serving/_pipeline_apps/ts_ad.py +68 -0
  296. paddlex/inference/pipelines/serving/_pipeline_apps/ts_cls.py +68 -0
  297. paddlex/inference/pipelines/serving/_pipeline_apps/ts_fc.py +68 -0
  298. paddlex/inference/pipelines/serving/_pipeline_apps/vehicle_attribute_recognition.py +102 -0
  299. paddlex/inference/pipelines/serving/app.py +164 -0
  300. paddlex/inference/pipelines/serving/models.py +30 -0
  301. paddlex/inference/pipelines/serving/server.py +25 -0
  302. paddlex/inference/pipelines/serving/storage.py +161 -0
  303. paddlex/inference/pipelines/serving/utils.py +190 -0
  304. paddlex/inference/pipelines/single_model_pipeline.py +76 -0
  305. paddlex/inference/pipelines/table_recognition/__init__.py +15 -0
  306. paddlex/inference/pipelines/table_recognition/table_recognition.py +193 -0
  307. paddlex/inference/pipelines/table_recognition/utils.py +457 -0
  308. paddlex/inference/results/__init__.py +31 -0
  309. paddlex/inference/results/attribute_rec.py +89 -0
  310. paddlex/inference/results/base.py +43 -0
  311. paddlex/inference/results/chat_ocr.py +158 -0
  312. paddlex/inference/results/clas.py +133 -0
  313. paddlex/inference/results/det.py +86 -0
  314. paddlex/inference/results/face_rec.py +34 -0
  315. paddlex/inference/results/formula_rec.py +363 -0
  316. paddlex/inference/results/instance_seg.py +152 -0
  317. paddlex/inference/results/ocr.py +157 -0
  318. paddlex/inference/results/seal_rec.py +50 -0
  319. paddlex/inference/results/seg.py +72 -0
  320. paddlex/inference/results/shitu.py +35 -0
  321. paddlex/inference/results/table_rec.py +109 -0
  322. paddlex/inference/results/text_det.py +33 -0
  323. paddlex/inference/results/text_rec.py +66 -0
  324. paddlex/inference/results/ts.py +37 -0
  325. paddlex/inference/results/utils/__init__.py +13 -0
  326. paddlex/inference/results/utils/mixin.py +204 -0
  327. paddlex/inference/results/warp.py +31 -0
  328. paddlex/inference/utils/__init__.py +13 -0
  329. paddlex/inference/utils/benchmark.py +214 -0
  330. paddlex/inference/utils/color_map.py +123 -0
  331. paddlex/inference/utils/get_pipeline_path.py +26 -0
  332. paddlex/inference/utils/io/__init__.py +33 -0
  333. paddlex/inference/utils/io/readers.py +353 -0
  334. paddlex/inference/utils/io/style.py +374 -0
  335. paddlex/inference/utils/io/tablepyxl.py +149 -0
  336. paddlex/inference/utils/io/writers.py +376 -0
  337. paddlex/inference/utils/new_ir_blacklist.py +22 -0
  338. paddlex/inference/utils/official_models.py +286 -0
  339. paddlex/inference/utils/pp_option.py +236 -0
  340. paddlex/inference/utils/process_hook.py +54 -0
  341. paddlex/model.py +106 -0
  342. paddlex/modules/__init__.py +105 -0
  343. paddlex/modules/anomaly_detection/__init__.py +18 -0
  344. paddlex/modules/anomaly_detection/dataset_checker/__init__.py +95 -0
  345. paddlex/modules/anomaly_detection/dataset_checker/dataset_src/__init__.py +19 -0
  346. paddlex/modules/anomaly_detection/dataset_checker/dataset_src/analyse_dataset.py +79 -0
  347. paddlex/modules/anomaly_detection/dataset_checker/dataset_src/check_dataset.py +87 -0
  348. paddlex/modules/anomaly_detection/dataset_checker/dataset_src/convert_dataset.py +230 -0
  349. paddlex/modules/anomaly_detection/dataset_checker/dataset_src/split_dataset.py +87 -0
  350. paddlex/modules/anomaly_detection/dataset_checker/dataset_src/utils/__init__.py +13 -0
  351. paddlex/modules/anomaly_detection/dataset_checker/dataset_src/utils/visualizer.py +71 -0
  352. paddlex/modules/anomaly_detection/evaluator.py +58 -0
  353. paddlex/modules/anomaly_detection/exportor.py +22 -0
  354. paddlex/modules/anomaly_detection/model_list.py +16 -0
  355. paddlex/modules/anomaly_detection/trainer.py +71 -0
  356. paddlex/modules/base/__init__.py +18 -0
  357. paddlex/modules/base/build_model.py +34 -0
  358. paddlex/modules/base/dataset_checker/__init__.py +16 -0
  359. paddlex/modules/base/dataset_checker/dataset_checker.py +164 -0
  360. paddlex/modules/base/dataset_checker/utils.py +110 -0
  361. paddlex/modules/base/evaluator.py +154 -0
  362. paddlex/modules/base/exportor.py +121 -0
  363. paddlex/modules/base/trainer.py +111 -0
  364. paddlex/modules/face_recognition/__init__.py +18 -0
  365. paddlex/modules/face_recognition/dataset_checker/__init__.py +71 -0
  366. paddlex/modules/face_recognition/dataset_checker/dataset_src/__init__.py +16 -0
  367. paddlex/modules/face_recognition/dataset_checker/dataset_src/check_dataset.py +174 -0
  368. paddlex/modules/face_recognition/dataset_checker/dataset_src/utils/__init__.py +13 -0
  369. paddlex/modules/face_recognition/dataset_checker/dataset_src/utils/visualizer.py +156 -0
  370. paddlex/modules/face_recognition/evaluator.py +52 -0
  371. paddlex/modules/face_recognition/exportor.py +22 -0
  372. paddlex/modules/face_recognition/model_list.py +15 -0
  373. paddlex/modules/face_recognition/trainer.py +97 -0
  374. paddlex/modules/formula_recognition/__init__.py +13 -0
  375. paddlex/modules/formula_recognition/model_list.py +17 -0
  376. paddlex/modules/general_recognition/__init__.py +18 -0
  377. paddlex/modules/general_recognition/dataset_checker/__init__.py +107 -0
  378. paddlex/modules/general_recognition/dataset_checker/dataset_src/__init__.py +19 -0
  379. paddlex/modules/general_recognition/dataset_checker/dataset_src/analyse_dataset.py +98 -0
  380. paddlex/modules/general_recognition/dataset_checker/dataset_src/check_dataset.py +100 -0
  381. paddlex/modules/general_recognition/dataset_checker/dataset_src/convert_dataset.py +99 -0
  382. paddlex/modules/general_recognition/dataset_checker/dataset_src/split_dataset.py +82 -0
  383. paddlex/modules/general_recognition/dataset_checker/dataset_src/utils/__init__.py +13 -0
  384. paddlex/modules/general_recognition/dataset_checker/dataset_src/utils/visualizer.py +150 -0
  385. paddlex/modules/general_recognition/evaluator.py +31 -0
  386. paddlex/modules/general_recognition/exportor.py +22 -0
  387. paddlex/modules/general_recognition/model_list.py +19 -0
  388. paddlex/modules/general_recognition/trainer.py +52 -0
  389. paddlex/modules/image_classification/__init__.py +18 -0
  390. paddlex/modules/image_classification/dataset_checker/__init__.py +104 -0
  391. paddlex/modules/image_classification/dataset_checker/dataset_src/__init__.py +19 -0
  392. paddlex/modules/image_classification/dataset_checker/dataset_src/analyse_dataset.py +93 -0
  393. paddlex/modules/image_classification/dataset_checker/dataset_src/check_dataset.py +131 -0
  394. paddlex/modules/image_classification/dataset_checker/dataset_src/convert_dataset.py +51 -0
  395. paddlex/modules/image_classification/dataset_checker/dataset_src/split_dataset.py +81 -0
  396. paddlex/modules/image_classification/dataset_checker/dataset_src/utils/__init__.py +13 -0
  397. paddlex/modules/image_classification/dataset_checker/dataset_src/utils/visualizer.py +156 -0
  398. paddlex/modules/image_classification/evaluator.py +43 -0
  399. paddlex/modules/image_classification/exportor.py +22 -0
  400. paddlex/modules/image_classification/model_list.py +97 -0
  401. paddlex/modules/image_classification/trainer.py +82 -0
  402. paddlex/modules/image_unwarping/__init__.py +13 -0
  403. paddlex/modules/image_unwarping/model_list.py +17 -0
  404. paddlex/modules/instance_segmentation/__init__.py +18 -0
  405. paddlex/modules/instance_segmentation/dataset_checker/__init__.py +93 -0
  406. paddlex/modules/instance_segmentation/dataset_checker/dataset_src/__init__.py +19 -0
  407. paddlex/modules/instance_segmentation/dataset_checker/dataset_src/analyse_dataset.py +78 -0
  408. paddlex/modules/instance_segmentation/dataset_checker/dataset_src/check_dataset.py +92 -0
  409. paddlex/modules/instance_segmentation/dataset_checker/dataset_src/convert_dataset.py +241 -0
  410. paddlex/modules/instance_segmentation/dataset_checker/dataset_src/split_dataset.py +119 -0
  411. paddlex/modules/instance_segmentation/dataset_checker/dataset_src/utils/__init__.py +13 -0
  412. paddlex/modules/instance_segmentation/dataset_checker/dataset_src/utils/visualizer.py +221 -0
  413. paddlex/modules/instance_segmentation/evaluator.py +32 -0
  414. paddlex/modules/instance_segmentation/exportor.py +22 -0
  415. paddlex/modules/instance_segmentation/model_list.py +33 -0
  416. paddlex/modules/instance_segmentation/trainer.py +31 -0
  417. paddlex/modules/multilabel_classification/__init__.py +18 -0
  418. paddlex/modules/multilabel_classification/dataset_checker/__init__.py +106 -0
  419. paddlex/modules/multilabel_classification/dataset_checker/dataset_src/__init__.py +19 -0
  420. paddlex/modules/multilabel_classification/dataset_checker/dataset_src/analyse_dataset.py +95 -0
  421. paddlex/modules/multilabel_classification/dataset_checker/dataset_src/check_dataset.py +131 -0
  422. paddlex/modules/multilabel_classification/dataset_checker/dataset_src/convert_dataset.py +117 -0
  423. paddlex/modules/multilabel_classification/dataset_checker/dataset_src/split_dataset.py +81 -0
  424. paddlex/modules/multilabel_classification/dataset_checker/dataset_src/utils/__init__.py +13 -0
  425. paddlex/modules/multilabel_classification/dataset_checker/dataset_src/utils/visualizer.py +153 -0
  426. paddlex/modules/multilabel_classification/evaluator.py +43 -0
  427. paddlex/modules/multilabel_classification/exportor.py +22 -0
  428. paddlex/modules/multilabel_classification/model_list.py +24 -0
  429. paddlex/modules/multilabel_classification/trainer.py +85 -0
  430. paddlex/modules/object_detection/__init__.py +18 -0
  431. paddlex/modules/object_detection/dataset_checker/__init__.py +115 -0
  432. paddlex/modules/object_detection/dataset_checker/dataset_src/__init__.py +19 -0
  433. paddlex/modules/object_detection/dataset_checker/dataset_src/analyse_dataset.py +80 -0
  434. paddlex/modules/object_detection/dataset_checker/dataset_src/check_dataset.py +86 -0
  435. paddlex/modules/object_detection/dataset_checker/dataset_src/convert_dataset.py +433 -0
  436. paddlex/modules/object_detection/dataset_checker/dataset_src/split_dataset.py +119 -0
  437. paddlex/modules/object_detection/dataset_checker/dataset_src/utils/__init__.py +13 -0
  438. paddlex/modules/object_detection/dataset_checker/dataset_src/utils/visualizer.py +192 -0
  439. paddlex/modules/object_detection/evaluator.py +41 -0
  440. paddlex/modules/object_detection/exportor.py +22 -0
  441. paddlex/modules/object_detection/model_list.py +74 -0
  442. paddlex/modules/object_detection/trainer.py +85 -0
  443. paddlex/modules/semantic_segmentation/__init__.py +18 -0
  444. paddlex/modules/semantic_segmentation/dataset_checker/__init__.py +95 -0
  445. paddlex/modules/semantic_segmentation/dataset_checker/dataset_src/__init__.py +19 -0
  446. paddlex/modules/semantic_segmentation/dataset_checker/dataset_src/analyse_dataset.py +73 -0
  447. paddlex/modules/semantic_segmentation/dataset_checker/dataset_src/check_dataset.py +80 -0
  448. paddlex/modules/semantic_segmentation/dataset_checker/dataset_src/convert_dataset.py +162 -0
  449. paddlex/modules/semantic_segmentation/dataset_checker/dataset_src/split_dataset.py +87 -0
  450. paddlex/modules/semantic_segmentation/dataset_checker/dataset_src/utils/__init__.py +13 -0
  451. paddlex/modules/semantic_segmentation/dataset_checker/dataset_src/utils/visualizer.py +71 -0
  452. paddlex/modules/semantic_segmentation/evaluator.py +58 -0
  453. paddlex/modules/semantic_segmentation/exportor.py +22 -0
  454. paddlex/modules/semantic_segmentation/model_list.py +35 -0
  455. paddlex/modules/semantic_segmentation/trainer.py +71 -0
  456. paddlex/modules/table_recognition/__init__.py +18 -0
  457. paddlex/modules/table_recognition/dataset_checker/__init__.py +83 -0
  458. paddlex/modules/table_recognition/dataset_checker/dataset_src/__init__.py +18 -0
  459. paddlex/modules/table_recognition/dataset_checker/dataset_src/analyse_dataset.py +58 -0
  460. paddlex/modules/table_recognition/dataset_checker/dataset_src/check_dataset.py +87 -0
  461. paddlex/modules/table_recognition/dataset_checker/dataset_src/split_dataset.py +79 -0
  462. paddlex/modules/table_recognition/evaluator.py +43 -0
  463. paddlex/modules/table_recognition/exportor.py +22 -0
  464. paddlex/modules/table_recognition/model_list.py +19 -0
  465. paddlex/modules/table_recognition/trainer.py +70 -0
  466. paddlex/modules/text_detection/__init__.py +18 -0
  467. paddlex/modules/text_detection/dataset_checker/__init__.py +94 -0
  468. paddlex/modules/text_detection/dataset_checker/dataset_src/__init__.py +18 -0
  469. paddlex/modules/text_detection/dataset_checker/dataset_src/analyse_dataset.py +217 -0
  470. paddlex/modules/text_detection/dataset_checker/dataset_src/check_dataset.py +96 -0
  471. paddlex/modules/text_detection/dataset_checker/dataset_src/split_dataset.py +140 -0
  472. paddlex/modules/text_detection/evaluator.py +41 -0
  473. paddlex/modules/text_detection/exportor.py +22 -0
  474. paddlex/modules/text_detection/model_list.py +22 -0
  475. paddlex/modules/text_detection/trainer.py +68 -0
  476. paddlex/modules/text_recognition/__init__.py +18 -0
  477. paddlex/modules/text_recognition/dataset_checker/__init__.py +114 -0
  478. paddlex/modules/text_recognition/dataset_checker/dataset_src/__init__.py +19 -0
  479. paddlex/modules/text_recognition/dataset_checker/dataset_src/analyse_dataset.py +161 -0
  480. paddlex/modules/text_recognition/dataset_checker/dataset_src/check_dataset.py +97 -0
  481. paddlex/modules/text_recognition/dataset_checker/dataset_src/convert_dataset.py +94 -0
  482. paddlex/modules/text_recognition/dataset_checker/dataset_src/split_dataset.py +81 -0
  483. paddlex/modules/text_recognition/evaluator.py +63 -0
  484. paddlex/modules/text_recognition/exportor.py +25 -0
  485. paddlex/modules/text_recognition/model_list.py +20 -0
  486. paddlex/modules/text_recognition/trainer.py +105 -0
  487. paddlex/modules/ts_anomaly_detection/__init__.py +19 -0
  488. paddlex/modules/ts_anomaly_detection/dataset_checker/__init__.py +97 -0
  489. paddlex/modules/ts_anomaly_detection/dataset_checker/dataset_src/__init__.py +19 -0
  490. paddlex/modules/ts_anomaly_detection/dataset_checker/dataset_src/analyse_dataset.py +27 -0
  491. paddlex/modules/ts_anomaly_detection/dataset_checker/dataset_src/check_dataset.py +64 -0
  492. paddlex/modules/ts_anomaly_detection/dataset_checker/dataset_src/convert_dataset.py +78 -0
  493. paddlex/modules/ts_anomaly_detection/dataset_checker/dataset_src/split_dataset.py +63 -0
  494. paddlex/modules/ts_anomaly_detection/evaluator.py +67 -0
  495. paddlex/modules/ts_anomaly_detection/exportor.py +45 -0
  496. paddlex/modules/ts_anomaly_detection/model_list.py +22 -0
  497. paddlex/modules/ts_anomaly_detection/trainer.py +97 -0
  498. paddlex/modules/ts_classification/__init__.py +19 -0
  499. paddlex/modules/ts_classification/dataset_checker/__init__.py +97 -0
  500. paddlex/modules/ts_classification/dataset_checker/dataset_src/__init__.py +19 -0
  501. paddlex/modules/ts_classification/dataset_checker/dataset_src/analyse_dataset.py +74 -0
  502. paddlex/modules/ts_classification/dataset_checker/dataset_src/check_dataset.py +64 -0
  503. paddlex/modules/ts_classification/dataset_checker/dataset_src/convert_dataset.py +78 -0
  504. paddlex/modules/ts_classification/dataset_checker/dataset_src/split_dataset.py +88 -0
  505. paddlex/modules/ts_classification/evaluator.py +66 -0
  506. paddlex/modules/ts_classification/exportor.py +45 -0
  507. paddlex/modules/ts_classification/model_list.py +18 -0
  508. paddlex/modules/ts_classification/trainer.py +92 -0
  509. paddlex/modules/ts_forecast/__init__.py +19 -0
  510. paddlex/modules/ts_forecast/dataset_checker/__init__.py +97 -0
  511. paddlex/modules/ts_forecast/dataset_checker/dataset_src/__init__.py +19 -0
  512. paddlex/modules/ts_forecast/dataset_checker/dataset_src/analyse_dataset.py +27 -0
  513. paddlex/modules/ts_forecast/dataset_checker/dataset_src/check_dataset.py +64 -0
  514. paddlex/modules/ts_forecast/dataset_checker/dataset_src/convert_dataset.py +77 -0
  515. paddlex/modules/ts_forecast/dataset_checker/dataset_src/split_dataset.py +63 -0
  516. paddlex/modules/ts_forecast/evaluator.py +66 -0
  517. paddlex/modules/ts_forecast/exportor.py +45 -0
  518. paddlex/modules/ts_forecast/model_list.py +24 -0
  519. paddlex/modules/ts_forecast/trainer.py +92 -0
  520. paddlex/paddlex_cli.py +197 -0
  521. paddlex/pipelines/OCR.yaml +8 -0
  522. paddlex/pipelines/PP-ChatOCRv3-doc.yaml +27 -0
  523. paddlex/pipelines/PP-ShiTuV2.yaml +13 -0
  524. paddlex/pipelines/anomaly_detection.yaml +7 -0
  525. paddlex/pipelines/face_recognition.yaml +13 -0
  526. paddlex/pipelines/formula_recognition.yaml +8 -0
  527. paddlex/pipelines/image_classification.yaml +7 -0
  528. paddlex/pipelines/instance_segmentation.yaml +7 -0
  529. paddlex/pipelines/layout_parsing.yaml +14 -0
  530. paddlex/pipelines/multi_label_image_classification.yaml +7 -0
  531. paddlex/pipelines/object_detection.yaml +7 -0
  532. paddlex/pipelines/pedestrian_attribute_recognition.yaml +7 -0
  533. paddlex/pipelines/seal_recognition.yaml +10 -0
  534. paddlex/pipelines/semantic_segmentation.yaml +7 -0
  535. paddlex/pipelines/small_object_detection.yaml +7 -0
  536. paddlex/pipelines/table_recognition.yaml +12 -0
  537. paddlex/pipelines/ts_ad.yaml +7 -0
  538. paddlex/pipelines/ts_cls.yaml +7 -0
  539. paddlex/pipelines/ts_fc.yaml +7 -0
  540. paddlex/pipelines/vehicle_attribute_recognition.yaml +7 -0
  541. paddlex/repo_apis/PaddleClas_api/__init__.py +17 -0
  542. paddlex/repo_apis/PaddleClas_api/cls/__init__.py +19 -0
  543. paddlex/repo_apis/PaddleClas_api/cls/config.py +594 -0
  544. paddlex/repo_apis/PaddleClas_api/cls/model.py +349 -0
  545. paddlex/repo_apis/PaddleClas_api/cls/register.py +890 -0
  546. paddlex/repo_apis/PaddleClas_api/cls/runner.py +219 -0
  547. paddlex/repo_apis/PaddleClas_api/shitu_rec/__init__.py +18 -0
  548. paddlex/repo_apis/PaddleClas_api/shitu_rec/config.py +141 -0
  549. paddlex/repo_apis/PaddleClas_api/shitu_rec/model.py +23 -0
  550. paddlex/repo_apis/PaddleClas_api/shitu_rec/register.py +68 -0
  551. paddlex/repo_apis/PaddleClas_api/shitu_rec/runner.py +55 -0
  552. paddlex/repo_apis/PaddleDetection_api/__init__.py +17 -0
  553. paddlex/repo_apis/PaddleDetection_api/config_helper.py +280 -0
  554. paddlex/repo_apis/PaddleDetection_api/instance_seg/__init__.py +18 -0
  555. paddlex/repo_apis/PaddleDetection_api/instance_seg/config.py +454 -0
  556. paddlex/repo_apis/PaddleDetection_api/instance_seg/model.py +397 -0
  557. paddlex/repo_apis/PaddleDetection_api/instance_seg/register.py +263 -0
  558. paddlex/repo_apis/PaddleDetection_api/instance_seg/runner.py +226 -0
  559. paddlex/repo_apis/PaddleDetection_api/object_det/__init__.py +19 -0
  560. paddlex/repo_apis/PaddleDetection_api/object_det/config.py +517 -0
  561. paddlex/repo_apis/PaddleDetection_api/object_det/model.py +424 -0
  562. paddlex/repo_apis/PaddleDetection_api/object_det/official_categories.py +139 -0
  563. paddlex/repo_apis/PaddleDetection_api/object_det/register.py +927 -0
  564. paddlex/repo_apis/PaddleDetection_api/object_det/runner.py +226 -0
  565. paddlex/repo_apis/PaddleNLP_api/__init__.py +13 -0
  566. paddlex/repo_apis/PaddleOCR_api/__init__.py +20 -0
  567. paddlex/repo_apis/PaddleOCR_api/config_utils.py +53 -0
  568. paddlex/repo_apis/PaddleOCR_api/table_rec/__init__.py +16 -0
  569. paddlex/repo_apis/PaddleOCR_api/table_rec/config.py +64 -0
  570. paddlex/repo_apis/PaddleOCR_api/table_rec/model.py +126 -0
  571. paddlex/repo_apis/PaddleOCR_api/table_rec/register.py +53 -0
  572. paddlex/repo_apis/PaddleOCR_api/table_rec/runner.py +51 -0
  573. paddlex/repo_apis/PaddleOCR_api/text_det/__init__.py +16 -0
  574. paddlex/repo_apis/PaddleOCR_api/text_det/config.py +62 -0
  575. paddlex/repo_apis/PaddleOCR_api/text_det/model.py +72 -0
  576. paddlex/repo_apis/PaddleOCR_api/text_det/register.py +72 -0
  577. paddlex/repo_apis/PaddleOCR_api/text_det/runner.py +53 -0
  578. paddlex/repo_apis/PaddleOCR_api/text_rec/__init__.py +16 -0
  579. paddlex/repo_apis/PaddleOCR_api/text_rec/config.py +542 -0
  580. paddlex/repo_apis/PaddleOCR_api/text_rec/model.py +396 -0
  581. paddlex/repo_apis/PaddleOCR_api/text_rec/register.py +80 -0
  582. paddlex/repo_apis/PaddleOCR_api/text_rec/runner.py +240 -0
  583. paddlex/repo_apis/PaddleSeg_api/__init__.py +16 -0
  584. paddlex/repo_apis/PaddleSeg_api/base_seg_config.py +134 -0
  585. paddlex/repo_apis/PaddleSeg_api/seg/__init__.py +16 -0
  586. paddlex/repo_apis/PaddleSeg_api/seg/config.py +177 -0
  587. paddlex/repo_apis/PaddleSeg_api/seg/model.py +481 -0
  588. paddlex/repo_apis/PaddleSeg_api/seg/register.py +253 -0
  589. paddlex/repo_apis/PaddleSeg_api/seg/runner.py +262 -0
  590. paddlex/repo_apis/PaddleTS_api/__init__.py +19 -0
  591. paddlex/repo_apis/PaddleTS_api/ts_ad/__init__.py +16 -0
  592. paddlex/repo_apis/PaddleTS_api/ts_ad/config.py +89 -0
  593. paddlex/repo_apis/PaddleTS_api/ts_ad/register.py +146 -0
  594. paddlex/repo_apis/PaddleTS_api/ts_ad/runner.py +158 -0
  595. paddlex/repo_apis/PaddleTS_api/ts_base/__init__.py +13 -0
  596. paddlex/repo_apis/PaddleTS_api/ts_base/config.py +222 -0
  597. paddlex/repo_apis/PaddleTS_api/ts_base/model.py +272 -0
  598. paddlex/repo_apis/PaddleTS_api/ts_base/runner.py +158 -0
  599. paddlex/repo_apis/PaddleTS_api/ts_cls/__init__.py +16 -0
  600. paddlex/repo_apis/PaddleTS_api/ts_cls/config.py +73 -0
  601. paddlex/repo_apis/PaddleTS_api/ts_cls/register.py +59 -0
  602. paddlex/repo_apis/PaddleTS_api/ts_cls/runner.py +158 -0
  603. paddlex/repo_apis/PaddleTS_api/ts_fc/__init__.py +16 -0
  604. paddlex/repo_apis/PaddleTS_api/ts_fc/config.py +137 -0
  605. paddlex/repo_apis/PaddleTS_api/ts_fc/register.py +186 -0
  606. paddlex/repo_apis/__init__.py +13 -0
  607. paddlex/repo_apis/base/__init__.py +23 -0
  608. paddlex/repo_apis/base/config.py +238 -0
  609. paddlex/repo_apis/base/model.py +571 -0
  610. paddlex/repo_apis/base/register.py +135 -0
  611. paddlex/repo_apis/base/runner.py +390 -0
  612. paddlex/repo_apis/base/utils/__init__.py +13 -0
  613. paddlex/repo_apis/base/utils/arg.py +64 -0
  614. paddlex/repo_apis/base/utils/subprocess.py +107 -0
  615. paddlex/repo_manager/__init__.py +24 -0
  616. paddlex/repo_manager/core.py +271 -0
  617. paddlex/repo_manager/meta.py +143 -0
  618. paddlex/repo_manager/repo.py +396 -0
  619. paddlex/repo_manager/requirements.txt +18 -0
  620. paddlex/repo_manager/utils.py +298 -0
  621. paddlex/utils/__init__.py +1 -12
  622. paddlex/utils/cache.py +148 -0
  623. paddlex/utils/config.py +214 -0
  624. paddlex/utils/device.py +103 -0
  625. paddlex/utils/download.py +168 -182
  626. paddlex/utils/errors/__init__.py +17 -0
  627. paddlex/utils/errors/dataset_checker.py +78 -0
  628. paddlex/utils/errors/others.py +152 -0
  629. paddlex/utils/file_interface.py +212 -0
  630. paddlex/utils/flags.py +61 -0
  631. paddlex/utils/fonts/PingFang-SC-Regular.ttf +0 -0
  632. paddlex/utils/fonts/__init__.py +24 -0
  633. paddlex/utils/func_register.py +41 -0
  634. paddlex/utils/interactive_get_pipeline.py +55 -0
  635. paddlex/utils/lazy_loader.py +66 -0
  636. paddlex/utils/logging.py +132 -33
  637. paddlex/utils/misc.py +201 -0
  638. paddlex/utils/result_saver.py +59 -0
  639. paddlex/utils/subclass_register.py +101 -0
  640. paddlex/version.py +54 -0
  641. paddlex-3.0.0b2.dist-info/LICENSE +169 -0
  642. paddlex-3.0.0b2.dist-info/METADATA +760 -0
  643. paddlex-3.0.0b2.dist-info/RECORD +646 -0
  644. paddlex-3.0.0b2.dist-info/WHEEL +5 -0
  645. paddlex-3.0.0b2.dist-info/entry_points.txt +2 -0
  646. paddlex-3.0.0b2.dist-info/top_level.txt +1 -0
  647. PaddleClas/__init__.py +0 -16
  648. PaddleClas/paddleclas.py +0 -375
  649. PaddleClas/ppcls/__init__.py +0 -20
  650. PaddleClas/ppcls/data/__init__.py +0 -15
  651. PaddleClas/ppcls/data/imaug/__init__.py +0 -94
  652. PaddleClas/ppcls/data/imaug/autoaugment.py +0 -264
  653. PaddleClas/ppcls/data/imaug/batch_operators.py +0 -117
  654. PaddleClas/ppcls/data/imaug/cutout.py +0 -41
  655. PaddleClas/ppcls/data/imaug/fmix.py +0 -217
  656. PaddleClas/ppcls/data/imaug/grid.py +0 -89
  657. PaddleClas/ppcls/data/imaug/hide_and_seek.py +0 -44
  658. PaddleClas/ppcls/data/imaug/operators.py +0 -244
  659. PaddleClas/ppcls/data/imaug/randaugment.py +0 -106
  660. PaddleClas/ppcls/data/imaug/random_erasing.py +0 -55
  661. PaddleClas/ppcls/data/reader.py +0 -318
  662. PaddleClas/ppcls/modeling/__init__.py +0 -20
  663. PaddleClas/ppcls/modeling/architectures/__init__.py +0 -51
  664. PaddleClas/ppcls/modeling/architectures/alexnet.py +0 -132
  665. PaddleClas/ppcls/modeling/architectures/darknet.py +0 -161
  666. PaddleClas/ppcls/modeling/architectures/densenet.py +0 -308
  667. PaddleClas/ppcls/modeling/architectures/distillation_models.py +0 -65
  668. PaddleClas/ppcls/modeling/architectures/distilled_vision_transformer.py +0 -196
  669. PaddleClas/ppcls/modeling/architectures/dpn.py +0 -425
  670. PaddleClas/ppcls/modeling/architectures/efficientnet.py +0 -901
  671. PaddleClas/ppcls/modeling/architectures/ghostnet.py +0 -331
  672. PaddleClas/ppcls/modeling/architectures/googlenet.py +0 -207
  673. PaddleClas/ppcls/modeling/architectures/hrnet.py +0 -742
  674. PaddleClas/ppcls/modeling/architectures/inception_v3.py +0 -481
  675. PaddleClas/ppcls/modeling/architectures/inception_v4.py +0 -455
  676. PaddleClas/ppcls/modeling/architectures/mixnet.py +0 -782
  677. PaddleClas/ppcls/modeling/architectures/mobilenet_v1.py +0 -266
  678. PaddleClas/ppcls/modeling/architectures/mobilenet_v2.py +0 -248
  679. PaddleClas/ppcls/modeling/architectures/mobilenet_v3.py +0 -359
  680. PaddleClas/ppcls/modeling/architectures/regnet.py +0 -383
  681. PaddleClas/ppcls/modeling/architectures/repvgg.py +0 -339
  682. PaddleClas/ppcls/modeling/architectures/res2net.py +0 -272
  683. PaddleClas/ppcls/modeling/architectures/res2net_vd.py +0 -295
  684. PaddleClas/ppcls/modeling/architectures/resnest.py +0 -705
  685. PaddleClas/ppcls/modeling/architectures/resnet.py +0 -316
  686. PaddleClas/ppcls/modeling/architectures/resnet_vc.py +0 -309
  687. PaddleClas/ppcls/modeling/architectures/resnet_vd.py +0 -354
  688. PaddleClas/ppcls/modeling/architectures/resnext.py +0 -253
  689. PaddleClas/ppcls/modeling/architectures/resnext101_wsl.py +0 -447
  690. PaddleClas/ppcls/modeling/architectures/resnext_vd.py +0 -266
  691. PaddleClas/ppcls/modeling/architectures/rexnet.py +0 -240
  692. PaddleClas/ppcls/modeling/architectures/se_resnet_vd.py +0 -378
  693. PaddleClas/ppcls/modeling/architectures/se_resnext.py +0 -290
  694. PaddleClas/ppcls/modeling/architectures/se_resnext_vd.py +0 -285
  695. PaddleClas/ppcls/modeling/architectures/shufflenet_v2.py +0 -320
  696. PaddleClas/ppcls/modeling/architectures/squeezenet.py +0 -154
  697. PaddleClas/ppcls/modeling/architectures/vgg.py +0 -152
  698. PaddleClas/ppcls/modeling/architectures/vision_transformer.py +0 -402
  699. PaddleClas/ppcls/modeling/architectures/xception.py +0 -345
  700. PaddleClas/ppcls/modeling/architectures/xception_deeplab.py +0 -386
  701. PaddleClas/ppcls/modeling/loss.py +0 -154
  702. PaddleClas/ppcls/modeling/utils.py +0 -53
  703. PaddleClas/ppcls/optimizer/__init__.py +0 -19
  704. PaddleClas/ppcls/optimizer/learning_rate.py +0 -159
  705. PaddleClas/ppcls/optimizer/optimizer.py +0 -165
  706. PaddleClas/ppcls/utils/__init__.py +0 -27
  707. PaddleClas/ppcls/utils/check.py +0 -151
  708. PaddleClas/ppcls/utils/config.py +0 -201
  709. PaddleClas/ppcls/utils/logger.py +0 -120
  710. PaddleClas/ppcls/utils/metrics.py +0 -107
  711. PaddleClas/ppcls/utils/misc.py +0 -62
  712. PaddleClas/ppcls/utils/model_zoo.py +0 -213
  713. PaddleClas/ppcls/utils/save_load.py +0 -163
  714. PaddleClas/setup.py +0 -55
  715. PaddleClas/tools/__init__.py +0 -15
  716. PaddleClas/tools/download.py +0 -50
  717. PaddleClas/tools/ema.py +0 -58
  718. PaddleClas/tools/eval.py +0 -112
  719. PaddleClas/tools/export_model.py +0 -85
  720. PaddleClas/tools/export_serving_model.py +0 -76
  721. PaddleClas/tools/infer/__init__.py +0 -16
  722. PaddleClas/tools/infer/infer.py +0 -94
  723. PaddleClas/tools/infer/predict.py +0 -117
  724. PaddleClas/tools/infer/utils.py +0 -233
  725. PaddleClas/tools/program.py +0 -444
  726. PaddleClas/tools/test_hubserving.py +0 -113
  727. PaddleClas/tools/train.py +0 -141
  728. paddlex/cls.py +0 -76
  729. paddlex/command.py +0 -215
  730. paddlex/cv/__init__.py +0 -17
  731. paddlex/cv/datasets/__init__.py +0 -18
  732. paddlex/cv/datasets/coco.py +0 -169
  733. paddlex/cv/datasets/imagenet.py +0 -88
  734. paddlex/cv/datasets/seg_dataset.py +0 -91
  735. paddlex/cv/datasets/voc.py +0 -301
  736. paddlex/cv/models/__init__.py +0 -18
  737. paddlex/cv/models/base.py +0 -623
  738. paddlex/cv/models/classifier.py +0 -814
  739. paddlex/cv/models/detector.py +0 -1747
  740. paddlex/cv/models/load_model.py +0 -126
  741. paddlex/cv/models/segmenter.py +0 -673
  742. paddlex/cv/models/slim/__init__.py +0 -13
  743. paddlex/cv/models/slim/prune.py +0 -55
  744. paddlex/cv/models/utils/__init__.py +0 -13
  745. paddlex/cv/models/utils/det_metrics/__init__.py +0 -15
  746. paddlex/cv/models/utils/det_metrics/coco_utils.py +0 -217
  747. paddlex/cv/models/utils/det_metrics/metrics.py +0 -220
  748. paddlex/cv/models/utils/ema.py +0 -48
  749. paddlex/cv/models/utils/seg_metrics.py +0 -62
  750. paddlex/cv/models/utils/visualize.py +0 -394
  751. paddlex/cv/transforms/__init__.py +0 -46
  752. paddlex/cv/transforms/batch_operators.py +0 -286
  753. paddlex/cv/transforms/box_utils.py +0 -41
  754. paddlex/cv/transforms/functions.py +0 -193
  755. paddlex/cv/transforms/operators.py +0 -1402
  756. paddlex/det.py +0 -43
  757. paddlex/paddleseg/__init__.py +0 -17
  758. paddlex/paddleseg/core/__init__.py +0 -20
  759. paddlex/paddleseg/core/infer.py +0 -289
  760. paddlex/paddleseg/core/predict.py +0 -145
  761. paddlex/paddleseg/core/train.py +0 -258
  762. paddlex/paddleseg/core/val.py +0 -172
  763. paddlex/paddleseg/cvlibs/__init__.py +0 -17
  764. paddlex/paddleseg/cvlibs/callbacks.py +0 -279
  765. paddlex/paddleseg/cvlibs/config.py +0 -359
  766. paddlex/paddleseg/cvlibs/manager.py +0 -142
  767. paddlex/paddleseg/cvlibs/param_init.py +0 -91
  768. paddlex/paddleseg/datasets/__init__.py +0 -21
  769. paddlex/paddleseg/datasets/ade.py +0 -112
  770. paddlex/paddleseg/datasets/cityscapes.py +0 -86
  771. paddlex/paddleseg/datasets/cocostuff.py +0 -79
  772. paddlex/paddleseg/datasets/dataset.py +0 -164
  773. paddlex/paddleseg/datasets/mini_deep_globe_road_extraction.py +0 -95
  774. paddlex/paddleseg/datasets/optic_disc_seg.py +0 -97
  775. paddlex/paddleseg/datasets/pascal_context.py +0 -80
  776. paddlex/paddleseg/datasets/voc.py +0 -113
  777. paddlex/paddleseg/models/__init__.py +0 -39
  778. paddlex/paddleseg/models/ann.py +0 -436
  779. paddlex/paddleseg/models/attention_unet.py +0 -189
  780. paddlex/paddleseg/models/backbones/__init__.py +0 -18
  781. paddlex/paddleseg/models/backbones/hrnet.py +0 -815
  782. paddlex/paddleseg/models/backbones/mobilenetv3.py +0 -365
  783. paddlex/paddleseg/models/backbones/resnet_vd.py +0 -364
  784. paddlex/paddleseg/models/backbones/xception_deeplab.py +0 -415
  785. paddlex/paddleseg/models/bisenet.py +0 -311
  786. paddlex/paddleseg/models/danet.py +0 -220
  787. paddlex/paddleseg/models/decoupled_segnet.py +0 -233
  788. paddlex/paddleseg/models/deeplab.py +0 -258
  789. paddlex/paddleseg/models/dnlnet.py +0 -231
  790. paddlex/paddleseg/models/emanet.py +0 -219
  791. paddlex/paddleseg/models/fast_scnn.py +0 -318
  792. paddlex/paddleseg/models/fcn.py +0 -135
  793. paddlex/paddleseg/models/gcnet.py +0 -223
  794. paddlex/paddleseg/models/gscnn.py +0 -357
  795. paddlex/paddleseg/models/hardnet.py +0 -309
  796. paddlex/paddleseg/models/isanet.py +0 -202
  797. paddlex/paddleseg/models/layers/__init__.py +0 -19
  798. paddlex/paddleseg/models/layers/activation.py +0 -73
  799. paddlex/paddleseg/models/layers/attention.py +0 -146
  800. paddlex/paddleseg/models/layers/layer_libs.py +0 -168
  801. paddlex/paddleseg/models/layers/nonlocal2d.py +0 -155
  802. paddlex/paddleseg/models/layers/pyramid_pool.py +0 -182
  803. paddlex/paddleseg/models/losses/__init__.py +0 -27
  804. paddlex/paddleseg/models/losses/binary_cross_entropy_loss.py +0 -174
  805. paddlex/paddleseg/models/losses/bootstrapped_cross_entropy.py +0 -73
  806. paddlex/paddleseg/models/losses/cross_entropy_loss.py +0 -94
  807. paddlex/paddleseg/models/losses/decoupledsegnet_relax_boundary_loss.py +0 -129
  808. paddlex/paddleseg/models/losses/dice_loss.py +0 -61
  809. paddlex/paddleseg/models/losses/edge_attention_loss.py +0 -78
  810. paddlex/paddleseg/models/losses/gscnn_dual_task_loss.py +0 -141
  811. paddlex/paddleseg/models/losses/l1_loss.py +0 -76
  812. paddlex/paddleseg/models/losses/lovasz_loss.py +0 -222
  813. paddlex/paddleseg/models/losses/mean_square_error_loss.py +0 -65
  814. paddlex/paddleseg/models/losses/mixed_loss.py +0 -58
  815. paddlex/paddleseg/models/losses/ohem_cross_entropy_loss.py +0 -99
  816. paddlex/paddleseg/models/losses/ohem_edge_attention_loss.py +0 -114
  817. paddlex/paddleseg/models/ocrnet.py +0 -248
  818. paddlex/paddleseg/models/pspnet.py +0 -147
  819. paddlex/paddleseg/models/sfnet.py +0 -236
  820. paddlex/paddleseg/models/shufflenet_slim.py +0 -268
  821. paddlex/paddleseg/models/u2net.py +0 -574
  822. paddlex/paddleseg/models/unet.py +0 -155
  823. paddlex/paddleseg/models/unet_3plus.py +0 -316
  824. paddlex/paddleseg/models/unet_plusplus.py +0 -237
  825. paddlex/paddleseg/transforms/__init__.py +0 -16
  826. paddlex/paddleseg/transforms/functional.py +0 -161
  827. paddlex/paddleseg/transforms/transforms.py +0 -937
  828. paddlex/paddleseg/utils/__init__.py +0 -22
  829. paddlex/paddleseg/utils/config_check.py +0 -60
  830. paddlex/paddleseg/utils/download.py +0 -163
  831. paddlex/paddleseg/utils/env/__init__.py +0 -16
  832. paddlex/paddleseg/utils/env/seg_env.py +0 -56
  833. paddlex/paddleseg/utils/env/sys_env.py +0 -122
  834. paddlex/paddleseg/utils/logger.py +0 -48
  835. paddlex/paddleseg/utils/metrics.py +0 -146
  836. paddlex/paddleseg/utils/progbar.py +0 -212
  837. paddlex/paddleseg/utils/timer.py +0 -53
  838. paddlex/paddleseg/utils/utils.py +0 -120
  839. paddlex/paddleseg/utils/visualize.py +0 -90
  840. paddlex/ppcls/__init__.py +0 -20
  841. paddlex/ppcls/data/__init__.py +0 -15
  842. paddlex/ppcls/data/imaug/__init__.py +0 -94
  843. paddlex/ppcls/data/imaug/autoaugment.py +0 -264
  844. paddlex/ppcls/data/imaug/batch_operators.py +0 -117
  845. paddlex/ppcls/data/imaug/cutout.py +0 -41
  846. paddlex/ppcls/data/imaug/fmix.py +0 -217
  847. paddlex/ppcls/data/imaug/grid.py +0 -89
  848. paddlex/ppcls/data/imaug/hide_and_seek.py +0 -44
  849. paddlex/ppcls/data/imaug/operators.py +0 -256
  850. paddlex/ppcls/data/imaug/randaugment.py +0 -106
  851. paddlex/ppcls/data/imaug/random_erasing.py +0 -55
  852. paddlex/ppcls/data/reader.py +0 -318
  853. paddlex/ppcls/modeling/__init__.py +0 -20
  854. paddlex/ppcls/modeling/architectures/__init__.py +0 -51
  855. paddlex/ppcls/modeling/architectures/alexnet.py +0 -132
  856. paddlex/ppcls/modeling/architectures/darknet.py +0 -161
  857. paddlex/ppcls/modeling/architectures/densenet.py +0 -308
  858. paddlex/ppcls/modeling/architectures/distillation_models.py +0 -65
  859. paddlex/ppcls/modeling/architectures/distilled_vision_transformer.py +0 -196
  860. paddlex/ppcls/modeling/architectures/dpn.py +0 -425
  861. paddlex/ppcls/modeling/architectures/efficientnet.py +0 -901
  862. paddlex/ppcls/modeling/architectures/ghostnet.py +0 -331
  863. paddlex/ppcls/modeling/architectures/googlenet.py +0 -207
  864. paddlex/ppcls/modeling/architectures/hrnet.py +0 -742
  865. paddlex/ppcls/modeling/architectures/inception_v3.py +0 -541
  866. paddlex/ppcls/modeling/architectures/inception_v4.py +0 -455
  867. paddlex/ppcls/modeling/architectures/mixnet.py +0 -782
  868. paddlex/ppcls/modeling/architectures/mobilenet_v1.py +0 -266
  869. paddlex/ppcls/modeling/architectures/mobilenet_v2.py +0 -248
  870. paddlex/ppcls/modeling/architectures/mobilenet_v3.py +0 -359
  871. paddlex/ppcls/modeling/architectures/regnet.py +0 -383
  872. paddlex/ppcls/modeling/architectures/repvgg.py +0 -339
  873. paddlex/ppcls/modeling/architectures/res2net.py +0 -272
  874. paddlex/ppcls/modeling/architectures/res2net_vd.py +0 -295
  875. paddlex/ppcls/modeling/architectures/resnest.py +0 -705
  876. paddlex/ppcls/modeling/architectures/resnet.py +0 -317
  877. paddlex/ppcls/modeling/architectures/resnet_vc.py +0 -309
  878. paddlex/ppcls/modeling/architectures/resnet_vd.py +0 -354
  879. paddlex/ppcls/modeling/architectures/resnext.py +0 -259
  880. paddlex/ppcls/modeling/architectures/resnext101_wsl.py +0 -447
  881. paddlex/ppcls/modeling/architectures/resnext_vd.py +0 -266
  882. paddlex/ppcls/modeling/architectures/rexnet.py +0 -240
  883. paddlex/ppcls/modeling/architectures/se_resnet_vd.py +0 -378
  884. paddlex/ppcls/modeling/architectures/se_resnext.py +0 -290
  885. paddlex/ppcls/modeling/architectures/se_resnext_vd.py +0 -285
  886. paddlex/ppcls/modeling/architectures/shufflenet_v2.py +0 -320
  887. paddlex/ppcls/modeling/architectures/squeezenet.py +0 -154
  888. paddlex/ppcls/modeling/architectures/vgg.py +0 -152
  889. paddlex/ppcls/modeling/architectures/vision_transformer.py +0 -402
  890. paddlex/ppcls/modeling/architectures/xception.py +0 -345
  891. paddlex/ppcls/modeling/architectures/xception_deeplab.py +0 -386
  892. paddlex/ppcls/modeling/loss.py +0 -158
  893. paddlex/ppcls/modeling/utils.py +0 -53
  894. paddlex/ppcls/optimizer/__init__.py +0 -19
  895. paddlex/ppcls/optimizer/learning_rate.py +0 -159
  896. paddlex/ppcls/optimizer/optimizer.py +0 -165
  897. paddlex/ppcls/utils/__init__.py +0 -27
  898. paddlex/ppcls/utils/check.py +0 -151
  899. paddlex/ppcls/utils/config.py +0 -201
  900. paddlex/ppcls/utils/logger.py +0 -120
  901. paddlex/ppcls/utils/metrics.py +0 -112
  902. paddlex/ppcls/utils/misc.py +0 -62
  903. paddlex/ppcls/utils/model_zoo.py +0 -213
  904. paddlex/ppcls/utils/save_load.py +0 -163
  905. paddlex/ppdet/__init__.py +0 -16
  906. paddlex/ppdet/core/__init__.py +0 -15
  907. paddlex/ppdet/core/config/__init__.py +0 -13
  908. paddlex/ppdet/core/config/schema.py +0 -248
  909. paddlex/ppdet/core/config/yaml_helpers.py +0 -118
  910. paddlex/ppdet/core/workspace.py +0 -279
  911. paddlex/ppdet/data/__init__.py +0 -21
  912. paddlex/ppdet/data/reader.py +0 -304
  913. paddlex/ppdet/data/shm_utils.py +0 -67
  914. paddlex/ppdet/data/source/__init__.py +0 -27
  915. paddlex/ppdet/data/source/category.py +0 -823
  916. paddlex/ppdet/data/source/coco.py +0 -243
  917. paddlex/ppdet/data/source/dataset.py +0 -192
  918. paddlex/ppdet/data/source/keypoint_coco.py +0 -656
  919. paddlex/ppdet/data/source/mot.py +0 -360
  920. paddlex/ppdet/data/source/voc.py +0 -204
  921. paddlex/ppdet/data/source/widerface.py +0 -180
  922. paddlex/ppdet/data/transform/__init__.py +0 -28
  923. paddlex/ppdet/data/transform/autoaugment_utils.py +0 -1593
  924. paddlex/ppdet/data/transform/batch_operators.py +0 -758
  925. paddlex/ppdet/data/transform/gridmask_utils.py +0 -83
  926. paddlex/ppdet/data/transform/keypoint_operators.py +0 -665
  927. paddlex/ppdet/data/transform/mot_operators.py +0 -636
  928. paddlex/ppdet/data/transform/op_helper.py +0 -468
  929. paddlex/ppdet/data/transform/operators.py +0 -2103
  930. paddlex/ppdet/engine/__init__.py +0 -29
  931. paddlex/ppdet/engine/callbacks.py +0 -262
  932. paddlex/ppdet/engine/env.py +0 -47
  933. paddlex/ppdet/engine/export_utils.py +0 -118
  934. paddlex/ppdet/engine/tracker.py +0 -425
  935. paddlex/ppdet/engine/trainer.py +0 -535
  936. paddlex/ppdet/metrics/__init__.py +0 -23
  937. paddlex/ppdet/metrics/coco_utils.py +0 -184
  938. paddlex/ppdet/metrics/json_results.py +0 -151
  939. paddlex/ppdet/metrics/keypoint_metrics.py +0 -202
  940. paddlex/ppdet/metrics/map_utils.py +0 -396
  941. paddlex/ppdet/metrics/metrics.py +0 -300
  942. paddlex/ppdet/metrics/mot_eval_utils.py +0 -192
  943. paddlex/ppdet/metrics/mot_metrics.py +0 -184
  944. paddlex/ppdet/metrics/widerface_utils.py +0 -393
  945. paddlex/ppdet/model_zoo/__init__.py +0 -18
  946. paddlex/ppdet/model_zoo/model_zoo.py +0 -86
  947. paddlex/ppdet/model_zoo/tests/__init__.py +0 -13
  948. paddlex/ppdet/model_zoo/tests/test_get_model.py +0 -48
  949. paddlex/ppdet/model_zoo/tests/test_list_model.py +0 -68
  950. paddlex/ppdet/modeling/__init__.py +0 -41
  951. paddlex/ppdet/modeling/architectures/__init__.py +0 -40
  952. paddlex/ppdet/modeling/architectures/cascade_rcnn.py +0 -144
  953. paddlex/ppdet/modeling/architectures/centernet.py +0 -103
  954. paddlex/ppdet/modeling/architectures/deepsort.py +0 -111
  955. paddlex/ppdet/modeling/architectures/fairmot.py +0 -107
  956. paddlex/ppdet/modeling/architectures/faster_rcnn.py +0 -106
  957. paddlex/ppdet/modeling/architectures/fcos.py +0 -105
  958. paddlex/ppdet/modeling/architectures/jde.py +0 -125
  959. paddlex/ppdet/modeling/architectures/keypoint_hrhrnet.py +0 -286
  960. paddlex/ppdet/modeling/architectures/keypoint_hrnet.py +0 -203
  961. paddlex/ppdet/modeling/architectures/mask_rcnn.py +0 -135
  962. paddlex/ppdet/modeling/architectures/meta_arch.py +0 -45
  963. paddlex/ppdet/modeling/architectures/s2anet.py +0 -103
  964. paddlex/ppdet/modeling/architectures/solov2.py +0 -110
  965. paddlex/ppdet/modeling/architectures/ssd.py +0 -84
  966. paddlex/ppdet/modeling/architectures/ttfnet.py +0 -98
  967. paddlex/ppdet/modeling/architectures/yolo.py +0 -104
  968. paddlex/ppdet/modeling/backbones/__init__.py +0 -37
  969. paddlex/ppdet/modeling/backbones/blazenet.py +0 -322
  970. paddlex/ppdet/modeling/backbones/darknet.py +0 -341
  971. paddlex/ppdet/modeling/backbones/dla.py +0 -244
  972. paddlex/ppdet/modeling/backbones/ghostnet.py +0 -476
  973. paddlex/ppdet/modeling/backbones/hrnet.py +0 -724
  974. paddlex/ppdet/modeling/backbones/mobilenet_v1.py +0 -410
  975. paddlex/ppdet/modeling/backbones/mobilenet_v3.py +0 -497
  976. paddlex/ppdet/modeling/backbones/name_adapter.py +0 -69
  977. paddlex/ppdet/modeling/backbones/res2net.py +0 -358
  978. paddlex/ppdet/modeling/backbones/resnet.py +0 -606
  979. paddlex/ppdet/modeling/backbones/senet.py +0 -140
  980. paddlex/ppdet/modeling/backbones/vgg.py +0 -216
  981. paddlex/ppdet/modeling/bbox_utils.py +0 -464
  982. paddlex/ppdet/modeling/heads/__init__.py +0 -41
  983. paddlex/ppdet/modeling/heads/bbox_head.py +0 -379
  984. paddlex/ppdet/modeling/heads/cascade_head.py +0 -285
  985. paddlex/ppdet/modeling/heads/centernet_head.py +0 -194
  986. paddlex/ppdet/modeling/heads/face_head.py +0 -113
  987. paddlex/ppdet/modeling/heads/fcos_head.py +0 -270
  988. paddlex/ppdet/modeling/heads/keypoint_hrhrnet_head.py +0 -108
  989. paddlex/ppdet/modeling/heads/mask_head.py +0 -253
  990. paddlex/ppdet/modeling/heads/roi_extractor.py +0 -111
  991. paddlex/ppdet/modeling/heads/s2anet_head.py +0 -845
  992. paddlex/ppdet/modeling/heads/solov2_head.py +0 -537
  993. paddlex/ppdet/modeling/heads/ssd_head.py +0 -175
  994. paddlex/ppdet/modeling/heads/ttf_head.py +0 -314
  995. paddlex/ppdet/modeling/heads/yolo_head.py +0 -124
  996. paddlex/ppdet/modeling/keypoint_utils.py +0 -302
  997. paddlex/ppdet/modeling/layers.py +0 -1142
  998. paddlex/ppdet/modeling/losses/__init__.py +0 -35
  999. paddlex/ppdet/modeling/losses/ctfocal_loss.py +0 -67
  1000. paddlex/ppdet/modeling/losses/fairmot_loss.py +0 -41
  1001. paddlex/ppdet/modeling/losses/fcos_loss.py +0 -225
  1002. paddlex/ppdet/modeling/losses/iou_aware_loss.py +0 -48
  1003. paddlex/ppdet/modeling/losses/iou_loss.py +0 -210
  1004. paddlex/ppdet/modeling/losses/jde_loss.py +0 -182
  1005. paddlex/ppdet/modeling/losses/keypoint_loss.py +0 -228
  1006. paddlex/ppdet/modeling/losses/solov2_loss.py +0 -101
  1007. paddlex/ppdet/modeling/losses/ssd_loss.py +0 -163
  1008. paddlex/ppdet/modeling/losses/yolo_loss.py +0 -212
  1009. paddlex/ppdet/modeling/mot/__init__.py +0 -25
  1010. paddlex/ppdet/modeling/mot/matching/__init__.py +0 -19
  1011. paddlex/ppdet/modeling/mot/matching/deepsort_matching.py +0 -382
  1012. paddlex/ppdet/modeling/mot/matching/jde_matching.py +0 -145
  1013. paddlex/ppdet/modeling/mot/motion/__init__.py +0 -17
  1014. paddlex/ppdet/modeling/mot/motion/kalman_filter.py +0 -270
  1015. paddlex/ppdet/modeling/mot/tracker/__init__.py +0 -23
  1016. paddlex/ppdet/modeling/mot/tracker/base_jde_tracker.py +0 -267
  1017. paddlex/ppdet/modeling/mot/tracker/base_sde_tracker.py +0 -145
  1018. paddlex/ppdet/modeling/mot/tracker/deepsort_tracker.py +0 -165
  1019. paddlex/ppdet/modeling/mot/tracker/jde_tracker.py +0 -262
  1020. paddlex/ppdet/modeling/mot/utils.py +0 -181
  1021. paddlex/ppdet/modeling/mot/visualization.py +0 -130
  1022. paddlex/ppdet/modeling/necks/__init__.py +0 -25
  1023. paddlex/ppdet/modeling/necks/centernet_fpn.py +0 -185
  1024. paddlex/ppdet/modeling/necks/fpn.py +0 -233
  1025. paddlex/ppdet/modeling/necks/hrfpn.py +0 -131
  1026. paddlex/ppdet/modeling/necks/ttf_fpn.py +0 -243
  1027. paddlex/ppdet/modeling/necks/yolo_fpn.py +0 -1034
  1028. paddlex/ppdet/modeling/ops.py +0 -1599
  1029. paddlex/ppdet/modeling/post_process.py +0 -449
  1030. paddlex/ppdet/modeling/proposal_generator/__init__.py +0 -2
  1031. paddlex/ppdet/modeling/proposal_generator/anchor_generator.py +0 -135
  1032. paddlex/ppdet/modeling/proposal_generator/proposal_generator.py +0 -81
  1033. paddlex/ppdet/modeling/proposal_generator/rpn_head.py +0 -269
  1034. paddlex/ppdet/modeling/proposal_generator/target.py +0 -671
  1035. paddlex/ppdet/modeling/proposal_generator/target_layer.py +0 -476
  1036. paddlex/ppdet/modeling/reid/__init__.py +0 -23
  1037. paddlex/ppdet/modeling/reid/fairmot_embedding_head.py +0 -117
  1038. paddlex/ppdet/modeling/reid/jde_embedding_head.py +0 -189
  1039. paddlex/ppdet/modeling/reid/pyramidal_embedding.py +0 -151
  1040. paddlex/ppdet/modeling/reid/resnet.py +0 -320
  1041. paddlex/ppdet/modeling/shape_spec.py +0 -33
  1042. paddlex/ppdet/modeling/tests/__init__.py +0 -13
  1043. paddlex/ppdet/modeling/tests/test_architectures.py +0 -59
  1044. paddlex/ppdet/modeling/tests/test_base.py +0 -75
  1045. paddlex/ppdet/modeling/tests/test_ops.py +0 -839
  1046. paddlex/ppdet/modeling/tests/test_yolov3_loss.py +0 -420
  1047. paddlex/ppdet/optimizer.py +0 -285
  1048. paddlex/ppdet/slim/__init__.py +0 -62
  1049. paddlex/ppdet/slim/distill.py +0 -111
  1050. paddlex/ppdet/slim/prune.py +0 -85
  1051. paddlex/ppdet/slim/quant.py +0 -52
  1052. paddlex/ppdet/utils/__init__.py +0 -13
  1053. paddlex/ppdet/utils/check.py +0 -93
  1054. paddlex/ppdet/utils/checkpoint.py +0 -216
  1055. paddlex/ppdet/utils/cli.py +0 -151
  1056. paddlex/ppdet/utils/colormap.py +0 -56
  1057. paddlex/ppdet/utils/download.py +0 -477
  1058. paddlex/ppdet/utils/logger.py +0 -71
  1059. paddlex/ppdet/utils/stats.py +0 -95
  1060. paddlex/ppdet/utils/visualizer.py +0 -292
  1061. paddlex/ppdet/utils/voc_utils.py +0 -87
  1062. paddlex/seg.py +0 -38
  1063. paddlex/tools/__init__.py +0 -16
  1064. paddlex/tools/convert.py +0 -52
  1065. paddlex/tools/dataset_conversion/__init__.py +0 -24
  1066. paddlex/tools/dataset_conversion/x2coco.py +0 -379
  1067. paddlex/tools/dataset_conversion/x2imagenet.py +0 -82
  1068. paddlex/tools/dataset_conversion/x2seg.py +0 -343
  1069. paddlex/tools/dataset_conversion/x2voc.py +0 -230
  1070. paddlex/tools/dataset_split/__init__.py +0 -23
  1071. paddlex/tools/dataset_split/coco_split.py +0 -69
  1072. paddlex/tools/dataset_split/imagenet_split.py +0 -75
  1073. paddlex/tools/dataset_split/seg_split.py +0 -96
  1074. paddlex/tools/dataset_split/utils.py +0 -75
  1075. paddlex/tools/dataset_split/voc_split.py +0 -91
  1076. paddlex/tools/split.py +0 -41
  1077. paddlex/utils/checkpoint.py +0 -439
  1078. paddlex/utils/env.py +0 -71
  1079. paddlex/utils/shm.py +0 -67
  1080. paddlex/utils/stats.py +0 -68
  1081. paddlex/utils/utils.py +0 -140
  1082. paddlex-2.0.0rc4.dist-info/LICENSE +0 -201
  1083. paddlex-2.0.0rc4.dist-info/METADATA +0 -29
  1084. paddlex-2.0.0rc4.dist-info/RECORD +0 -445
  1085. paddlex-2.0.0rc4.dist-info/WHEEL +0 -5
  1086. paddlex-2.0.0rc4.dist-info/entry_points.txt +0 -3
  1087. paddlex-2.0.0rc4.dist-info/top_level.txt +0 -2
@@ -1,189 +0,0 @@
1
- # Copyright (c) 2021 PaddlePaddle Authors. All Rights Reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- from __future__ import absolute_import
16
- from __future__ import division
17
- from __future__ import print_function
18
-
19
- import math
20
- import paddle
21
- import paddle.nn as nn
22
- import paddle.nn.functional as F
23
- from paddle import ParamAttr
24
- from paddle.regularizer import L2Decay
25
- from paddlex.ppdet.core.workspace import register
26
- from paddle.nn.initializer import Normal, Constant
27
-
28
- __all__ = ['JDEEmbeddingHead']
29
-
30
-
31
- class LossParam(nn.Layer):
32
- def __init__(self, init_value=0., use_uncertainy=True):
33
- super(LossParam, self).__init__()
34
- self.loss_param = self.create_parameter(
35
- shape=[1],
36
- attr=ParamAttr(initializer=Constant(value=init_value)),
37
- dtype="float32")
38
-
39
- def forward(self, inputs):
40
- out = paddle.exp(-self.loss_param) * inputs + self.loss_param
41
- return out * 0.5
42
-
43
-
44
- @register
45
- class JDEEmbeddingHead(nn.Layer):
46
- __shared__ = ['num_classes']
47
- __inject__ = ['emb_loss', 'jde_loss']
48
- """
49
- JDEEmbeddingHead
50
- Args:
51
- num_classes(int): Number of classes. Only support one class tracking.
52
- num_identifiers(int): Number of identifiers.
53
- anchor_levels(int): Number of anchor levels, same as FPN levels.
54
- anchor_scales(int): Number of anchor scales on each FPN level.
55
- embedding_dim(int): Embedding dimension. Default: 512.
56
- emb_loss(object): Instance of 'JDEEmbeddingLoss'
57
- jde_loss(object): Instance of 'JDELoss'
58
- """
59
-
60
- def __init__(
61
- self,
62
- num_classes=1,
63
- num_identifiers=1, # defined by dataset.total_identities
64
- anchor_levels=3,
65
- anchor_scales=4,
66
- embedding_dim=512,
67
- emb_loss='JDEEmbeddingLoss',
68
- jde_loss='JDELoss'):
69
- super(JDEEmbeddingHead, self).__init__()
70
- self.num_classes = num_classes
71
- self.num_identifiers = num_identifiers
72
- self.anchor_levels = anchor_levels
73
- self.anchor_scales = anchor_scales
74
- self.embedding_dim = embedding_dim
75
- self.emb_loss = emb_loss
76
- self.jde_loss = jde_loss
77
-
78
- self.emb_scale = math.sqrt(2) * math.log(
79
- self.num_identifiers - 1) if self.num_identifiers > 1 else 1
80
-
81
- self.identify_outputs = []
82
- self.loss_params_cls = []
83
- self.loss_params_reg = []
84
- self.loss_params_ide = []
85
- for i in range(self.anchor_levels):
86
- name = 'identify_output.{}'.format(i)
87
- identify_output = self.add_sublayer(
88
- name,
89
- nn.Conv2D(
90
- in_channels=64 * (2**self.anchor_levels) // (2**i),
91
- out_channels=self.embedding_dim,
92
- kernel_size=3,
93
- stride=1,
94
- padding=1,
95
- weight_attr=ParamAttr(name=name + '.conv.weights'),
96
- bias_attr=ParamAttr(
97
- name=name + '.conv.bias', regularizer=L2Decay(0.))))
98
- self.identify_outputs.append(identify_output)
99
-
100
- loss_p_cls = self.add_sublayer('cls.{}'.format(i),
101
- LossParam(-4.15))
102
- self.loss_params_cls.append(loss_p_cls)
103
- loss_p_reg = self.add_sublayer('reg.{}'.format(i),
104
- LossParam(-4.85))
105
- self.loss_params_reg.append(loss_p_reg)
106
- loss_p_ide = self.add_sublayer('ide.{}'.format(i), LossParam(-2.3))
107
- self.loss_params_ide.append(loss_p_ide)
108
-
109
- self.classifier = self.add_sublayer(
110
- 'classifier',
111
- nn.Linear(
112
- self.embedding_dim,
113
- self.num_identifiers,
114
- weight_attr=ParamAttr(
115
- learning_rate=1., initializer=Normal(
116
- mean=0.0, std=0.01)),
117
- bias_attr=ParamAttr(
118
- learning_rate=2., regularizer=L2Decay(0.))))
119
-
120
- def forward(self,
121
- identify_feats,
122
- targets=None,
123
- loss_confs=None,
124
- loss_boxes=None,
125
- test_emb=False):
126
- assert len(identify_feats) == self.anchor_levels
127
- ide_outs = []
128
- for feat, ide_head in zip(identify_feats, self.identify_outputs):
129
- ide_outs.append(ide_head(feat))
130
-
131
- if self.training:
132
- assert targets != None
133
- assert len(loss_confs) == len(loss_boxes) == self.anchor_levels
134
- loss_ides = self.emb_loss(ide_outs, targets, self.emb_scale,
135
- self.classifier)
136
- return self.jde_loss(loss_confs, loss_boxes, loss_ides,
137
- self.loss_params_cls, self.loss_params_reg,
138
- self.loss_params_ide, targets)
139
- else:
140
- if test_emb:
141
- assert targets != None
142
- embs_and_gts = self.get_emb_and_gt_outs(ide_outs, targets)
143
- return embs_and_gts
144
- else:
145
- emb_outs = self.get_emb_outs(ide_outs)
146
- return emb_outs
147
-
148
- def get_emb_and_gt_outs(self, ide_outs, targets):
149
- emb_and_gts = []
150
- for i, p_ide in enumerate(ide_outs):
151
- t_conf = targets['tconf{}'.format(i)]
152
- t_ide = targets['tide{}'.format(i)]
153
-
154
- p_ide = p_ide.transpose((0, 2, 3, 1))
155
- p_ide_flatten = paddle.reshape(p_ide, [-1, self.embedding_dim])
156
-
157
- mask = t_conf > 0
158
- mask = paddle.cast(mask, dtype="int64")
159
- emb_mask = mask.max(1).flatten()
160
- emb_mask_inds = paddle.nonzero(emb_mask > 0).flatten()
161
- if len(emb_mask_inds) > 0:
162
- t_ide_flatten = paddle.reshape(t_ide.max(1), [-1, 1])
163
- tids = paddle.gather(t_ide_flatten, emb_mask_inds)
164
-
165
- embedding = paddle.gather(p_ide_flatten, emb_mask_inds)
166
- embedding = self.emb_scale * F.normalize(embedding)
167
- emb_and_gt = paddle.concat([embedding, tids], axis=1)
168
- emb_and_gts.append(emb_and_gt)
169
-
170
- if len(emb_and_gts) > 0:
171
- return paddle.concat(emb_and_gts, axis=0)
172
- else:
173
- return paddle.zeros((1, self.embedding_dim + 1))
174
-
175
- def get_emb_outs(self, ide_outs):
176
- emb_outs = []
177
- for i, p_ide in enumerate(ide_outs):
178
- p_ide = p_ide.transpose((0, 2, 3, 1))
179
-
180
- p_ide_repeat = paddle.tile(
181
- p_ide.unsqueeze(axis=0), [1, self.anchor_scales, 1, 1, 1])
182
- embedding = F.normalize(p_ide_repeat, axis=-1)
183
- emb = paddle.reshape(embedding, [-1, self.embedding_dim])
184
- emb_outs.append(emb)
185
-
186
- if len(emb_outs) > 0:
187
- return paddle.concat(emb_outs, axis=0)
188
- else:
189
- return paddle.zeros((1, self.embedding_dim))
@@ -1,151 +0,0 @@
1
- # Copyright (c) 2021 PaddlePaddle Authors. All Rights Reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- from __future__ import absolute_import
16
- from __future__ import division
17
- from __future__ import print_function
18
-
19
- import paddle
20
- import paddle.nn as nn
21
- import paddle.nn.functional as F
22
- from paddle.nn.initializer import Normal, Constant
23
- from paddle import ParamAttr
24
- from .resnet import *
25
- from paddlex.ppdet.core.workspace import register
26
-
27
- __all__ = ['PCBPyramid']
28
-
29
-
30
- @register
31
- class PCBPyramid(nn.Layer):
32
- """
33
- PCB (Part-based Convolutional Baseline), see https://arxiv.org/abs/1711.09349,
34
- Pyramidal Person Re-IDentification, see https://arxiv.org/abs/1810.12193
35
-
36
- Args:
37
- input_ch (int): Number of channels of the input feature.
38
- num_stripes (int): Number of sub-parts.
39
- used_levels (tuple): Whether the level is used, 1 means used.
40
- num_classes (int): Number of classes for identities.
41
- last_conv_stride (int): Stride of the last conv.
42
- last_conv_dilation (int): Dilation of the last conv.
43
- num_conv_out_channels (int): Number of channels of conv feature.
44
- """
45
-
46
- def __init__(self,
47
- input_ch=2048,
48
- num_stripes=6,
49
- used_levels=(1, 1, 1, 1, 1, 1),
50
- num_classes=751,
51
- last_conv_stride=1,
52
- last_conv_dilation=1,
53
- num_conv_out_channels=128):
54
- super(PCBPyramid, self).__init__()
55
- self.num_stripes = num_stripes
56
- self.used_levels = used_levels
57
- self.num_classes = num_classes
58
-
59
- self.num_in_each_level = [i for i in range(self.num_stripes, 0, -1)]
60
- self.num_branches = sum(self.num_in_each_level)
61
-
62
- self.base = ResNet101(
63
- lr_mult=0.1,
64
- last_conv_stride=last_conv_stride,
65
- last_conv_dilation=last_conv_dilation)
66
- self.dropout_layer = nn.Dropout(p=0.2)
67
- self.pyramid_conv_list0, self.pyramid_fc_list0 = self.basic_branch(
68
- num_conv_out_channels, input_ch)
69
-
70
- def basic_branch(self, num_conv_out_channels, input_ch):
71
- # the level indexes are defined from fine to coarse,
72
- # the branch will contain one more part than that of its previous level
73
- # the sliding step is set to 1
74
- pyramid_conv_list = nn.LayerList()
75
- pyramid_fc_list = nn.LayerList()
76
-
77
- idx_levels = 0
78
- for idx_branches in range(self.num_branches):
79
- if idx_branches >= sum(self.num_in_each_level[0:idx_levels + 1]):
80
- idx_levels += 1
81
- if self.used_levels[idx_levels] == 0:
82
- continue
83
- pyramid_conv_list.append(
84
- nn.Sequential(
85
- nn.Conv2D(input_ch, num_conv_out_channels, 1),
86
- nn.BatchNorm2D(num_conv_out_channels), nn.ReLU()))
87
-
88
- idx_levels = 0
89
- for idx_branches in range(self.num_branches):
90
- if idx_branches >= sum(self.num_in_each_level[0:idx_levels + 1]):
91
- idx_levels += 1
92
- if self.used_levels[idx_levels] == 0:
93
- continue
94
- name = "Linear_branch_id_{}".format(idx_branches)
95
- fc = nn.Linear(
96
- in_features=num_conv_out_channels,
97
- out_features=self.num_classes,
98
- weight_attr=ParamAttr(
99
- name=name + "_weights",
100
- initializer=Normal(
101
- mean=0., std=0.001)),
102
- bias_attr=ParamAttr(
103
- name=name + "_bias", initializer=Constant(value=0.)))
104
- pyramid_fc_list.append(fc)
105
- return pyramid_conv_list, pyramid_fc_list
106
-
107
- def pyramid_forward(self, feat):
108
- each_stripe_size = int(feat.shape[2] / self.num_stripes)
109
-
110
- feat_list, logits_list = [], []
111
- idx_levels = 0
112
- used_branches = 0
113
- for idx_branches in range(self.num_branches):
114
- if idx_branches >= sum(self.num_in_each_level[0:idx_levels + 1]):
115
- idx_levels += 1
116
- if self.used_levels[idx_levels] == 0:
117
- continue
118
- idx_in_each_level = idx_branches - sum(self.num_in_each_level[
119
- 0:idx_levels])
120
- stripe_size_in_each_level = each_stripe_size * (idx_levels + 1)
121
- start = idx_in_each_level * each_stripe_size
122
- end = start + stripe_size_in_each_level
123
-
124
- k = feat.shape[-1]
125
- local_feat_avgpool = F.avg_pool2d(
126
- feat[:, :, start:end, :],
127
- kernel_size=(stripe_size_in_each_level, k))
128
- local_feat_maxpool = F.max_pool2d(
129
- feat[:, :, start:end, :],
130
- kernel_size=(stripe_size_in_each_level, k))
131
- local_feat = local_feat_avgpool + local_feat_maxpool
132
-
133
- local_feat = self.pyramid_conv_list0[used_branches](local_feat)
134
- local_feat = paddle.reshape(
135
- local_feat, shape=[local_feat.shape[0], -1])
136
- feat_list.append(local_feat)
137
-
138
- local_logits = self.pyramid_fc_list0[used_branches](
139
- self.dropout_layer(local_feat))
140
- logits_list.append(local_logits)
141
-
142
- used_branches += 1
143
-
144
- return feat_list, logits_list
145
-
146
- def forward(self, x):
147
- feat = self.base(x)
148
- assert feat.shape[2] % self.num_stripes == 0
149
- feat_list, logits_list = self.pyramid_forward(feat)
150
- feat_out = paddle.concat(feat_list, axis=-1)
151
- return feat_out
@@ -1,320 +0,0 @@
1
- # copyright (c) 2021 PaddlePaddle Authors. All Rights Reserve.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- from __future__ import absolute_import
16
- from __future__ import division
17
- from __future__ import print_function
18
-
19
- import os
20
- import math
21
- import paddle
22
- from paddle import ParamAttr
23
- import paddle.nn as nn
24
- import paddle.nn.functional as F
25
- from paddle.nn.initializer import Normal
26
-
27
- __all__ = ["ResNet18", "ResNet34", "ResNet50", "ResNet101", "ResNet152"]
28
-
29
-
30
- class ConvBNLayer(nn.Layer):
31
- def __init__(self,
32
- num_channels,
33
- num_filters,
34
- filter_size,
35
- stride=1,
36
- dilation=1,
37
- groups=1,
38
- act=None,
39
- lr_mult=1.0,
40
- name=None,
41
- data_format="NCHW"):
42
- super(ConvBNLayer, self).__init__()
43
- conv_stdv = filter_size * filter_size * num_filters
44
- self._conv = nn.Conv2D(
45
- in_channels=num_channels,
46
- out_channels=num_filters,
47
- kernel_size=filter_size,
48
- stride=stride,
49
- padding=(filter_size - 1) // 2,
50
- dilation=dilation,
51
- groups=groups,
52
- weight_attr=ParamAttr(
53
- name=name + "_weights",
54
- learning_rate=lr_mult,
55
- initializer=Normal(0, math.sqrt(2. / conv_stdv))),
56
- bias_attr=False,
57
- data_format=data_format)
58
- if name == "conv1":
59
- bn_name = "bn_" + name
60
- else:
61
- bn_name = "bn" + name[3:]
62
- self._batch_norm = nn.BatchNorm(
63
- num_filters,
64
- act=act,
65
- param_attr=ParamAttr(name=bn_name + "_scale"),
66
- bias_attr=ParamAttr(bn_name + "_offset"),
67
- moving_mean_name=bn_name + "_mean",
68
- moving_variance_name=bn_name + "_variance",
69
- data_layout=data_format)
70
-
71
- def forward(self, inputs):
72
- y = self._conv(inputs)
73
- y = self._batch_norm(y)
74
- return y
75
-
76
-
77
- class BottleneckBlock(nn.Layer):
78
- def __init__(self,
79
- num_channels,
80
- num_filters,
81
- stride,
82
- shortcut=True,
83
- name=None,
84
- lr_mult=1.0,
85
- dilation=1,
86
- data_format="NCHW"):
87
- super(BottleneckBlock, self).__init__()
88
- self.conv0 = ConvBNLayer(
89
- num_channels=num_channels,
90
- num_filters=num_filters,
91
- filter_size=1,
92
- dilation=dilation,
93
- act="relu",
94
- lr_mult=lr_mult,
95
- name=name + "_branch2a",
96
- data_format=data_format)
97
- self.conv1 = ConvBNLayer(
98
- num_channels=num_filters,
99
- num_filters=num_filters,
100
- filter_size=3,
101
- dilation=dilation,
102
- stride=stride,
103
- act="relu",
104
- lr_mult=lr_mult,
105
- name=name + "_branch2b",
106
- data_format=data_format)
107
- self.conv2 = ConvBNLayer(
108
- num_channels=num_filters,
109
- num_filters=num_filters * 4,
110
- filter_size=1,
111
- dilation=dilation,
112
- act=None,
113
- lr_mult=lr_mult,
114
- name=name + "_branch2c",
115
- data_format=data_format)
116
- if not shortcut:
117
- self.short = ConvBNLayer(
118
- num_channels=num_channels,
119
- num_filters=num_filters * 4,
120
- filter_size=1,
121
- dilation=dilation,
122
- stride=stride,
123
- lr_mult=lr_mult,
124
- name=name + "_branch1",
125
- data_format=data_format)
126
- self.shortcut = shortcut
127
- self._num_channels_out = num_filters * 4
128
-
129
- def forward(self, inputs):
130
- y = self.conv0(inputs)
131
- conv1 = self.conv1(y)
132
- conv2 = self.conv2(conv1)
133
- if self.shortcut:
134
- short = inputs
135
- else:
136
- short = self.short(inputs)
137
- y = paddle.add(x=short, y=conv2)
138
- y = F.relu(y)
139
- return y
140
-
141
-
142
- class BasicBlock(nn.Layer):
143
- def __init__(self,
144
- num_channels,
145
- num_filters,
146
- stride,
147
- shortcut=True,
148
- name=None,
149
- data_format="NCHW"):
150
- super(BasicBlock, self).__init__()
151
- self.stride = stride
152
- self.conv0 = ConvBNLayer(
153
- num_channels=num_channels,
154
- num_filters=num_filters,
155
- filter_size=3,
156
- stride=stride,
157
- act="relu",
158
- name=name + "_branch2a",
159
- data_format=data_format)
160
- self.conv1 = ConvBNLayer(
161
- num_channels=num_filters,
162
- num_filters=num_filters,
163
- filter_size=3,
164
- act=None,
165
- name=name + "_branch2b",
166
- data_format=data_format)
167
- if not shortcut:
168
- self.short = ConvBNLayer(
169
- num_channels=num_channels,
170
- num_filters=num_filters,
171
- filter_size=1,
172
- stride=stride,
173
- name=name + "_branch1",
174
- data_format=data_format)
175
- self.shortcut = shortcut
176
-
177
- def forward(self, inputs):
178
- y = self.conv0(inputs)
179
- conv1 = self.conv1(y)
180
- if self.shortcut:
181
- short = inputs
182
- else:
183
- short = self.short(inputs)
184
- y = paddle.add(x=short, y=conv1)
185
- y = F.relu(y)
186
- return y
187
-
188
-
189
- class ResNet(nn.Layer):
190
- def __init__(self,
191
- layers=50,
192
- lr_mult=1.0,
193
- last_conv_stride=2,
194
- last_conv_dilation=1):
195
- super(ResNet, self).__init__()
196
- self.layers = layers
197
- self.data_format = "NCHW"
198
- self.input_image_channel = 3
199
- supported_layers = [18, 34, 50, 101, 152]
200
- assert layers in supported_layers, \
201
- "supported layers are {} but input layer is {}".format(
202
- supported_layers, layers)
203
- if layers == 18:
204
- depth = [2, 2, 2, 2]
205
- elif layers == 34 or layers == 50:
206
- depth = [3, 4, 6, 3]
207
- elif layers == 101:
208
- depth = [3, 4, 23, 3]
209
- elif layers == 152:
210
- depth = [3, 8, 36, 3]
211
- num_channels = [64, 256, 512,
212
- 1024] if layers >= 50 else [64, 64, 128, 256]
213
- num_filters = [64, 128, 256, 512]
214
- self.conv = ConvBNLayer(
215
- num_channels=self.input_image_channel,
216
- num_filters=64,
217
- filter_size=7,
218
- stride=2,
219
- act="relu",
220
- lr_mult=lr_mult,
221
- name="conv1",
222
- data_format=self.data_format)
223
- self.pool2d_max = nn.MaxPool2D(
224
- kernel_size=3, stride=2, padding=1, data_format=self.data_format)
225
- self.block_list = []
226
- if layers >= 50:
227
- for block in range(len(depth)):
228
- shortcut = False
229
- for i in range(depth[block]):
230
- if layers in [101, 152] and block == 2:
231
- if i == 0:
232
- conv_name = "res" + str(block + 2) + "a"
233
- else:
234
- conv_name = "res" + str(block + 2) + "b" + str(i)
235
- else:
236
- conv_name = "res" + str(block + 2) + chr(97 + i)
237
- if i != 0 or block == 0:
238
- stride = 1
239
- elif block == len(depth) - 1:
240
- stride = last_conv_stride
241
- else:
242
- stride = 2
243
- bottleneck_block = self.add_sublayer(
244
- conv_name,
245
- BottleneckBlock(
246
- num_channels=num_channels[block]
247
- if i == 0 else num_filters[block] * 4,
248
- num_filters=num_filters[block],
249
- stride=stride,
250
- shortcut=shortcut,
251
- name=conv_name,
252
- lr_mult=lr_mult,
253
- dilation=last_conv_dilation
254
- if block == len(depth) - 1 else 1,
255
- data_format=self.data_format))
256
- self.block_list.append(bottleneck_block)
257
- shortcut = True
258
- else:
259
- for block in range(len(depth)):
260
- shortcut = False
261
- for i in range(depth[block]):
262
- conv_name = "res" + str(block + 2) + chr(97 + i)
263
- basic_block = self.add_sublayer(
264
- conv_name,
265
- BasicBlock(
266
- num_channels=num_channels[block]
267
- if i == 0 else num_filters[block],
268
- num_filters=num_filters[block],
269
- stride=2 if i == 0 and block != 0 else 1,
270
- shortcut=shortcut,
271
- name=conv_name,
272
- data_format=self.data_format))
273
- self.block_list.append(basic_block)
274
- shortcut = True
275
-
276
- def forward(self, inputs):
277
- y = self.conv(inputs)
278
- y = self.pool2d_max(y)
279
- for block in self.block_list:
280
- y = block(y)
281
- return y
282
-
283
-
284
- def ResNet18(**args):
285
- model = ResNet(layers=18, **args)
286
- return model
287
-
288
-
289
- def ResNet34(**args):
290
- model = ResNet(layers=34, **args)
291
- return model
292
-
293
-
294
- def ResNet50(pretrained=None, **args):
295
- model = ResNet(layers=50, **args)
296
- if pretrained is not None:
297
- if not (os.path.isdir(pretrained) or
298
- os.path.exists(pretrained + '.pdparams')):
299
- raise ValueError("Model pretrain path {} does not "
300
- "exists.".format(pretrained))
301
- param_state_dict = paddle.load(pretrained + '.pdparams')
302
- model.set_dict(param_state_dict)
303
- return model
304
-
305
-
306
- def ResNet101(pretrained=None, **args):
307
- model = ResNet(layers=101, **args)
308
- if pretrained is not None:
309
- if not (os.path.isdir(pretrained) or
310
- os.path.exists(pretrained + '.pdparams')):
311
- raise ValueError("Model pretrain path {} does not "
312
- "exists.".format(pretrained))
313
- param_state_dict = paddle.load(pretrained + '.pdparams')
314
- model.set_dict(param_state_dict)
315
- return model
316
-
317
-
318
- def ResNet152(**args):
319
- model = ResNet(layers=152, **args)
320
- return model
@@ -1,33 +0,0 @@
1
- # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- from collections import namedtuple
16
-
17
-
18
- class ShapeSpec(
19
- namedtuple("_ShapeSpec", ["channels", "height", "width", "stride"])):
20
- """
21
- A simple structure that contains basic shape specification about a tensor.
22
- It is often used as the auxiliary inputs/outputs of models,
23
- to complement the lack of shape inference ability among paddle modules.
24
- Attributes:
25
- channels:
26
- height:
27
- width:
28
- stride:
29
- """
30
-
31
- def __new__(cls, channels=None, height=None, width=None, stride=None):
32
- return super(ShapeSpec, cls).__new__(cls, channels, height, width,
33
- stride)