[no_code][Alpha]项目展示博客
$( "#cnblogs_post_body" ).catalog()
团队项目链接
github 后端
github OCR文档-含部分所需测试代码目前private
API调用说明与文档
Alpha会议纪要目录
团队目标
设计一个OCR表单识别软件(Alpha阶段目标:开发一个OCR识别的核心API套件)
用户反馈后的新增功能
Alpha阶段原功能[1.0版本]:表单处理的API
用户的推荐: 希望有更加轻量级的展示格式
最近的新增功能[1.01版本]:可以从表单数据推导到csv等文件格式
用户需求满足情况
总表
用户类型 | 满足情况 |
---|---|
学生 | 学生有尝试调用API的能力,已经可以完成使用 |
工作人员和老师 | 在我们的协助下可以使用API,后续可以使用APP |
用户信息 | 用户情况 |
---|---|
姓名 | Prime21 |
用户身份 | 学生 |
用户动机 | 把做实验的到的数据表导入到电脑中。 |
用户困难 | 所测得数据较多,手动录入效率低且容易出错。 |
典型场景 | 做完实验撰写报告时需要根据得到的数据来计算对应结果,导入到电脑后操作很方便。 |
用户偏好 | 希望能有一个能快速、准确识别表单的软件来帮助自己。 |
用户比例 | 60%左右 |
实际用户反馈:
- 每次上传还需要的结果比较快
- 上传后识别有部分错误,如果可以直接在上面改动就好
用户信息 | 用户情况 |
---|---|
姓名 | Prime22Prime22 |
用户身份 | 老师 |
用户动机 | 将学生的签到信息导入到电脑中,并对信息进行汇总。 |
用户困难 | 课程组学生较多,手动录入和汇总麻烦。 |
典型场景 | 同学们上课回答问题以后老师在纸质花名单上做记录,最后需要导入到电脑中进行汇总好计算同学们的平时成绩。 |
用户偏好 | 简单易使用,且识别准确的软件。 |
用户比例 | 20%左右 |
实际用户反馈:
- 功能正确,但是感觉交互还可以更加完善
用户信息 | 用户情况 |
---|---|
姓名 | Prime23 |
用户身份 | 政府工作人员 |
用户动机 | 民意收集 |
用户困难 | 大量的纸质问卷表需要录入 |
典型场景 | 将回收得到的问卷录入电脑 |
用户偏好 | 高效、准确的软件。 |
用户比例 | 10%左右 |
实际用户反馈: (王先生)
- 可以批量导入上传的照片
- 可以批量下载照片
- 希望能对多页表格做合并
下载量和调用量
项目 | 数量 |
---|---|
API调用统计 | 1次/人~20次/人 |
用户统计 | 约54人 |
github star | 约21人 |
可以看出github star的人数和我们推广出去的人数有不符,可能是我们推广的需求人群近期的表单处理需求还不够大(如学生)。软件下载量的突破可能还需要后续beta阶段的前端支持。
原因:开始在大班群推广,后续才在我们自己的软工班级推广,比较复杂。
文档和安装指导
我们的项目目前是一个完整的后端API项目。在项目网站上有详细的API使用/调用的参数设定和指导。
协作方式
- github pr 或者是 github kanban
- 使用腾讯会议开会讨论
用户反馈的截屏
X用户(隐私保护)的反馈,他是一名已经就业的软件开发工作人员。
效果展示
输入:多种文件,以及包含有异常的表单
输出结果(命令行log)
输出结果(csv表单)
OCR技术测试
JSON解析测试
pdf上传测试
jpeg上传测试
手写测试
后端单元测试
API调用测试
单元测试
历次单元测试记录
单元测试覆盖率
燃尽图
团队成员Alpha阶段贡献
成员 | 角色 | 工作 | 工作量(单位:天) |
---|---|---|---|
pmxm | PM | 第一次博客作业 | 2 |
pmxm | PM | 第二次博客作业 | 3 |
pmxm | PM | 第三次博客作业 | 2 |
pmxm | PM | 共15次会议及会议记录 | 15 |
pmxm | PM | 支援OCR train过程 | 4 |
pmxm | PM | 支援backend 服务器处理工作 | 2 |
pmxm | PM | 协调backend和OCR的工作 | 2 |
pmxm | PM | 时间节点推进和监督 | 3 |
pmxm | PM | 完善code review | 2 |
pmxm | PM | 服务器和域名配置 | 1 |
lzb | backend 组长 | 数据库表单设计 | 3 |
lzb | backend 组长 | 技术相关的blog review | 2 |
lzb | backend 组长 | 后端初步设计和规划 | 3 |
lzb | backend 组长 | 接手OCR代码 | 3 |
lzb | backend 组长 | 第二次接手OCR 代码 | 3 |
lzb | backend 组长 | 协调数据库设计和OCR辅助设计 | 2 |
lzb | backend 组长 | 负责写若干单元测试,测试其他组员的代码 | 4 |
lzb | backend 组长 | 完善code review | 2 |
ykh | backend 组员 | 完善用户注册登录机制 | 2 |
ykh | backend 组员 | 完善用户管理系统 | 3 |
ykh | backend 组员 | 服务器端部署 | 4 |
ykh | backend 组员 | 服务器和域名配置 | 2 |
ykh | backend 组员 | 历次组内工作总结报告 | 4 |
ykh | backend 组员 | 文档编写和完善 | 2 |
ykh | backend 组员 | 单元测试编写 | 2 |
my | backend 组员 | OCR后端工作编写 | 2 |
my | backend 组员 | 流程设计图编写 | 3 |
my | backend 组员 | OCR后端单元测试 | 3 |
my | backend 组员 | OCR流程跑通 | 1 |
xsy | OCR 组长 | OCR文档阶段调研 | 1 |
xsy | OCR 组长 | OCR数据生成表单 | 3 |
xsy | OCR 组长 | OCR分析流程跑通 | 2 |
xsy | OCR 组长 | OCR阶段测试分析 | 2 |
xsy | OCR 组长 | OCR组内工作协调 | 2 |
xsy | OCR 组长 | OCR 测试报告 | 3 |
xsy | OCR 组长 | OCR和backend对接 | 2 |
lzy | OCR 组员 | OCR文档阶段调研 | 1 |
lzy | OCR 组员 | OCR测试分析 | 2 |
lzy | OCR 组员 | OCR训练分析 | 2 |
lzy | OCR 组员 | 尝试部署OCR在其他分析 | 2 |
lzy | OCR 组员 | OCR设计报告 | 2 |
zt | OCR 组员 | OCR文档阶段调研 | 1 |
zt | OCR 组员 | OCR训练分析 | 2 |
zt | OCR 组员 | OCR训练调试 | 2 |
zt | OCR 组员 | OCR单元测试分析与调整 | 1 |
zt | OCR 组员 | OCR设计分析报告和测试 | 2 |
zt | OCR 组员 | OCR训练结果分析 | 2 |
|成员|pmxm|xsy|lzb|zt|my|lzy|ykh|
|得分|51|53|52|49|47|48|50|
核心功能
我们的核心功能是表单处理,现在可以导出成数字化的文字的位置数据,还有我们通过位置输出简易的表格生成API
用户暴露出的bug
- OCR识别率有一定问题的存在,数字识别率、文字识别率和位置识别率用户的测试和我们的测试反响不同。(正在调优)
- 域名使用暂时存在问题(原因:备案问题和国内的安全问题,之前提出的一次备案请求在5.6日又被撤销了,在重新上云备案)(后续使用APP版本可能没有这个问题)
- 特殊的表格:有特殊的制表结构(斜线格子、合并单元格)
- 手写表格识别困难
- 可能会有除0的bug,原因是表格分析的API产生了异常分析。
学习收获
- 感谢软工课程给了我们一次体验软工开发流程的机会
- 我们学习到了如何去分析和设计一个OCR应用、后端开发和设计的相关知识、学习了相关的网络服务器应用
- github相关的管理流程,用线上会议来解决协同工作
Beta阶段计划
- 易用便于操作的使用前端
- 特殊表格的定制化API(尝试)
- 多图表格合并
- 解决Azure的国内访问问题,需要一定国内线路备份