pcm 的matlab实现未编码、编码、译码波形和不同幅度的量化信噪比,我的程序有问题,clear all;close all;t=0:0.01:10; %定义时间抽样点vm1=-70:1:0; %输入的信号幅度的db值vm=10.^(vm1/20); %输入信号幅度figure(1

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 01:12:20
pcm 的matlab实现未编码、编码、译码波形和不同幅度的量化信噪比,我的程序有问题,clear all;close all;t=0:0.01:10; %定义时间抽样点vm1=-70:1:0; %输入的信号幅度的db值vm=10.^(vm1/20); %输入信号幅度figure(1

pcm 的matlab实现未编码、编码、译码波形和不同幅度的量化信噪比,我的程序有问题,clear all;close all;t=0:0.01:10; %定义时间抽样点vm1=-70:1:0; %输入的信号幅度的db值vm=10.^(vm1/20); %输入信号幅度figure(1
pcm 的matlab实现未编码、编码、译码波形和不同幅度的量化信噪比,我的程序有问题,
clear all;
close all;
t=0:0.01:10; %定义时间抽样点
vm1=-70:1:0; %输入的信号幅度的db值
vm=10.^(vm1/20); %输入信号幅度
figure(1);
for k=1:length(vm)
for m=1:2
x=vm*sin(2*pi*t+2*pi*rand(t)); %输入语音信号
v=1;
xx=x/v;
sxx=floor(xx*4096);
y=pcm_encode(sxx); %PCM编码
yy=pcm_decode(y,v); %PCM译码后信号幅值
nq(m)=sum((x-yy)*(x-yy))/length(x);%噪音功率
sq(m)=mean(yy.^2); %信号均值
snr(m)=(sq(m)/nq(m)); %信噪比
drawnow
subplot(211)
plot(t,x);
title('采样序列'); %画出采样序列的图形
subplot(212)
plot(t,yy);
title('解码序列'); %画出PCM解码后的序列图
end
snrq(k)=10*log10(mean(snr)); %量化信噪比
end
figure(2)
plot(vm1,snrq);
axis([-60 0 0 60]); %X轴范围是(-60,0)Y轴范围是(0,60)
grid;
function [out]=pcm_encode(x); %定义A率13折线压缩特性
n=length(x);
for i=1:n
if x(i)>0
out(i,1)=1; %代表正值
else
out(i,1)=0; %代表负值
end
if abs(x(i))>=0&abs(x(i))

pcm 的matlab实现未编码、编码、译码波形和不同幅度的量化信噪比,我的程序有问题,clear all;close all;t=0:0.01:10; %定义时间抽样点vm1=-70:1:0; %输入的信号幅度的db值vm=10.^(vm1/20); %输入信号幅度figure(1
我修改了一下,能够运行了,不知道是不是你想要的结果?
clear all;
close all;
t=0:0.01:10; %定义时间抽样点
%vm1=-70:1:0; %输入的信号幅度的db值
vm1=linspace(-70,0,1001);
vm=10.^(vm1/20); %输入信号幅度
figure(1);
for k=1:length(vm)
for m=1:2
%x=vm*sin(2*pi*t+2*pi*rand(t)); %输入语音信号
x=vm.*sin(2*pi*t); %输入语音信号
v=1;
xx=x/v;
sxx=floor(xx*4096);
y=pcm_encode(sxx); %PCM编码
yy=pcm_decode(y,v); %PCM译码后信号幅值

nq(m)=sum((x-yy).*(x-yy))/length(x);%噪音功率
sq(m)=mean(yy.^2); %信号均值
snr(m)=(sq(m)/nq(m)); %信噪比
drawnow
subplot(211)
plot(t,x);
title('采样序列'); %画出采样序列的图形
subplot(212)
plot(t,yy);
title('解码序列'); %画出PCM解码后的序列图
end
snrq(k)=10*log10(mean(snr)); %量化信噪比
end

figure(2)
plot(vm1,snrq);
axis([-60 0 0 60]); %X轴范围是(-60,0)Y轴范围是(0,60)
grid;
function out=pcm_decode(in,v);
n=length(in);
in=reshape(in',8,n/8)'; %将in值变换成8行
slot(1)=0;
slot(2)=16;
slot(3)=32;
slot(4)=64;
slot(5)=128;
slot(6)=256;
slot(7)=512;
slot(8)=1024;
step(1)=1;
step(2)=1;
step(3)=2;
step(4)=4;
step(5)=8;
step(6)=16;
step(7)=32;
step(8)=64;
for i=1:n/8
ss=2*in(i,1)-1;
tmp=in(i,2)*4+in(i,3)*2+in(i,4)+1;
st=slot(tmp);
dt=(in(i,5)*8+in(i,6)*4+in(i,7)*2+in(i,8))*step(tmp)+0.5*step(tmp);
out(i)=ss*(st+dt)/4096*v; %量化输出值
end
function [out]=pcm_encode(x); %定义A率13折线压缩特性
n=length(x);
for i=1:n
if x(i)>0
out(i,1)=1; %代表正值
else
out(i,1)=0; %代表负值
end
if abs(x(i))>=0&&abs(x(i))

pcm 的matlab实现未编码、编码、译码波形和不同幅度的量化信噪比,我的程序有问题,clear all;close all;t=0:0.01:10; %定义时间抽样点vm1=-70:1:0; %输入的信号幅度的db值vm=10.^(vm1/20); %输入信号幅度figure(1 急需1个关于PCM编码的MATLAB仿真实例 要有程序有图 请达人帮帮忙 PCM调制编码所用的是折叠二进制码,怎么理解知道这是事实,但是它是怎么实现的? 求模拟话音的PCM编码的采样频率 PCM编码与AC-3编码区别PCM编码与AC-3编码这两种音频编码都有什么区别? Matlab实现PCM编码出错,求指导.function code=pcm(S) %S为输入信号z=sign(S); %判断S的正负MaxS=max(abs(S)); %求S的最大值 S=abs(S/MaxS); %归一化Q=2048*S; %量化code=zeros(length(S),8); %代码存储矩阵(全零)%段落码 实数编码遗传算法是怎么实现实数编码的? 运用MATLAB语言,对正弦信号进行均匀PCM量化编码.产生一幅度为1,的正弦信号,用均匀PCM方法用8电平作均运用MATLAB语言,对正弦信号进行均匀PCM量化编码.产生一幅度为1,频率为1的正弦信号,用均匀P 求pcm编码最低抽样频率的题某模拟信号频率30Khz到118Khz,对其进行pcm编码,最低抽样频率是多少? PCM编码采样频率语音信道的频率范围为300-3400HZ,如果采用PCM编码技术则采样频率必须大于多少? 实数编码是如何实现的? 遗传算法求离散点的最值问题,离散点的编码方式是浮点编码,MATLAB如何实现交叉和变异操作? 为什么实验时观察到的pcm编码信号总是随时变化的 为什么实验时观察到的PCM编码信号总是随时变化? 为什么Pcm编码要采用非均匀量化? 为什么对pcm buf进行amr编码出现掉帧? 用matlab对一幅图像进行算数编码 RLE编码 霍夫曼编码 香农编码编程 matlab中 a=1:19; 如何实现a中19个数的随机交换,用遗传算法如何实现第一步的编码 谢谢