rpg_svo icon indicating copy to clipboard operation
rpg_svo copied to clipboard

Is SVO compatible with Ubuntu 16.04?

Open Flock1 opened this issue 7 years ago • 9 comments

HI,

I wanted to know if SVO works on Ubuntu 16.04 and ROS Lunar? I am facing the issue where the visualiser stops working as soon as the I upload the file and I get the error: [svo-1] process has died.

Please let me know.

Flock1 avatar May 01 '18 10:05 Flock1

Hi Flock1,

it works for me on Ubuntu 16.04 and ROS Kinetic.

odinhr avatar May 02 '18 07:05 odinhr

@odinhr, Thanks for the reply. I'm using Lunar. So I guess that's the problem.

Flock1 avatar May 02 '18 07:05 Flock1

@odinhr, This is what I'm getting when I run the .bag file (final step):

[svo-1] process has died [pid 22806, exit code -11, cmd /path/to/catkin/catkin_ws/devel/lib/svo_ros/vo __name:=svo __log:=/home/sarvagya/.ros/log/740d9b28-4ec8-11e8-be1c-7085c259af94/svo-1.log].
log file: /path/.ros/log/740d9b28-4ec8-11e8-be1c-7085c259af94/svo-1*.log
all processes on machine have died, roslaunch will exit
shutting down processing monitor...
... shutting down processing monitor complete

Flock1 avatar May 03 '18 11:05 Flock1

Maybe you should try with this commit. It could be better for you. Sometimes I have similars problems before that commit.

https://github.com/uzh-rpg/rpg_svo/commit/ec240827b1b284fb3269e2b39d5871d92fd5d19f

odinhr avatar May 04 '18 13:05 odinhr

@odinhr, This is what I'm getting when I catkin_make:

invalid initialization of reference of type ‘const std::vector<Eigen::Matrix<double, 3, 1> >&’ from expression of type ‘vectorA<Eigen::Matrix<double, 3, 1> > {aka const std::vector<Eigen::Matrix<double, 3, 1>, Eigen::aligned_allocator<std::pair<const int, Eigen::Matrix<double, 3, 1> > > >}’
                      xyz_in_cur, inliers, outliers);
                                                   ^
In file included from /home/sarvagya/catkin_ws/src/rpg_svo/svo/include/svo/frame.h:21:0,
                 from /home/sarvagya/catkin_ws/src/rpg_svo/svo/src/initialization.cpp:18:
/home/sarvagya/catkin_ws/src/rpg_vikit/vikit_common/include/vikit/math_utils.h:44:8: note: in passing argument 1 of ‘double vk::computeInliers(const std::vector<Eigen::Matrix<double, 3, 1> >&, const std::vector<Eigen::Matrix<double, 3, 1> >&, const Matrix3d&, const Vector3d&, double, double, std::vector<Eigen::Matrix<double, 3, 1> >&, std::vector<int>&, std::vector<int>&)’

Flock1 avatar May 07 '18 13:05 Flock1

I have similar problems running SVO on Raspberry Pi. I solved the problems running make on catkin_ws/build. I compiled SVO on pc long time ago. I don't remember my problems. @Flock1

odinhr avatar May 11 '18 12:05 odinhr

@Flock1 Is this issue solved? I am getting similar problems as you.

saikrn112 avatar May 13 '18 07:05 saikrn112

@saikrn112, I couldn't. I'm getting this make file error as shown above.

Flock1 avatar May 13 '18 07:05 Flock1

Well I had a similar problem and as supposed in #174, installing Eigen 3.2.10 fixed it for me. If you don't need your current Eigen version, then simply follow #174. But you can also do a local installation, then follow these steps:

Clone Eigen (e.g. to your Downloads folder) from https://bitbucket.org/eigen/eigen/src/default/ Then checkout branch 3.2.10

cd ~/Downloads/eigen && hg checkout 3.2.10

To install Eigen locally, build it like follows:

cd ~/Downloads/eigen && mkdir build && cmake -DCMAKE_INSTALL_PREFIX=${HOME}/local .. && make install

Now re-build SVO. From your catkin_ws folder remove the build folder, the devel folder, and src/CMakeLists.txt

cd <path to your catkin_ws> && rm -r build && rm -r devel && rm src/CMakeLists.txt

Now, since you want to use your locally installed Eigen, you need to build SVO by hand.

cd <path to your catkin_ws>/src && catkin_init_workspace && cd .. && mkdir build && cd build

Then make it with your local Eigen install e.g.:

cmake -DEIGEN_INCLUDE_DIR=${HOME}/local/include/eigen3 -DCMAKE_INSTALL_PREFIX=../install -DCATKIN_DEVEL_PREFIX=../devel ../src

That should fix it.

mhubii avatar Sep 04 '18 16:09 mhubii