如何使用Choregraphe在Pepper上运行python模块?

时间:2019-08-22 13:58:51

标签: python pepper choregraphe

我正在尝试在Pepper上构建一个聊天机器人应用程序。为此,我计划首先使用Pepper语音识别模块检测句子并获取文本。

以下是链接:https://github.com/JBramauer/pepperspeechrecognition

实际上,如果我将语音识别模块的整个目录放在Pepper上,则ssh到它并运行module_speechrecognition.py和 同时在它上面添加了module_receiver.py,机器人确实获得了正确的文本。 但是现在,我想在Choregraphe上使用此模块,以便最终构建一个应用程序。因此,我在Choregraphe的项目文件中添加了相同目录,并将其路径添加到sys.path中,从而可以从该目录中导入内容。但是,我不知道下一步该怎么做。我试图在Choregraphe的python框中执行“导入module_speechrecognition”操作,但出现错误消息:

from google import Recognizer, UnknownValueError, RequestError
  

ImportError:无法导入名称识别器

是的,在module_speechrecogniton.py中,导入了同一目录中的其他python文件。我猜应该在module_speechrecogniton.py中进行一些修改。那么,我该如何在Choregraphe中运行此模块,就像我在使用Putty在Pepper上所做的一样?

更新:我在目录中添加了一个空的__init__.py文件并使用

from pepperspeechrecognition_master import module_speechrecognition
module_speechrecognition.main()

但是出现另一个错误。

[ERROR] behavior.box :_safeCallOfUserMethod:125 _Behavior__lastUploadedChoregrapheBehaviorbehavior_11647009840:/Python Script_1: 
Traceback (most recent call last):  
File "/opt/aldebaran/lib/python2.7/site-packages/albehavior.py", line 115, in _safeCallOfUserMethod     func()   
File "<string>", line 16, in onInput_onStart   
File "/home/nao/.local/share/PackageManager/apps/.lastUploadedChoregrapheBehavior/behavior_1/../pepperspeechrecognition_master/module_speechrecognition.py", line 456, in main     (opts, args_) = parser.parse_args()   
File "/usr/lib/python2.7/optparse.py", line 1381, in parse_args     rargs = self._get_args(args)   
File "/usr/lib/python2.7/optparse.py", line 1363, in _get_args     
return sys.argv[1:] AttributeError: 'module' object has no attribute 'argv' 

1 个答案:

答案 0 :(得分:1)

尝试在Models目录中创建一个名为__init__.py的文件,以便python将其视为模块。

检查此其他帖子:link