基于声音辨识以控制音乐播放的方法、***及其装置
技术领域
本发明涉及通信技术领域,特别是涉及一种基于声音辨识以控制音乐播放的方法、***及其装置。
背景技术
在日常生活中,很多人喜欢在跑步时随身携带移动终端,并且通过连接耳机以对音乐播放器内的歌曲进行播放,即一边跑步一边听歌;另,一些自行车、电瓶车用户在骑车的过程中也喜欢通过在移动终端上连接耳机以听歌。然而,上述行为实质上是一种比较危险的行为,因为耳机在播放音乐时,尤其在播放一些比较嘈杂的音乐时,将会导致用户无法听清周围环境内的声音,例如汽车的鸣笛声,而在路边跑步或骑车时倘若无法听清身后汽车的鸣笛声,则将会很容易导致意外事情的发生。
因此,本发明人觉得上述问题非常有其改良的必要性,遂以其多年从事相关领域的创作设计及专业制造经验,积极地针对一种基于声音辨识以控制音乐播放的方法、***及其装置进行研究改良,在各方条件的审慎考虑下终于开发出本发明。
发明内容
针对上述情况,为了克服现有技术的缺点,本发明实施例提供了一种基于声音辨识以控制音乐播放的方法、***及其装置,可有效解决现有技术中当用户通过耳机听音乐时对环境音中的危险提示音缺乏准确听取能力的问题。 本发明实施例采用如下技术方案:
一种基于声音辨识以控制音乐播放的方法,包括以下步骤:
将获取到的环境音所对应的声波图中分贝值低于第一预设阈值的声音进行过滤;
对过滤后的所述声波图进行傅里叶转换以获得第一声音频谱图,其中所述第一声音频谱图中频率F1所对应的频率值F1m每隔一预设时间段变化一次;
在所述频率F1所对应的频率值F1m中找出最大值max(F1m),将所述频率F1所对应的频率值F1m分别除以最大值max(F1m) 以得出新的频率F11所对应的频率值F11m并生成第二声音频谱图;
在数据库中提取已存的预设声音频谱图并将其与所述第二声音频谱图进行比对,即通过计算得出两幅图的相似值z,其计算公式为:
其中f=20,21,22...20000;以及
判断所述相似值z是否达到第二预设阈值,若达到则将控制移动终端的音乐播放器进行相应的功能操作。
作为优选,在将获取到的环境音所对应的声波图中分贝值低于第一预设阈值的声音进行过滤之前,所述方法还包括:
将获取到的预设声音所对应的声波图进行傅里叶转换以获得第三声音频谱图,其中所述第三声音频谱图中频率F2所对应的频率值F2m不变;
在所述频率F2所对应的频率值F2m中找出最大值max(F2m),将所述频率F2所对应的频率值F2m分别除以最大值max(F2m)以得出新的频率F22所对应的频率值F22m并生成所述预设声音频谱图;以及
将所述预设声音频谱图储存在所述数据库内。
作为优选,所述控制移动终端的音乐播放器进行相应的功能操作包括以下任意一种:
(1) 向所述移动终端发送第一控制指令以促使所述移动终端控制所述音乐播放器的音
量减小;
(2) 向所述移动终端发送第二控制指令以促使所述移动终端控制所述音乐播放器将正
在播放的歌曲切换为预设歌曲列表中的其中一首歌曲,其中所述预设歌曲列表中的歌曲风格为轻音乐;
(3) 向所述移动终端发送第三控制指令以促使所述移动终端控制所述音乐播放器停止
播放音乐。
作为优选,在控制移动终端的音乐播放器进行相应的功能操作之前,所述方法还包括:
判断所述频率F1所对应的频率值F1m是否发生变化;
若发生变化,则将根据所述第二声音频谱图中的数据生成变化前的所述第二声音频谱图以及变化后的所述第二声音频谱图;
判断变化前的所述第二声音频谱图与变化后的所述第二声音频谱图相比,其频率走势的相似度是否达到第三预设阈值;
若达到,则判断变化后的所述第二声音频谱图中的频率值F11m是否大于变化前的所述第二声音频谱图中的频率值F11m;
若大于,则生成控制指令。
一种基于声音辨识以控制音乐播放的***,所述***包括一控制装置以及一移动终端,其中,所述控制装置包括:
声音过滤单元,用于将获取到的环境音所对应的声波图中分贝值低于第一预设阈值的声音进行过滤;
第一傅里叶转换单元,用于对过滤后的所述声波图进行傅里叶转换以获得第一声音频谱图,其中所述第一声音频谱图中频率F1所对应的频率值F1m每隔一预设时间段变化一次;
第一计算单元,用于在所述频率F1所对应的频率值F1m中找出最大值max(F1m),将所述频率F1所对应的频率值F1m分别除以最大值max(F1m)以得出新的频率F11所对应的频率值F11m;
第一频谱图生成单元,用于根据新的频率F11所对应的频率值F11m以生成第二声音频谱图;
第二计算单元,用于在数据库中提取已存的预设声音频谱图并将其与所述第二声音频谱图进行比对,即通过计算得出两幅图的相似值z,其计算公式为:
其中f=20,21,22...20000;
第一判断单元,用于判断所述相似值z是否达到第二预设阈值;以及
控制单元,用于控制移动终端的音乐播放器进行相应的功能操作。
作为优选,所述控制装置还包括:
第二傅里叶转换单元,用于将获取到的预设声音所对应的声波图进行傅里叶转换以获得第三声音频谱图,其中所述第三声音频谱图中频率F2所对应的频率值F2m不变;
第三计算单元,用于在所述频率F2所对应的频率值F2m中找出最大值max(F2m),将所述频率F2所对应的频率值F2m分别除以最大值max(F2m)以得出新的频率F22所对应的频率值F22m并生成所述预设声音频谱图;以及
储存单元,用于将所述预设声音频谱图储存在所述数据库内。
作为优选,所述控制单元还包括以下各单元中的任意一单元:
第一发送单元,用于向所述移动终端发送第一控制指令以促使所述移动终端控制所述音乐播放器的音量减小;
第二发送单元,用于向所述移动终端发送第二控制指令以促使所述移动终端控制所述音乐播放器将正在播放的歌曲切换为预设歌曲列表中的其中一首歌曲,其中所述预设歌曲列表中的歌曲风格为轻音乐;以及
第三发送单元,用于向所述移动终端发送第三控制指令以促使所述移动终端控制所述音乐播放器停止播放音乐。
作为优选,所述控制装置还包括:
第二判断单元,用于判断所述频率F1所对应的频率值F1m是否发生变化;
第二频谱图生成单元,用于根据所述第二声音频谱图中的数据生成变化前的所述第二声音频谱图以及变化后的所述第二声音频谱图;
第三判断单元,判断变化前的所述第二声音频谱图与变化后的所述第二声音频谱图相比,其频率走势的相似度是否达到第三预设阈值;
第四判断单元,用于判断变化后的所述第二声音频谱图中的频率值F11m是否大于变化前的所述第二声音频谱图中的频率值F11m;以及
指令生成单元,用于生成控制指令。
一种基于声音辨识以控制音乐播放的装置,包括如权利要求5至8中任意一项权利要求所述的控制装置。
本发明实施例提供的技术方案带来的有益效果是:采用本发明的技术方案,当用户在跑步或骑车并通过将移动终端连接耳机以听音乐时,将能够准确的判别出环境音,例如可判别出环境音中存在汽车鸣笛音,即本发明将能够以及时地识别出该鸣笛音,并同时控制移动终端上的音乐播放器进行相应的功能操作,例如可控制音乐播放器进行音量减小、切换音乐、停止播放音乐中的任意一操作,以使得用户能够听到外界中的该鸣笛音,从而避免了危险;另外,本发明还可以识别出声音的传播方向,比如可识别出该鸣笛音是距离用户由远及近还是相反,增强了判别危险的准确度。
附图说明
为了让本发明之上述及其他目的、特征、优点能更明显易懂,下文将对实施例描述中所需要使用的附图作一简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种基于声音辨识以控制音乐播放的方法流程示意图;
图2a为本发明实施例一提供的一种过滤前的示例声波图;
图2b为本发明实施例一提供的一种过滤后的示例声波图;
图3为本发明实施例一提供的一种示例第一声音频谱图;
图4为本发明实施例一提供的一种示例第二声音频谱图;
图5为本发明实施例一提供的一种预设声音频谱图的生成方法流程示意图;
图6为本发明实施例一提供的一种示例第三声音频谱图;
图7为本发明实施例一提供的一种示例预设声音频谱图;
图8为本发明实施例二提供的一种基于声音辨识以控制音乐播放的方法流程示意图;
图9为本发明实施例三提供的一种基于声音辨识以控制音乐播放的***方块示意图;
图10为本发明实施例三提供的一种控制单元的***方块示意图;
图11为本发明实施例三提供的一种控制装置的***方块示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
在本发明以下实施例中,所述移动终端包括但不限定为具有触摸屏的智能手机、平板电脑、上网本、PDA(Portable Digital Assistant)、智能穿戴式设备等。
实施例一
请参考图1,图1为本发明实施例一提供的一种基于声音辨识以控制音乐播放的方法流程示意图。具体地,本实施例提供了一种基于声音辨识以控制音乐播放的方法,包括以下步骤:
步骤101、将获取到的环境音所对应的声波图中分贝值低于第一预设阈值的声音进行过滤;
步骤102、对过滤后的所述声波图进行傅里叶转换以获得第一声音频谱图,其中所述第一声音频谱图中频率F1所对应的频率值F1m每隔一预设时间段变化一次;
步骤103、在所述频率F1所对应的频率值F1m中找出最大值max(F1m),将所述频率F1所对应的频率值F1m分别除以最大值max(F1m)以得出新的频率F11所对应的频率值F11m并生成第二声音频谱图;
步骤104、在数据库中提取已存的预设声音频谱图并将其与所述第二声音频谱图进行比对,即通过计算得出两幅图的相似值z,其计算公式为:
其中f=20,21,22...20000;以及
步骤105、判断所述相似值z是否达到第二预设阈值,若达到则执行步骤106、将控制移动终端的音乐播放器进行相应的功能操作。
在步骤101中,获取所述环境音的工具可以是具有远距离收音功能的麦克风,在获取所述环境音之后,将根据获取到的所述环境音生成对应的声波图。
请参考图2a,图2a为本发明实施例一提供的一种过滤前的示例声波图。所述声波图上直观地显示出了在一单位时间段内过滤前的所述环境音所对应的分贝值的大小。例如,所述单位时间段为10S,其中第1S时所述环境音所对应的分贝值为20dB;第3S时所述环境音所对应的分贝值为40dB;第5S时所述环境音所对应的分贝值为100dB;第7S时所述环境音所对应的分贝值为105dB;第9S时所述环境音所对应的分贝值为100dB。
在本实施例中,将对所述声波图上分贝值低于所述第一预设阈值的声音(获取到的所述环境音)进行过滤。因为在实际应用中,获取到的所述环境音将是由多种声音混合而成,其中可能包括汽车行驶中所发出的声音(发动机声)、鸣笛声、被风吹响的树叶声、说话声等。在获取到的所述环境音中,有一部分声音是小分贝的,例如像被风吹响的树叶声等,这种类型的声音在本发明中对危险的判别不构成影响,因此可将此类小分贝的声音进行过滤,即将分贝值低于所述第一预设阈值的声音进行过滤,其中所述第一预设阈值是由工程师预先设定的,例如30dB、40dB等,在本实施例中可优选为50dB,即将所述声波图上所显示的低于50dB的声音进行过滤,且被过滤的声音将自动消失。
请参考图2b,图2b为本发明实施例一提供的一种过滤后的示例声波图。所述声波图上直观地显示出了在一单位时间段内被过滤后的所述环境音所对应的分贝值的大小。例如,第1S时所述环境音所对应的分贝值为0dB;第3S时所述环境音所对应的分贝值为0dB;第5S时所述环境音所对应的分贝值为100dB;第7S时所述环境音所对应的分贝值为105dB;第9S时所述环境音所对应的分贝值为100dB。
请参考图3,图3为本发明实施例一提供的一种示例第一声音频谱图。在步骤102中,所述预设时间段也就是上文中提到的单位时间段,也就是说,在本实施例中,所述环境音的获取方式为实时获取,即每隔所述预设时间段获取一次,因此在所述第一声音频谱图中,频率F1所对应的频率值F1m将每隔所述预设时间段变化一次,所述第一声音频谱图将实时发生变动,发生变动的周期即为所述预设时间段,例如10S、20S、30S等。其中,图3所示的所述第一声音频谱图具体可以是第一个所述预设时间段所对应的声音频谱图。
在步骤103中,首先需要在所述频率F1所对应的频率值F1m中找出最大值max(F1m),如图3所示,其中所述频率F1是由复数个频率点所组成的,例如20、21、22...20000,其中,频率点100所对应的频率值为80HZ,频率点1000所对应的频率值为100HZ,频率点10000所对应的频率值为50HZ,且所述频率F1所对应的频率值F1m中的最大值max(F1m)是由频率点1000所对应的频率值100HZ。
进一步地,需要将所述频率F1所对应的频率值F1m分别除以最大值max(F1m)以得出新的频率F11所对应的频率值F11m,即F11m= 。
具体地,将所述第一声音频谱图上的各个频率点所对应的频率值分别代入公式内计算,例如,将频率点100对应的频率值代入公式内,则F11m= = =0.8HZ;将频率点1000对应的频率值代入公式内,则F11m= = =1HZ;将频率点10000对应的频率值代入公式内,则F11m= = =0.5HZ。
请参考图4,图4为本发明实施例一提供的一种示例第二声音频谱图。具体地,在本实施例中,当计算出新的频率F11所对应的频率值F11m时,则需要根据频率值F11m生成第二声音频谱图。如上述所言,频率F1由频率点20、21、22...20000所组成,在本实施例中,仅以频率点100、1000、10000举例,因此在所述第一声音频谱图以及所述第二声音频谱图上,也仅以将举例的频率点所对应的频率值进行图形绘制,然未绘制的并不代表其频率值为0。如图4所示,频率点100所对应的频率值为0.8HZ;频率点1000所对应的频率值为1HZ;频率点10000所对应的频率值为0.5HZ。
具体地,通过执行步骤103后,可将原本各频率点所对应的频率值减小,如此能够增强辨识的准确度,方便下一步的运行以及计算,节省图形的储存容量。
请参考图5,图5为本发明实施例一提供的一种预设声音频谱图的生成方法流程示意图。具体地,在将获取到的环境音所对应的声波图中分贝值低于第一预设阈值的声音进行过滤之前,所述方法还包括:
步骤a、将获取到的预设声音所对应的声波图进行傅里叶转换以获得第三声音频谱图,其中所述第三声音频谱图中频率F2所对应的频率值F2m不变;
步骤b、在所述频率F2所对应的频率值F2m中找出最大值max(F2m),将所述频率F2所对应的频率值F2m分别除以最大值max(F2m)以得出新的频率F22所对应的频率值F22m并生成所述预设声音频谱图;以及
步骤c、将所述预设声音频谱图储存在所述数据库内。
具体地,上述步骤a-b与本实施例中的步骤102-103大致上相同,区别之处在于,在步骤a-b中,获取到的所述预设声音的一种固定声音,即所述预设声音将保持固定且不会发生变化,因此这种获取方式不是实时获取,即所述第三声音频谱图中频率F2所对应的频率值F2m不变,保持固定的数值。
在本实施例中,所述预设声音是汽车的喇叭声音,且所述汽车的喇叭声音可以是一种,也可以是复数种喇叭声音中的任意一种。
请参考图6以及图7,图6为本发明实施例一提供的一种示例第三声音频谱图;图7为本发明实施例一提供的一种示例预设声音频谱图。具体地,所述频率F2同样也是由复数个频率点所组成的,例如20、21、22...20000,其中,频率点100所对应的频率值为90HZ,频率点1000所对应的频率值为120HZ,频率点10000所对应的频率值为70HZ,且所述频率F2所对应的频率值F2m中的最大值max(F2m)是由频率点1000所对应的频率值120HZ。
进一步地,需要将所述频率F2所对应的频率值F2m分别除以最大值max(F2m)以得出新的频率F22所对应的频率值F22m,即F22m= 。
具体地,将所述第一声音频谱图上的各个频率点所对应的频率值分别代入公式内计算,例如,将频率点100对应的频率值代入公式内,则F22m= = =0.75HZ;将频率点1000对应的频率值代入公式内,则F22m= = =1HZ;将频率点10000对应的频率值代入公式内,则F22m= = =0.58HZ。在本实施例中,计算得出的结果如果是无线循环小数,则将保留小数点的后两位。
进一步地,当得出新的频率F22所对应的频率值F22m时,则需要根据频率值F22m生成预设声音频谱图。
在步骤104中,首先需要在所述数据库中提取已存的所述预设声音频谱图,接着将所述预设声音频谱图与所述第二声音频谱图进行比对,即通过计算得出两幅图的相似值z,其计算公式为:
其中f=20,21,22...20000;
具体地,上述公式的展开式为
其中即代表在所述第二声音频谱图中频率点20所对应的频率值,即代表在所述预设声音频谱图中频率点20所对应的频率值。
在步骤105中,所述第二预设阈值是由工程师预先设定的,例如70%、80%、90%等,本实施例对此并不作限定。假设设定所述第二预设阈值为80%,则当z达到80%时,则将判定所述第二声音频谱图与所述预设声音频谱图基本上相同,即代表获取到的所述环境音与汽车的喇叭声音基本相同,如此,则执行步骤106、控制移动终端的音乐播放器进行相应的功能操作。
在步骤106中,具体的控制方法为:生成控制指令并将其发送至所述移动终端上,其中所述控制指令可以通过无线的方式发送至所述移动终端,所述移动终端将根据所述控制指令执行相应的功能操作。
其中,所述控制移动终端的音乐播放器进行相应的功能操作包括以下任意一种:
(1)、向所述移动终端发送第一控制指令以促使所述移动终端控制所述音乐播放器的音量减小。
当所述移动终端控制所述音乐播放器的音量减小时,则与所述移动终端连接的耳机中的音量也将减小,在此状态下,用户可以听到汽车的鸣笛声,从而即时改变路径以避免风险。