5分钟弄懂:语音识别技术原理

知乎链接:https://www.zhihu.com/question/20398418/answer/18080841 简要给大家介绍一下语音怎么变文字的吧。希望这个介绍能让所有同学看懂。 首先,我们知道声音实际上是一种波。常见的mp3、wmv等格式都是压缩格式,必须转成非压缩的纯波形文件来处理,比如WindowsPCM文件,也就是俗称的wav文件。wav文件里存储的除了一个文件头以外,就是声音波形的一个个点了。下图是一个波形的示例。 在开始语音识别之前,有时需要把首尾端的静音切除,降低对后续步骤造成的干扰。这个静音切除的操作一般称为VAD,需要用到信号处理的一些技术。要对声音进行分析,需要对声音分帧,也就是把声音切开成一小段一小段,每小段称为一帧。分帧操作一般不是简单的切开,而是使用移动窗函数来实现,这里不详述。帧与帧之间一般是有交叠的,就像下图这样:图中,每帧的长度为25毫秒,每两帧之间有25-10=15毫秒的交叠。我们称为以帧长25ms、帧移10ms分帧。图中,每帧的长度为25毫秒,每两帧之间有25-10=15毫秒的交叠。我们称为以帧长25ms、帧...

区块链技术涉及哪些编程语言?

  区块链技术是现目前最前沿的互联网技术,那区块链技术到底涉及哪些编程语言呢?我们要编写不同的区块链编程语言又是否相同呢?下面为大家分享三大主流区块链:比特币、超级账本Fabric和以太坊中,分别使用什么编程语言来编写智能合约,一起来看看吧。  比特币  比特币是第一个真正意义上的区块链,不过,从严格意义上来讲,它对智能合约的开发者是不友好的。  可以用一种低门槛的编程语言BitcoinScript在比特币系统上编写智能合约。每个比特币地址都对应着一个BitcoinScript程序。看起来是这样:  另一种较高级别的语言是Ivy,它可以编译成BitcoinScript。Ivy能够帮助你编写自定义的比特币地址,这种地址与隔离见证(SegWit)兼容,在比特币协议(包括签名检查、hash特征值(commitment)和时间锁)的支持下,可以执行任意条件组合。例如:  比特币“虚拟机”——协议中负责执行BitcoinScript程序的一部分——与以太坊或者ChainProtocol等其它智能合约平台的虚拟机相比(功能)更...

美的技术岗位面试

----昨天参见了美的技术岗位的面试,发现自己是真的很菜很菜,很多的东西自己想不起来了,可能一部分是因为自己紧张的缘故,一部分的原因是自己本来就很菜,现在把自己昨天面试的经历和题型整理出来,在这里做一个小的总结。  1.你知道的数据分析的主要的处理方式工具有哪些?答:Excel,BI,SQL,Echart,spss,python,2,数据分析主要的方法论有哪些?答:pest,5w2h,4p理论,逻辑树。3.广度搜索和深度搜索是什么?有什么区别?  搜索算法是利用计算机的高性能来有目的的穷举一个问题解空间的部分或所有的可能情况,从而求出问题的解的一种方法。现阶段一般有枚举算法、深度优先搜索、广度优先搜索、A*算法、回溯算法、蒙特卡洛树搜索、散列函数等算法。在大规模实验环境中,通常通过在搜索前,根据条件降低搜索规模;根据问题的约束条件进行剪枝;利用搜索过程中的中间解,避免重复计算这几种方法进行优化。 答: 深度优先搜索所遵循的搜索策略是尽可能“深”地搜索树。它的基本思想是:为了求得问题的解,先选择某一种可能情况向前(子结点)探...
代码星球 代码星球·2020-04-14

HOOK技术的一些简单总结

好久没写博客了,一个月一篇还是要尽量保证,今天谈下Hook技术。在Window平台上开发任何稍微底层一点的东西,基本上都是Hook满天飞,普通应用程序如此,安全软件更是如此,这里简单记录一些常用的Hook技术。SetWindowsHookEx基本上做Windows开发都知道这个API,它给我们提供了一个拦截系统事件和消息的机会,并且它可以将我们的DLL注入到其他进程。但是随着64位时代的到来和Vista之后的UAC机制开启,这个API很多时候不能正常工作了:首先,32位DLL没法直接注入到64位的应用程序里面,因为他们的地址空间完全不一样的。当然尽管没法直接注入,但是在权限范围内,系统会尽量以消息的方式让你能收到64位程序的消息事件。其次,UAC打开的情况下低权限程序没法Hook高权限程序,实际上低权限程序以高权限程序窗口为Owner创建窗口也会失败,低权限程序在高权限程序窗口上模拟鼠标键盘也会失败。有人说我们可以关闭UAC,Win7下你确实可以,但是Win8下微软已经不支持真正关闭UAC,从这里我们也可以看到微软技术过渡的方式,中间会提供一个选项来让你慢慢适应,最后再把这个选项关掉,...

CTO、技术总监、首席架构师的区别

2016年11月30日13:22:26【转】CTO、技术总监、首席架构师的区别 提升自已的能力,比如专业技术,行业发展趋势,技术发展趋势,协调能力,组织能力,管理能力等【技术总监】 需要从技术总监和研发Leader身上剥离职责。让技术总监和研发Leader偏项目管理(管理族),把各个模块之间的架构设计工作,独立出一个岗位,就是架构师,来负责。【首席架构师】真正的CTO,是软件产品和技术是统一管理的。商业、产品、技术、管理、团队相平衡的综合统管【首席技术官CTO】 一、高级程序员如果你是一个刚刚创业的公司,公司没有专职产品经理和项目经理,你就是公司的产品经理,你如果对你现在的开发员能力不满,那么你只需要的是一个高级程序员。你定义功能、你做计划推进和管理,他可以带1-2个副手把你规划的功能实现了,他是主力干活者,有技术难题也是他来亲自攻克解决。所以,一个高级程序员,他的职责很清晰:1、负责核心复杂功能的实现方案设计、编码实现2、负责疑难BUG分析诊断、攻关解决二、研发Leader公司再长大些。如果你就有一个研发团队(含产品/开发/测试),你就一套主产品,而且你...

5种必知的大数据处理框架技术

大数据是收集、整理、处理大容量数据集,并从中获得见解所需的非传统战略和技术的总称。虽然处理数据所需的计算能力或存储容量早已超过一台计算机的上限,但这种计算类型的普遍性、规模,以及价值在最近几年才经历了大规模扩展。本文将介绍大数据系统一个最基本的组件:处理框架。处理框架负责对系统中的数据进行计算,例如处理从非易失存储中读取的数据,或处理刚刚摄入到系统中的数据。数据的计算则是指从大量单一数据点中提取信息和见解的过程。下文将介绍这些框架:· 仅批处理框架:ApacheHadoop· 仅流处理框架:ApacheStormApacheSamza· 混合框架:ApacheSparkApacheFlink处理框架和处理引擎负责对数据系统中的数据进行计算。虽然“引擎”和“框架”之间的区别没有什么权威的定义,但大部分时候可以将前者定义为实际负责处理数据操作的组件,后者则可定义为承担类似作用的一系列组件。例如ApacheHadoop可以看作一种以MapReduce作为默认处理引擎的处理框...

面向对象编程技术的总结和理解(c++)

目录树1.继承1.1基类成员在派生类中的访问属性1.2继承时导致的二义性1.3多基继承2.虚函数的多态2.1虚函数的定义2.2派生类中可以根据需要对虚函数进行重定义2.3虚函数的访问2.4哪些函数不能定义为虚函数2.5虚函数表指针(vptr)和虚基类表指针(bptr)2.5.1虚函数表指针vptr2.5.2含静态变量、虚函数的类的空间计算2.5.3虚基类表指针2.5.4虚拟继承时构造函数的书写2.5.5虚函数3.运行时类型识别与显示转换3.1typeid3.2显式转换 1.继承如果一个类有多个直接基类,而这些直接基类又有一个共同的基类,则在最底层的派生类中会保留这个间接的共同基类数据成员的多份同名成员。提出虚继承,虚继承时,公共基类在对象模型中只有一份拷贝。1.1基类成员在派生类中的访问属性这里一定要区分清楚派生类对象和派生类中的成员函数对基类的访问时不同的。1.2继承时导致的二义性1)在公有继承下(私有,保护继承时,不能隐式转换)下,派生类的对象/对象指针/对象引用可以赋值给基类的对象/对象指针/对象引用(发生隐式转换)。但基类的对象/对象指针/对象引用不能赋值给派生类的对...

J2EE技术架构

J2EE(Java2Platform,EnterpriseEdition)是一个为大企业主机级的计算类型而设计的Java平台。Sun微系统(与其工业伙伴一起,例如IBM)设计了J2EE,以此来简化在受客户级环境下的应用开发。由于创造了标准的可重用模块组件以及由于构建出能自动处理编程中多方面问题的等级结构,J2EE简化了应用程序的开发,也降低了对编程和对受训的程序员的要求。 J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制:1.保留现存的IT资产:由于企业必须适应新的商业需求,利用已有的企业信息系统方面的投资,而不是重新制定全盘方案就变得很重要。这样,一个以渐进的(而不是激进的,全盘否定的)方式建立在已有系统之上的服务器端平台机制是公司所需求的。J2EE架构可以充分利用用户原有的投资,如一些公司使用的BEATuxedo、IBMCICS,IBMEncina,、InpriseVisiBroker以及NetscapeApplicationServer。这之所以成为可能是因为J2EE拥有广泛的业界支持和一些重要的'企业计算'领域供应商的参与。每一个供应商都对现有的...
代码星球 代码星球·2020-04-13

防火墙与入侵检测技术

    用于连接两个或者多个网络区域,并且基于策略限制区域间的流量设备.  主要是隔离再本地网络与外界网络之间的一道防御系统,是一类防范措施总称....              包过滤防火墙                     代理防火墙(应用层防火墙)             状态检测防火墙            从技术上讲,NAT根本就不是防火墙。只是将内部多个IP地址转换成一个公有地址,使得内部设备可以往外发起连接,并且返回的数据包能够被转发,而外部主机往内部发起的连接却无法进行转换使得访问失败,起到限制外部网络对内部网络的攻击的作用。 第一代防火墙     第一代防火墙技术几乎与路由器同时出现,采用了包过滤(Packetfilter)技术。第二、三代防火墙     1989年,贝尔实验室的DavePresotto和HowardTrickey推出了第二代防火墙,即电路层防火墙,同时提出了第三代防火墙——...
代码星球 代码星球·2020-04-13

光电检测电路设计要点

微弱信号检测技术在万物互联的时代应用更加广泛,应用包括工业测量、光电检测、环境检测监测设备、生物传感器、化学传感器、光谱分析设备等等,这些传感器的信号输出类型多为微弱的电流信号,级别从fA到uA。因此,我们今天以光电二极管为例,具体说说微弱电流信号的检测处理技术要点,光电二极管检测示意图如图:光电二极管作为比较复杂的一种传感器,暗电流是其中最重要的参数之一:光电二极管的种类:1、PN结型。即简单的PN结二极管,一般面积较大,电容较大,多应用于低速应用中。2、PIN型。在PN型的基础上,有更厚的耗尽层,因此具有更好的频谱响应特性,寄生电容较小,高带宽多应用于较高速场合。3、Schottky光电二极管。即基于肖特基二极管的光电二极管,具有超高速特性,用在超高速应用。4、Avalanche光电二极管。即APD雪崩型光电二极管,特性是具有内部增益,因为利用的是二极管的雪崩击穿原理,因此可以检测更加微弱的光信号。光电二极管的偏置电压应用差别:根据应用差别来选择偏置特性。光电检测前级电路的反馈阻容设计:电容的设置是为了运放的稳定,增加一个零点,匹配与信号源的寄生电容。光电检测的噪声特性:噪声处理是...

前端数据加密技术

/*Base64是一种编码的模式*//*我们可以对任意的数据进行Base64编码,总是会得到一个字符串(文本文件),这个字符串由65个字符拼接组成。*//*任意数据-Base64编码->字符串-Base64解码->还原为之前的数据*/例子window.btoa("Nice")加密window.atob("TmljZQ==")解码JavaScript代码不支持直接对中文进行Base64转码,如果要对中文进行处理那么需要先转换中文例子window.btoa(unescape(encodeURIComponent("我喜欢你")))加密decodeURIComponent(escape(window.atob("5oiR5Zac5qyi5L2g")))解码/*特点*//*[1]加密的过程是单向的,是不可逆的(只能加密不能解密)。*//*[2]对任意数据进行加密,得到的字符串都是固定长度的。*//*[3]如果明文(原文)相同,那么密文(散列值)一定相同。*//*[4]如果明文(原文)不同,那么密文一定不同。*//*[5]速度快,效率高。*//*经典算法*//*MD4MD5*//*S...
代码星球 代码星球·2020-04-13

常用的大数据技术有哪些?

  参考链接:https://blog.csdn.net/lmseo5hy/article/details/79542571  大数据技术为决策提供依据,在政府、企业、科研项目等决策中扮演着重要的角色,在社会治理和企业管理中起到了不容忽视的作用,很多国家,如中国、美国以及欧盟等都已将大数据列入国家发展战略,微软、谷歌、百度以及亚马逊等大型企业也将大数据技术列为未来发展的关键筹码,可见,大数据技术在当今乃至未来的重要性!  大数据技术,简而言之,就是提取大数据价值的技术,是根据特定目标,经过数据收集与存储、数据筛选、算法分析与预测、数据分析结果展示等,为做出正确决策提供依据,其数据级别通常在PB以上,以下是常用的大数据技术:  大数据基础阶段需掌握的技术有:Linux、Docker、KVM、MySQL基础、Oracle基础、MongoDB、redis以及hadoop、mapreduce、hdfs、yarn等。  大数据存储阶段需掌握的技术有:hbase、hive、sqoop等。  大数据架...

技术简介——后端开发

后端开发,通常也称服务器端开发。顾名思义开发的是程序的后端,并不对用户显示,类似于后勤的样子,负责处理前端的请求,进行逻辑处理和数据交互,例如企信打卡,本地提交打卡信息,后端进行逻辑判断,是否在规定时间、规定地点,若符合则将打卡信息存储在数据库。这就是一个简单的前端和后端各司其职的例子常见的的服务器架构A/S:App和Server,通常指手机端的APP以及其后端ServerB/S:Browser和Server,指浏览器Browser和后端ServerC/S:Client和Server,通常指电脑上的客户端和后端ServerA/S和C/S差不多,都需要在本地安装客户端,其最主要是为了减轻服务器的压力,同时便捷用户的体验,其中最明显的是C/S模式的游戏,现在主流的网游客户端大小甚至超过50G,其中在本地存储了大量的视频、图片数据,以减轻服务器的负荷,甚至大量的计算都是在本地处理的,只将一个结果提交给服务器来处理,这也是为什么游戏外挂满天飞了的理由了。反正都在本地进行,我想怎么改就怎么改。同时在这里预言一波:以后的互联网是B/S的天下,随着计算机硬件的发展,网络传输能力的上升,服务区处理请求...
代码星球 代码星球·2020-04-12

物理-空间跳跃技术:空间跳跃技术

ylbtech-物理-空间跳跃技术:空间跳跃技术空间跳跃技术,是建立在弦理论的发展上,通过基于人工虫洞建造的宇宙弦,来实现超空间跳跃的技术,由于基于现今科学技术,无法通过人工手段制造出宇宙弦,所以科学家们又提出猜想:在宇宙大爆炸时,产生了大量的弦,一般认为,它们不断融合,产生了大型的宇宙弦,它们的长大致有100亿光年以上。宇宙弦很难用望远镜直接观测,但能通过引力透镜来间接发现。通常的引力透镜是由于星系团的引力作用,使光线扭曲,会看到星系团后的星系分成两个虚像,但像是扭曲的,而宇宙弦引起的引力透镜效应不会导致像的扭曲。但到目前为止尚未发现可以认定是宇宙弦的情况。较为引人注目的猜想认为自大爆炸遗留下来的宇宙弦可存在于双星系统中,是由双星系统中的引力共振形成的。该共振相当于恒星天体引力波之间的摩擦。天体质量越大,它们之间的共振就会越强烈。恒星系中行星的位置以及大型行星体尘环的复杂结构都受到这种共振现象的影响。这些稳定的波形成了一连串的驻波,就好像吉他弹奏时琴弦振动所形成的波一样。最强的共振是1:1共振(称为第一谐波),该力场存在两个稳定点,两颗恒星的中心各存在1个。次强的共振是1:2共振(称...
代码星球 代码星球·2020-04-12
首页上一页...4142434445...下一页尾页