Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Jetson nano compatibility #11

Closed
alexvaut opened this issue Sep 26, 2019 · 6 comments
Closed

Jetson nano compatibility #11

alexvaut opened this issue Sep 26, 2019 · 6 comments

Comments

@alexvaut
Copy link

First thanks a lot for making it easier to run ORB_SLAM2 on the nvidia SBC platform. Do you think it could run on jetson nano in terms of dependencies/libraries and in terms of performances how bad it would be ?

@thien94
Copy link
Owner

thien94 commented Oct 13, 2019

Hi @alexvaut , sorry for the late reply.

I have tested with Jetson Nano and with the correct modifications, this package can run on it. I have yet to benchmark the performance, but if you happen to have a Nano and can verify the steps can be reproduced it would be very helpful.

Below are the steps to build this package on Jetson Nano:


  • Install OpenCV 4.1.0 on Jetson Nano (the 3.3.0 version installed with the default image has some issues). Following the instructions in this page worked well for me.
  • Install dependencies:
    • Pangolin: follow the instructions here.
    • Eigen 3:
      sudo apt install libeigen3-dev
      
    • PCL for ROS:
      sudo apt-get install libopenni2-dev
      sudo apt-get install ros-melodic-pcl-ros
      
  • Clone the jetson_nano branch of the code (with modified CMakeLists for OpenCV 4.1.0 and fixed some compatability issues):
git clone https://github.com/hoangthien94/ORB_SLAM2_CUDA.git ORB_SLAM2_CUDA
cd ORB_SLAM2_CUDA 
git checkout jetson_nano
  • Build like normal:
chmod +x build.sh
./build.sh
chmod +x build_ros.sh
./build_ros.sh

@alexvaut
Copy link
Author

I'm waiting for my jetson nano, I will try as soon as I can and will let you know ! Thanks again.

@alexvaut
Copy link
Author

I managed to build everything except running build_ros.sh, I get this:

[rosbuild] Error from directory check: /opt/ros/melodic/share/ros/core/rosbuild/bin/check_same_directories.py  /home/alex/ORB_SLAM2_CUDA/Examples/ROS/ORB_SLAM2_CUDA
1
Traceback (most recent call last):
  File "/opt/ros/melodic/share/ros/core/rosbuild/bin/check_same_directories.py", line 46, in <module>
    raise Exception
Exception
CMake Error at /opt/ros/melodic/share/ros/core/rosbuild/private.cmake:102 (message):
  [rosbuild] rospack found package "ORB_SLAM2_CUDA" at "", but the current
  directory is "/home/alex/ORB_SLAM2_CUDA/Examples/ROS/ORB_SLAM2_CUDA".  You
  should double-check your ROS_PACKAGE_PATH to ensure that packages are found
  in the correct precedence order.
Call Stack (most recent call first):
  /opt/ros/melodic/share/ros/core/rosbuild/public.cmake:177 (_rosbuild_check_package_location)
  CMakeLists.txt:4 (rosbuild_init)


-- Configuring incomplete, errors occurred!
See also "/home/alex/ORB_SLAM2_CUDA/Examples/ROS/ORB_SLAM2_CUDA/build/CMakeFiles/CMakeOutput.log".
make: *** No targets specified and no makefile found.  Stop.

@alexvaut
Copy link
Author

No worries, I fixed it by calling

export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/alex/ORB_SLAM2_CUDA/Examples/ROS

@alexvaut
Copy link
Author

It's working great, a slight change on the instructions, follow this to install PLC for ROS.

@thien94
Copy link
Owner

thien94 commented Oct 26, 2019

Fantastic! Hope you have good results with the Nano.

I will close the issue for now. Feel free to re-open or open a new one if any other problem arises.

@thien94 thien94 closed this as completed Oct 26, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants