草庐IT

MSP430实战

全部标签

ASR项目实战-产品分析

分析Google、讯飞、百度、阿里、QQ、搜狗等大厂的ASR服务,可以罗列出一款ASR服务所需要具备的能力。产品分类ASR云服务产品,从用户体验、时效性、音频时长,可以划分为如下几类:实时短音频转写,可以用于支撑输入法、搜索、导航等场景。实时长音频转写,可以用于支撑视频字幕、图文直播、会议直播等场景。文件短音频转写,或者一句话语音识别,可以用于支撑输入法、搜索、导航等场景。文件长音频转写,或者录音文件转写,可以用于支撑视频字幕、会议记录等场景。产品特性从特性上讲,一款ASR产品,在语音识别的过程,可划分为前、中、后,三个阶段,相关的特性可依据不同阶段的特点进行划分,如下是简单的说明。前处理在对

ASR项目实战-交付团队的分工

对于通常的软件项目,参与角色,比如可以有用户,消费者,产品团队,研发团队(研发团队包括开发和测试),运营团队,运维团队,管理团队。通常认为,用户,负责购买服务的群体,而消费者,负责使用业务的群体。这两个群体,不在本文的讨论范围之内,因此后续的介绍中,除非明确说明,否则默认均不涉及。产品团队,研发团队(研发团队包括开发和测试),运营团队,运维团队,管理团队,可以归纳为产品交付团队。关于各团队的简单的说明:产品团队,负责定义产品,规划路标,收集和定义需求的团队。研发团队,可以细分为架构团队,设计团队,开发团队,测试团队。架构团队,依据产品定义,路标规划,定义并看护产品的架构。设计团队,依据需求定义

ASR项目实战-项目交付历程

本文记录,作为项目主要负责人,完整参与语音识别项目的交付历程。2019年12月中旬接到项目交付任务,收集基本知识,启动业务分析工作。2020年1月完成竞品分析的整理。梳理合作伙伴的清单,整理项目计划,启动和各合作伙伴的沟通工作。启动架构方案、设计方案的准备工作。2020年2月和合作伙伴A谈好合作方案,基于云云对接的方式,启动项目交付工作。架构设计、方案设计(文件转写)完成文档的输出和评审。月底,支持短文件转写(即时长在60秒以内的语音文件)的服务,在生产环境顺利上线。按照部门要求,后续按照月度版本的方式组织交付,即月初启动交付,月底完成版本发布和生产环境的变更。本月版本交付的内容:短文件转写(

ASR项目实战-架构设计

一般而言,业务诉求作为架构设计的输入。需求清单对于语音识别产品而言,需满足的需求,举例如下:功能需求文件转写。长文件转写,时长大于60秒,小于X小时,X可以指定为5。短文件转写,时长小于60秒。实时语音识别。长语音识别,时长大于60秒,小于Y小时,Y可以指定为5。短语音识别,时长小于60秒。支持多个语种。其它功能需求,比如:前处理支持多种音频文件格式。支持多种采样率和位深。支持去回声和抗噪。支持在音频文件中处理多个声道。中间处理支持VAD。支持区分音频文件中的多个讲话人。支持输出文本对应的时间偏移。支持使用热词提高字准率。后处理支持输出标点符号。支持输出拼音类语言的大、小写。支持数字、符号的归

ASR项目实战-决策点

针对语音识别的产品,分别记录设计、开发过程中的决策点。实时语音识别对于实时语音识别来说,客户端和服务端之间实时交换语音数据和识别的结果。客户端在启动识别时,即开始发送语音数据,期望在等待较短的时间后,即收到最初的识别结果。第一段语音数据和第一个识别结果之间的时延,一般称为首字时延。客户端在停止识别后,期望在等待较短的时间后,即收到最终的识别结果。最后一段语音数据和最后一个识别结果之间的时延,一般称为尾字时延。决策点对开发者提供实时语音识别服务时,使用什么样的协议来传输数据。在实时语音识别的过程中,客户端和服务端均会主动发送数据,因此服务端需要提供一个全双工的协议,以支撑前述要求。业界常见的方案

ASR项目实战-方案设计

对于语音识别产品的实施方案,给出简易的业务流程,仅供参考。如下流程图,可以使用如下两个站点查看。webchartWebSequenceDiagrams文件转写创建文件转写任务客户应用->接入网关:发送创建文件转写的请求接入网关->安全网关:转发请求安全网关->安全网关:对请求进行鉴权安全网关->业务网关:转发请求业务网关->业务网关:校验业务请求业务网关->业务网关:选择算法服务业务网关->数据库:保存任务信息业务网关->任务队列:将文件转写请求放入任务队列业务网关-->安全网关:返回响应消息安全网关-->接入网关:返回响应消息接入网关-->客户应用:返回响应消息执行文件转写任务算法服务实例-

flutter 实战 之 dio小实践

我们要对dio进行封装classHttpRequest{staticFuturerequest(Stringurl,{Stringmethod="get",Map?params})async{//创建dio实例BaseOptionsbaseOptions=BaseOptions(baseUrl:base_url,connectTimeout:Duration(seconds:1));finaldio=Dio(baseOptions);//发送网络请求Optionsoptions=Options(method:method);try{finalresult=awaitdio.request(ur

TensorFlow的实战(详细代码)

1TensorFlow基础  1.1TensorFlow概要TensorFlow使用数据流式图规划计算流程,它可以将计算映射到不同的硬件和操作系统平台。  1.2TensorFlow编程模型简介TensorFlow中的计算可表示为一个有向图(计算图),其中每个运算操作为一个节点,每个节点可有任意多个输入和输出;在计算图的边中流动(flow)的数据被称为张量(tensor),tensor在计算图中flow,故命名为TensorFlow;Session是用户使用TensorFlow的交互式接口,可通过Session的Extend方法添加新的节点和边;反复执行计算图时一般的tensor不会被持续保留

Mysql数据库指定某数据库或某表赋予增删改查操作权限各类划分权限的方法总结实战

一、mysql创建用户只赋予指定数据库的增删改查操作权限在日常生产运维工作中,我们经常需要给其他厂商或者合作伙伴提供数据库的账号,并且需要指定某个用户只能查询指定的数据库,并且赋予增删改查的指定权限。(1)创建某个用户,赋予只能操作(增、删、改、查)指定某个数据库,并且其他数据库看不到,只能看到指定的数据库CREATEUSER'用户名'@'%'IDENTIFIEDBY'登录数据库的密码';GRANTSELECT,INSERT,UPDATE,DELETEON`数据库名称`.*TO'用户名'@'%';(2)创建某个用户,赋予只能查询指定某个数据库的所有表,其他数据库完全看不到!CREATEUSER

pyautogui实现UI自动化指南(附项目实战:基于图像识别实现崩坏星穹铁道自动化)

导言自动化对于很多人来说是一个高深莫测,可望而不可即的概念,但是其实自动化的实现途径有很多,比如接下来笔者将要介绍的就是其中较为简单的实现途径----pyautogui,只要有一定的编程基础,相信你也可以写出自己的自动化脚本,而其它的自动化脚本也可以做到触类旁通。pyautogui常用函数1.定位函数locateCenterOnScreen()定位函数locateCenterOnScreen()可以定位截图在屏幕上的坐标位置。如果你不知道按钮的位置,就不能用moveTo()移动和click()点击。而且按钮的位置可能会变化,这时即使有来坐标也不好用了。但是如果你有按钮的截图,你就可以调用pya