如何实时监控Spark性能:sparkMeasure与Kafka集成的完整指南
2026/6/15 21:04:52
PythonAPI/examples/tutorial.py
这是一个基础传感器数据采集示例,演示如何:
适用于数据集生成、传感器调试、自动化测试等场景。
保存的depth图如下:
client=carla.Client('localhost',2000)world=client.get_world()✅ 这是所有 CARLA 脚本的起点。
bp=random.choice(blueprint_library.filter('vehicle'))ifbp.has_attribute('color'):color=random.choice(bp.get_attribute('color').recommended_values)bp.set_attribute('color',color)transform=random.choice(world.get_map().get_spawn_points())vehicle=world.spawn_actor(bp,transform)vehicle.set_autopilot(True)💡 注意:车辆被加入
actor_list以确保后续销毁。
camera_bp=blueprint_library.find('sensor.camera.depth')camera_transform=carla.Transform(carla.Location(x=1.5,z=2.4))camera=world.spawn_actor(camera_bp,camera_transform,attach_to=vehicle)cc=carla.ColorConverter.LogarithmicDepth camera.listen(lambdaimage:image.save_to_disk('_out/%06d.png'%image.frame,cc))LogarithmicDepth),将深度值映射为灰度图像_out/000001.png,_out/000002.png…✅ 这是传感器数据自动采集的核心机制。
location=vehicle.get_location()location.x+=40vehicle.set_location(location)⚠️ 此操作仅适用于测试,真实驾驶中应通过控制指令移动。
transform.location+=carla.Location(x=40,y=-3.2)transform.rotation.yaw=-180.0for_inrange(10):transform.location.x+=8.0npc=world.try_spawn_actor(bp,transform)ifnpcisnotNone:npc.set_autopilot(True)try_spawn_actor()避免因碰撞导致崩溃✅ 演示了可控的交通场景构建方法。
finally:camera.destroy()client.apply_batch([carla.command.DestroyActor(x)forxinactor_list])finally块确保无论是否异常,所有 Actor 都被销毁apply_batch)提高效率✅ 这是 CARLA 脚本的最佳实践,防止仿真环境残留。
原测试用例使用默认观察者视角,随着主车、NPC位置的变动,导致在默认视角看不到车辆;因此,我们就可以修改设置下观察者视角;
在 vehicle = world.spawn_actor(…) 之后添加:
spectator = world.get_spectator() vehicle_location = vehicle.get_transform().location spectator.set_transform(carla.Transform( vehicle_location + carla.Location(z=50), # 高空俯视 carla.Rotation(pitch=-90) # 垂直向下看 ))或更真实的跟随视角:
# 第三人称跟随 spectator.set_transform(carla.Transform(vehicle.get_transform().location+carla.Location(x=-10,z=5),vehicle.get_transform().rotation))该脚本是 CARLA最基础但完整的数据采集范例,展示了: