liivi 2基于语音的交互式定位指南

Speech_based_Interactive_Location_Guide的Python项目详细描述


知识库 为了将信息输入程序,我们创建了两个文本文件:personroom.txt,其中包含人员姓名及其房间号的信息;roomlocation.txt,其中包含房间号的信息以及如何进入该房间的简短信息。 我们还使用了第三个文件regularexpression.txt,它将由程序生成。此文件包含人员名称信息和有关如何确定其为正确人员的正则表达式。

程序 程序检查文件RealReXPr..txt是否存在,如果不是,则创建它。为了创建它,它使用personroom.txt文件中的信息,主要是关于名称的信息。 如果存在RealReXPrsi.txt,则检查它是否是最新的,如果不是,则更新它。如果是,那么它将设置pyttsx引擎并用知识读取文件。之后,它生成一个Tkinter窗口并开始等待用户输入。 程序设置pyttsx引擎,读取关于知识的文本文件并生成一个tkinter窗口。之后,它将等待用户的文本输入。 在获得输入后,它开始检查输入是否与文件中给定的任何人的正则表达式匹配。如果没有找到匹配项,它将计算从输入中给定的所有有序词对到personroom.txt文件中给定的所有人名的所有levenshtein距离[3]。它会找到最小的距离,并用输入的两个单词选择距离最小的人,在这种情况下,程序会说:“找不到这个名字的人。”但是也许你正在寻找并添加距离最近的名字。同样的信息也显示在tkinter窗口上。然后程序进入第二种状态,在这种状态下,程序首先识别用户是否确认它是正确的人。如果没有,它又开始寻找。如果确认,则程序使用文本文件中的知识生成到房间的路径,并将该路径作为语音输入和Tkinter窗口的文本输入。 如果输入字符串与正则表达式匹配,则它使用文本文件中的知识生成到房间的路由,并将该路由作为语音输入和Tkinter窗口的文本输入。 爱沙尼亚语有特殊的发音,与英语中没有的字母“_”、“_”、“_”和“_”相对应。在检查输入字符串是否与正则表达式匹配之前,unicode字符将被ascii代码字符替换,因此我们将替换“_”->;“y”、“_”和“_”->;“o”以及“_”->;“a”。从程序中输出语音时,发音也会发生同样的替换。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
swing Java按钮/网格布局   java列出Google日历中的所有事件   java无效:单击API publisher test按钮后连接到后端时出错   带有内部赋值的java While循环导致checkstyle错误   java为什么trimToSize/ensureCapacity方法提供“公共”级访问?   文件输出流的java问题   ListIterator和并发修改异常的java问题   java如何使用两个URL映射   无法识别使用“./../”构造的字符串java相对路径,为什么?   首次写入remotelyclosedsocket不会触发异常,对吗?JAVA   java OneDrive REST API为文件上载提供了400个无效谓词   Java泛型、集合接口和对象类的问题   OpenSSL Java安全提供程序   jmeter java运行jmx禁用操作