频谱扩展 matlab,语音信号频谱扩展

%

% pr10_3_1

clear all; clc; close all;

filedir=[];                             % 设置路径

filename='colorcloud.wav';              % 设置文件名

fle=[filedir filename];                 % 构成完整的路径和文件名

[x, fs, bits] = wavread(fle);           % 读入数据文件

x=x-mean(x);                            % 消除直流分量

x=x/max(abs(x));                        % 幅值归一

xl=length(x);                           % 数据长度

time=(0:xl-1)/fs;                       % 计算出时间刻度

p=12;                                   % LPC的阶数为12

wlen=200; inc=80;                       % 帧长和帧移

msoverlap = wlen - inc;                 % 每帧重叠部分的长度

y=enframe(x,wlen,inc)';                 % 分帧

fn=size(y,2);                           % 取帧数

% 语音分析:求每一帧的LPC系数和预测误差

for i=1 : fn

u=y(:,i);                           % 取来一帧

A=lpc(u,p);                         % LPC求得系数

aCoeff(:,i)=A;                      % 存放在aCoeff数组中

errSig = filter(A,1,u);             % 计算预测误差序列

resid(:,i) = errSig;                % 存放在resid数组中

end

%%%%%%%%%%%%%%%%%%%%%

%这个地方添加了程序

%对预测系数和预测误差进行上采样

aCoeff=upsample(aCoeff,2);

resid=upsample(resid,2);

%当采样率是8k的时,将参数进行修改,以扩展到16k

fn=size(aCoeff,2);

inc=inc*2;

wlen=wlen*2;

xl=xl*2;

fs=fs*2;

%%%%%%%%%%%%%%%%%%%%%

% 语音合成:求每一帧的合成语音叠接成连续语音信号

for i=1:fn

A = aCoeff(:,i);                    % 取得该帧的预测系数

residFrame = resid(:,i);            % 取得该帧的预测误差

synFrame = filter(1, A', residFrame); % 预测误差激励,合成语音

outspeech((i-1)*inc+1:i*inc)=synFrame(1:inc);  % 重叠存储法存放数据

% 如果是最后一帧,把inc后的数据补上

if i==fn

outspeech(fn*inc+1:(fn-1)*inc+wlen)=synFrame(inc+1:wlen);

end

end;

ol=length(outspeech);

if ol

outspeech=[outspeech zeros(1,xl-ol)];

end

% 发声

% wavplay(x,fs);

% pause(1)

wavplay(outspeech,fs);

wavwrite(outspeech,fs,'bandwidth_audio.wav');

% 作图

% subplot 211; plot(time,x,'k');

% xlabel(['时间/s' 10 '(a)']); ylabel('幅值'); ylim([-1 1.1]);

% title('原始语音信号')

% subplot 212; plot(time,outspeech,'k');

% xlabel(['时间/s' 10 '(b)']); ylabel('幅值'); ylim([-1 1.1]);

% title('合成的语音信号')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/513983.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数字基础设施开源操作系统欧拉全新发布

在华为全联接2021上,面向数字基础设施的开源操作系统欧拉(openEuler)全新发布。欧拉操作系统可广泛部署于服务器、云计算、边缘计算、嵌入式等各种形态设备,应用场景覆盖IT(Information Technology)、CT&am…

二分k均值 matlab,Matlab函数kmeans:K-均值聚类

转自:http://hi.baidu.com/lewutian/item/35dd29efec13d0f5e1a5d418K-means聚类算法采用的是将N*P的矩阵X划分为K个类,使得类内对象之间的距离最大,而类之间的距离最小。使用方法:IdxKmeans(X,K)[Idx,C]Kmeans(X,K)[Idx,C,sumD]Kmeans(X,K)[I…

mysql 聚簇索引和非聚簇索引_MySQL 聚簇索引 二级索引 辅助索引(上两期中奖名单)...

阅读文本大概需要3分钟。MySQL中每个表都有一个聚簇索引( clustered index ),除此之外的表上的每个非聚簇索引都是二级索引,又叫辅助索引( secondary indexes )。以InnoDB来说,每个InnoDB表具有一个特殊的索引称为聚集索引。如果表上定义有主…

共筑计算新生态 共赢数字新时代

[中国,深圳,2021年9月25日] 在华为全联接2021上,华为副总裁、计算产品线总裁邓泰华分享了六大数字生态的最新进展,并携手生态伙伴为计算产业带来一系列重磅内容:欧拉开源操作系统(openEuler)全新…

数据湖,已成为海量数据存储与分析的重要承载方式

简介: 在云计算和大数据时代,基于数据开展生产、运营、决策成为常态,根据Gartner报道,2019年数据基建方面的采购费用飙升到660亿美元,占据基础架构类软件费用的24%。数据的存储及应用体系是企业生态运转的中枢神经&…

Fluid 0.5 版本发布:开启数据集缓存在线弹性扩缩容之路

简介: 为了解决大数据、AI 等数据密集型应用在云原生场景下,面临的异构数据源访问复杂、存算分离 I/O 速度慢、场景感知弱调度低效等痛点问题,南京大学PASALab、阿里巴巴、Alluxio 在 2020 年 6 月份联合发起了开源项目 Fluid。 作者 | 顾荣 …

php生成cookie在哪,php程序中cookie的使用方法

Cookie 可以翻译为“小甜品,小饼干” ,Cookie 在网络系统中几乎无处不在,当我们浏览以前访问过的网站时,网页中可能会出现 :你好 XXX,这会让我们感觉很亲切,就好像吃了一个小甜品一样。这其实是…

c#类属性和实例属性_Visual C#类和对象的创建方式,定义类,实例化对象,实例讲解...

定义类类由class member类成员组成,包含字段、属性、方法和事件。其中字段和属性为类的数据成员,用来存储数据;方法负责数据的传递和运算。使用类之前,要进行声明,声明的语法如下:Class 类名称{访问权限 数…

面对不可避免的故障,我们造了一个“上帝视角”的控制台

简介: 混沌工程随着云原生的发展逐渐进入大家的视野,通过混沌工程可以很好地发现和解决在云原生化过程中的高可用问题。阿里巴巴在 2019 年开源了底层的混沌工程工具 - chaosblade,今年年初再次开源混沌工程控制台 chaosblade-box&#xff0c…

腾讯云鼎实验室发布云安全攻防矩阵,绘制九大攻防路径全景图

随着云计算技术和产业的蓬勃发展,企业上云已是数字化转型的必然趋势。但云上千般好,却也给企业带来了全新的安全挑战。云平台不仅要应对传统网络架构中存有的DDoS、入侵、病毒等常态问题,还要高度重视技术架构中虚拟机逃逸、资源滥用、横向穿…

Knativa 基于流量的灰度发布和自动弹性实践

简介: Knative 提供了基于流量的自动扩缩容能力,可以根据应用的请求量,在高峰时自动扩容实例数;当请求量减少以后,自动缩容实例,做到自动化地节省资源成本。此外,Knative 还提供了基于流量的灰度…

wordpress index.php 跳转,wordpress点击内容页跳转到其他url的解决方法

谈起wordpress这个源码程序,其实相对于其他的程序在php虚拟主机上的安全性还是比较好的,但是有时间就会莫名其妙的不知道是什么问题,就被挂马了,但是明显的挂马是比较好处理的,就怕的是隐藏的,会弄得我们会…

nginx 部署_部署 hexo 到 nginx

本来博客是使用 GitHub pages ,但近些日子访问贼慢,刚好手里有一台小机器,当然是要用起来(折腾就对了 )。前置条件:已购买 vps 和域名,按需备案。ssh 登录远程服务器,以 CentOS 为例…

阿里云云效技术专家:一文详解kubernetes下5种常见发布模式如何选择

简介: Kubernetes下5场场景应用发布方式的选择,每种发布模式适合什么样的场景,以及如何在阿里云云效上高效落地。 作者:郑云龙,阿里云云效技术专家 Kubernetes面向通用场景提供了非常灵活的应用管理和运维方式&#…

“西部云安全优才计划”落地西安,为云安全高质量发展夯实才智支撑

9月26日,2021首届-西部云安全峰会在西安顺利召开。聚焦西部云安全发展和人才培养需求,在本次峰会上,腾讯安全云鼎实验室、陕西省计算机学会联合西安多所高校发布了“西部云安全优才计划”,凝聚西安以及西部的安全力量,…

如何连接网站小马php,PHP连接mysql示例

$server_name"mysqlserver.com"; //数据库服务器名称$username"user"; // 连接数据库用户名$password"password"; // 连接数据库密码$mysql_database"mysqldb"; // 数据库的名字// 连接到数据库$connmysqli_connect($server_name, $us…

如何做一场高质量的分享?

简介: 最近我发现一些同学的分享越来越趋于“念稿”式。我一边看着分享的同学在上面念稿,另一边看着几十号人在下面看电脑看手机,我心里就特别着急。恨不得我自己上去讲,也恨不得没收了大家的电脑手机。但这种粗暴的方法肯定是不解…

apache日志导入mysql,将Apache访问日志记录到Mysql数据库中

环境操作系统:CentOS步骤1.下载源码下载地址:https://packages.debian.org/jessie/libapache2-mod-log-sql-mysql2.configure./configure --with-apxs/usr/local/bin/httpd/bin/apxs --with-mysql/usr/local/bin/mariadb注意:一定要检查confi…

linux添加php到环境,Linux系统为已编译的PHP环境添加扩展

问题背景平常我们都是先安装mysql,然后才能去安装php。假如先安装php,后安装mysql,由于php需要连接mysql,因而在php引擎中需要配置使用mysql.so扩展。这时需要手动编译生成mysql.so扩展。解决方案使用phpize工具能够生成mysql.so&…

matlab knn实现,Matlab之KNN实现

1. 算法流程1) 通过Matlab产生高斯分布产生两类数据,并标明类别2) 数据初始化:设置K某个常数(一般为奇数)3) 对于每个测试数据,计算其到两类数据的所有点的距离对于上述求得的距离,选出K个最小的,检…