# miniOcr **Repository Path**: newanull/miniOcr ## Basic Information - **Project Name**: miniOcr - **Description**: 一个基于tesseract的图片转文字/表格的UI程序 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2021-11-23 - **Last Updated**: 2024-07-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # README 一个基于tesseract的图片转文本/表格的转换器 ![img.png](docs/img/界面.png) ## 1.基本使用 该程序可将输入图片转换成 - txt - csv - xlsx 这三种格式的文本文件,或导入Mysql数据库。 若找不到输入的图片文件,程序会在转换完成的文件路径下生成一个warning.log文件。 文件默认的保存路径在桌面,后续将加入设置模块配置默认保存路径 ## 2.系统设计 ### 2-1. 系统设计 ![img.png](docs/img/识别过程.png) ### 2-2. 数据流 ![img.png](docs/img/数据流.png) ### 2-3. 控制流 ![img.png](docs/img/控制流.png) ## 3.详细设计 ### 3-1 模块划分 - UI模块 负责程序图形界面与用户的交互 - DataManager 模块 处理 UIM 传来的数据,包括图片路径、保存路径,数据库连接令牌等。 目前流程处理也在该模块中完成,如调用ImgManager处理图像、db_connector连接数据库等 - ImgManager 模块 负责将DataManager传来的图像转文本或表格。 处理表格时使用pandas库储存表格信息 - db_connector 模块 负责测试数据库的连接状态,将表格信息写入数据库 ### 3-2 文件结构 - ocr - test - *.py 各模块的单元测试 - temp - *.jpg opencv 处理文件时产生的中间文件 - data_manager.py 数据处理模块 - database_connector.py 数据库连接模块 - img_manager.py 图像处理模块 - UI - ORC_Surface.py 程序运行的主页面 - Confirm_Window.py 识别完成时弹出的提示框 - Preview_Window.py 导入数据库前的表格预览窗口 - UIM.py 定义setup_widget_function(),实现图形界面的用户交互 - qbuttonlabel.py 自定义label,拥有对鼠标点击事件和鼠标拖放事件的响应 ## 4.待改进 1.拖入图片时的图片文件判断 2.mysql数据连接前的数据预览窗口 3.加入processManager流程控制模块,解除数据和流程的耦合 4.加入用户设置功能,自定义图像识别模式和默认输出路径 5.pytesseract库对于中文识别效果不理想,需要训练中文库