Closed lukasthede closed 2 years ago
HI, Did you find the ad_rss directory when building perception model?
Sorry for the late reply! What is the ad_rss directory?
I build apollo using the build_opt_gpu flag, installed cuda and nvidia driver and I am running apollo in a nvidia-docker. I tried to follow https://github.com/ApolloAuto/apollo/blob/master/docs/howto/how_to_run_perception_module_on_your_local_computer.md but as I am using apollo 3.0 the I could not find the launchfiles. Therefore I tried to find the apollo 3.0 equivalents, instead of static_transform-launch
I am starting broadcast_extrinsics.sh
, afterwards I am launching the perception and prediction modules from dreamview.
After launching apollo (+modules: localization, routing, planning, perception, prediction, control) I am getting the following tf tree:
Then after starting carla and the carla-apollo-ros-bridge the tf-tree looks like this:
The error message in the perception log:
E0906 10:35:22.061379 13492 transform_input.cc:44] Cannot transform frame: novatel to frame velodyne64 , err: . canTransform returned after 0.1 timeout was 0.1.. Frames: Frame velodyne64 exists with parent novatel. Frame long_camera exists with parent short_camera. Frame short_camera exists with parent velodyne64. Frame radar exists with parent short_camera. Frame radar_front exists with parent velodyne64. Frame velodyne16 exists with parent novatel. E0906 10:35:22.061477 13492 lidar_process_subnode.cc:109] failed to get trans at timestamp: 5.533333621
I already tried increasing the timeout in the perception config file from 40 to 100, but the module still cant transform novatel to velodyne64, even though it states that the frame velodyne64 exists with parent novatel.
I figured out that the /tf and /tf_static info are recieved fine when listening outside the docker environment. When running rosrun tf view_frames
outside the docker I recieve the tf-tree above, but when I run the same command inside the docker the output states that no tf data were recieved. I also tried to listen to the tf for novatel to velodyne64 with rosrun tf tf_echo
and rosrun tf tf_monitor
. Both returned valid tf data when run outside of the docker but did not return anything when I ran them inside the docker environment.
Next I checked weather rostopic info /tf
and rosnode info ...
would find the tf topic or the nodes publishing the tf info. Both commands returned the info about the tf connections. So while I am not able to receive any tf data the nodes and topics of the tf structure are visible inside the docker.
I am starting the apollo docker environment with bash docker/scripts/dev_start.sh
:
${DOCKER_CMD} run -it \
-d \
--privileged \
--name apollo_dev \
${MAP_VOLUME_CONF} \
--volumes-from ${LOCALIZATION_VOLUME} \
--volumes-from ${YOLO3D_VOLUME} \
-e ROS_MASTER_URI=http://172.17.0.1:11311 \
-e ROS_IP=172.17.0.1 \
-e DISPLAY=$display \
-e DOCKER_USER=$USER \
-e USER=$USER \
-e DOCKER_USER_ID=$USER_ID \
-e DOCKER_GRP="$GRP" \
-e DOCKER_GRP_ID=$GRP_ID \
-e DOCKER_IMG=$IMG \
${EXTRA_VOLUMES} \
$(local_volumes) \
--net host \
-w /apollo \
--add-host in_dev_docker:127.0.0.1 \
--add-host ${LOCAL_HOST}:127.0.0.1 \
--hostname in_dev_docker \
--shm-size 2G \
--pid=host \
-v /dev/null:/dev/raw1394 \
$IMG \
/bin/bash
Why am I not able to receive tf data inside of the docker environment?
Closed due to inactivity. If the problem persists, pls feel free to reopen it or create a new one and refer to it.
Hello,
I am trying to launch apollo 3.0 alongside the carla simulator (version 0.9.5) using a ros-bridge. Because carla has no radar sensors I need to run perception without radar input. I tried to simply run the perception module without the radar input, but I am not getting any output from the perception module.
System information
Steps to reproduce the issue:
This is the output of the perception.ERROR logfile:
How can I fix this issue? Thanks in advance!