carla获取坐标

在用carla仿真平台收集数据时,例如:收集一个街道的RGB数据

我们在车上装载了RGB传感器,但得知道开始的坐标,这样才可以让车出生在坐标处,开始收集数据,但是,世界非常的大,系统貌似没有给出确定点坐标的直接方法,我的方法如下:

确定好town,和道路

可以提前浏览一下carla所提供的地图,选择一个town,和准备采集数据的道路,下图是我选择的街道

选定的街道

运行manual_control.py

carla在PythonAPI中提供的一个example,可以人为的操作车辆。
img_v2_45b41eba-a9fb-45b9-bdb0-6c4355e4856g

然后像玩gta5那样把车开到,之前选定的地方,到差不多的地方,可以按下“P”开启自动驾驶,从而调整车的角度,使其不偏离方向。

img_v2_3c840241-ed3c-4206-82df-3da5d24272bg

执行如下的.py,打印坐标

import carla
client = carla.Client('localhost', 2000)
client.set_timeout(5.0)
world = client.get_world()
vehicle_list = world.get_actors().filter('vehicle.*')

if len(vehicle_list) > 0:
vehicle = vehicle_list[0]

# 获取车辆的变换(包括位置和方向)
vehicle_transform = vehicle.get_transform()

# 获取位置坐标
vehicle_location = vehicle_transform.location
x = vehicle_location.x
y = vehicle_location.y
z = vehicle_location.z

print("车辆坐标:x = {}, y = {}, z = {}".format(x, y, z))
# 获取车辆的旋转
rotation = vehicle_transform.rotation

yaw = rotation.yaw
print("yaw:", yaw)

else:
print("未找到车辆")

打印坐标

总结

可能有更好的办法,只是作为一个carla入门几天的同学捣鼓出来的,有更好的方法欢迎与我沟通。