# API_Artificial intelligence and machine learning **Repository Path**: Xhewen/API_Artificial-intelligence-and-machine-learning ## Basic Information - **Project Name**: API_Artificial intelligence and machine learning - **Description**: 20春_API_人工智能与机器学习 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2020-04-15 - **Last Updated**: 2025-02-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README |文档名称|悠哉优摘—产品需求文档| |--|--| |产品名称|悠哉优摘| |产品描述|一个运用文字识别OCR技术帮助学生识别电脑文字和手写文字形成电子版的APP| |产品版本|1.0-2.0 /[diff链接](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/compare/596a1179eef7d8de6ff7c32b2095f169a01cd9ba...3e1bbe9309d8438a5484ebd428a61d4c6152ae91)| |文件现状|进行中| |文件作者|肖贺文| --- - 迭代二的增删修改如下: 1. 为了提高电脑文字识别精准度新增一个API,相应改动API价值宣言、代码测试、需求列表、数据流程图等内容。 2. 增加人工智能概率性和问题及解决方案说明。 3. 新增一张用户画像图 4. 添加价值主张画布 5. 添加利害相关者分析表格 6. 添加ESG考量 7. 修改IDEO 三要素描述方式,文字描述改完图片和表格藐视 8. 增加界面流程智能加值输入和输出表格 9. 增加API使用比较分析 10. 修改心得总结及感谢 --- # 项目名称:悠哉优摘 ## 1.加值宣言150字: 通过**计算机视觉中的OCR文字识别api**,学生可以将上课拍的老师的上课内容通过文字识别api对照片中的电脑文字和手写文字内容进行识别和提取,生成电子版,提升记笔记的效率;还可以将手写书摘、读书笔记和手写试卷中的题目等内容进行文字识别,实现对手写文字内容的扫描及线上存储;这些都将便于用户对笔记内容、书摘和试卷题目进行快速编辑、查找、汇总及传输,甚至可建立学习错题集,这将大幅度提升内容管理效率,优化用户使用体验,提高学习效率。 ### 2.API加值宣言 - **百度的通用文字识别API**加值:使用通用文字识别技术,实现对课上拍的照片、手写书摘、读书笔记、试卷题目等图片的识别,实现对**电脑文字**的检测和识别,生成电子版。支持中、英、法、俄、西、葡、德、意、日、韩、中英混合等10种语言识别,同时支持中、英、日、韩四语种的类型检测。 - **百度的手写文字识别API**加值:使用手写文字识别技术,实现对课上拍的照片、手写书摘、读书笔记、试卷题目等内容的识别,实现对**手写**文字内容的扫描及线上存储。(仅中文和数字) - **微软的文本检测API**加值:可从图像提取打印文本、手写文本(仅英语)、数字和货币符号。支持在同一图像或PDF文档中检测**打印文本和手写文本**(仅英语)。 ### 3.人工智能概率性 - 2020年5月28日,百度全球 AI 专利申请量已超过1万件,其中中国专利7000多件,位列中国第一。 - 2019年,百度大脑全面升级为5.0,成为支撑产业智能化、软硬件一体的 AI 大生产平台。在算法突破和计算架构升级的基础上,百度大脑5.0进行算法、计算架构与应用场景的融合创新,打通人工智能产业化应用落地的全部流程,实现了 AI 技术的标准化、自动化和模块化。 - 依托百度优秀的图像处理技术和海量优质数据,支持识别各种不规则手写字体,并对字迹潦草、模糊等情况进行专项优化,手写中文识别准确率可达90%以上。 - 依托百度云技术实力,提供高可靠性、弹性可伸缩、高并发承载的文字识别服务,服务可用性高达99.99%。 - Microsoft 的计算机视觉 API 包含光学字符识别 (OCR) 功能,这些功能可从图像和 PDF 文档中提取打印文本或手写文本。 - 新的读取 OCR API 作为云中或本地 (容器) 中托管服务的一部分提供。 此外,它还支持虚拟网络和专用终结点,以满足企业级符合性和隐私需求。 [参考文章](https://new.qq.com/omn/20200724/20200724A0GSZT00.html) ### 4.问题及解决方案说明(融合人工智能概率性考量) |问题|人工智能概率性考量|解决方案| |--|--|--| |用户希望能够识别课堂拍摄的知识点PPT图片识别成电子版笔记|基于业界领先的深度学习技术,提供多场景、高精度的整图文字检测和识别服务,多项ICDAR指标居世界第一|选择百度AI的通用文字识别对文字进行检测和识别,生成电子版。| |用户希望对纸质版手写卷子进行电子版错题整理|依托百度优秀的图像处理技术和海量优质数据,支持识别各种不规则手写字体,并对字迹潦草、模糊等情况进行专项优化,手写中文识别准确率可达90%以上。|调用百度的API和手写文字识别API对试卷文字进行检测和识别,形成电子版| |用户希望识别英文PDF为可编辑文档|Microsoft 的计算机视觉 API 包含光学字符识别 (OCR) 功能,这些功能可从图像和 PDF 文档中提取打印文本或手写文本。|使用微软的文本检测API对英文PDF进行文字识别,生成可编辑文档| --- ## 一、问题表述与需求列表 ### 1、产品背景 学生的课业繁重,随着科学技术的发展,如何运用新的技术去提高学生的学习效率,节省学生的时间,是这个产品的出发点。 ### 2、产品市场 市面上跟文字识别OCR相关的应用主要用来识别电脑字体,能够识别手写文字的少之又少。但本产品在能够识别电脑字体的同时又能够识别手写字体,更加适用于学生。 ### 3、问题表述 - 用户使用场景一:学生课下将上课拍的老师讲的内容进行文字识别,形成电子版,将知识点整理在一起,不用再去翻看多张照片,提高学习效率,便于整理笔记,同时释放手机内存。 - 用户使用场景二:学生课余时间将做过的习题拍照上传进行文字识别,将习题整理成电子版,也可整理出电子版错题集,不用再花费时间手抄错题,提高学习效率。 - 用户使用场景三:学生将书摘和手写笔记拍照上传进行文字识别,生成电子版,便于传输和存档备案,不用担心纸质笔记和书摘丢失,同时在外出时减轻行李重量。 #### 4、用户画像 核心用户:15-22岁的高中生、大学生 ![用户画像1](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/API_yonghuhuaxiang.png) ![用户画像2](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/api%E7%94%A8%E6%88%B7%E7%94%BB%E5%83%8F2.png) #### 5、价值主张画布 ![价值主张画布](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/api%E4%BB%B7%E5%80%BC%E4%B8%BB%E5%BC%A0%E7%94%BB%E5%B8%83.png) #### 6、利害相关者分析 ![利害相关者分析](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/%E5%88%A9%E5%AE%B3%E7%9B%B8%E5%85%B3%E8%80%85%E5%9B%BE.png) #### 7、ESG考量 - ESG问题 1. 需要拍摄或上传照片,增加服务器压力 2. 用户上传的照片隐私保障问题 - ESG机会 1. 完善信息保障机制,存储好用户上传的信息。 2. 允许用户清除已上传过的图片 ### 8、需求列表 优先级|用户场景|智能加值|API类型|级别 ---- | ---- | ---- | ---- | ---- 1|用户想将试卷上、书摘或者其他手写文字识别成电子版|是|百度手写文字识别API|重要 2|用户想要将课堂上拍的PPT照片中的知识点识别成电子版|是|百度通用文字识别API |重要 3|将图片上的英文文字识别成电子版,将pdf上的英文识别成电子版|是|微软文本检测API |重要 --- ## 二、核心价值(最小可行性产品) 在满足识别电脑字体文本或图片的基础上,实现手写中英文的需求,目标是提高学生记笔记和整理书摘的需求。 #### 用户痛点: 1. 学生想要识别手写笔记为电子版 2. 学生想要将老师的手写笔记快速整理成电子版 3. 学生想要将书摘、做过的纸质版试卷识别成电子版 --- ## 三、解决方案原型表述 ### 1、界面流程及关键智能交互 #### 产品结构图 ![产品结构图](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/%E6%82%A0%E5%93%89%E4%BC%98%E6%91%98%E7%BB%93%E6%9E%84%E5%9B%BE.png) #### 界面流程图 ![流程图](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/jiemianliuchengtu.png) #### IDEO 三要素(论证 MVP 加/价值) ![IDEO 三要素](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/IDEO%E4%B8%89%E8%A6%81%E7%B4%A0.png) |Viability 商业可行性|Feasibility 技术可行性|Desirability 用户可欲性| | ---- | ---- | ---- | |目前市面上对于手写文字识别的软件不多,具有前景;可以在首页设置广告位,增加收益。|调用百度手写文字识别API可以对图片中文文字进行识别,包含电脑文字、手写文字等;调用微软文本检测API可以对图片中的英文字进行识别,包含电脑文字、手写文字|产品界面简洁,产品易操作,方便新用户使用。| #### [产品原型图链接](https://modao.cc/app/ecff1d62d53d4af26e67c79355b563475f714a12?simulator_type=device&sticky) 可点击链接查看界面详情和交互。总共12个页面,包含1启动页。 #### 智能交互界面 ![交互流程图](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/%E4%BA%A4%E4%BA%92%E6%B5%81%E7%A8%8B%E5%9B%BE.png) #### 界面流程智能加值输入和输出 输入|输出| ---- | ---- | 拍摄照片|得到识别到的文本文字| 手机相册上传照片|得到识别到的文本文字| 上传PDF文件|得到识别到的文本文字| #### 从用户可欲性的角度分析: - 学生的课业繁重,随着科学技术的发展,如何运用新的技术去提高学生的学习效率,节省学生的时间,是这个产品的出发点。市面上跟文字识别OCR相关的应用主要用来识别电脑字体,能够识别手写文字的少之又少。但本产品在能够识别电脑字体的同时又能够识别手写字体,更加适用于学生。 #### 从技术可行性的角度分析: - 百度通用文字识别API基于业界领先的深度学习技术,提供多场景、多语种、高精度的整图文字检测和识别服务,多项ICDAR指标居世界第一。 - 百度手写文字识别API依托百度优秀的图像处理技术和海量优质数据,支持识别各种不规则手写字体,并对字迹潦草、模糊等情况进行专项优化,手写中文识别准确率可达90%以上。 - Microsoft 的计算机视觉 API 包含光学字符识别 (OCR) 功能,这些功能可从图像和 PDF 文档中提取打印文本或手写文本。 #### 从商业可行性的角度分析: - 目前市面上对于手写文字识别的软件不多,具有前景;可以在首页设置广告位,增加收益。 ### 2、数据流程及关键智能API使用 API驱动智能流程:产品中的所有识别文字界面均使用关键智能API。 ![数据流程图](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/%E6%95%B0%E6%8D%AE%E6%B5%81%E7%A8%8B%E5%9B%BE2.0.png) ### 3、API的使用 - [测试代码](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/blob/master/%E6%9C%9F%E6%9C%AB%E9%A1%B9%E7%9B%AE%E6%B5%8B%E8%AF%95%E4%BB%A3%E7%A0%81/API%E6%9C%9F%E6%9C%AB%E6%B5%8B%E8%AF%95%E4%BB%A3%E7%A0%812.0.ipynb) #### (一)百度手写文字识别API - [产品链接](https://cloud.baidu.com/product/ocr_others/handwriting) - 接口描述:支持对图片中的手写中文、手写数字进行检测和识别,针对不规则的手写字体进行专项优化,识别准确率可达90%以上。 - [技术文档](https://cloud.baidu.com/doc/OCR/s/hk3h7y2qq) - 接口请求URL: https://aip.baidubce.com/rest/2.0/ocr/v1/handwriting - HTTP 方法:POST 1. 首先需要通过API Key和Secret Key获取access_token 2. 对图片进行文字识别 - ![百度手写文字识别API](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/baiduapi.png) #### (二)百度通用文字识别API - [产品链接](https://cloud.baidu.com/product/ocr/general) - 接口描述:基于业界领先的深度学习技术,提供多场景、多语种、高精度的整图文字检测和识别服务,多项ICDAR指标居世界第一。 - [技术文档](https://cloud.baidu.com/doc/OCR/s/zk3h7xz52) - 接口请求URL: https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic - HTTP 方法:POST 1. 首先需要通过API Key和Secret Key获取access_token 2. 对图片进行文字识别 - 代码如下: ``` ''' 通用文字识别 ''' import requests import base64 request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic" # 二进制方式打开图片文件 f = open('text1.jpg', 'rb') # 此处选择的是本地图片,不需要写具体路径 img = base64.b64encode(f.read()) params = {"image":img} access_token = '24.c46def79a65ea1d488613a5c2ce1ba99.2592000.1596889275.282335-20685955' # [调用鉴权接口获取的token] request_url = request_url + "?access_token=" + access_token headers = {'content-type': 'application/x-www-form-urlencoded'} response = requests.post(request_url, data=params, headers=headers) if response: print (response.json()) ``` #### (三)微软文本检测API - [产品链接](https://docs.microsoft.com/zh-cn/azure/cognitive-services/computer-vision/concept-recognizing-text) - ![微软文本检测API](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/azure1.png) - ![微软文本检测API](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/azure2.png) - ![微软文本检测API](https://gitee.com/Xhewen/API_Artificial-intelligence-and-machine-learning/raw/master/images/azure3.png) #### 概率性问题: - 目前,百度智能云平台上的“手写文字OCR识别”系统正为教育行业提供手写文字识别API服务。在测试集中,实现了业内领先的识别准确率,识别准确率高达90%以上。 - 解决方案:在识别完成后提供编辑功能,供用户根据所需进行修改。 #### API使用比较分析 - 对比分析了阿里云的文字识别API ||百度通用识别API|阿里云通用识别API| |--|--|--| |平台|[百度产品文档](https://cloud.baidu.com/product/ocr/general)|[阿里云产品文档](https://ai.aliyun.com/ocr/general?spm=5176.12825654.h2v3icoap.244.3dbd2c4abgkxkT)| |优势|1. **支持多种语言识别**:对图片中的文字进行检测和识别,支持中、英、法、俄、西、葡、德、意、日、韩、中英混合等10种语言识别,同时支持中、英、日、韩四语种的类型检测。2. **功能、价格选择多样**:提供通用文字识别、高精度版、含位置信息版、高精度含位置版四种版本,能够适应不同业务场景对识别精度、识别速度及位置信息的需求。3. **准确率高**:针对图片模糊、倾斜、翻转等情况进行了优化,鲁棒性强,识别速度快,且支持2W+大字库,总体识别准确率高达99%|1. **识别精确率高**:利用上万亿的图片样本训练模型。2. **识别速度快**:单张图片毫秒级别返回。 3. **技术精深**:使用业界领先的深度学习技术,支持分布式多机多gpu卡训练模型| - 总结:百度的使用起来更加方便,技术文档更易懂,同时支持多语言识别。 --- ## 四、学习/实践心得总结及感谢 - 经过这个项目才切身体会到一个项目做下来需要付出很多的时间和精力,这个项目让我对百度智能云平台的文字识别OCR技术有了更深的了解,也明白了一个产品从无到有要至始至终以人为本,同时产品是需要不断迭代更新的。 - 这份文档在老师给的建议文档的结构上参考了师姐的作品和文档结构,我需要对提供项目参考的学姐表示感谢,以下是我参考的师姐作品链接: * [黄滢师姐作品“savor”APP](https://github.com/NFUNM032/app-of-savor) - 项目的主要技术百度开放平台的手写文字识别API、通用文字识别API和微软的文本检测API,感谢百度和微软提供的技术支持。 - 在测试代码的时候,我在调用微软文本检测API时借鉴使用了老师上课的代码。 - API的价值主张总结:通过对文字识别的市场和竞品分析以及用户分析得出该APP的价值主张,为了提高用户可欲性和可操作性在产品设计上上采用了简洁的设计,该产品的设计初衷是为了提高学生的学习效率。