ORB-SLAM3 coreDump errors

1 terminate called after throwing an instance of ‘cv::Exception’what(): OpenCV(3.4.16) /home/seu/wsh/study/ch5/opencv-3.4.16/modules/imgproc/src/median_blur.dispatch.cpp:283: error: (-215:Assertion failed) !_src0.empty() in function ‘medianBlur’

path erro

-Camera 1 parameters (Pinhole): [ 718.856 718.856 607.193 185.216 ]
./run_stereo_kitti.sh: line 1: 68995 Segmentation fault (core dumped) ./stereo_kitti ~/dev_ws_ros1_SLAM/ORB_SLAM3/Vocabulary/ORBvoc.txt /home/dry/Documents/SLAM/ORB_SLAM/ORB_SLAM3/Examples/Stereo/KITTI00-02.yaml /home/dry/Documents/data/KITTI/01

ros cv_bidge using opencv may confilct with you own,so reintall cv_bridge

2 (ORB-SLAM3: Current Frame:3598): Gtk-ERROR **: 19:51:33.694: GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported


sudo apt remove libgtk3*

remove gtk3 , rebuild opencv and orbslam .run the demo again
orb-slam3 ros coreDump

3 ros opencv version confilct with orbslam version. changge the opencv version(you build frome source) or remove cvbridge and build it from source

To install cv_bridge from source, you will need to follow these steps:

  1. Setup ROS Workspace:
    Create a new ROS workspace if you haven’t already done so. Here’s how you can create a new workspace:

    mkdir -p ~/catkin_ws/src
    cd ~/catkin_ws/
    catkin_make
    source devel/setup.bash
    
  2. Clone cv_bridge Repository:
    Clone the cv_bridge repository into the src folder of your ROS workspace:

    cd ~/catkin_ws/src
    git clone https://github.com/ros-perception/vision_opencv.git
    

    The vision_opencv repository contains the cv_bridge package along with other related packages.

  3. Configure and Build:
    Configure and build the cv_bridge package and its dependencies within your workspace:

    cd ~/catkin_ws
    catkin_make
    
  4. Source Setup:
    Source the setup files to set up your environment:

    source devel/setup.bash
    
  5. Test Installation:
    Test the installation by running a simple node that uses cv_bridge. For example, you can write a small ROS node that subscribes to a camera topic and displays the image using cv_bridge.

Detailed Steps:

Step 1: Create a ROS Workspace

If you haven’t created a ROS workspace yet, you can do so by following these commands:

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
source devel/setup.bash
Step 2: Clone the Repository

Clone the vision_opencv repository, which contains cv_bridge:

cd ~/catkin_ws/src
git clone https://github.com/ros-perception/vision_opencv.git
Step 3: Build the Workspace

Build the vision_opencv packages and their dependencies:

cd ~/catkin_ws
catkin_make
Step 4: Set Up Environment

Set up the environment by sourcing the setup files:

source devel/setup.bash
Step 5: Test Installation

To test the installation, you can write a simple ROS node that subscribes to a camera topic and displays the image using cv_bridge. Here’s an example of how you can do this:

#include "ros/ros.h"
#include "sensor_msgs/Image.h"
#include "cv_bridge/cv_bridge.h"
#include <opencv2/highgui/highgui.hpp>

void imageCallback(const sensor_msgs::ImageConstPtr& msg)
{
  try
  {
    cv::Mat image = cv_bridge::toCvShare(msg, "bgr8")->image;
    cv::imshow("Image window", image);
    cv::waitKey(30);
  }
  catch (cv_bridge::Exception& e)
  {
    ROS_ERROR("Could not convert from '%s' to 'bgr8'.", msg->encoding.c_str());
  }
}

int main(int argc, char** argv)
{
  ros::init(argc, argv, "image_listener");
  ros::NodeHandle nh;

  ros::Subscriber sub = nh.subscribe("/camera/image_raw", 1, imageCallback);

  ros::spin();

  return 0;
}

Compile the node and run it:

cd ~/catkin_ws/src
mkdir my_image_subscriber
cd my_image_subscriber
catkin_create_pkg my_image_subscriber rospy std_msgs cv_bridge
cd src
touch image_subscriber.cpp
vim image_subscriber.cpp

Copy the above code into image_subscriber.cpp and save the file. Then, build the package and run the node:

cd ~/catkin_ws
catkin_make
source devel/setup.bash
rosrun my_image_subscriber image_subscriber

Make sure to replace /camera/image_raw with the appropriate topic name for your camera.

If everything is set up correctly, you should see the images displayed in a window when you run the node.

If you encounter any issues during the build or while testing the installation, feel free to ask for further assistance!

-Loaded misc parameters


SLAM settings:
-Camera 1 parameters (Pinhole): [ 357.985 389.225 358.557 229.835 ]
段错误 (核心已转储)

if you reach this and core dump, the config yaml may be wrong. you can change to the official yaml,like KITTI00-02.yaml,and it will run.

  • 27
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值