Learning High-Speed Flight in the Wild

Overview

Learning High-Speed Flight in the Wild

This repo contains the code associated to the paper Learning Agile Flight in the Wild. For more information, please check the project webpage.

Cover

Paper, Video, and Datasets

If you use this code in an academic context, please cite the following publication:

Paper: Learning High-Speed Flight in the Wild

Video (Narrated): YouTube

Datasets: Zenodo

Science Paper: DOI

@inproceedings{Loquercio2021Science,
  title={Learning High-Speed Flight in the Wild},
    author={Loquercio, Antonio and Kaufmann, Elia and Ranftl, Ren{\'e} and M{\"u}ller, Matthias and Koltun, Vladlen and Scaramuzza, Davide},
      booktitle={Science Robotics}, 
      year={2021}, 
      month={October}, 
} 

Installation

Requirements

The code was tested with Ubuntu 20.04, ROS Noetic, Anaconda v4.8.3., and gcc/g++ 7.5.0. Different OS and ROS versions are possible but not supported.

Before you start, make sure that your compiler versions match gcc/g++ 7.5.0. To do so, use the following commands:

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 100
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 100

Step-by-Step Procedure

Use the following commands to create a new catkin workspace and a virtual environment with all the required dependencies.

export ROS_VERSION=noetic
mkdir agile_autonomy_ws
cd agile_autonomy_ws
export CATKIN_WS=./catkin_aa
mkdir -p $CATKIN_WS/src
cd $CATKIN_WS
catkin init
catkin config --extend /opt/ros/$ROS_VERSION
catkin config --merge-devel
catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-fdiagnostics-color
cd src

git clone [email protected]:uzh-rpg/agile_autonomy.git
vcs-import < agile_autonomy/dependencies.yaml
cd rpg_mpl_ros
git submodule update --init --recursive

#install extra dependencies (might need more depending on your OS)
sudo apt-get install libqglviewer-dev-qt5

# Install external libraries for rpg_flightmare
sudo apt install -y libzmqpp-dev libeigen3-dev libglfw3-dev libglm-dev

# Install dependencies for rpg_flightmare renderer
sudo apt install -y libvulkan1 vulkan-utils gdb

# Add environment variables (Careful! Modify path according to your local setup)
echo 'export RPGQ_PARAM_DIR=/home/
   
   catkin_aa/src/rpg_flightmare' >> ~/.bashrc

Now open a new terminal and type the following commands.

# Build and re-source the workspace
catkin build
. ../devel/setup.bash

# Create your learning environment
roscd planner_learning
conda create --name tf_24 python=3.7
conda activate tf_24
conda install tensorflow-gpu
pip install rospkg==1.2.3,pyquaternion,open3d,opencv-python

Now download the flightmare standalone available at this link, extract it and put in the flightrender folder.

Let's Fly!

Once you have installed the dependencies, you will be able to fly in simulation with our pre-trained checkpoint. You don't need necessarely need a GPU for execution. Note that if the network can't run at least at 15Hz, you won't be able to fly successfully.

Lauch the simulation! Open a terminal and type:

cd agile_autonomy_ws
source catkin_aa/devel/setup.bash
roslaunch agile_autonomy simulation.launch

Run the Network in an other terminal:

cd agile_autonomy_ws
source catkin_aa/devel/setup.bash
conda activate tf_24
python test_trajectories.py --settings_file=config/test_settings.yaml

Change execution speed or environment

You can change the average speed at which the policy will fly as well as the environment type by changing the following files.

Environment Change:

rosed agile_autonomy flightmare.yaml

Set either the spawn_trees or spawn_objects to true. Doing both at the same time is possible but would make the environment too dense for navigation. Also adapt the spacings parameter in test_settings.yaml to the environment.

Speed Change:

rosed agile_autonomy default.yaml

Edit the test_time_velocity and maneuver_velocity to the required speed. Note that the ckpt we provide will work for all speeds in the range [1,10] m/s. However, to reach the best performance at a specific speed, please consider finetuning the ckpt at the desired speed (see code below).

Train your own navigation policy

There are two ways in which you can train your own policy. One easy and one more involved. The trained checkpoint can then be used to control a physical platform (if you have one!).

Use pre-collected dataset

The first method, requiring the least effort, is to use a dataset that we pre-collected. The dataset can be found at this link. This dataset was used to train the model we provide and collected at an average speed of 7 m/s. To do this, adapt the file train_settings.yaml to point to the train and test folder and run:

cd agile_autonomy_ws
source catkin_aa/devel/setup.bash
conda activate tf_24
python train.py --settings_file=config/train_settings.yaml

Feel free to ablate the impact of each parameter!

Collect your own dataset

You can use the following commands to generate data in simulation and train your model on it. Note that training a policy from scratch could require a lot of data, and depending on the speed of your machine this could take several days. Therefore, we always recommend finetuning the provided checkpoint to your use case. As a general rule of thumb, you need a dataset with comparable size to ours to train a policy from scratch, but only 1/10th of it to finetune.

Generate data

To train or finetune a policy, use the following commands: Launch the simulation in one terminal

cd agile_autonomy_ws
source catkin_aa/devel/setup.bash
roslaunch agile_autonomy simulation.launch

Launch data collection (with dagger) in an other terminal

cd agile_autonomy_ws
source catkin_aa/devel/setup.bash
conda activate tf_24
python dagger_training.py --settings_file=config/dagger_settings.yaml

It is possible to change parameters (number of rollouts, dagger constants, tracking a global trajectory, etc. ) in the file dagger_settings.yaml. Keep in mind that if you change the network or input, you will need to adapt the file test_settings.yaml for compatibility.

When training from scratch, follow a pre-computed global trajectory to give consistent labels. To activate this, you need to put to true the flag perform_global_planning in default.yaml and label_generation.yaml. Note that this will make the simulation slower (a global plan has to be computed at each iteration). The network will not have access to this global plan, but only to the straight (possibly in collision) reference.

Visualize the Data

You can visualize the generated trajectories in open3d using the visualize_trajectories.py script.

python visualize_trajectories.py --data_dir /PATH/TO/rollout_21-09-21-xxxx --start_idx 0 --time_steps 100 --pc_cutoff_z 2.0 --max_traj_to_plot 100

The result should more or less look as the following:

Labels

Test the Network

To test the network you trained, adapt the test_settings.yaml with the new checkpoint path. You might consider putting back the flag perform_global_planning in default.yaml to false to make the simulation faster. Then follow the instructions in the above section (Let's Fly!) to test.

Ackowledgements

We would like to thank Yunlong Song and Selim Naji for their help with the implementations of the simulation environment. The code for global planning is strongly inspired by the one of Search-based Motion Planning for Aggressive Flight in SE(3).

Comments
  • error while run python test_trajectories.py

    error while run python test_trajectories.py

    2021-12-14 16:24:17.789855: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.so.10.1 2021-12-14 16:24:18.717899: I tensorflow/compiler/jit/xla_cpu_device.cc:41] Not creating XLA devices, tf_xla_enable_xla_devices not set 2021-12-14 16:24:18.717983: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcuda.so.1 2021-12-14 16:24:18.718069: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2021-12-14 16:24:18.718719: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1720] Found device 0 with properties: pciBusID: 0000:01:00.0 name: NVIDIA GeForce RTX 3090 computeCapability: 8.6 coreClock: 1.695GHz coreCount: 82 deviceMemorySize: 23.69GiB deviceMemoryBandwidth: 871.81GiB/s 2021-12-14 16:24:18.718752: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.so.10.1 2021-12-14 16:24:18.719952: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcublas.so.10 2021-12-14 16:24:18.720016: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcublasLt.so.10 2021-12-14 16:24:18.721169: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcufft.so.10 2021-12-14 16:24:18.721397: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcurand.so.10 2021-12-14 16:24:18.722677: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcusolver.so.10 2021-12-14 16:24:18.723358: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcusparse.so.10 2021-12-14 16:24:18.725769: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudnn.so.7 2021-12-14 16:24:18.725855: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2021-12-14 16:24:18.726511: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2021-12-14 16:24:18.727095: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1862] Adding visible gpu devices: 0 2021-12-14 16:24:18.728012: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: SSE4.1 SSE4.2 AVX AVX2 FMA To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags. 2021-12-14 16:24:18.728749: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2021-12-14 16:24:18.729386: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1720] Found device 0 with properties: pciBusID: 0000:01:00.0 name: NVIDIA GeForce RTX 3090 computeCapability: 8.6 coreClock: 1.695GHz coreCount: 82 deviceMemorySize: 23.69GiB deviceMemoryBandwidth: 871.81GiB/s 2021-12-14 16:24:18.729449: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.so.10.1 2021-12-14 16:24:18.729514: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcublas.so.10 2021-12-14 16:24:18.729536: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcublasLt.so.10 2021-12-14 16:24:18.729555: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcufft.so.10 2021-12-14 16:24:18.729573: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcurand.so.10 2021-12-14 16:24:18.729591: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcusolver.so.10 2021-12-14 16:24:18.729608: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcusparse.so.10 2021-12-14 16:24:18.729627: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudnn.so.7 2021-12-14 16:24:18.729672: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2021-12-14 16:24:18.730287: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2021-12-14 16:24:18.730868: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1862] Adding visible gpu devices: 0 2021-12-14 16:24:18.730925: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.so.10.1 2021-12-14 16:30:48.839481: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1261] Device interconnect StreamExecutor with strength 1 edge matrix: 2021-12-14 16:30:48.839510: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1267] 0 2021-12-14 16:30:48.839519: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1280] 0: N 2021-12-14 16:30:48.839654: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2021-12-14 16:30:48.840286: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2021-12-14 16:30:48.840902: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:941] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2021-12-14 16:30:48.841501: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1406] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 21697 MB memory) -> physical GPU (device: 0, name: NVIDIA GeForce RTX 3090, pci bus id: 0000:01:00.0, compute capability: 8.6) 2021-12-14 16:30:48.841690: I tensorflow/compiler/jit/xla_gpu_device.cc:99] Not creating XLA devices, tf_xla_enable_xla_devices not set

    Restored from models/ckpt-50

    2021-12-14 16:30:49.790317: I tensorflow/compiler/mlir/mlir_graph_optimization_pass.cc:116] None of the MLIR optimization passes are enabled (registered 2) 2021-12-14 16:30:49.825588: I tensorflow/core/platform/profile_utils/cpu_utils.cc:112] CPU Frequency: 3187200000 Hz 2021-12-14 16:30:50.065749: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudnn.so.7 2021-12-14 16:41:34.065744: I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcublas.so.10 Net initialized Setting Tree Spacing to 5 Setting Object Spacing to 5

     RESET SIMULATION     
    

    Unpausing Physics...

    Placing quadrotor... success: True status_message: "SetModelState: set model state done" Received call to Clear Buffer and Restart Experiment

    /home/pc205/anaconda3/envs/rpg_uav/lib/python3.8/site-packages/tensorflow/python/keras/backend.py:434: UserWarning: tf.keras.backend.set_learning_phase is deprecated and will be removed after 2020-10-11. To update it, simply pass a True/False value to the training argument of the __call__ method of your layer or model. warnings.warn('tf.keras.backend.set_learning_phase is deprecated and ' Resetting experiment

    Done Reset Doing experiment 0 Current experiment failed. Will try again

     RESET SIMULATION     
    

    Unpausing Physics...

    Placing quadrotor... success: True status_message: "SetModelState: set model state done" Received call to Clear Buffer and Restart Experiment

    Resetting experiment

    Done Reset Doing experiment 0 Current experiment failed. Will try again Traceback (most recent call last): File "test_trajectories.py", line 19, in main() File "test_trajectories.py", line 15, in main trainer.perform_testing() File "/home/pc205/agile_autonomy_ws/catkin_aa/src/agile_autonomy/planner_learning/dagger_training.py", line 186, in perform_testing sorted(os.listdir(self.settings.expert_folder))[-1]) IndexError: list index out of range --- Logging error --- Traceback (most recent call last): File "/home/pc205/anaconda3/envs/rpg_uav/lib/python3.8/logging/handlers.py", line 69, in emit if self.shouldRollover(record): File "/home/pc205/anaconda3/envs/rpg_uav/lib/python3.8/logging/handlers.py", line 183, in shouldRollover self.stream = self._open() File "/home/pc205/anaconda3/envs/rpg_uav/lib/python3.8/logging/init.py", line 1176, in _open return open(self.baseFilename, self.mode, encoding=self.encoding) NameError: name 'open' is not defined Call stack: File "/home/pc205/anaconda3/envs/rpg_uav/lib/python3.8/site-packages/tensorflow/python/training/tracking/util.py", line 160, in del log_fn("Unresolved object in checkpoint: {}" File "/home/pc205/anaconda3/envs/rpg_uav/lib/python3.8/site-packages/tensorflow/python/platform/tf_logging.py", line 178, in warning get_logger().warning(msg, *args, **kwargs) Message: 'Unresolved object in checkpoint: (root).optimizer.iter' Arguments: ()

    opened by Howardcl 10
  • [ INFO] [1638364145.246536777, 2.618000000]: Unity is ready! [ERROR] [1638364145.596009985, 2.793000000]: no kernel image is available for execution on the device 209

    [ INFO] [1638364145.246536777, 2.618000000]: Unity is ready! [ERROR] [1638364145.596009985, 2.793000000]: no kernel image is available for execution on the device 209

    [ INFO] [1638364145.246536777, 2.618000000]: Unity is ready! [ERROR] [1638364145.596009985, 2.793000000]: no kernel image is available for execution on the device 209

    Has anyone meet the problem? My environment is RTX3080ti, CUDA11.3. The error happened when I use unity. I don't know the reason. How can I resolve the problem?

    opened by calmelo 8
  • open3d_conversions error when catkin build

    open3d_conversions error when catkin build

    [build] Found '71' packages in 0.0 seconds.
    [build] Package table is up to date.
    Starting >>> catkin_boost_python_buildtool
    Starting >>> catkin_simple
    Starting >>> decomp_util
    Starting >>> mav_msgs
    Starting >>> mav_state_machine_msgs
    Starting >>> mav_system_msgs
    Starting >>> motion_primitive_library
    Starting >>> open3d_conversions
    Starting >>> rotors_comm
    Starting >>> rotors_description
    Starting >>> rotors_evaluation
    Starting >>> rqt_rotors
    Finished <<< mav_state_machine_msgs [ 0.1 seconds ] Finished <<< mav_msgs [ 0.1 seconds ] Starting >>> mav_planning_msgs
    Starting >>> rotors_control
    Starting >>> rotors_hil_interface
    Starting >>> rotors_joy_interface
    Finished <<< rotors_evaluation [ 0.1 seconds ] Finished <<< catkin_boost_python_buildtool [ 0.0 seconds ] Finished <<< mav_system_msgs [ 0.1 seconds ] Finished <<< rqt_rotors [ 0.1 seconds ] Finished <<< catkin_simple [ 0.1 seconds ] Starting >>> assimp_catkin
    Starting >>> catkin_boost_python_buildtool_test
    Starting >>> decomp_ros_msgs
    Starting >>> eigen_catkin
    Starting >>> flightrender
    Starting >>> gflags_catkin
    Starting >>> minimum_jerk_trajectories
    Starting >>> planning_ros_msgs
    Starting >>> quad_launch_files
    Starting >>> quadrotor_msgs
    Starting >>> rpg_single_board_io
    Starting >>> rpgq_msgs
    Finished <<< rotors_comm [ 0.1 seconds ] Finished <<< rotors_description [ 0.1 seconds ] Finished <<< rotors_control [ 0.1 seconds ] Finished <<< rotors_hil_interface [ 0.1 seconds ] Starting >>> rotors_gazebo_plugins
    Finished <<< mav_planning_msgs [ 0.1 seconds ] Starting >>> mav_comm
    Finished <<< rotors_joy_interface [ 0.1 seconds ] Finished <<< decomp_ros_msgs [ 0.1 seconds ] Finished <<< quad_launch_files [ 0.1 seconds ] Finished <<< gflags_catkin [ 0.1 seconds ] Starting >>> glog_catkin


    Warnings << open3d_conversions:check /home/pc205/agile_autonomy_ws/catkin_aa/logs/open3d_conversions/build.check.022.log Searching open3D in /usr/local/bin/cmake/ Found OpenMP TRUE 0.9.0.0 OpenMP::OpenMP_CXX Found Open3D 0.9.0.0 cd /home/pc205/agile_autonomy_ws/catkin_aa/build/open3d_conversions; catkin build --get-env open3d_conversions | catkin env -si /usr/bin/make cmake_check_build_system; cd -

    ............................................................................... Finished <<< open3d_conversions [ 0.5 seconds ] Finished <<< eigen_catkin [ 0.1 seconds ] Starting >>> numpy_eigen
    Finished <<< catkin_boost_python_buildtool_test [ 0.1 seconds ] Finished <<< rpgq_msgs [ 0.1 seconds ] Starting >>> rpgq_common
    Finished <<< planning_ros_msgs [ 0.1 seconds ] Finished <<< rpg_single_board_io [ 0.1 seconds ] Finished <<< assimp_catkin [ 0.1 seconds ] Finished <<< minimum_jerk_trajectories [ 0.1 seconds ] Finished <<< flightrender [ 0.1 seconds ] Finished <<< quadrotor_msgs [ 0.1 seconds ] Starting >>> agile_autonomy_msgs
    Starting >>> quadrotor_common
    Starting >>> rqt_quad_gui
    Starting >>> vbat_thrust_calibration
    Finished <<< motion_primitive_library [ 0.2 seconds ] Starting >>> planning_ros_utils
    Finished <<< decomp_util [ 0.1 seconds ] Starting >>> decomp_ros_utils
    Starting >>> mpl_external_planner
    Finished <<< mav_comm [ 0.1 seconds ] Finished <<< rotors_gazebo_plugins [ 0.2 seconds ] Starting >>> rotors_gazebo
    Finished <<< glog_catkin [ 0.1 seconds ] Starting >>> eigen_checks
    Finished <<< numpy_eigen [ 0.1 seconds ] Finished <<< rpgq_common [ 0.1 seconds ] Starting >>> rpgq_command_bridge
    Starting >>> rpgq_components
    Finished <<< quadrotor_common [ 0.1 seconds ] Starting >>> polynomial_trajectories
    Starting >>> position_controller
    Starting >>> sbus_bridge
    Starting >>> state_predictor
    Starting >>> trajectory_visualizer
    Finished <<< vbat_thrust_calibration [ 0.1 seconds ] Finished <<< agile_autonomy_msgs [ 0.1 seconds ] Finished <<< rqt_quad_gui [ 0.1 seconds ] Finished <<< planning_ros_utils [ 0.1 seconds ] Finished <<< decomp_ros_utils [ 0.1 seconds ] Starting >>> decomp_test_node
    Finished <<< mpl_external_planner [ 0.1 seconds ] Finished <<< rotors_gazebo [ 0.1 seconds ] Starting >>> rotors_simulator
    Finished <<< eigen_checks [ 0.1 seconds ] Starting >>> minkindr
    Finished <<< rpgq_components [ 0.1 seconds ] Finished <<< rpgq_command_bridge [ 0.1 seconds ] Starting >>> rpgq_simulator
    Finished <<< polynomial_trajectories [ 0.1 seconds ] Finished <<< position_controller [ 0.1 seconds ] Finished <<< trajectory_visualizer [ 0.1 seconds ] Finished <<< sbus_bridge [ 0.1 seconds ] Starting >>> manual_flight_assistant
    Finished <<< state_predictor [ 0.1 seconds ] Finished <<< decomp_test_node [ 0.1 seconds ] Finished <<< rotors_simulator [ 0.1 seconds ] Finished <<< minkindr [ 0.1 seconds ] Starting >>> minkindr_conversions
    Starting >>> minkindr_python
    Starting >>> rpg_common
    Finished <<< rpgq_simulator [ 0.1 seconds ] Starting >>> example_pcd
    Starting >>> example_vision
    Starting >>> example_vison
    Finished <<< manual_flight_assistant [ 0.1 seconds ] Finished <<< rpg_common [ 0.1 seconds ] Starting >>> rpg_rotors_interface
    Starting >>> trajectory_generation_helper
    Finished <<< minkindr_conversions [ 0.1 seconds ] Finished <<< minkindr_python [ 0.1 seconds ] Finished <<< example_vison [ 0.1 seconds ] Finished <<< example_vision [ 0.1 seconds ] Finished <<< example_pcd [ 0.1 seconds ] Finished <<< trajectory_generation_helper [ 0.1 seconds ] Starting >>> autopilot
    Finished <<< rpg_rotors_interface [ 0.1 seconds ] Finished <<< autopilot [ 0.1 seconds ] Starting >>> agile_autonomy_utils
    Starting >>> example_control
    Starting >>> planner_learning
    Starting >>> rpg_mpc
    Starting >>> rpg_quadrotor_integration_test
    Finished <<< rpg_quadrotor_integration_test [ 0.1 seconds ] Finished <<< rpg_mpc [ 0.1 seconds ] Finished <<< example_control [ 0.1 seconds ] Finished <<< agile_autonomy_utils [ 0.1 seconds ] Starting >>> mpl_test_node
    Starting >>> agile_autonomy
    Starting >>> traj_sampler
    Finished <<< planner_learning [ 0.1 seconds ] Finished <<< agile_autonomy [ 0.1 seconds ] Finished <<< traj_sampler [ 0.1 seconds ]


    Errors << mpl_test_node:cmake /home/pc205/agile_autonomy_ws/catkin_aa/logs/mpl_test_node/build.cmake.013.log CMake Warning (dev) at CMakeLists.txt:2 (project): Policy CMP0048 is not set: project() command manages VERSION variables. Run "cmake --help-policy CMP0048" for policy details. Use the cmake_policy command to set the policy and suppress this warning.

    The following variable(s) would be set to empty:

    CMAKE_PROJECT_VERSION
    CMAKE_PROJECT_VERSION_MAJOR
    CMAKE_PROJECT_VERSION_MINOR
    CMAKE_PROJECT_VERSION_PATCH
    

    This warning is for project developers. Use -Wno-dev to suppress it.

    CMake Error at /home/pc205/agile_autonomy_ws/catkin_aa/devel/share/open3d_conversions/cmake/open3d_conversionsConfig.cmake:173 (message): Project 'mpl_test_node' tried to find library 'Open3D'. The library is neither a target nor built/installed properly. Did you compile project 'open3d_conversions'? Did you find_package() it before the subdirectory containing its code is included? Call Stack (most recent call first): CMakeLists.txt:27 (find_package)

    cd /home/pc205/agile_autonomy_ws/catkin_aa/build/mpl_test_node; catkin build --get-env mpl_test_node | catkin env -si /usr/bin/cmake /home/pc205/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node --no-warn-unused-cli -DCATKIN_DEVEL_PREFIX=/home/pc205/agile_autonomy_ws/catkin_aa/devel -DCMAKE_INSTALL_PREFIX=/home/pc205/agile_autonomy_ws/catkin_aa/install -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-fdiagnostics-color -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3; cd -

    ............................................................................... Failed << mpl_test_node:cmake [ Exited with code 1 ] Failed <<< mpl_test_node [ 0.4 seconds ] [build] Summary: 70 of 71 packages succeeded.
    [build] Ignored: None.
    [build] Warnings: 1 packages succeeded with warnings.
    [build] Abandoned: None.
    [build] Failed: 1 packages failed.
    [build] Runtime: 4.2 seconds total.

    opened by Howardcl 6
  • link error with generate_labels in traj_sampler

    link error with generate_labels in traj_sampler

    Hi, I'm trying to build this project in docker with ubuntu 20.04, gcc/g++7.5 installed. I struggle to build this project a lot, but still I failed to build generate_labels node in traj_sampler pkg. Below is the error I got:

    root@tw:~/agile_autonomy_ws/catkin_aa/src/agile_autonomy/data_generation/traj_sampler# catkin build traj_sampler 
    ---------------------------------------------------------------------------------------------
    Profile:                     default
    Extending:          [cached] /opt/ros/noetic
    Workspace:                   /root/agile_autonomy_ws/catkin_aa
    ---------------------------------------------------------------------------------------------
    Build Space:        [exists] /root/agile_autonomy_ws/catkin_aa/build
    Devel Space:        [exists] /root/agile_autonomy_ws/catkin_aa/devel
    Install Space:      [unused] /root/agile_autonomy_ws/catkin_aa/install
    Log Space:          [exists] /root/agile_autonomy_ws/catkin_aa/logs
    Source Space:       [exists] /root/agile_autonomy_ws/catkin_aa/src
    DESTDIR:            [unused] None
    ---------------------------------------------------------------------------------------------
    Devel Space Layout:          merged
    Install Space Layout:        None
    ---------------------------------------------------------------------------------------------
    Additional CMake Args:       -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-fdiagnostics-color
    Additional Make Args:        None
    Additional catkin Make Args: None
    Internal Make Job Server:    True
    Cache Job Environments:      False
    ---------------------------------------------------------------------------------------------
    Whitelisted Packages:        None
    Blacklisted Packages:        None
    ---------------------------------------------------------------------------------------------
    Workspace configuration appears valid.
    ---------------------------------------------------------------------------------------------
    [build] Found '70' packages in 0.0 seconds.                                                             
    [build] Package table is up to date.                                                                    
    Starting  >>> catkin_simple                                                                             
    Finished  <<< catkin_simple                               [ 0.1 seconds ]                               
    Starting  >>> eigen_catkin                                                                              
    Starting  >>> gflags_catkin                                                                             
    Starting  >>> minimum_jerk_trajectories                                                                 
    Starting  >>> quadrotor_msgs                                                                            
    Finished  <<< minimum_jerk_trajectories                   [ 0.1 seconds ]                               
    Finished  <<< gflags_catkin                               [ 0.1 seconds ]                               
    Starting  >>> glog_catkin                                                                               
    Finished  <<< eigen_catkin                                [ 0.1 seconds ]                               
    Finished  <<< quadrotor_msgs                              [ 0.1 seconds ]                               
    Starting  >>> quadrotor_common                                                                          
    Finished  <<< glog_catkin                                 [ 0.1 seconds ]                               
    Starting  >>> eigen_checks                                                                              
    Finished  <<< quadrotor_common                            [ 0.1 seconds ]                               
    Starting  >>> polynomial_trajectories                                                                   
    Starting  >>> position_controller                                                                       
    Starting  >>> state_predictor                                                                           
    Finished  <<< eigen_checks                                [ 0.1 seconds ]                               
    Starting  >>> minkindr                                                                                  
    Finished  <<< polynomial_trajectories                     [ 0.1 seconds ]                               
    Finished  <<< state_predictor                             [ 0.1 seconds ]                               
    Finished  <<< position_controller                         [ 0.1 seconds ]                               
    Finished  <<< minkindr                                    [ 0.1 seconds ]                               
    Starting  >>> rpg_common                                                                                
    Finished  <<< rpg_common                                  [ 0.1 seconds ]                               
    Starting  >>> trajectory_generation_helper                                                              
    Finished  <<< trajectory_generation_helper                [ 0.1 seconds ]                               
    Starting  >>> autopilot                                                                                 
    Finished  <<< autopilot                                   [ 0.1 seconds ]                               
    Starting  >>> agile_autonomy_utils                                                                      
    Starting  >>> rpg_mpc                                                                                   
    Finished  <<< rpg_mpc                                     [ 0.2 seconds ]                               
    Finished  <<< agile_autonomy_utils                        [ 0.1 seconds ]                               
    Starting  >>> traj_sampler                                                                              
    ________________________________________________________________________________________________________
    Warnings   << traj_sampler:check /root/agile_autonomy_ws/catkin_aa/logs/traj_sampler/build.check.014.log
    CMake Warning (dev) at CMakeLists.txt:1 (project):
      Policy CMP0048 is not set: project() command manages VERSION variables.
      Run "cmake --help-policy CMP0048" for policy details.  Use the cmake_policy
      command to set the policy and suppress this warning.
    
      The following variable(s) would be set to empty:
    
        CMAKE_PROJECT_VERSION
        CMAKE_PROJECT_VERSION_MAJOR
        CMAKE_PROJECT_VERSION_MINOR
        CMAKE_PROJECT_VERSION_PATCH
    This warning is for project developers.  Use -Wno-dev to suppress it.
    
    Detected cmake version 3.22.0-rc2
    CMake Deprecation Warning at /usr/src/googletest/CMakeLists.txt:4 (cmake_minimum_required):
      Compatibility with CMake < 2.8.12 will be removed from a future version of
      CMake.
    
      Update the VERSION argument <min> value or use a ...<max> suffix to tell
      CMake that the project does not need compatibility with older versions.
    
    
    CMake Deprecation Warning at /usr/src/googletest/googlemock/CMakeLists.txt:45 (cmake_minimum_required):
      Compatibility with CMake < 2.8.12 will be removed from a future version of
      CMake.
    
      Update the VERSION argument <min> value or use a ...<max> suffix to tell
      CMake that the project does not need compatibility with older versions.
    
    
    CMake Deprecation Warning at /usr/src/googletest/googletest/CMakeLists.txt:56 (cmake_minimum_required):
      Compatibility with CMake < 2.8.12 will be removed from a future version of
      CMake.
    
      Update the VERSION argument <min> value or use a ...<max> suffix to tell
      CMake that the project does not need compatibility with older versions.
    
    
    Searching open3D in /usr/local/lib/cmake/
    CMake Deprecation Warning at /root/lib/Open3D/lib/cmake/Open3D/Open3DConfig.cmake:18 (cmake_policy):
      The OLD behavior for policy CMP0072 will be removed from a future version
      of CMake.
    
      The cmake-policies(7) manual explains that the OLD behaviors of all
      policies are deprecated and that a policy should be set to OLD only under
      specific short-term circumstances.  Projects should be ported to the NEW
      behavior and not rely on setting a policy to OLD.
    Call Stack (most recent call first):
      CMakeLists.txt:12 (find_package)
    
    
    Found OpenMP TRUE   4 0.13.0 OpenMP::OpenMP_CXX
    Found Open3D 0.13.0
    cd /root/agile_autonomy_ws/catkin_aa/build/traj_sampler; catkin build --get-env traj_sampler | catkin env -si  /usr/bin/make cmake_check_build_system; cd -
    
    ........................................................................................................
    ________________________________________________________________________________________________________
    Errors     << traj_sampler:make /root/agile_autonomy_ws/catkin_aa/logs/traj_sampler/build.make.012.log  
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `generate_label::GenerateLabel::completedThreadCallback(boost::shared_ptr<std_msgs::Int8_<std::allocator<void> > const> const&)':
    generate_label.cpp:(.text+0x449): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `generate_label::GenerateLabel::loadParameters()':
    generate_label.cpp:(.text+0x51c): undefined reference to `ros::NodeHandle::getParam(std::string const&, std::string&) const'
    /usr/bin/ld: generate_label.cpp:(.text+0x5d8): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: generate_label.cpp:(.text+0x6cf): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: generate_label.cpp:(.text+0x7ae): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: generate_label.cpp:(.text+0x89d): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: generate_label.cpp:(.text+0x990): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o:generate_label.cpp:(.text+0xa83): more undefined references to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)' follow
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `generate_label::GenerateLabel::loadParameters()':
    generate_label.cpp:(.text+0x157d): undefined reference to `ros::NodeHandle::getParam(std::string const&, int&) const'
    /usr/bin/ld: generate_label.cpp:(.text+0x15c9): undefined reference to `ros::NodeHandle::getParam(std::string const&, int&) const'
    /usr/bin/ld: generate_label.cpp:(.text+0x164a): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: generate_label.cpp:(.text+0x172e): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: generate_label.cpp:(.text+0x180f): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: generate_label.cpp:(.text+0x18f3): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `computeReferenceTrajectoryPosBased(Eigen::Matrix<double, 3, 1, 0, 3, 1> const&, quadrotor_common::Trajectory const&, double, quadrotor_common::Trajectory*, int*)':
    generate_label.cpp:(.text+0x2e25): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `generate_label::GenerateLabel::GenerateLabel(ros::NodeHandle const&, ros::NodeHandle const&)':
    generate_label.cpp:(.text+0x5294): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: generate_label.cpp:(.text+0x530d): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: generate_label.cpp:(.text+0x532a): undefined reference to `rpg_mpc::MpcController<double>::MpcController(ros::NodeHandle const&, ros::NodeHandle const&, std::string const&)'
    /usr/bin/ld: generate_label.cpp:(.text+0x608a): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: generate_label.cpp:(.text+0x60d9): undefined reference to `ros::this_node::getName()'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `generate_label::GenerateLabel::generateInitialGuesses(boost::shared_ptr<std_msgs::Bool_<std::allocator<void> > const> const&)':
    generate_label.cpp:(.text+0x8ac9): undefined reference to `logging::Logging::save_rollout_to_csv(std::vector<TrajectoryExt, std::allocator<TrajectoryExt> > const&, int, int, double, std::string, std::string, std::string, std::string, bool)'
    /usr/bin/ld: generate_label.cpp:(.text+0x90b3): undefined reference to `logging::Logging::save_rollout_to_csv(std::vector<TrajectoryExt, std::allocator<TrajectoryExt> > const&, int, int, double, std::string, std::string, std::string, std::string, bool)'
    /usr/bin/ld: generate_label.cpp:(.text+0x986c): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `generate_label::GenerateLabel::generateLabelCallback(boost::shared_ptr<std_msgs::Bool_<std::allocator<void> > const> const&)':
    generate_label.cpp:(.text+0xb58c): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: generate_label.cpp:(.text+0xb827): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `bool quadrotor_common::getParam<int>(std::string const&, int&, int const&, ros::NodeHandle const&)':
    generate_label.cpp:(.text._ZN16quadrotor_common8getParamIiEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIiEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x37): undefined reference to `ros::NodeHandle::getParam(std::string const&, int&) const'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIiEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIiEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x1c2): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIiEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIiEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x215): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIiEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIiEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x333): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIiEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIiEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x37d): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `bool quadrotor_common::getParam<double>(std::string const&, double&, double const&, ros::NodeHandle const&)':
    generate_label.cpp:(.text._ZN16quadrotor_common8getParamIdEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIdEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x37): undefined reference to `ros::NodeHandle::getParam(std::string const&, double&) const'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIdEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIdEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x1c8): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIdEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIdEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x21d): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIdEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIdEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x345): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIdEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIdEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x38d): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `bool quadrotor_common::getParam<bool>(std::string const&, bool&, bool const&, ros::NodeHandle const&)':
    generate_label.cpp:(.text._ZN16quadrotor_common8getParamIbEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIbEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x37): undefined reference to `ros::NodeHandle::getParam(std::string const&, bool&) const'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIbEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIbEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x1c4): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIbEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIbEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x21d): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIbEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIbEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x344): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, std::basic_stringstream<char, std::char_traits<char>, std::allocator<char> > const&, char const*, int, char const*)'
    /usr/bin/ld: generate_label.cpp:(.text._ZN16quadrotor_common8getParamIbEEbRKSsRT_RKS3_RKN3ros10NodeHandleE[_ZN16quadrotor_common8getParamIbEEbRKSsRT_RKS3_RKN3ros10NodeHandleE]+0x38d): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `void ros::Publisher::publish<std_msgs::Bool_<std::allocator<void> > >(std_msgs::Bool_<std::allocator<void> > const&) const':
    generate_label.cpp:(.text._ZNK3ros9Publisher7publishIN8std_msgs5Bool_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN8std_msgs5Bool_ISaIvEEEEEvRKT_]+0x2ca): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `void ros::Publisher::publish<std_msgs::Int8_<std::allocator<void> > >(std_msgs::Int8_<std::allocator<void> > const&) const':
    generate_label.cpp:(.text._ZNK3ros9Publisher7publishIN8std_msgs5Int8_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN8std_msgs5Int8_ISaIvEEEEEvRKT_]+0x2ca): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `generate_label::GenerateLabel::GenerateLabel()':
    generate_label.cpp:(.text._ZN14generate_label13GenerateLabelC2Ev[_ZN14generate_label13GenerateLabelC5Ev]+0x86): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: generate_label.cpp:(.text._ZN14generate_label13GenerateLabelC2Ev[_ZN14generate_label13GenerateLabelC5Ev]+0xe1): undefined reference to `ros::NodeHandle::NodeHandle(std::string const&, std::map<std::string, std::string, std::less<std::string>, std::allocator<std::pair<std::string const, std::string> > > const&)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `main':
    generate_label.cpp:(.text.startup+0x4a): undefined reference to `ros::init(int&, char**, std::string const&, unsigned int)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `ros::SubscriptionCallbackHelperT<boost::shared_ptr<std_msgs::Int8_<std::allocator<void> > const> const&, void>::deserialize(ros::SubscriptionCallbackHelperDeserializeParams const&)':
    generate_label.cpp:(.text._ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN8std_msgs5Int8_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE[_ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN8std_msgs5Int8_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE]+0x257): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: CMakeFiles/generate_label.dir/src/generate_label.cpp.o: in function `ros::SubscriptionCallbackHelperT<boost::shared_ptr<std_msgs::Bool_<std::allocator<void> > const> const&, void>::deserialize(ros::SubscriptionCallbackHelperDeserializeParams const&)':
    generate_label.cpp:(.text._ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN8std_msgs5Bool_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE[_ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN8std_msgs5Bool_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE]+0x257): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::string const&, ros::console::levels::Level)'
    /usr/bin/ld: /root/agile_autonomy_ws/catkin_aa/devel/lib/libtraj_sampler.so: undefined reference to `google::base::CheckOpMessageBuilder::NewString()'
    collect2: error: ld returned 1 exit status
    make[2]: *** [CMakeFiles/generate_label.dir/build.make:410: /root/agile_autonomy_ws/catkin_aa/devel/lib/traj_sampler/generate_label] Error 1
    make[1]: *** [CMakeFiles/Makefile2:1730: CMakeFiles/generate_label.dir/all] Error 2
    make: *** [Makefile:146: all] Error 2
    cd /root/agile_autonomy_ws/catkin_aa/build/traj_sampler; catkin build --get-env traj_sampler | catkin env -si  /usr/bin/make --jobserver-auth=3,4; cd -
    
    ........................................................................................................
    Failed     << traj_sampler:make                           [ Exited with code 2 ]                        
    Failed    <<< traj_sampler                                [ 1.4 seconds ]                               
    [build] Summary: 17 of 18 packages succeeded.                                                           
    [build]   Ignored:   52 packages were skipped or are blacklisted.                                       
    [build]   Warnings:  1 packages succeeded with warnings.                                                
    [build]   Abandoned: None.                                                                              
    [build]   Failed:    1 packages failed.                                                                 
    [build] Runtime: 2.8 seconds total.                                                                     
    root@tw:~/agile_autonomy_ws/catkin_aa/src/agile_autonomy/data_generation/traj_sampler#
    

    I checked or tried below

    • I checked gcc/g++ version, which were 7.5 each.
    • I checked ${catkin_LIBRARIES} variable in CMakeLists.txt, and confirmed if necessary library(libroscpp.so) is included.
    • I tried not using catkin_simple and tried ordinary CMakelists.txt format

    Did anyone give me hinks about this?

    Thanks in advance.

    opened by WhiteCri 6
  • Error while 'catkin build'

    Error while 'catkin build'

    Environment: ubuntu 18.04, ROS Melodic, cmake version 3.22.1, gcc/g++7.5. open3d v0.14 installed.

    The following errors occurred when I tried catkin build step.

    I have tried to set set(CMAKE_CXX_FLAGS "-std=c++14 ") in CMakeList.txt, but it didn't work for that error.

    Thanks for any helps!

    Errors     << mpl_test_node:make /home/rui/agile_autonomy_ws/catkin_aa/logs/mpl_test_node/build.make.001.log
    In file included from /usr/local/include/open3d/geometry/PointCloud.h:36:0,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_external_planner/include/mpl_external_planner/ellipsoid_planner/ellipsoid_util.h:11,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_external_planner/include/mpl_external_planner/ellipsoid_planner/env_cloud.h:8,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_external_planner/include/mpl_external_planner/ellipsoid_planner/ellipsoid_planner.h:9,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:3:
    /usr/local/include/open3d/utility/Optional.h:308:18: error: ‘constexpr T& open3d::utility::optional<T>::contained_val() const &’ cannot be overloaded
         constexpr T& contained_val() & { return OptionalBase<T>::storage_.value_; }
                      ^~~~~~~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:302:24: error: with ‘constexpr const T& open3d::utility::optional<T>::contained_val() const &’
         constexpr const T& contained_val() const& {
                            ^~~~~~~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:478:36: error: ‘constexpr T* open3d::utility::optional<T>::operator->() const’ cannot be overloaded
         TR2_OPTIONAL_HOST_CONSTEXPR T* operator->() {
                                        ^~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:474:42: error: with ‘constexpr const T* open3d::utility::optional<T>::operator->() const’
         TR2_OPTIONAL_HOST_CONSTEXPR T const* operator->() const {
                                              ^~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:487:36: error: ‘constexpr T& open3d::utility::optional<T>::operator*() const &’ cannot be overloaded
         TR2_OPTIONAL_HOST_CONSTEXPR T& operator*() & {
                                        ^~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:483:42: error: with ‘constexpr const T& open3d::utility::optional<T>::operator*() const &’
         TR2_OPTIONAL_HOST_CONSTEXPR T const& operator*() const& {
                                              ^~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:504:36: error: ‘constexpr T& open3d::utility::optional<T>::value() const &’ cannot be overloaded
         TR2_OPTIONAL_HOST_CONSTEXPR T& value() & {
                                        ^~~~~
    /usr/local/include/open3d/utility/Optional.h:497:42: error: with ‘constexpr const T& open3d::utility::optional<T>::value() const &’
         TR2_OPTIONAL_HOST_CONSTEXPR T const& value() const& {
                                              ^~~~~
    In file included from /usr/local/include/open3d/core/Tensor.h:42:0,
                     from /usr/local/include/open3d/core/EigenConverter.h:34,
                     from /usr/local/include/open3d/Open3D.h:38,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/open3d_conversions/include/open3d_conversions/open3d_conversions.h:19,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:19:
    /usr/local/include/open3d/core/TensorInit.h:95:49: error: ‘std::index_sequence’ has not been declared
     SizeVector InitializerShape(const L& list, std::index_sequence<D...>) {
                                                     ^~~~~~~~~~~~~~
    /usr/local/include/open3d/core/TensorInit.h:95:63: error: expected ‘,’ or ‘...’ before ‘<’ token
     SizeVector InitializerShape(const L& list, std::index_sequence<D...>) {
                                                                   ^
    /usr/local/include/open3d/core/TensorInit.h: In function ‘open3d::core::SizeVector open3d::core::tensor_init::InferShape(const L&)’:
    /usr/local/include/open3d/core/TensorInit.h:103:24: error: ‘make_index_sequence’ is not a member of ‘std’
                 list, std::make_index_sequence<InitializerDim<L>::value>());
                            ^~~~~~~~~~~~~~~~~~~
    /usr/local/include/open3d/core/TensorInit.h:103:24: note: suggested alternative:
    In file included from /usr/local/include/open3d/utility/Logging.h:47:0,
                     from /usr/local/include/open3d/core/Device.h:32,
                     from /usr/local/include/open3d/core/Blob.h:33,
                     from /usr/local/include/open3d/Open3D.h:34,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/open3d_conversions/include/open3d_conversions/open3d_conversions.h:19,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:19:
    /usr/local/include/open3d/3rdparty/fmt/ranges.h:141:66: note:   ‘fmt::v6::internal::make_index_sequence’
     using make_index_sequence = make_integer_sequence<std::size_t, N>;
                                                                      ^
    In file included from /usr/local/include/open3d/core/Tensor.h:42:0,
                     from /usr/local/include/open3d/core/EigenConverter.h:34,
                     from /usr/local/include/open3d/Open3D.h:38,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/open3d_conversions/include/open3d_conversions/open3d_conversions.h:19,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:19:
    /usr/local/include/open3d/core/TensorInit.h:103:70: error: expected primary-expression before ‘)’ token
                 list, std::make_index_sequence<InitializerDim<L>::value>());
                                                                          ^
    In file included from /usr/local/include/open3d/visualization/gui/UIImage.h:30:0,
                     from /usr/local/include/open3d/visualization/gui/Button.h:33,
                     from /usr/local/include/open3d/Open3D.h:119,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/open3d_conversions/include/open3d_conversions/open3d_conversions.h:19,
                     from /home/rui/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:19:
    /usr/local/include/open3d/visualization/rendering/RendererHandle.h: At global scope:
    /usr/local/include/open3d/visualization/rendering/RendererHandle.h:189:35: error: ‘format’ function uses ‘auto’ type specifier without trailing return type
                     FormatContext& ctx) {
                                       ^
    /usr/local/include/open3d/visualization/rendering/RendererHandle.h:189:35: note: deduced return type only available with -std=c++14 or -std=gnu++14
    /usr/local/include/open3d/visualization/rendering/RendererHandle.h:197:43: error: ‘parse’ function uses ‘auto’ type specifier without trailing return type
         constexpr auto parse(ParseContext& ctx) {
                                               ^
    /usr/local/include/open3d/visualization/rendering/RendererHandle.h:197:43: note: deduced return type only available with -std=c++14 or -std=gnu++14
    make[2]: *** [CMakeFiles/ellipsoid_planner_node.dir/src/ellipsoid_planner_node.cpp.o] Error 1
    make[1]: *** [CMakeFiles/ellipsoid_planner_node.dir/all] Error 2
    make: *** [all] Error 2
    
    opened by Kevinlibaba 5
  • can't fly when run test_trajectories.py

    can't fly when run test_trajectories.py

    When run "python test_trajectories.py --settings_file=config/test_settings.yaml", it will loop as follows:

    图片

    In rviz, the RGM is NO Image

    图片

    Check the rostopic, I find many topics received no message.

    图片 What's wrong with this? It's the fightmare can't communicate with ROS ? Thanks a lot !

    opened by AndyYan2 3
  • Error occurs when catkin build `mpl_test_node`

    Error occurs when catkin build `mpl_test_node`

    I was running catkin b and some strange events happened on mpl_test_node. As you can see in the following error message, in my opinion it seems like something to do with C/C++ compiler. The versions of gcc/g++ are both 7.5.0

    Errors     << mpl_test_node:make /home/m/agile_autonomy_ws/catkin_aa/logs/mpl_test_node/build.make.010.log
    In file included from /usr/local/include/open3d/geometry/PointCloud.h:36:0,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_external_planner/include/mpl_external_planner/ellipsoid_planner/ellipsoid_util.h:11,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_external_planner/include/mpl_external_planner/ellipsoid_planner/env_cloud.h:8,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_external_planner/include/mpl_external_planner/ellipsoid_planner/ellipsoid_planner.h:9,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:3:
    /usr/local/include/open3d/utility/Optional.h:308:18: error: ‘constexpr T& open3d::utility::optional<T>::contained_val() const &’ cannot be overloaded
         constexpr T& contained_val() & { return OptionalBase<T>::storage_.value_; }
                      ^~~~~~~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:302:24: error: with ‘constexpr const T& open3d::utility::optional<T>::contained_val() const &’
         constexpr const T& contained_val() const& {
                            ^~~~~~~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:478:36: error: ‘constexpr T* open3d::utility::optional<T>::operator->() const’ cannot be overloaded
         TR2_OPTIONAL_HOST_CONSTEXPR T* operator->() {
                                        ^~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:474:42: error: with ‘constexpr const T* open3d::utility::optional<T>::operator->() const’
         TR2_OPTIONAL_HOST_CONSTEXPR T const* operator->() const {
                                              ^~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:487:36: error: ‘constexpr T& open3d::utility::optional<T>::operator*() const &’ cannot be overloaded
         TR2_OPTIONAL_HOST_CONSTEXPR T& operator*() & {
                                        ^~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:483:42: error: with ‘constexpr const T& open3d::utility::optional<T>::operator*() const &’
         TR2_OPTIONAL_HOST_CONSTEXPR T const& operator*() const& {
                                              ^~~~~~~~
    /usr/local/include/open3d/utility/Optional.h:504:36: error: ‘constexpr T& open3d::utility::optional<T>::value() const &’ cannot be overloaded
         TR2_OPTIONAL_HOST_CONSTEXPR T& value() & {
                                        ^~~~~
    /usr/local/include/open3d/utility/Optional.h:497:42: error: with ‘constexpr const T& open3d::utility::optional<T>::value() const &’
         TR2_OPTIONAL_HOST_CONSTEXPR T const& value() const& {
                                              ^~~~~
    In file included from /usr/local/include/open3d/core/Tensor.h:43:0,
                     from /usr/local/include/open3d/core/EigenConverter.h:34,
                     from /usr/local/include/open3d/Open3D.h:38,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/open3d_conversions/include/open3d_conversions/open3d_conversions.h:19,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:19:
    /usr/local/include/open3d/core/TensorInit.h:95:49: error: ‘std::index_sequence’ has not been declared
     SizeVector InitializerShape(const L& list, std::index_sequence<D...>) {
                                                     ^~~~~~~~~~~~~~
    /usr/local/include/open3d/core/TensorInit.h:95:63: error: expected ‘,’ or ‘...’ before ‘<’ token
     SizeVector InitializerShape(const L& list, std::index_sequence<D...>) {
                                                                   ^
    /usr/local/include/open3d/core/TensorInit.h: In function ‘open3d::core::SizeVector open3d::core::tensor_init::InferShape(const L&)’:
    /usr/local/include/open3d/core/TensorInit.h:103:24: error: ‘make_index_sequence’ is not a member of ‘std’
                 list, std::make_index_sequence<InitializerDim<L>::value>());
                            ^~~~~~~~~~~~~~~~~~~
    /usr/local/include/open3d/core/TensorInit.h:103:24: note: suggested alternatives:
    In file included from /usr/include/boost/mp11/algorithm.hpp:25:0,
                     from /usr/include/boost/mp11/bind.hpp:11,
                     from /usr/include/boost/parameter/aux_/is_placeholder.hpp:46,
                     from /usr/include/boost/parameter/value_type.hpp:101,
                     from /usr/include/boost/parameter/aux_/name.hpp:31,
                     from /usr/include/boost/parameter/name.hpp:10,
                     from /usr/include/boost/heap/policies.hpp:13,
                     from /usr/include/boost/heap/detail/stable_heap.hpp:20,
                     from /usr/include/boost/heap/d_ary_heap.hpp:21,
                     from /home/m/agile_autonomy_ws/catkin_aa/devel/share/motion_primitive_library/cmake/../../../include/mpl_planner/common/state_space.h:10,
                     from /home/m/agile_autonomy_ws/catkin_aa/devel/share/motion_primitive_library/cmake/../../../include/mpl_planner/common/graph_search.h:10,
                     from /home/m/agile_autonomy_ws/catkin_aa/devel/share/motion_primitive_library/cmake/../../../include/mpl_planner/common/planner_base.h:12,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_external_planner/include/mpl_external_planner/ellipsoid_planner/ellipsoid_planner.h:10,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:3:
    /usr/include/boost/mp11/integer_sequence.hpp:104:90: note:   ‘boost::mp11::make_index_sequence’
     template<std::size_t N> using make_index_sequence = make_integer_sequence<std::size_t, N>;
                                                                                              ^
    In file included from /usr/local/include/open3d/utility/Logging.h:42:0,
                     from /usr/local/include/open3d/core/Device.h:32,
                     from /usr/local/include/open3d/core/Blob.h:33,
                     from /usr/local/include/open3d/Open3D.h:34,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/open3d_conversions/include/open3d_conversions/open3d_conversions.h:19,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:19:
    /usr/local/include/open3d/3rdparty/fmt/ranges.h:141:66: note:   ‘fmt::v6::internal::make_index_sequence’
     using make_index_sequence = make_integer_sequence<std::size_t, N>;
                                                                      ^
    In file included from /usr/local/include/open3d/core/Tensor.h:43:0,
                     from /usr/local/include/open3d/core/EigenConverter.h:34,
                     from /usr/local/include/open3d/Open3D.h:38,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/open3d_conversions/include/open3d_conversions/open3d_conversions.h:19,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:19:
    /usr/local/include/open3d/core/TensorInit.h:103:70: error: expected primary-expression before ‘)’ token
                 list, std::make_index_sequence<InitializerDim<L>::value>());
                                                                          ^
    In file included from /usr/local/include/open3d/visualization/gui/UIImage.h:30:0,
                     from /usr/local/include/open3d/visualization/gui/Button.h:33,
                     from /usr/local/include/open3d/Open3D.h:119,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/open3d_conversions/include/open3d_conversions/open3d_conversions.h:19,
                     from /home/m/agile_autonomy_ws/catkin_aa/src/rpg_mpl_ros/mpl_test_node/src/ellipsoid_planner_node.cpp:19:
    /usr/local/include/open3d/visualization/rendering/RendererHandle.h: At global scope:
    /usr/local/include/open3d/visualization/rendering/RendererHandle.h:181:35: error: ‘format’ function uses ‘auto’ type specifier without trailing return type
                     FormatContext& ctx) {
                                       ^
    /usr/local/include/open3d/visualization/rendering/RendererHandle.h:181:35: note: deduced return type only available with -std=c++14 or -std=gnu++14
    /usr/local/include/open3d/visualization/rendering/RendererHandle.h:189:43: error: ‘parse’ function uses ‘auto’ type specifier without trailing return type
         constexpr auto parse(ParseContext& ctx) {
                                               ^
    /usr/local/include/open3d/visualization/rendering/RendererHandle.h:189:43: note: deduced return type only available with -std=c++14 or -std=gnu++14
    make[2]: *** [CMakeFiles/ellipsoid_planner_node.dir/build.make:63:CMakeFiles/ellipsoid_planner_node.dir/src/ellipsoid_planner_node.cpp.o] 错误 1
    make[1]: *** [CMakeFiles/Makefile2:4364:CMakeFiles/ellipsoid_planner_node.dir/all] 错误 2
    make: *** [Makefile:141:all] 错误 2
    cd /home/m/agile_autonomy_ws/catkin_aa/build/mpl_test_node; catkin build --get-env mpl_test_node | catkin env -si  /usr/bin/make --jobserver-auth=3,4; cd -
    
    ....................................................................................................
    Failed     << mpl_test_node:make                          [ Exited with code 2 ]                    
    Failed    <<< mpl_test_node                               [ 27.0 seconds ]
    
    opened by zhengzaiyi 3
  • Failed to reach repository

    Failed to reach repository

    vcs-import < agile_autonomy/dependencies.yaml

    EEEEEEEEEEEEEEEEEEEE === ./assimp_catkin (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./catkin_boost_python_buildtool (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./catkin_simple (git) === Could not determine ref type of version: Warning: Permanently added the RSA host key for IP address '13.234.176.102' to the list of known hosts. [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./eigen_catkin (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./eigen_checks (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./gflags_catkin (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./glog_catkin (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./mav_comm (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./minimum_jerk_trajectories (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./minkindr (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./minkindr_ros (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./numpy_eigen (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./rotors_simulator (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./rpg_common (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./rpg_flightmare (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./rpg_mpc (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./rpg_mpl_ros (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./rpg_quadrotor_common (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./rpg_quadrotor_control (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./rpg_single_board_io (git) === Could not determine ref type of version: [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists.

    opened by EhrazImam 3
  • Failed to reach some repository

    Failed to reach some repository

    vcs-import < agile_autonomy/dependencies.yaml results some errors that failed to reach repositories.

    === ./rpg_common (git) === Could not determine ref type of version: ERROR: Repository not found. fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./rpg_flightmare (git) === Could not determine ref type of version: ERROR: Repository not found. fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists. === ./rpg_mpl_ros (git) === Could not determine ref type of version: ERROR: Repository not found. fatal: Could not read from remote repository.

    Please make sure you have the correct access rights and the repository exists.

    opened by Jiroh 3
  • Build is failing for Open3D

    Build is failing for Open3D

    Hello,

    I am trying to build the project but its failing while running the build for open3d_conversion package. I am getting below error --

     fatal error: Open3D/Open3D.h: No such file or directory
     #include <Open3D/Open3D.h>
    
    

    I have build Open3D from source using the instruction in this link --> http://www.open3d.org/docs/release/compilation.html. I was able to build and verify the build by using the instruction in this repo --> https://github.com/isl-org/open3d-cmake-find-package

    So Open3D is working in my system.

    I also checked the CMakeLists.txt file in package src/rpg_mpl_ros/open3d_conversions and I found that its trying to find the open3d by using this statement --

    find_package(Open3D HINTS /usr/local/lib/cmake/)

    I also checked my /usr/local/lib/cmake library and it has a open3d folder present in it with below files inside -->

    Open3DConfig.cmake         Open3DTargets.cmake
    Open3DConfigVersion.cmake  Open3DTargets-release.cmake
    

    I am a beginner with c++ and CMake and so I don't know if it's trying to find open3d.h file here.

    Can someone please let me know what might have gone wrong with the build?

    opened by saurabhprasun20 2
  • Cannot see flightmare simulator after running simulation.lauch

    Cannot see flightmare simulator after running simulation.lauch

    Hi, I build the package by handing several issues and ran the code through the command roslaunch agile_autonomy simulation.launch. However, I could only see popup windows of rivz and controller GUI, which excludes the flightmare simulator. Also, it continuously shows the Ready ?: 0. Are there any related issues or solutions for this?

    • hardware setup
    • Docker: Ubuntu 20.04
    • GPU: Titan X

    I have changed the CMakelist in agile_autonomy/data_generation/agile_autonomy/CMakeLists.txt, which is already handled in another issue here. I have refered this blog.

    One thing I've noticed from the error log is that the flightmare simulator in the flightrender is shutdown automatically. Following is the error log.

    [flight_render-20] process has died [pid 188249, exit code -11, cmd /root/agile_autonomy_ws/catkin_aa/src/rpg_flightmare/flightrender/standalone/flightmare.x86_64 __name:=flight_render __log:=/root/.ros/log/a514f09a-d81c-11ec-bece-88366cf6d71f/flight_render-20.log].
    log file: /root/.ros/log/a514f09a-d81c-11ec-bece-88366cf6d71f/flight_render-20*.log
    
    opened by mw9385 2
  • Possible error in nets.py freeze

    Possible error in nets.py freeze

    Hi, while looking through the source code, I noticed a tiny error.

    In agile_autonomy/planner_learning/src/PlannerLearning/models/nets.py, from line 52-58:

                   # Freeze only BN
                    model = self.backbone[0]
                    for layer in model.layers:
                        if layer.name.endswith('_bn'):
                            layer.trainable = True
                        else:
                            layer.trainable = True
    

    It seems that the code is not actually freezing the BN layers.

    I'm new to this, so I'm not sure if I'm correct.

    opened by blu666 0
  • Can this project be implemented on virtualbox vm or do i need dual boot?

    Can this project be implemented on virtualbox vm or do i need dual boot?

    Hi, i have acee predator helios 300 machine running on windows. To run the project, i have installed oracle virtual box and have set up a virtual machine with ubuntu 20.04 lts. With a lot of attempts, i have finally been able to build the workspace but i am facing the following issues:

    1. Failure to launch simulation
    2. when i try to run the network i get the error : 'ModuleNotFoundError: No module named 'PlannerLearning'
    3. when i try to train the network, then the process gets killed. Do i need to run the code by dual booting the system with ubuntu 20.04 lts to address these issues? Kindly help, i am new to ubuntu and ros :)
    opened by Abhinavjoshi7891 1
  • File named 'decomp-util' missing but can't be downloaded when catkin build

    File named 'decomp-util' missing but can't be downloaded when catkin build

    Hey, guys. I met a problem but no one else met. When I catkin build, here is my error :


    By not providing "Finddecomp_util.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "decomp_util", but CMake did not find one.

    It seemed that I lacked some ROS package, then I tried to download by this "sudo apt-get install ros-noetic-decomp-util". But there is no such package, even on the ROS offical website. Help,pls...

    opened by xiaolaji0426 0
  • potential & concerns

    potential & concerns

    This end-to-end motion planning strategy was realized by taking advantage of AI and NPU development, a pioneering work. However, I doubt quite much about the practical application.

    What I have learned from this work are:

    1. The actual inputs of the network are the processed depth image and its corresponding flying robot's state, and the goal direction. Therefore, one can use fake depth to train the network
    2. The range of the depth matters to the training. Even the depth information very far from the robot can affect the output of the network.
    3. the raw output network is the exact training result, why does it need to be fitted again before being sent to the controller? Does this mean the network is not trained well?

    What I am concerned about is, how far is it from practical applications. The training is the key to the whole work. The combination of the depth and odometry information can be infinitely large, and the amount of these different scenarios can affect the network model. Therefore, the training work would be extremely hard, in order to get a proper model that works for most of the application scenarios.

    opened by coffear 0
  • Network prediction is not symmetric

    Network prediction is not symmetric

    I have tried to train a low-speed (1.5 m/s) flight model in the forest, I find that the predicted trajectory provided by the network is not symmetric. It always tries to avoid the obstacles by turning left, even if an obstacle is already in the left front of the robot.

    Are there some ideas to address this problem?

    Thank you!

    opened by coffear 0
Owner
Robotics and Perception Group
Robotics and Perception Group
Speed-Test - You can check your intenet speed using this tool

Speed-Test Tool By Hez_X >> AVAILABLE ON : Termux & Kali linux & Ubuntu (Linux E

Hez-X 3 Feb 17, 2022
Examples of using f2py to get high-speed Fortran integrated with Python easily

f2py Examples Simple examples of using f2py to get high-speed Fortran integrated with Python easily. These examples are also useful to troubleshoot pr

Michael 35 Aug 21, 2022
Flybirds - BDD-driven natural language automated testing framework, present by Trip Flight

Flybird | English Version 行为驱动开发(Behavior-driven development,缩写BDD),是一种软件过程的思想或者

Ctrip, Inc. 706 Dec 30, 2022
A machine learning benchmark of in-the-wild distribution shifts, with data loaders, evaluators, and default models.

WILDS is a benchmark of in-the-wild distribution shifts spanning diverse data modalities and applications, from tumor identification to wildlife monitoring to poverty mapping.

P-Lambda 437 Dec 30, 2022
The code of paper 'Learning to Aggregate and Personalize 3D Face from In-the-Wild Photo Collection'

Learning to Aggregate and Personalize 3D Face from In-the-Wild Photo Collection Pytorch implemetation of paper 'Learning to Aggregate and Personalize

Tencent YouTu Research 136 Dec 29, 2022
[CVPR'21] Learning to Recommend Frame for Interactive Video Object Segmentation in the Wild

IVOS-W Paper Learning to Recommend Frame for Interactive Video Object Segmentation in the Wild Zhaoyun Yin, Jia Zheng, Weixin Luo, Shenhan Qian, Hanli

SVIP Lab 38 Dec 12, 2022
Official Pytorch implementation of "Learning to Estimate Robust 3D Human Mesh from In-the-Wild Crowded Scenes", CVPR 2022

Learning to Estimate Robust 3D Human Mesh from In-the-Wild Crowded Scenes / 3DCrowdNet News ?? 3DCrowdNet achieves the state-of-the-art accuracy on 3D

Hongsuk Choi 113 Dec 21, 2022
Lipstick ain't enough: Beyond Color-Matching for In-the-Wild Makeup Transfer (CVPR 2021)

Table of Content Introduction Datasets Getting Started Requirements Usage Example Training & Evaluation CPM: Color-Pattern Makeup Transfer CPM is a ho

VinAI Research 248 Dec 13, 2022
Text-to-SQL in the Wild: A Naturally-Occurring Dataset Based on Stack Exchange Data

SEDE SEDE (Stack Exchange Data Explorer) is new dataset for Text-to-SQL tasks with more than 12,000 SQL queries and their natural language description

Rupert. 83 Nov 11, 2022
Code release of paper "Deep Multi-View Stereo gone wild"

Deep MVS gone wild Pytorch implementation of "Deep MVS gone wild" (Paper | website) This repository provides the code to reproduce the experiments of

François Darmon 53 Dec 24, 2022
Robust Partial Matching for Person Search in the Wild

APNet for Person Search Introduction This is the code of Robust Partial Matching for Person Search in the Wild accepted in CVPR2020. The Align-to-Part

Yingji Zhong 36 Dec 18, 2022
URIE: Universal Image Enhancementfor Visual Recognition in the Wild

URIE: Universal Image Enhancementfor Visual Recognition in the Wild This is the implementation of the paper "URIE: Universal Image Enhancement for Vis

Taeyoung Son 43 Sep 12, 2022
A pytorch implementation of the CVPR2021 paper "VSPW: A Large-scale Dataset for Video Scene Parsing in the Wild"

VSPW: A Large-scale Dataset for Video Scene Parsing in the Wild A pytorch implementation of the CVPR2021 paper "VSPW: A Large-scale Dataset for Video

null 45 Nov 29, 2022
Look Who’s Talking: Active Speaker Detection in the Wild

Look Who's Talking: Active Speaker Detection in the Wild Dependencies pip install -r requirements.txt In addition to the Python dependencies, ffmpeg

Clova AI Research 60 Dec 8, 2022
This is an official implementation for the WTW Dataset in "Parsing Table Structures in the Wild " on table detection and table structure recognition.

WTW-Dataset This is an official implementation for the WTW Dataset in "Parsing Table Structures in the Wild " on ICCV 2021. Here, you can download the

null 109 Dec 29, 2022
Code for ICCV2021 paper SPEC: Seeing People in the Wild with an Estimated Camera

SPEC: Seeing People in the Wild with an Estimated Camera [ICCV 2021] SPEC: Seeing People in the Wild with an Estimated Camera, Muhammed Kocabas, Chun-

Muhammed Kocabas 187 Dec 26, 2022
A python implementation of Yolov5 to detect fire or smoke in the wild in Jetson Xavier nx and Jetson nano

yolov5-fire-smoke-detect-python A python implementation of Yolov5 to detect fire or smoke in the wild in Jetson Xavier nx and Jetson nano You can see

null 20 Dec 15, 2022
Source code and notebooks to reproduce experiments and benchmarks on Bias Faces in the Wild (BFW).

Face Recognition: Too Bias, or Not Too Bias? Robinson, Joseph P., Gennady Livitz, Yann Henon, Can Qin, Yun Fu, and Samson Timoner. "Face recognition:

Joseph P. Robinson 41 Dec 12, 2022
Towards Multi-Camera 3D Human Pose Estimation in Wild Environment

PanopticStudio Toolbox This repository has a toolbox to download, process, and visualize the Panoptic Studio (Panoptic) data. Note: Sep-21-2020: Curre

null 335 Jan 9, 2023