我必须运行一个涉及用 python 编程的 NAO 机器人的项目。我要做的是分配一些关于向 NAO 显示的内容的知识。
例如:
- 一个人给 NAO 看一张图片(在白板上手绘)
- 这个人说“房子”(假设这个人画了一个房子)
- NAO 现在知道显示的图片代表一所房子
我遇到的问题是在语音识别模块中。只能识别特定词汇中的单词。但是在我的项目设置中,一个人应该在白板上画画,然后告诉 NAO 那里画了什么。所以,意味着我不知道这个人要画什么,也不能提前设置词汇。
我的出发点是这里的本教程。正如您通过阅读教程所看到的,只能识别属于词汇表的某些单词,例如这行代码:
wordList=["yes","no","hello Nao","goodbye Nao"]
asr.setWordListAsVocabulary(wordList)
在识别期间,会引发一个名为 WordRecognized 的事件。它有这样的结构:
Event: "WordRecognized"
callback(std::string eventName, AL::ALValue value, std::string subscriberIdentifier)
当使用 ALSpeechRecognitionProxy::setWordListAsVocabulary() 的指定单词之一被识别时,会引发此问题。当前未识别任何单词时,将重新初始化该值。
所以我想我的答案的关键就在这里,但我需要帮助。我该如何解决这个问题?有没有更好的文档可以参考?
提前致谢!