24小时热门版块排行榜    

查看: 2790  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

thisisit

铜虫 (小有名气)


[交流] 【讨论】线性预测编码中Levinson-Durbin算法在音频信号去相关应用中的问题

很多论文中指出对音频激励信号进行预白处理后得到近似白噪声,将与处理后的音频信号输入NLMS自适应滤波器,得到的残差相比未预白的原始信号所得残差要小,而且NLMS自适应滤波器的收敛速度也会加快,而且常用的方法有使用线性预测去除原始音频信号的自相关性,通过解格型预测器可以得到预测器的系数,常用的方法为Levinson-Durbin算法。

于是我查阅了Levinson-Durbin算法原理及其实现的资料,并将该算法用c语言实现,对于某一帧音频信号,我求得p阶预测器的系数为a0,a1,...,ap,其中a0=1,由此可知,如果该组系数对的话所得的预测语音和原始语音将非常相似,而且其差值e=s(n)+a1s(n-1)+a2s(n-2)+...+aps(n-p),将非常的小,而且相关性很小,近似为高斯白噪声。而且根据该组系数和所得残差序列将能够获得原始信号,s(n)=e-(a1s(n-1)+a2s(n-2)+...+aps(n-p))。

可是仿真的结果却并非如此,残差序列比较大,而且通过系数和残差序列返回的原始信号与原始信号有较大差异,尤其是音频信号值较大时。

是不是Levinson-Durbin算法不适合音频信号的去相关,可是有的资料却介绍使用该算法,而且在返回时的误差可能是因为截断和类型转换时产生的,可是按理说该值将很小,可是在音频数据较大时,该值却非常大,有时从某一正值编程某一负值,这样的误差太离谱了。

有研究该邻域的虫友用到过Levinson-Durbin算法吗,它有些什么样的特性,而误差有时如何产生的,请虫友帮忙回答,感谢万分。

[ Last edited by mze04532 on 2011-2-22 at 08:25 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

1124981644

银虫 (初入文坛)



小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
6楼: Originally posted by sd2558448 at 2014-02-18 20:24:13
先赞一个~!
但我想请教下,这种去相关法适用于音频编解码?因为考虑到杜宾算法本身的复杂度~

有,g.729就用到了Levinson-Durbin算法
7楼2015-04-28 09:56:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

thisisit

铜虫 (小有名气)



误差是由于在LD算法的求自相关系数是产生的,由于其大幅度音频信号下该帧的自相关系数值非常的大,32bit的存储空间远远不够,所以产生了溢出,以至于LD算法产生的去相关滤波器系数不准确,而同时在返回时也产生了同样的问题,将其改为64bit数据类型后,该误差消失,同时却在返回时产生了+-1的误差,该误差是由于float型强制转换为short int型产生的,做以下处理可以解决:

out = (short int)buffer;
if(buffer-(float)out>0.5) out +=1;
else if(buffer-(float)out<-0.5)  out -=1;

同时另一解决方案为:
#define WORD2INT(x) ((x) < -32767.5f ? -32768 : ((x) > 32766.5f ? 32767 : floor(.5+(x))))

out = WORD2INT(buffer);

欢迎做音频信号处理的虫友们一起讨论。。
2楼2011-02-22 11:06:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhenhai308

木虫 (正式写手)


thisisit(金币+2): 术业有专攻,以后你搞得东西我也许也不懂! 2011-03-27 15:12:22
太深奥了,不懂!
3楼2011-03-27 09:10:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

thisisit

铜虫 (小有名气)


呵呵,是很深奥哦,我也不太懂!
4楼2011-03-27 15:09:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +55 医学老男孩 2026-08-13 123/6150 2026-08-19 23:44 by stan_et
[基金申请] 今天基金会出结果吗?20260819 +13 kkkl_v 2026-08-19 13/650 2026-08-19 22:37 by 宝贝虫子
[基金申请] 时间戳变了,能看出什么问题? +12 基诺咪客 2026-08-17 16/800 2026-08-19 22:04 by kk 的小木虫
[基金申请] filecode,4个jtjc了 +11 ziyangfang 2026-08-19 13/650 2026-08-19 21:28 by aasahr
[基金申请] 今天放榜没戏了吧 +4 yuleib84 2026-08-19 5/250 2026-08-19 19:52 by hhs666
[基金申请] 今天放榜吗? +14 布布和一二 2026-08-19 15/750 2026-08-19 18:07 by gltch
[基金申请] filecode=后面第一个是大写字母 +10 wangze12014 2026-08-14 12/600 2026-08-19 16:56 by 苦难博士
[基金申请] 2027广东省杰青 +4 奶牛小黑 2026-08-15 10/500 2026-08-19 11:02 by wanfengnew
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +6 Tide man 2026-08-14 7/350 2026-08-19 09:56 by ZJTJZ
[基金申请] 重要消息,中午系统在维护 +10 yuleib84 2026-08-18 11/550 2026-08-19 07:30 by 羽毛枫f
[论文投稿] 投稿咨询 +4 wwm09 2026-08-17 6/300 2026-08-18 15:36 by wwm09
[基金申请] 时间戳又变了8-15 +14 archvillain 2026-08-15 26/1300 2026-08-18 13:37 by phantomgost
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +13 Ldrop2023 2026-08-13 16/800 2026-08-18 12:25 by 淀粉搬运工
[基金申请] 93BebMhtakh前后11位开头都是大写 +4 且听虎啸 2026-08-17 5/250 2026-08-18 00:49 by 蔡棒棒菂
[基金申请] 感觉是下周放榜了 +6 angus9576 2026-08-17 11/550 2026-08-17 23:57 by angus9576
[基金申请] 今天系统多次维护,明天很可能放榜! +8 zju2000 2026-08-16 9/450 2026-08-17 12:20 by lmz0216
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
信息提示
请填处理意见