报错1:make_unit_vector
Traceback (most recent call last):
File "/home/zfjuan/CarLa/PythonAPI/examples/automatic_control.py", line 873, in
main()
File "/home/zfjuan/CarLa/PythonAPI/examples/automatic_control.py", line 866, in main
game_loop(args)
File "/home/zfjuan/CarLa/PythonAPI/examples/automatic_control.py", line 739, in game_loop
agent = BehaviorAgent(world.player, behavior=args.behavior)
File "/home/zfjuan/CarLa/PythonAPI/carla/agents/navigation/behavior_agent.py", line 40, in init
super().init (vehicle, opt_dict=opt_dict, map_inst=map_inst, grp_inst=grp_inst)
File "/home/zfjuan/CarLa/PythonAPI/carla/agents/navigation/basic_agent.py", line 100, in init
self._global_planner = GlobalRoutePlanner(self._map, self._sampling_resolution)
File "/home/zfjuan/CarLa/PythonAPI/carla/agents/navigation/global_route_planner.py", line 72, in init
self._build_graph()
File "/home/zfjuan/CarLa/PythonAPI/carla/agents/navigation/global_route_planner.py", line 204, in _build_graph
net_carla_vector = (exit_wp.transform.location - entry_wp.transform.location).make_unit_vector()
Boost.Python.ArgumentError: Python argument types in
Vector3D.make_unit_vector(Vector3D)
did not match C++ signature:
make_unit_vector(carla::geom::Vector3D {lvalue}, float)
原因分析 :理论上应该是server client 版本不一致造成的,但我的确实都是0.9.16版本;
解决办法:修复 make_unit_vector 调用
修改文件:
/home/zfjuan/CarLa/PythonAPI/carla/agents/navigation/global_route_planner.py
找到报错行:
c
net_carla_vector = (exit_wp.transform.location - entry_wp.transform.location).make_unit_vector()
替换为(添加一个极小的 epsilon 参数):
c
vec = exit_wp.transform.location - entry_wp.transform.location
try:
net_carla_vector = vec.make_unit_vector()
except TypeError:
# 新版需要 epsilon 参数
net_carla_vector = vec.make_unit_vector(1e-6)
报错2:Retrying /location_info: Status 403, Message Access denied. Please check the provided API key. Retry #1, Backoff 1 seconds
✅ 错误原因
你正在运行一个 集成了 InvertedAI 服务的 CARLA 脚本(invertedai_traffic.py),该脚本需要调用 InvertedAI 的云端 API 来生成高真实感交通行为。
但你没有提供有效的 API Key,或提供的 Key 无效/已过期/无权限,导致服务器返回 HTTP 403(Forbidden)。
✅ 解决方案
步骤 1:获取 InvertedAI API Key,访问官网:注册登录,会自动生成一组Key

步骤 2:在命令行中传入 API Key
运行脚本时,必须通过 --iai-key 参数传入你的密钥:
c
python invertedai_traffic.py --host 30.207.90.42 --iai-key xxxxxxxxxxxxxxxxxxx