raulmur / ORB_SLAM2

Real-Time SLAM for Monocular, Stereo and RGB-D Cameras, with Loop Detection and Relocalization Capabilities
Other
9.37k stars 4.69k forks source link

cannot rosrun ORB_SLAM2 Mono #582

Open FatEvilCat opened 6 years ago

FatEvilCat commented 6 years ago

Here is the fault. OpenCV Error

Input sensor was set to: Monocular Loading ORB Vocabulary. This could take a while... Vocabulary loaded!

OpenCV Error: Bad argument (Invalid pointer to file storage) in cvGetFileNodeByName, file /home/panc/opencv-2.4.8/modules/core/src/persistence.cpp, line 740 terminate called after throwing an instance of 'cv::Exception' what(): /home/panc/opencv-2.4.8/modules/core/src/persistence.cpp:740: error: (-5) Invalid pointer to file storage in function cvGetFileNodeByName

guchangjun commented 6 years ago

you should use the same opencv version Orbslam 只需要用opencv2.4.8即可,如果电脑里单独装了其他版本的opencv,可能会遇到这个问题, 解决办法: 更改三个地方CMakeLists.txt中的opencv信息为opencv2.4.8 /home/vision/ros_ws/src/ORB_SLAM2 /home/vision/ros_ws/src/ORB_SLAM2/Thirdparty/DBoW2 /home/vision/ros_ws/src/ORB_SLAM2/Examples/ROS/ORB_SLAM2 更改为:(下面的opencv路径改为你安装opencv2.4.8的路径) set(OpenCV_DIR "/usr/local/opencv2.4.8/share/OpenCV")

project name

find_package(OpenCV 2.4.8 REQUIRED) include_directories(${OpenCV_INCLUDE_DIRS})