使用 Pepper 和 NAO 机器人进行远程视频流传输

Remote video streaming with Pepper and NAO robots

我正在尝试将视频和图像从 Pepper 和 NAO 机器人的摄像头远程传输到我的笔记本电脑。

首先,我用while循环反复从NAO的相机中抓取图像,并通过opencv对图像进行处理。然而,如您所想,这只为我提供了大约 1 fps 的帧率。

然后我尝试通过opencv的videocapture访问摄像头,但是无法正常使用。

接下来,我尝试在 Windows 上为 python 使用 gstreamer 1.0,但 Windows 版本似乎缺少一些元素,即使我拥有所有所需的插件(基本的,好的,坏的,丑陋的)。

此外,我试图避免使用 ROS,因为我在使用 Pepper 和 NAO 机器人的 python 2.7 naoqi SDK 时遇到问题。

如有任何帮助,我们将不胜感激。谢谢

gstreamer 应该已经安装在机器人上,因此您可以 运行 使用如下命令将其安装在机器人上:

gst-launch-0.10 -v v4l2src device=/dev/video-top ! video/x-raw-yuv,width=640,height=480,framerate=30/1 ! ffmpegcolorspace ! jpegenc ! multipartmux! tcpserversink port=3000

...然后您可以从您的计算机打开流,例如使用 vlc:

vlc tcp://ip.of.the.robot:3000

你可以看看这个site作为方向:

它描述了如何使用 Pepper 以 25fps VGA 实现相机流:

gstreamer to create an UDP (+RTP) stream of the front (/dev/video0) and bottom (/dev/video1) camera from Pepper, the stream is then retrieved on the PC_HOST with gscam and remapped in /pepper_robot/camera tree.

重要提示是禁用自主生命