本发明涉及一种吸油烟机技术领域,特别涉及一种应用于吸油烟机中的语音端点检测方法。
背景技术:
随着智能化技术的不断发展,语音识别技术得到普及,语音识别技术开始渗透到各种日常用品中进行使用。如授权公告号为cn205208686u(申请号为201521083692.7)的中国实用新型专利《一种语音输入控制吸油烟机》,以及授权公告号为cn206113052u(申请号为201620882578.9)的中国实用新型专利《一种基于智能云系统控制的智能油烟机》,还有授权公告号为cn206556088u(申请号为201621294280.2)的中国实用新型专利《一种带菜谱播报系统的吸油烟机》,其中公开的吸油烟机中均采用了语音识别技术,根据识别出的语音对吸油烟机进行自动控制,使得油烟机的操作更加方便和人性化。
但是涉及到语音识别则需要解决语音的去噪问题,吸油烟机在工作时噪音较大,在进行语音识别过程中,对油烟机风机噪音处理效果直接影响语音识别的准确性。同时吸油烟机工作于不同档位时,其噪声特征不同,如何提高吸油烟机不同工作档位下的语音识别能力也是待解决的问题。
技术实现要素:
本发明所要解决的技术问题是针对上述现有技术提供一种有利于降低吸油烟机不同工作档位下噪声误识别为语音的概率,同时能够减少语音识别过程中数据存储量的应用于吸油烟机中的语音端点检测方法。
本发明解决上述问题所采用的技术方案为:一种应用于吸油烟机中的语音端点检测方法,其特征在于:包括以下步骤:
s1、初始化吸油烟机的工作档位数s;
初始化吸油烟机工作在各工作档位时的第一短时能量门限值数组以及第二短时能量门限值数组;第一短时能量门限值数组为[th(1),th(2),th(3),......,th(i),......,th(s)];第二短时能量门限值数组为[tl(1),tl(2),tl(3),......,tl(i),......,tl(s)],其中i为自然数,1≤i≤s,tl(i)<th(i);
初始化吸油烟机工作在各工作档位时的短时过零率门限值数组:
[tz(1),tz(2),tz(3),......,tz(i),......,tz(s)];
s2、获取吸油烟机当前的工作档位数据i;
s3、采集获取语音信号,并对采集的语音信号进行预加重和分帧加窗处理,进而获取语音信号的短时信号帧;
s4、计算语音信号中各短时信号帧的短时能量以及短时过零率,进而获取语音信号的短时能量与时间的关系,以及语音信号的短时过零率与时间的关系;
s5、根据吸油烟机当前工作档位i对应的第一能量门限值th(i)计算获取语音信号的第一起止时间坐标数据(a,b);
s6、根据吸油烟机当前工作档位i对应的第二能量门限值tl(i)计算获取语音信号的第二起止时间坐标数据(a,b);
s7、根据吸油烟机当前工作档位i对应的短时过零率门限值tz(i)计算获取语音信号的第三起止时间坐标数据(a0,b0);
s8、获取语音信号的起止时间坐标为(a0,b0)。
为了缩短处理时间,在s6中,获取第二起止时间坐标数据(a,b)时,自第一起止时间坐标数据(a,b)中的起始时间坐标a处向左搜索以获取第二起止时间的起始时间坐标a,自第一起止时间坐标数据(a,b)中的终止时间b处向右搜索以获取第二起止时间的终止时间坐标b。
为了缩短处理时间,在s7中,获取第三起止时间坐标数据(a0,b0)时,自第二起止时间坐标数据(a,b)中的起始时间坐标a处向左搜索以获取第三起止时间的起始时间坐标a0,自第二起止时间坐标数据(a,b)中的终止时间b处向右搜索以获取第三起止时间的终止时间坐标b0。
作为改进,第一短时能量门限值数组、第二短时能量门限值数组、短时过零率门限值数组的获取方法为:
采集吸油烟机工作在各工作档位时的噪声信号,进而计算各工作档位下噪音信号的短时能量平均值,进而构成噪声信号的短时能量平均值数组:
同时计算各工作档位下噪音信号的短时过零率平均值,进而构成噪声信号的短时过零率平均值数组:
吸油烟机工作在各工作档位时,采集获取语音信号,进而计算各工作档位下语音信号的短时能量平均值,构成语音信号的短时能量平均值数组:
同时计算各工作档位下语音信号的短时过零率平均值,进而构成语音信号的短时过零率平均值数组:
计算吸油烟机工作在各工作档位下的第一短时能量门限值:
计算吸油烟机工作在各工作档位下的第二短时能量门限值:
计算吸油烟机工作在各工作档位下的短时过零率门限:
进而获取吸油烟机的短时过零率门限值数组[tz(1),tz(2),tz(3),......,tz(i),......,tz(s)]。
与现有技术相比,本发明的优点在于:该应用于吸油烟机中的语音端点检测方法可以根据不同的工作档位,分别根据不同的门限值进行语音的端点检测,使得检测结果更加准确,有效消除了工作档位噪音不同特性对检测结果的影响,进而降低了噪声环境中噪声误识别为语音的概率,同时也能减少后续语音识别过程中的数据存储量,提高语音识别的速度。另外该方法对硬件需求量小且低,适用于吸油烟机这种硬件性能不强的应用环境。
附图说明
图1为本发明实施例中应用于吸油烟机中的语音端点检测方法的流程图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
吸油烟机在运行过程中,风机的噪声随着档位的提升不断的增大,则对语音识别的准确率的影响不同。用户厨房的噪音又主要源于吸油烟机,由于吸油烟机的机构固定,风机位置也是固定的,则在档位固定的情况下,吸油烟机的噪声也是相对固定的。如此根据吸油烟机的档位信息针对性的进行语音识别能够有效提高各工作档位的语音识别率。
如图1所示,本实施例中的应用于吸油烟机中的语音端点检测方法,包括以下步骤:
s1、初始化吸油烟机的工作档位数s,本实施例中s为自然数,该工作档位数s在吸油烟机出厂时已经存储在控制芯片中,以芯片能够识别吸油烟机的工作档位为准。
初始化吸油烟机工作在各工作档位时的第一短时能量门限值数组以及第二短时能量门限值数组;第一短时能量门限值数组为[th(1),th(2),th(3),......,th(i),......,th(s)];第二短时能量门限值数组为[tl(1),tl(2),tl(3),......,tl(i),......,tl(s)],其中i为自然数,1≤i≤s,tl(i)<th(i);初始化吸油烟机工作在各工作档位时的短时过零率门限值数组:
[tz(1),tz(2),tz(3),......,tz(i),......,tz(s)]。
第一短时能量门限值数组、第二短时能量门限值数组以及短时过零率门限值数组可以在吸油烟机出厂前在实验室环境下测试获取。
具体的获取方法为:在实验室环境下,调节吸油烟机运行在各工作档位上,利用一块语音处理芯片分别对吸油烟机运行在各个工作档位下的工作噪声进行采集和处理,具体为芯片对噪音信号进行采样量化,再进行预加重处理,进而在进行分帧加窗处理,最后计算各工作档位下噪音信号的短时能量平均值,短时能量平均值采用现有的计算公式进行计算,进而构成噪声信号的短时能量平均值数组:
同时计算各工作档位下噪音信号的短时过零率平均值,短时过零率平均值采用现有的计算公式进行计算,进而构成噪声信号的短时过零率平均值数组:
在实验室环境下,调节吸油烟机工作在各个工作档位上,同时控制向吸油烟机的控制芯片发出标准的测试语音,利用通前述相同的语音处理芯片分别对吸油烟机运行在各个工作档位下的语音信号进行采集和处理,具体为芯片对语音信号进行采样量化,再进行预加重处理,进而在进行分帧加窗处理,最后计算各工作档位下语音信号的短时能量平均值,短时能量平均值采用现有的计算公式进行计算,进而构成语音信号的短时能量平均值数组:
同时计算各工作档位下语音信号的短时过零率平均值,短时过零率平均值采用现有的计算公式进行计算,进而构成语音信号的短时过零率平均值数组:
计算吸油烟机工作在各工作档位下的第一短时能量门限值:
计算吸油烟机工作在各工作档位下的第二短时能量门限值:
计算吸油烟机工作在各工作档位下的短时过零率门限:
进而获取吸油烟机的短时过零率门限值数组[tz(1),tz(2),tz(3),......,tz(i),......,tz(s)]。
s2、用户在使用吸油烟机的工作过程中,吸油烟机中的控制芯片自动检测获取吸油烟机当前的工作档位数据i。
s3、采集获取用户的控制语音信号,并对采集的语音信号进行预加重和分帧加窗处理,进而获取语音信号的短时信号帧。因为人类特殊的省力结构,受到声门激励与抠鼻辐射的影响,从口腔中发出的语音在高频段有衰减,预加重处理通常采用高通滤波器提升语音信号高频段响应。对语音信号进行分帧加窗处理时可以采用汉明窗进行分帧处理。
s4、计算语音信号中各短时信号帧的短时能量以及短时过零率,进而获取语音信号的短时能量与时间的关系,以及语音信号的短时过零率与时间的关系;
s5、根据吸油烟机当前工作档位i对应的第一能量门限值th(i)计算获取语音信号的第一起止时间坐标数据(a,b);第一起止时间坐标数据(a,b)可以识别出语音信号的大致起止时间点。
s6、根据吸油烟机当前工作档位i对应的第二能量门限值tl(i)计算获取语音信号的第二起止时间坐标数据(a,b),第二起止时间坐标数据(a,b)可以检测出语音信号的浊音的起止时间点。获取第二起止时间坐标数据(a,b)时,自第一起止时间坐标数据(a,b)中的起始时间坐标a处向左搜索以获取第二起止时间的起始时间坐标a,自第一起止时间坐标数据(a,b)中的终止时间b处向右搜索以获取第二起止时间的终止时间坐标b,如此可以节省处理时间。
s7、根据吸油烟机当前工作档位i对应的短时过零率门限值tz(i)计算获取语音信号的第三起止时间坐标数据(a0,b0)。由于汉语一般声母作为开始,而声母大部分为清音,与环境噪音容易混淆,但是环境噪音的短时过零率会明显低于清音的短时过零率,则第三起止时间坐标数据(a0,b0)可以直接作为语音信号的起止时间点。
获取第三起止时间坐标数据(a0,b0)时,自第二起止时间坐标数据(a,b)中的起始时间坐标a处向左搜索以获取第三起止时间的起始时间坐标a0,自第二起止时间坐标数据(a,b)中的终止时间b处向右搜索以获取第三起止时间的终止时间坐标b0。
s8、获取语音信号的起止时间坐标为(a0,b0)。通过语音信号的起止时间坐标(a0,b0)可以有效的获取对应有效的语音信号,对有效的语音信号进行特征提取后则能去掉原始语音中的冗余信息。最终将特征提取后的语音信息利用训练好的模型进行匹配,杏儿,能够有效的实现用户发出语音的获取。
该应用于吸油烟机中的语音端点检测方法可以根据不同的工作档位,分别根据不同的门限值进行语音的端点检测,使得检测结果更加准确,有效消除了工作档位噪音不同特性对检测结果的影响,进而降低了噪声环境中噪声误识别为语音的概率,同时也能减少后续语音识别过程中的数据存储量,提高语音识别的速度。另外该方法对硬件需求量小且低,适用于吸油烟机这种硬件性能不强的应用环境。