carla-simulator / carla

Open-source simulator for autonomous driving research.
http://carla.org
MIT License
11.36k stars 3.69k forks source link

make import/maps in Carla 0.9.13 #6597

Open iandrio opened 1 year ago

iandrio commented 1 year ago

CARLA version: 0.9.13 Platform/OS: Windows

Initially, I exported an OSM map from OpenStreetMap and attempted to convert it using the Carla script "osm to xodr.py": python3 osm_to_xodr.py -i ..\work\map.osm -o ..\work\test.xodr. However, I encountered the following error consistently: Warning: The network contains extremely large coordinates, which may cause issues with Unreal Engine coordinates. It is recommended to limit any axis to a maximum value of 50000. But was able to create the test.xodr file

So i run: make import and these Error appear:

Copying "C:\carla\Import\case1_map\case1_map.xodr" to "C:\carla\Util\DockerUtils\dist\test.xodr" Copying "C:\carla\Import\case1_map\case1_map.fbx" to "C:\carla\Util\DockerUtils\dist\test.fbx" WARNING: cannot parse georeference: ' +proj=tmerc '. Using default values. Loading... Traceback (most recent call last): File "C:\carla\Util\BuildTools\Import.py", line 637, in main() File "C:\carla\Util\BuildTools\Import.py", line 634, in main import_assets_from_json_list(json_list, args.batch_size) File "C:\carla\Util\BuildTools\Import.py", line 454, in import_assets_from_json_list import_assets(package_name, dirname, props, maps, 0, 0, 0) File "C:\carla\Util\BuildTools\Import.py", line 390, in import_assets invoke_commandlet(commandlet_name, commandlet_arguments) File "C:\carla\Util\BuildTools\Import.py", line 211, in invoke_commandlet subprocess.check_call(command, shell=True) File "C:\Python\Python37\lib\subprocess.py", line 328, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['C:\UnrealEngine/Engine/Binaries/Win64/UE4Editor', 'C:\carla\Unreal\CarlaUE4\CarlaUE4.uproject', '-run=ImportAssets', '-importSettings="C:\carla\importsetting.json"', '-nosourcecontrol', '-replaceexisting']' returned non-zero exit status 1. make: *** [import] Error 1

In an attempt to address this problem, I tried converting the OSM file using the GitHub source "osmtoxodr" found at: https://github.com/JHMeusener/osm2xodr. Although this method worked, it only imported the roads and did not include traffic lights and other assets that I expected to be imported if the Carla Python script had functioned properly.

As an alternative approach, I exported the OSM file to FBX format using Blender. However, when I attempted to run the "make import" command, it was not successful. Nevertheless, I discovered that converting the OSM file to OBJ format and then utilizing an online converter, such as the one found at: https://products.aspose.app/3d/conversion/obj-to-fbx, seemed to work and allowed me to generate a functional FBX file, enabling me to create a map.

Then I proceeded with the "make launch" command, but encountered the following issues when opening the UMAP file at Unreal Engine:

Screenshot 2023-07-01 232735

At this point, I observed that there were no traffic lights or tables present on the streets, and when I attempted to run the "manual_control.py" script, the car was not found or sometimes even dident run the script.

I also attempted to manually connect the red points to the roads in an effort to address the issue directly at Unreal Engine, but unfortunately, it did not yield the desired results. It seems that there might be something missing beneath the map, such as a base or foundation, which is causing the car to fall through or not stay on the road properly.

Screenshot 2023-07-01 233304

I think that these problems may be related to the coordinates in the OSM file. Unfortunately, using Roadrunner for map editing or creation is not an option for me due to its lack of availability as a free tool. Consequently, I am seeking a solution that allows me to obtain the FBX and XODR files from the OSM map, enabling me to successfully import the map into Unreal Engine and create a scenario.

Also when i use the xodr file from converting it with:

subprocess.CalledProcessError: Command '['C:\UnrealEngine/Engine/Binaries/Win64/UE4Editor', 'C:\carla\Unreal\CarlaUE4\CarlaUE4.uproject', '-run=ImportAssets', '-importSettings="C:\carla\importsetting.json"', '-nosourcecontrol', '-replaceexisting']' returned non-zero exit status 1. make: *** [import] Error 1 I would greatly appreciate any advice or suggestions you can provide to help resolve these issues. Thank you very much!

juanrodriguezdekra commented 9 months ago

Hello! I'm facing the same issue as you, could you solve it? I'm stuck at this point and can't find an answer.

GladysKao commented 2 months ago

Carla just can hold map smaller than 20km*20km