整体目录结构

PaddleOCR 的整体目录结构介绍如下:

  1. PaddleOCR
  2. ├── configs // 配置文件,可通过 yml 文件选择模型结构并修改超参
  3. ├── cls // 方向分类器相关配置文件
  4. ├── cls_mv3.yml // 训练配置相关,包括骨干网络、head、loss、优化器和数据
  5. ├── det // 检测相关配置文件
  6. ├── det_mv3_db.yml // 训练配置
  7. ...
  8. └── rec // 识别相关配置文件
  9. ├── rec_mv3_none_bilstm_ctc.yml // crnn 训练配置
  10. ...
  11. ├── deploy // 部署相关
  12. ├── android_demo // android_demo
  13. ...
  14. ├── cpp_infer // C++ infer
  15. ├── CMakeLists.txt // Cmake 文件
  16. ├── docs // 说明文档
  17. └── windows_vs2019_build.md
  18. ├── include // 头文件
  19. ├── clipper.h // clipper 库
  20. ├── config.h // 预测配置
  21. ├── ocr_cls.h // 方向分类器
  22. ├── ocr_det.h // 文字检测
  23. ├── ocr_rec.h // 文字识别
  24. ├── postprocess_op.h // 检测后处理
  25. ├── preprocess_op.h // 检测预处理
  26. └── utility.h // 工具
  27. ├── readme.md // 说明文档
  28. ├── ...
  29. ├── src // 源文件
  30. ├── clipper.cpp
  31. ├── config.cpp
  32. ├── main.cpp
  33. ├── ocr_cls.cpp
  34. ├── ocr_det.cpp
  35. ├── ocr_rec.cpp
  36. ├── postprocess_op.cpp
  37. ├── preprocess_op.cpp
  38. └── utility.cpp
  39. └── tools // 编译、执行脚本
  40. ├── build.sh // 编译脚本
  41. ├── config.txt // 配置文件
  42. └── run.sh // 测试启动脚本
  43. ├── docker
  44. └── hubserving
  45. ├── cpu
  46. └── Dockerfile
  47. ├── gpu
  48. └── Dockerfile
  49. ├── README_cn.md
  50. ├── README.md
  51. └── sample_request.txt
  52. ├── hubserving // hubserving
  53. ├── ocr_cls // 方向分类器
  54. ├── config.json // serving 配置
  55. ├── __init__.py
  56. ├── module.py // 预测模型
  57. └── params.py // 预测参数
  58. ├── ocr_det // 文字检测
  59. ├── config.json // serving 配置
  60. ├── __init__.py
  61. ├── module.py // 预测模型
  62. └── params.py // 预测参数
  63. ├── ocr_rec // 文字识别
  64. ├── config.json
  65. ├── __init__.py
  66. ├── module.py
  67. └── params.py
  68. └── ocr_system // 系统预测
  69. ├── config.json
  70. ├── __init__.py
  71. ├── module.py
  72. └── params.py
  73. ├── imgs // 预测图片
  74. ├── cpp_infer_pred_12.png
  75. └── demo.png
  76. ├── ios_demo // ios demo
  77. ...
  78. ├── lite // lite 部署
  79. ├── cls_process.cc // 方向分类器数据处理
  80. ├── cls_process.h
  81. ├── config.txt // 检测配置参数
  82. ├── crnn_process.cc // crnn 数据处理
  83. ├── crnn_process.h
  84. ├── db_post_process.cc // db 数据处理
  85. ├── db_post_process.h
  86. ├── Makefile // 编译文件
  87. ├── ocr_db_crnn.cc // 串联预测
  88. ├── prepare.sh // 数据准备
  89. ├── readme.md // 说明文档
  90. ...
  91. ├── pdserving // pdserving 部署
  92. ├── det_local_server.py // 检测 快速版,部署方便预测速度快
  93. ├── det_web_server.py // 检测 完整版,稳定性高分布式部署
  94. ├── ocr_local_server.py // 检测+识别 快速版
  95. ├── ocr_web_client.py // 客户端
  96. ├── ocr_web_server.py // 检测+识别 完整版
  97. ├── readme.md // 说明文档
  98. ├── rec_local_server.py // 识别 快速版
  99. └── rec_web_server.py // 识别 完整版
  100. └── slim
  101. └── quantization // 量化相关
  102. ├── export_model.py // 导出模型
  103. ├── quant.py // 量化
  104. └── README.md // 说明文档
  105. ├── doc // 文档教程
  106. ...
  107. ├── ppocr // 网络核心代码
  108. ├── data // 数据处理
  109. ├── imaug // 图片和 label 处理代码
  110. ├── text_image_aug // 文本识别的 tia 数据扩充
  111. ├── __init__.py
  112. ├── augment.py // tia_distort,tia_stretch 和 tia_perspective 的代码
  113. ├── warp_mls.py
  114. ├── __init__.py
  115. ├── east_process.py // EAST 算法的数据处理步骤
  116. ├── make_border_map.py // 生成边界图
  117. ├── make_shrink_map.py // 生成收缩图
  118. ├── operators.py // 图像基本操作,如读取和归一化
  119. ├── randaugment.py // 随机数据增广操作
  120. ├── random_crop_data.py // 随机裁剪
  121. ├── rec_img_aug.py // 文本识别的数据扩充
  122. └── sast_process.py // SAST 算法的数据处理步骤
  123. ├── __init__.py // 构造 dataloader 相关代码
  124. ├── lmdb_dataset.py // 读取lmdb数据集的 dataset
  125. ├── simple_dataset.py // 读取文本格式存储数据集的 dataset
  126. ├── losses // 损失函数
  127. ├── __init__.py // 构造 loss 相关代码
  128. ├── cls_loss.py // 方向分类器 loss
  129. ├── det_basic_loss.py // 检测基础 loss
  130. ├── det_db_loss.py // DB loss
  131. ├── det_east_loss.py // EAST loss
  132. ├── det_sast_loss.py // SAST loss
  133. ├── rec_ctc_loss.py // CTC loss
  134. ├── rec_att_loss.py // Attention loss
  135. ├── metrics // 评估指标
  136. ├── __init__.py // 构造 metric 相关代码
  137. ├── cls_metric.py // 方向分类器 metric
  138. ├── det_metric.py // 检测 metric
  139. ├── eval_det_iou.py // 检测 iou 相关
  140. ├── rec_metric.py // 识别 metric
  141. ├── modeling // 组网相关
  142. ├── architectures // 网络
  143. ├── __init__.py // 构造 model 相关代码
  144. ├── base_model.py // 组网代码
  145. ├── backbones // 骨干网络
  146. ├── __init__.py // 构造 backbone 相关代码
  147. ├── det_mobilenet_v3.py // 检测 mobilenet_v3
  148. ├── det_resnet_vd.py // 检测 resnet
  149. ├── det_resnet_vd_sast.py // 检测 SAST算法的resnet backbone
  150. ├── rec_mobilenet_v3.py // 识别 mobilenet_v3
  151. └── rec_resnet_vd.py // 识别 resnet
  152. ├── necks // 颈函数
  153. ├── __init__.py // 构造 neck 相关代码
  154. ├── db_fpn.py // 标准 fpn 网络
  155. ├── east_fpn.py // EAST 算法的 fpn 网络
  156. ├── sast_fpn.py // SAST 算法的 fpn 网络
  157. ├── rnn.py // 识别 序列编码
  158. ├── heads // 头函数
  159. ├── __init__.py // 构造 head 相关代码
  160. ├── cls_head.py // 方向分类器 分类头
  161. ├── det_db_head.py // DB 检测头
  162. ├── det_east_head.py // EAST 检测头
  163. ├── det_sast_head.py // SAST 检测头
  164. ├── rec_ctc_head.py // 识别 ctc
  165. ├── rec_att_head.py // 识别 attention
  166. ├── transforms // 图像变换
  167. ├── __init__.py // 构造 transform 相关代码
  168. └── tps.py // TPS 变换
  169. ├── optimizer // 优化器
  170. ├── __init__.py // 构造 optimizer 相关代码
  171. └── learning_rate.py // 学习率衰减
  172. └── optimizer.py // 优化器
  173. └── regularizer.py // 网络正则化
  174. ├── postprocess // 后处理
  175. ├── cls_postprocess.py // 方向分类器 后处理
  176. ├── db_postprocess.py // DB 后处理
  177. ├── east_postprocess.py // EAST 后处理
  178. ├── locality_aware_nms.py // NMS
  179. ├── rec_postprocess.py // 识别网络 后处理
  180. └── sast_postprocess.py // SAST 后处理
  181. └── utils // 工具
  182. ├── dict // 小语种字典
  183. ....
  184. ├── ic15_dict.txt // 英文数字字典,区分大小写
  185. ├── ppocr_keys_v1.txt // 中文字典,用于训练中文模型
  186. ├── logging.py // logger
  187. ├── save_load.py // 模型保存和加载函数
  188. ├── stats.py // 统计
  189. └── utility.py // 工具函数
  190. ├── tools
  191. ├── eval.py // 评估函数
  192. ├── export_model.py // 导出 inference 模型
  193. ├── infer // 基于预测引擎预测
  194. ├── predict_cls.py
  195. ├── predict_det.py
  196. ├── predict_rec.py
  197. ├── predict_system.py
  198. └── utility.py
  199. ├── infer_cls.py // 基于训练引擎 预测分类
  200. ├── infer_det.py // 基于训练引擎 预测检测
  201. ├── infer_rec.py // 基于训练引擎 预测识别
  202. ├── program.py // 整体流程
  203. ├── test_hubserving.py
  204. └── train.py // 启动训练
  205. ├── paddleocr.py
  206. ├── README_ch.md // 中文说明文档
  207. ├── README_en.md // 英文说明文档
  208. ├── README.md // 主页说明文档
  209. ├── requirements.txt // 安装依赖
  210. ├── setup.py // whl包打包脚本
  211. ├── train.sh // 启动训练脚本