6 我把葡萄酿成酒

尚未进行身份认证

吾日三省吾身

等级
TA的排名 1w+

算法性能测量方法

如何判断一个算法的性能?无非就是判断一个算法的时间复杂度和空间复杂度以及在特定CPU架构下的特殊性能,比如有没有FPU。方法进行Big-O分析,就是算法导论里那种,对于复杂的运算过程不适用限定CPU能力,内存,计算运行时间。由于CPU是分时计算的,此时可以profile一下算法本身占了多少比例。如果是跑在复杂的系统上,需要top一下看看占用了多少比例,这样可以了解其他进程对它的影响。计算

2017-02-03 20:50:51

定点化的基本原理

CPU有三种可能的浮点数处理方式Use float instructions if your CPU has a FPU. (fast)Have your compiler translate floating point arithmetic to integer arithmetic. (slow)Use float instructions and a CPU with no FPU.

2017-01-12 09:51:45

GDB

How to use gdb

2017-01-12 09:49:12

平滑滤波

平滑滤波是低频增强的空间域滤波技术。它的目的有两类:一类是模糊;另一类是消除噪音。空间域的平滑滤波一般采用简单平均法进行,就是求邻近像元点的平均亮度值。邻域的大小与平滑的效果直接相关,邻域越大平滑的效果越好,但邻域过大,平滑会使边缘信息损失的越大,从而使输出的图像变得模糊,因此需合理选择邻域的大小。簡易型平滑濾波器最簡易型的平滑濾波器可表示為下式可改寫為h[n]如下

2016-12-19 10:05:29

音频编码之子带编码

子带。子带(subband)是指这样的一种频率范围,当两个音调的频率位于一个子带内时,人就会把两个音调听成一个。更一般的情况是,如果一个复杂信号的频率分布位于一个子带内时,人耳的感觉是该信号等价于一个频率位于该子带中心频率处的简单信号,这是子带的核心内涵。简单说,子带是指一个频率范围,频谱位于这个范围内的信号可以用一个单一频率的分量来代替。 一般等价的频率取子带的中心频率,振幅取子带内个频

2016-11-23 16:26:47

ARM中的浮点运算

General嵌入式系统中三种可能的浮点数处理方式(转载自StackOverflow)1. Use float instructions if your CPU has a FPU. (fast) 直接使用浮点指令,前提是CPU有一个浮点运算单元。速度最快。2. Have your compiler translate floating point arithmetic to integer ar

2016-09-18 09:21:53

WebRtc中的AEC算法

理论回声消除器的数学模型图回声消除本质上就是把输出信号和它产生的回声信号之间建立一个回声数学模型,利用开始的数据训练这个模型的参数,怎么训练呢?就是在远端有说话,但近端没有说话的时候,录音应该是静音,即回声完全消除。所以算法就朝着这个方向努力,一旦回声为0,则滤波器收敛。自适应滤波器算法多种多样,但是目前流行的还是最经典的LMS和NLMS,NLMS是LMS的优化。判断标准:收敛速度快,运算复杂

2016-09-06 16:49:23

OpenBlas, Neon & VFP

OpenBlasIn scientific computing, OpenBLAS is an open source implementation of the BLAS (Basic Linear Algebra Subprograms) APIwith many hand-crafted optimizations for specific processor types. It is dev

2016-09-05 12:07:17

VAD算法

VAD算法基于信噪比(snr)的vad基于DNN的vad基于能量Energy的vad基于Decoder的Vad混合DNN和Decoder的Vad基于信噪比的VAD算法首先假设初始时的人是没有说话的,计算12帧初始声音的平均能量作为baseline,这个能量相当于底噪。若进入的一帧的rms大于这个baseline,认为有人声,否则认为无人声。初始时,连续n秒无人声,认为用户没有说话;连续3

2016-09-02 19:04:37

Bitmap & Bitset

class Bitmap { public: explicit Bitmap(const int size) : size_(size), num_words_((size + 31) / 32) { words_.resize(size); Reset(); }~Bitmap() {}int size() const { return size_;

2016-09-02 18:42:30

SWIG(Simplified Wrapper and Interface Generator)

SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. SWIG is used with different types of target languages including commo

2016-09-02 12:55:42

C++中的智能指针

Smart pointersSmart pointers enable automatic, exception-safe, object lifetime management. Defined in header Pointer categories 1. unique_ptr (C++11) smart pointer with unique object ownership semant

2016-09-01 21:30:53

Ubuntu上安装Kaldi

什么是Kaldi? Kaldi is a speech recognition toolkit, freely available under the Apache License. 注意,Kaldi仅仅是一个工具包,不是一个语音识别框架,想做语音识别,框架还要自己写。这里有一系列ASR开源软件的比较: https://en.wikipedia.org/wiki/List_of_speech_

2016-09-01 20:08:51

语音专题第三讲,语言模型

语言模型技术广泛应用于语音识别、OCR、机器翻译、输入法等产品上。语言模型建模过程中,包括词典、语料、模型选择,对产品的性能有至关重要的影响。语言模型的建模需要利用复杂的模型公式进行模拟计算,是人工智能领域的关键技术之一。 曹立新,2011年7月毕业于哈尔滨工业大学计算机科学与技术专业,曾任百度语音资深研发工程师。负责百度超大语言模型训练,语音交互技术研发以及语音搜索、语音输入法、语音助手等产品

2016-09-01 10:35:38

语音专题第三讲,声学模型

语音技术在近年来开始改变我们的生活和工作方式。对于某些嵌入式设备来说,语音成为了人机交互的主要方式。出现这种趋势的原因,首先是计算能力的不断提升,通用GPU等高计算能力设备的发展,使得训练更复杂、更强大的声学模型(Acoustic Model, AM)变得可能,高性能的嵌入式处理器的出现,使语音识别的终端应用变得可能。 声学模型是人工智能领域的几大基本模型之一,基于深度学习的声学模型发展对于人工智

2016-09-01 10:16:06

语音专题第一讲,麦克风阵列的语音信号处理技术

转载自地平线机器人大讲堂,主讲人徐荣强。 2011年11月毕业于英国爱丁堡大学通信与信号处理专业,曾任诺基亚,联想,微软高级音频工程师。现在Horizon-Robotics负责语音相关硬件系统设计,涉及远场高灵敏度麦克风阵列设计,高精度音频硬件编解码器评估验证,远场语音前处理算法的评估验证,涉及声源定位,波束形成,盲信号分离,回声抑制及平稳降噪等相关技术算法。前言随着人工智能与人们的生活越来越

2016-08-31 21:31:25

SharePreference Commit vs Apply

commit() writes the data synchronously (blocking the thread its called from). It then informs you about the success of the operation. apply() schedules the data to be written asynchronously. It does

2016-08-31 16:14:53

详解语音处理检测技术中的热点——端点检测、降噪和压缩

作为一种人机交互的手段,语音的端点检测在解放人类双手方面意义重大。同时,工作环境存在着各种各样的背景噪声,这些噪声会严重降低语音的质量从而影响语音应用的效果,比如会降低识别率。未经压缩的语音数据,网络交互应用中的网络流量偏大,从而降低语音应用的成功率。因此,音频的端点检测、降噪和音频压缩始终是终端语音处理关注的重点,目前仍是活跃的研究主题。为了能和您一起了解端点检测和降噪的基本原理,带您一起一窥音频

2016-08-28 23:34:40

语音识别的痛点在哪,从交互到精准识别如何做?

语音识别是目前应用最成熟的人机交互方式,从最初大家体验过的有屏手持设备这种近场的语音识别,如Siri以及各种语音助手,到现在,语音识别的应用已经完成了向智能硬件以及机器人上延伸,不过,新的人机交互对硬件、算法要求更加苛刻,各企业正面临着巨大的挑战。那么实现人机交互需要解决哪些问题?这其中的关键技术有哪些?人机交互的未来趋势如何?本期硬创公开课邀请了科大讯飞的研发主管赵艳军为大家答疑解惑。 分享嘉

2016-08-28 22:33:13

语音识别系统及科大讯飞最新实践

语音作为最自然便捷的交流方式,一直是人机通信和交互最重要的研究领域之一。自动语音识别(Automatic Speech Recognition,ASR)是实现人机交互尤为关键的技术,其所要解决的问题是让计算机能够“听懂”人类的语音,将语音中传化为文本。自动语音识别技术经过几十年的发展已经取得了显著的成效。近年来,越来越多的语音识别智能软件和应用走人了大家的日常生活,苹果的Siri、微软的小娜、科大讯

2016-08-28 21:14:20

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!