CN101163239A - 一种新的矢量量化初始码书的生成方法 - Google Patents
一种新的矢量量化初始码书的生成方法 Download PDFInfo
- Publication number
- CN101163239A CN101163239A CNA200710150515XA CN200710150515A CN101163239A CN 101163239 A CN101163239 A CN 101163239A CN A200710150515X A CNA200710150515X A CN A200710150515XA CN 200710150515 A CN200710150515 A CN 200710150515A CN 101163239 A CN101163239 A CN 101163239A
- Authority
- CN
- China
- Prior art keywords
- vector
- cluster
- code book
- cell
- book
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
本发明涉及一种新的矢量量化初始码书的生成方法,属于数字图像、数字音频处理技术领域。首先参数初始化,后续处理是一个循环过程:第一步,首先计算距离门限值。将第一个训练矢量写入聚类矢量集,然后计算第二个训练矢量和它的距离d1,如果距离d1大于d0,则将第二个训练矢量加入聚类矢量集cluster,否则将它纳入第一个聚类矢量的胞腔,统计胞腔的矢量个数;第二步,统计出sizplus;第三步,判断,如果此时codebook已有siz_book个矢量,达到要求,算法结束;如果循环带来的码书增量加上当前码书大小未达到设计指标所制定的码书大小,那么依次将每个标记胞腔内的所有矢量从训练矢量集中删除,转到第一步。
Description
技术领域
本发明属于数字图象、数字音频处理技术领域,具体涉及一种新的矢量量化初始码书的生成方法。
背景技术
矢量量化技术在数字图像和数字音频的压缩中有着广泛的应用。在数字图像的矢量量化过程中,将图像分成4×4的小块,从而构成16维的矢量进行矢量量化;而在数字音频压缩中,将每n(如16)个线谱频率(LSF)构成一个n维矢量进行矢量量化
在矢量量化中,码书的设计起着关键的作用。经典的码书设计方法包括LBG算法,基于神经网络的码书设计方法(如自组织特征映射神经网络码书设计SOFM),模拟退火码书设计算法(simulated annealing,SA),等等。
一般最常用的码书设计方法是LBG算法(亦称GLA算法).而初始码书的选取又是LBG算法生成码书性能好坏的关键。一个不合理的初始码书容易使之后的LBG算法生成的码书陷入局部最优,而且会使迭代次数增大;而好的初始码书可以使LBG算法迭代生成的码书更接近全局最优,而且会减少迭代次数。
LBG算法:
基于平方误差测度和训练矢量集的LBG算法步骤如下:
步骤1:给定初始码书C(n+1),令迭代次数n=0,平均失真D(-1)→∞,给定相对门限ε(0<ε<1)。
步骤2:用码书C(0)中的各码字作为质心,根据最佳划分原则把训练矢量集X划分为N个胞腔 其中
步骤3:计算平均失真 ,判断相对误差是否满足|(D(n-1)-D(n))/D(n)|≤ε,若满足则停止算法,码书C(n)就是设计出的最终码书;否则转步骤4。
步骤4:根据最佳码书条件,计算各胞腔的质心,即
由这n个新质心yi (n+1),i=0,1,...,N-1形成新码书C(n+1),置n=n+1,转步骤2。
引理:对于有限训练矢量集,LBG算法总能产生一个量化器序列,其相应的平均失真是递减的,且经过有限次迭代达到收敛。
训练矢量集随机抽取法:
在运用LBG算法设计码书的过程中,初始码书的选取是能否生成性能良好的码书的关键。
最常用的生成LBG算法的初始码书的方法是随机法,即训练矢量集随机抽取法。训练矢量集随机抽取法是从L个训练矢量中随机抽取N个作为初始码书的方法:即每隔L/N个训练矢量选取一个训练矢量作为初始码矢。
在运用LBG算法设计码书的过程中,初始码书的选取是能否生成性能良好的码书的关键。一个不合理的初始码书容易使之后的LBG算法生成的码书陷入局部最优,收敛速度很慢,增大迭代次数;而好的初始码书可以使LBG算法生成的码书更接近全局最优,且收敛很快,减少迭代次数。初始码书的选取对码书性能和算法的收敛速度影响很大。
最常用的生成LBG算法的初始码书的方法是随机法,即训练矢量集随机抽取法。训练矢量集随机抽取法是从L个训练矢量中随机抽取N个作为初始码书的方法:即每隔L/N个训练矢量选取一个训练矢量作为初始码矢。
训练矢量集随机抽取法的一个优点是不需要进行初始化计算,从而大大减少了计算时间;另一个优点是由于初始码矢选自训练序列中,因此不存在空胞腔问题。训练矢量集随机抽取法的一个缺点是可能会选到一些非典型的矢量作为码矢,导致该胞腔只有很少矢量,甚至只有一个初始码矢,而且每次迭代又都保留这些非典型矢量或非典型矢量的质心;另一个缺点是会造成某些空间的胞腔分得过细,有些空间的胞腔分得太粗。这两个缺点都会导致码书中有部分码矢得不到充分利用,从而影响码书性能,和之后的LBG算法的收敛速度。
发明内容
本发明的目的在于提供一种新的矢量量化初始码书的生成方法,码书性能更好,更加接近全局最优,同时加快了收敛速度,减少迭代次数。
首先对一些参数初始化,包括要设计的码书大小siz_book,训练矢量集的n个dim维训练矢量存入数组re_sig[n][dim]。定义codebook[siz_book][dim]用于存储码书矢量,定义胞腔平均矢量数averagevectornum=n/siz_book,初始化空间划分距离delta=数据动态范围上限的四分之一至数据动态范围上限之间的数,动态码书大小计数器sizcount清零,码书大小增量计数器sizplus清零。定义cluster为聚类矢量集。
后续处理是这样一个循环过程:
第一步:首先置delta=delta/2,计算距离门限值d0=delta*delta*dim。
将第一个训练矢量作为聚类矢量写入聚类矢量集c lus ter,然后计算第二个训练矢量和它的距离d1,如果距离d1大于d0,则将第二个训练矢量加入聚类矢量集cluster,否则将它纳入第一个聚类矢量的胞腔,此胞腔的矢量个数VectorNumber++。以此类推,依次计算训练矢量集中剩下的矢量与聚类矢量集cluster中的各矢量的距离,取与最近的那个聚类矢量X的距离为d1,如果距离d1大于d0,则将这个训练矢量写入聚类矢量集,否则将它纳入聚类矢量X的胞腔,此胞腔的矢量个数VectorNumber++。直到所有训练矢量都参与了以上运算。
第二步:假设共筛选出m个聚类矢量构成聚类矢量集cluster,相应的当前训练矢量集re_sig被划分为m个胞腔。依次比较各胞腔的矢量个数VectorNumber与胞腔平均矢量数averagevectornum的大小,并标记(小于标记1)统计出VectorNumber<averagevectornum的胞腔个数sizplus。
第三步:如果sizcount+sizplus>=siz_book,说明此次循环带来的码书增量sizplus加上当前码书大小sizcount已经超出设计指标的码书大小siz_book。则将cluster矢量按照胞腔内矢量的个数VectorNumber由大到小的顺序排序(以占据矢量空间密集区),取前siz_book-sizcount个culster矢量写入码书,此时codebook已有siz_book个矢量,达到要求,算法结束;
如果sizcount+sizplus<siz_book,说明此次循环带来的码书增量sizplus加上当前码书大小sizcount未达到设计指标所制定的码书大小siz_book。那么依次将每个标记1(即VectorNumber<averagevectornum)的cluster矢量写入码书,其胞腔内的所有矢量从训练矢量集re_sig中删除,sizcount++,转到第一步。
本发明是基于矢量空间划分的初始码书生成方法,能使初始码书的码失在输入矢量空间中很好的散开,并尽可能占据输入概率密度较大的区域;从而使之后的LBG算法避免陷入局部最优,设计出的码书性能更好,更加接近全局最优,同时加快了收敛速度,减少迭代次数。
附图说明
图1是基于平方误差测度和训练矢量集的LBG算法流程框图;
图2是本发明流程框图;
图3是本算法应用于语音编码算法中进行主观测试的结果比较图,图中,横轴为测试序列,纵轴为主观测试CMOS分值;其中,方块的曲线代表本发明得到的结果数据;菱形块的曲线代表AMR-WB+原方法得到的结果数据。
具体实施方式
实施例1:
试验采用256灰度512×512Lena图和Peppers图作为训练图像分别用传统的随机初始码书生成法加LBG和新的初始码书生成法加LBG进行码书设计。
本发明的具体过程如下:
第一步:图像分块后成为16维矢量;由于数据的动态范围为0到255,所以置空间划分距离为256,然后找到相互距离大于delta*delta*16的矢量构成聚类矢量的集合cluster。然后用cluster中的矢量对训练矢量聚类成相应个数的胞腔。对胞腔矢量个数小于胞腔平均矢量数的cluster矢量加入码本,胞腔内的矢量从训练矢量集中删除。
第二步:更新训练矢量后,减小划分距离,delta=delta/2,重复以上过程,继续细划训练集,写入新码失,扩大码本。这样的逐步细致地划分训练矢量空间,能使码书中的码本分散开来。
第三步:当sizcount+sizplus>=siz_book时说明此时码本增加数sizplus加上原有码本数sizcount已经超出要设计的码本矢量数。此时将胞腔内的矢量个数从大到小排列,取矢量个数多的前siz_book-sizcount个cluster作为码矢。这样的排序,能使码书中的码本占据概率密度大的矢量空间。
生成的码书分别用于256灰度512×512Lena图,Peppers图和训练集以外的灰度512×512F16图进行编码。
以下给出了峰值信躁比和迭代次数的比较,可以看出新方法对PSNR提升了0.5dB左右,并且迭代次数大幅减小。
以下给出了峰值信躁比和迭代次数的比较,可以看出新方法对PSNR提升了0.5dB左右,并且迭代次数大幅减小。
码书尺寸 | 迭代次数 | PSNR(dB) | ||||||
传统LBG | New method | |||||||
传统LBG | Newmethod | 训练集内 | 训练集外 | 训练集内 | 训练集外 | |||
Lena | Peppers | F16 | Lena | Peppers | F16 | |||
256 | 99 | 39 | 30.9263 | 30.5092 | 28.0969 | 31.3463 | 31.0312 | 29.1523 |
512 | 49 | 33 | 32.109 3 | 31.6658 | 29.4425 | 32.4027 | 31.9970 | 29.5652 |
1024 | 35 | 35 | 32.86 34 | 32.5203 | 29.9738 | 33.4821 | 33.0940 | 30.4581 |
实施例2:
AVS-M音频标准中,应用了一种基于交错分组和帧内预测的线谱频率系数矢量量化技术。其中用了五个矢量量化码书:cb_isf_1_3_5[1024][3],cb_isf_7_9_11[512][3],cb_isf_13_15_2[512][3],cb_isf_4_6_8[512][3],cb_isf_10_12_14_16[512][3]。
用本发明的矢量量化码本训练方法训练出的码本替代原来的码本后,用PESQ测试结果如下。
CHaaeF4.1.wav | 3.562 | 3.632 |
CHaafM1.1.wav | 3.789 | 3.76 |
CHaaiM4.1.wav | 3.726 | 3.737 |
F1S01_noise_snr10.wav | 3.324 | 3.347 |
F2S01_noi se_snr10.wav | 3.168 | 3.124 |
M1S01_noi se_snr10.wav | 3.14 | 3.179 |
M2S01_noise_snr10.wav | 3.08 | 3.096 |
som_ot_x_1_org_16K.wav | 2.85 | 2.849 |
som_nt_x_1_org_16K.wav | 2.692 | 2.671 |
som_fi_x_1_org_16K.wav | 2.937 | 3.001 |
som_ad_x_1_org_16K.wav | 2.957 | 2.939 |
sbm_sm_x_1_org_16K.wav | 3.406 | 3.418 |
sbm_ms_x_1_org_16K.wav | 3.438 | 3.476 |
sbm_j s_x_1_org_1 6K.wav | 3.674 | 3.625 |
sbm_fi_x_9_org_16K.wav | 3.214 | 3.204 |
or08mv_16K.wav | 3.436 | 3.406 |
or09mv_16K.wav | 3.194 | 3.329 |
si03_16K.wav | 3.84 | 3.829 |
sm02_16K.wav | 3.152 | 3.215 |
everage | 3.31235 | 3.33045 |
Claims (2)
1.一种新的矢量量化初始码书的生成方法,包括以下过程:
参数初始化:包括要设计的码书大小siz_book,训练矢量集的n个dim维训练矢量存入数组re_sig[n][dim];定义codebook[siz_book][dim]用于存储码书矢量,定义胞腔平均矢量数averagevectornum=n/siz_book,初始化空间划分距离delta=数据动态范围上限的四分之一至数据动态范围上限之间的数,动态码书大小计数器sizcount清零,码书大小增量计数器sizplus清零;定义cluster为聚类矢量集;
生成方法是这样一个循环过程:
步骤一:首先置delta=delta/2,计算距离门限值d0=delta*delta*dim;将第一个训练矢量作为聚类矢量写入聚类矢量集cluster;计算第二个训练矢量和它的距离d1,如果距离d1大于d0,则将第二个训练矢量加入聚类矢量集cluster,否则将它纳入第一个聚类矢量的胞腔,此胞腔的矢量个数VectorNumber++;以此类推,依次计算训练矢量集中剩下的矢量与聚类矢量集cluster中的各矢量的距离,取与最近的那个聚类矢量X的距离为d1,如果距离d1大于d0,则将这个训练矢量写入聚类矢量集,否则将它纳入聚类矢量X的胞腔,此胞腔的矢量个数VectorNumber++,直到所有训练矢量都参与了以上运算;
步骤二:假设共筛选出m个聚类矢量构成聚类矢量集cluster,相应的当前训练矢量集re_sig被划分为m个胞腔;依次比较各胞腔的矢量个数VectorNumber与胞腔平均矢量数averagevectornum的大小,并标记统计出VectorNumber<averagevectornum的胞腔个数sizplus;
步骤三:如果sizcount+sizplus>=siz_book,说明此次循环带来的码书增量sizplus加上当前码书大小sizcount已经超出设计指标的码书大小siz_book;则将cluster矢量按照胞腔内矢量的个数VectorNumber由大到小的顺序排序(以占据矢量空间密集区),取前siz_book-sizcount个culster矢量写入码书,此时codebook已有siz_book个矢量,达到要求,算法结束;
如果sizcount+sizplus<siz_book,说明此次循环带来的码书增量sizplus加上当前码书大小sizcount未达到设计指标所制定的码书大小siz_book;那么依次将每个标记1的cluster矢量写入码书,其胞腔内的所有矢量从训练矢量集re_sig中删除,sizcount++,转步骤一。
2.根据权利要求1所述一种新的矢量量化初始码书的生成方法,其特征在于,参数初始化过程中,初始化空间划分距离delta=数据动态范围上限。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710150515XA CN101163239B (zh) | 2007-11-28 | 2007-11-28 | 一种新的矢量量化初始码书的生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710150515XA CN101163239B (zh) | 2007-11-28 | 2007-11-28 | 一种新的矢量量化初始码书的生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101163239A true CN101163239A (zh) | 2008-04-16 |
CN101163239B CN101163239B (zh) | 2010-12-08 |
Family
ID=39298048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710150515XA Expired - Fee Related CN101163239B (zh) | 2007-11-28 | 2007-11-28 | 一种新的矢量量化初始码书的生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101163239B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025998A (zh) * | 2010-12-28 | 2011-04-20 | 重庆邮电大学 | 一种数字图像信号矢量量化码书设计方法 |
CN102708872A (zh) * | 2012-06-11 | 2012-10-03 | 武汉大学 | 3d音频中水平方位参数码本获取方法 |
CN103718190A (zh) * | 2011-07-29 | 2014-04-09 | 惠普发展公司,有限责任合伙企业 | 增量图像聚类 |
CN103794219A (zh) * | 2014-01-24 | 2014-05-14 | 华南理工大学 | 一种基于m码字分裂的矢量量化码本生成方法 |
CN103905149A (zh) * | 2012-12-27 | 2014-07-02 | 联发科技(新加坡)私人有限公司 | 码本设计方法、通信设备以及码本训练方法 |
CN104064181A (zh) * | 2014-06-20 | 2014-09-24 | 哈尔滨工业大学深圳研究生院 | 一种语音识别的特征向量量化快速收敛方法 |
CN109104248A (zh) * | 2018-07-06 | 2018-12-28 | 西南交通大学 | 一种基于SOFM神经网络聚类的DRoF前端信号量化方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10112656A (ja) * | 1996-10-04 | 1998-04-28 | Yamaha Corp | 符号化復号方式 |
GB9622055D0 (en) * | 1996-10-23 | 1996-12-18 | Univ Strathclyde | Vector quantisation |
CN101030378A (zh) * | 2006-03-03 | 2007-09-05 | 北京工业大学 | 一种建立增益码书的方法 |
-
2007
- 2007-11-28 CN CN200710150515XA patent/CN101163239B/zh not_active Expired - Fee Related
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025998A (zh) * | 2010-12-28 | 2011-04-20 | 重庆邮电大学 | 一种数字图像信号矢量量化码书设计方法 |
CN103718190B (zh) * | 2011-07-29 | 2017-05-24 | 惠普发展公司,有限责任合伙企业 | 增量图像聚类 |
CN103718190A (zh) * | 2011-07-29 | 2014-04-09 | 惠普发展公司,有限责任合伙企业 | 增量图像聚类 |
CN102708872B (zh) * | 2012-06-11 | 2013-08-21 | 武汉大学 | 3d音频中水平方位参数码本获取方法 |
CN102708872A (zh) * | 2012-06-11 | 2012-10-03 | 武汉大学 | 3d音频中水平方位参数码本获取方法 |
CN103905149A (zh) * | 2012-12-27 | 2014-07-02 | 联发科技(新加坡)私人有限公司 | 码本设计方法、通信设备以及码本训练方法 |
CN103905149B (zh) * | 2012-12-27 | 2017-12-29 | 联发科技(新加坡)私人有限公司 | 码本设计方法、通信设备以及码本训练方法 |
CN103794219A (zh) * | 2014-01-24 | 2014-05-14 | 华南理工大学 | 一种基于m码字分裂的矢量量化码本生成方法 |
CN103794219B (zh) * | 2014-01-24 | 2016-10-05 | 华南理工大学 | 一种基于m码字分裂的矢量量化码本生成方法 |
CN104064181A (zh) * | 2014-06-20 | 2014-09-24 | 哈尔滨工业大学深圳研究生院 | 一种语音识别的特征向量量化快速收敛方法 |
CN104064181B (zh) * | 2014-06-20 | 2017-04-19 | 哈尔滨工业大学深圳研究生院 | 一种语音识别的特征向量量化快速收敛方法 |
CN109104248A (zh) * | 2018-07-06 | 2018-12-28 | 西南交通大学 | 一种基于SOFM神经网络聚类的DRoF前端信号量化方法 |
CN109104248B (zh) * | 2018-07-06 | 2021-04-09 | 西南交通大学 | 一种基于SOFM神经网络聚类的DRoF前端信号量化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101163239B (zh) | 2010-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101163239B (zh) | 一种新的矢量量化初始码书的生成方法 | |
Heittola et al. | Acoustic scene classification in dcase 2020 challenge: generalization across devices and low complexity solutions | |
CN107565971B (zh) | 一种数据压缩方法及装置 | |
CN104517613A (zh) | 语音质量评估方法及装置 | |
CN112508118B (zh) | 针对数据偏移的目标对象行为预测方法及其相关设备 | |
CN113903346A (zh) | 一种基于深度学习的音域平衡方法、装置及系统 | |
CN101145787A (zh) | 一种矢量量化方法及矢量量化器 | |
CN105718943A (zh) | 基于粒子群优化算法的特征选择方法 | |
CN102243641A (zh) | 大规模数据的高效聚类方法 | |
CN115801902B (zh) | 一种网络访问请求数据的压缩方法 | |
CN104282310A (zh) | 一种针对MP3Stego隐写后的音频的隐写检测方法 | |
CN110837890A (zh) | 一种面向轻量级卷积神经网络的权值数值定点量化方法 | |
CN101414365B (zh) | 一种基于粒子群的矢量码书量化器 | |
CN115329880A (zh) | 气象特征提取方法、装置、计算机设备和存储介质 | |
CN114219027A (zh) | 一种基于离散小波变换的轻量级时间序列预测方法 | |
CN107273624B (zh) | 一种基于fpga和mc模型生成突发随机脉冲噪声的方法及装置 | |
CN115035017A (zh) | 细胞密度分群方法、装置、电子设备及存储介质 | |
CN115423600B (zh) | 数据筛选方法、装置、介质及电子设备 | |
CN117093830A (zh) | 一种考虑局部与全局的用户负荷数据修复方法 | |
CN115982634A (zh) | 应用程序分类方法、装置、电子设备及计算机程序产品 | |
CN111488485B (zh) | 基于卷积神经网络的音乐推荐方法、存储介质和电子装置 | |
CN111914060B (zh) | 一种基于在线点评数据的商户多视图特征提取及模型构建方法 | |
CN114492798A (zh) | 基于核相似度和非极大抑制算法的卷积神经网络剪枝方法 | |
CN104484418B (zh) | 一种基于双分辨率的特征量化方法及系统 | |
CN109412718B (zh) | 宽带频谱信号检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101208 Termination date: 20111128 |