Create a point cloud map - AD-EYE/AD-EYE_Core GitHub Wiki
PreScan GUI
The process of creating a point cloud map is done in Simulink on windows computer, without using ROS on Ubuntu. We will make the ego vehicle follow a predefined trajectory for the mapping, thus not needing the autonomous driving intelligence and ROS.
To create a point cloud map, open the respective world pex file from the within PreScan (eg:C:\Users\adeye\AD-EYE_Core\AD-EYE\Experiments\W06_Tiny_Town\Simulation\W06_Tiny_Town.pex
) select the option save experiment as
and leave the options for name and location as is.(If this makes PreScan re-write existing folder, check the NOTE section below this paragraph)
A folder will be created in the respective world folder (eg:C:\Users\adeye\AD-EYE_Core\AD-EYE\Experiments\W06_Tiny_Town
) with the same name as (eg:W06_Tiny_Town
).
Then remove the existing mapping folder and rename the newly created folder(W06_Tiny_Town) as mapping folder.
NOTE: In some versions of PreScan trying to save experiment with same name and location results in overwriting of old folder. In that case, save experiment as
Mapping. If you do this, no need to rename the newly created folder.
The mapping world must identical to its simulation counterpart without the mobile actor (cars, truck, humans...). Open it in PreScan and remove all the moving actors (this can be done by selecting them in the experiment components list under the actors category and pressing the delete key).
Under the actors look for the ego vehicle (Eg: In this case BMW_X5_SUV_1). In the sensor section, remove all the sensors but the Pointcloud ones.
The Pointcloud sensors must have their output modes set to WorldPosition. To do this right click on the PointCloud sensor and open the object configuration.
Click ok
and make sure that in the property editor on the right side the field Angles
is set to False (see below).
The (ego) vehicle should follow a path along which it will save measurements as exemplified in the following picture:
The path should be cover as much of the map as possible. Overlaps are not an issue but unnecessarily make the point cloud map bigger. The frequency of the simulation and the speed of the ego vehicle should be set so that there is roughly one measurement each 8 meters (the easiest way to do so is to set the speed profile to constant at 8 m/s and the frame rate of the sensors to 1Hz).
Simulink
In Simulink, the output of the sensors has to be connected with the point cloud map creator block as seen is the next image. The block assumes that four sensors are being used to map. Make sure to set the end of the simulation in Simulink according to the time required to drive the path in PreScan.
The pcd files will be saved in the experiment directory.
Make sure that the pcd files are not containing only zero. This issue can happen if the property angles of the Pointcloud sensor is set to True in PreScan while the output mode is set to World Position. If that happens change the output mode to Range and back to World position through the object configuration window (not the property editor!).