Pepper初级教程:第五章 Naoqi操作系统

5.1 Naoqi

NAOqi操作系统是Pepper的操作系统。可以满足人行机器人的一般需要,诸如并行性、资源、同步、事件等。

- 是一个基于Linux的人形机器人本体控制系统。
- 适用于Nao、Pepper和Romeo机器人的闭源系统。
- 提供丰富的机器人管理模块和API。例如音视频、动作、情感、跟踪等。
- 开发语言支持C++、Python、Java、JavaScript等。

Naoqi API是Naoqi操作系统提供的开发接口,主要的模块如下图所示。

Pepper初级教程:第五章 Naoqi操作系统

访问下面的网站可以查看更详细的信息。
http://doc.aldebaran.com/2-5/naoqi/index.html

以ALFaceCharacteristics API为例,包含Method、Event、ALMemory三部分。

Pepper初级教程:第五章 Naoqi操作系统

5.2 视觉模块( Vison API)

Pepper的视觉模块,提供拍照、录像、读取二维码、环境明亮度感知、红球跟踪等功能。

Pepper初级教程:第五章 Naoqi操作系统

5.2.1 ALPhotoCapture

ALPhotoCapture 是拍照专用的模块。可以设定拍照的格式、设置解析度等。
ALPhotoCapture的主要Method如下:

API 说明
setCameraID 选择摄像头
setPictureFormat 设定照片的保存格式
setResolution 设定照片的解析度
takePicture 拍照

Pepper初级教程:第五章 Naoqi操作系统

Take Picture指令盒就是利用ALPhotoCapture API编写的Python指令盒。我们双击即可查看其源程序。

Pepper初级教程:第五章 Naoqi操作系统

5.3 情感模块

Pepper可以识别人脸和喜怒哀乐。Naoqi的PepplePerception模块提供相应的功能。

Pepper初级教程:第五章 Naoqi操作系统

ALPeoplePerception 的主要方法

方法 说明
getMaximumDetctionRange 取得最大识别距离
setMaximumDetectionRange 设定最大识别距离
resetPopulation 重新进行识别
setFastModeEnabled 启动FastMode

ALPeoplePerception 的ALMemory Key List

方法 说明
PeoplePerception/Person//Distance 人的距离
PeoplePerception/Person//PresentSince 识别消耗的事件
PeoplePerception/Person//RealHeight 人的身高
PeoplePerception/Person//ShirtColor 人衣服的颜色