一种基于语音识别的考评方法和系统技术方案

技术编号:40970950 阅读:29 留言:0更新日期:2024-04-18 21:20
本发明专利技术提供了一种基于语音识别的考评方法和系统,包括以下几个模块:通信模块,用于在分布式系统中存储、转发和路由消息;拉流模块,用来进行音视频转码、多媒体格式转换、流传输和录制等任务;音频数据切块模块,访问麦克风和扬声器等音频设备;语音端点检测模块,用于检测语音信号中的端点;语音预处理模块,做归一化处理并转换成需要的格式;语音识别模型推理模块,用来将语音转换为文本;拼音模糊匹配模块,提供近似字符串匹配和比较的算法。本发明专利技术解决了电力行业考评中语音打分点只能靠监考人手动打分,导致打分效率低,打分准确率低的问题。

【技术实现步骤摘要】

本专利技术涉及语音识别领域,尤其是一种基于语音识别的考评方法和系统


技术介绍

1、由于电力行业作业人员要经常涉及到对各种电力设施设备的操作,一旦操作不当发生事故往往都是致人重伤或死亡的重大安全事故。因此对电力行业相关作业制定了安全行为规范,要求相关作业人员定期参加安全规范作业考评。对未通过考评的员工,会暂时吊销其上岗资格,待其重新参加安全规范作业培训并重新通过考评后才能重新上岗,用此机制帮助提高作业人员的安全意识。考评中通常会有一个监考员全程陪伴,负责给考生打分并监护考试期间的人员安全。考评中操作项众多,除了考生必须按照相应规范完成这些操作以外,在每个操作前后考生必须口述操作注意事项及操作结果,这些口述也是纳入考评的打分点的。但由于实际考试中,无法做到所有操作都是完全按照评分表中的顺序执行的,监考员也要时刻监护考生的安全,往往会造成误打分和漏打分。随着人工智能深度学习的发展,尤其是语音识别方面取得的重大进展,通过计算机将语音音频转写成文字成为了可能。然而在嘈杂环境中和带有严重口音的普通话语音识别及语音考点的自动匹配打分环节上还有不少细节上的难点,技术也在本文档来自技高网...

【技术保护点】

1.一种基于语音识别的考评方法,其特征在于包括以下步骤:

2.如权利要求1所述的一种基于语音识别的考评方法,其特征在于所述的从软件端接收考试开始信号和拉流地址是通过RabbitMQ通信模块的"voice_tipmessage"通信管道运行的,其中"voice_tipmessage"为RabbitMQ队列。

3.如权利要求1所述的一种基于语音识别的考评方法,其特征在于所述的拉音频流是通过ffmpeg-python拉流模块完成的,其工作流程为:程序在接收到第一个拉流地址后,会将其送入此模块,此模块会根据拉流地址的格式和输入选择,在子进程中做相应的拉流,将编解码器为pc...

【技术特征摘要】

1.一种基于语音识别的考评方法,其特征在于包括以下步骤:

2.如权利要求1所述的一种基于语音识别的考评方法,其特征在于所述的从软件端接收考试开始信号和拉流地址是通过rabbitmq通信模块的"voice_tipmessage"通信管道运行的,其中"voice_tipmessage"为rabbitmq队列。

3.如权利要求1所述的一种基于语音识别的考评方法,其特征在于所述的拉音频流是通过ffmpeg-python拉流模块完成的,其工作流程为:程序在接收到第一个拉流地址后,会将其送入此模块,此模块会根据拉流地址的格式和输入选择,在子进程中做相应的拉流,将编解码器为pcm_s16le,采样率为16000hz,通道数为1这样格式的音频数据以字节方式存入audio_pipe。

4.如权利要求3所述的一种电力行业考评系统,其特征在于所述的ffmpeg-python拉流模块的输入源是麦克风时,设置audio_pipe为none;然后再用rnnoise模型对获得的音频进行去噪。

5.如权利要求1所述的一种基于语音识别的考评方法,其特征在于所述的音频数据切块是在pyaudio音频数据切块模块中完成的,其流程为:设置pyaudio的音频流,用callback()函数实时取出audio_pipe中的数据,按照每秒50个块,每个块包含320个图文框的方式切块,然后送入audio_queue。

6.如权利要求1所述的一种基于语音识别的考评方法,其特征在于所述的检测字节数据块的语音端点是在webrtcvad语音端点检测模块中完成的,其流程为:设置一个环形缓冲区的队列,最大长度为50(即存放最大时长1秒=50块),每个块送入环形缓冲区前需要用webrtcvad语音端点检测器给其打上是否为语音的标签,如果环形缓冲区中达到一半以上的语音块时,将环形缓冲区中的数据送入一个语音段的字节队列中,如果环形缓冲区中语音块少于一半时,在最后一个语音块后加一个none作为截止符,将截止符前的数据送入语音段,然后输出语音段给下游模块,如果这个语音段过长(连续20秒以上的数据),则会被舍弃,防止在模型推理步骤中时间维度超过其允许的最大值而出现报错。

7.如权利要求1所述的一种基于语音识别的考评方法,其特征在于所述的对语音字节数据段进行语音预处理是在语音预处理模块中完成的,其流程为:将语音段里的字节数据转换成np.int16格式numpy阵列,做归一化并转成np.float32格式,最后转成(1,<time_length>)格式的张量。

8.如权利要求1所述的一种基于语音识别的考评方法,其特征在于所述的将语音数据张量识别成文本是在语音识别模型推理模块中完成的,语音识别模型推理模块使用了wav2vec2语言识别模型将语音转换为文本。

9.如权利要求8所述的一种基于语音识别的考评方法,其特征在于所述的wav2vec2语言识别模型的工作流程如下:

10.如权利要求8所述的一种基于语音识别的考评方法,其特征在于所述的wav2vec2语言识别模型输入为预处理好后的张量,输出的识别结果为带空格的字符串,空格为令牌的分割符。

11.如权利要求8所述的一种基于语音识别的考评方法,其特征在于所述的wav2vec2语言识别模型采用无监督的方式进行大量无标注语音做预训练,然后仅使用极少的带标注的语音数据集做细粒度调整。

12.如权利要求8所述的一种基于语音识别的考评方法,其特征在于所述的wav2vec2语言识别模型在做细粒度调整时,添加了现场采集的带口音的语音数据合并到普通话语音数据集中,并在数据增强中添加了噪声数据集。

13.如权利要求1所述的一种基于语音识别的考评方法,其特征在于所述的将语音识别文本结果进行拼音模糊匹配是在rapidfuzz拼音模糊匹配模块中完成的,其流程为:先将识别结果去空格再转换成拼音,再按照现在工作阶段取出该阶段的关键词库,将这些关键词也转换成拼音,输入rapidfuzz算法进行字符串相似度匹配,按匹配到的关键词按置信度由高到低列出,然后遍历关键词,如果其与关键句是1比1对应的,则返回该关键句,如果其在多个关键句中出现,将这些关键句与这个关键词相关的另一个关键词取出看是否在剩余匹配到的关键词列表中,如存在,返回该关键句;对匹配到的关键词句进行打分并输出。

14.如权利要求13所述的一种基于语音识别的考评方法,其特征在于所述的rapidfuzz拼音模糊匹配模块使用的是levenshtein距离算法来衡量两个字符串差异的度量。

15.如权利要求13所述的一种基于语音识别的考评方法,其特征在于所述的rapidfuzz拼音模糊匹配模块使用分词n-grams和字符n-grams技术来提高字符串匹配和比较算法的准确性和速度。

16.如权利要求1所述的一种基于语音识别的考评方法,其特征在于所述的对匹配到的关键词句进行打分并输出是在rabbitmq通信模块的"voice_contentmessage"通信管道中完成的,其中"voice_contentmessage"为rabbitmq交换器,用于在程序最末端将语音识别和匹配结果发送回软件端。

17.如权...

【专利技术属性】
技术研发人员:陈道远王朔张昭智
申请(专利权)人:上海湃道智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1