使用Python读取摄像头图像在webots中运行速度非常慢

2024-04-26 17:51:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用python阅读webots相机图像,并通过ros主题发布它。但当我这样写的时候: Img=camera.getImageArray()在主循环中,模拟世界将非常缓慢,速度类似于0.1x。 我的程序是这样的:

from controller import Robot, Camera
robot = Robot()
timestep = int(robot.getBasicTimeStep())
camera = Camera('camera')
camera.enable(100)
while robot.setp(timestep) != -1:
    img = camera.getImageArray()
    pass

如果我从主循环中删除此代码“img=camera.getImageArray()”,则模拟速度将增加到正常速度。我的webots版本是webots R2020b-rev1,操作系统是Windows10 64位。我也尝试在Ubuntu16.04lts中运行此代码,这是相同的。有人能帮我解决这个问题吗


Tags: 代码图像主题img世界robotros速度
1条回答
网友
1楼 · 发布于 2024-04-26 17:51:25

您应该使用getImage()方法而不是getImageArray()。{a1}表示“在Python中获取相机图像的另一种方法是使用getImageArray方法,该方法返回一个列表<;list<;list>;。此三维列表可直接用于访问RGB像素值。但是,此方法的运行速度明显慢于getImage方法。”

此外,最新版本的Webots是R2021a,运行速度可能比R2020b-rev1快

相关问题 更多 >