ubuntu20.04 MYNTEYE S 相机运行与标定记录

ubuntu20.04 MYNTEYE S 相机运行与标定记录

环境

ubuntu20.04
opencv3.3.1

硬件

mynteye S1030

OpenCV 3.4.3 安装

Jetson Nano+小觅相机(MYNT EYE S)开发调试指南

mkdir -p ~/tools/opencv
cd ~/tools/opencv

git clone https://github.com/opencv/opencv.git
cd opencv/
git checkout tags/3.4.3

cd ~/tools/opencv
mv opencv opencv-3.4.3
cd opencv-3.4.3/

mkdir build
cd build
cmake  -DCMAKE_INSTALL_PREFIX=/home/robot/tools/opencv/opencv-3.4.3/build/installed ..
make
make install

cv_bridge配置

mkdir -p ~/workspace/MYNT_EYE/S_SDK/src
cd ~/workspace/MYNT_EYE/S_SDK/src

catkin init

git clone https://github.com/ros-perception/vision_opencv.git --branch melodic   # melodic对应1.13版本

mv vision_opencv/cv_bridge ./
rm -rf vision_opencv

# 修改CMakeLists.txt和package.xml中的package name为cv_bridge_3
catkin_make

MYNT-EYE-S-SDK

cd ~/workspace/MYNT_EYE/S_SDK/src
git clone https://github.com/slightech/MYNT-EYE-S-SDK.git
cd MYNT-EYE-S-SDK
make install  # 见ERROR 1

cd ~/workspace/MYNT_EYE/S_SDK
catkin_make   # 见ERROR 2 3 4 5

# 测试
cd ~/workspace/MYNT_EYE/S_SDK
source devel/setup.bash
roslaunch mynt_eye_ros_wrapper display.launch

ERROR 1:
忘记是什么报错了,忘记复制了。但是是cv相关的报错,是因为忘记添加OpenCV_LIB_PATH了。
FIX:
在MYNT-EYE-S-SDK/CMakeLists.txt中添加

set(OpenCV_DIR /home/robot/tools/opencv/opencv-3.4.3/build)
set(OpenCV_LIB_PATH /home/robot/tools/opencv/opencv-3.4.3/build/installed/lib)

ERROR 2:

-- Could NOT find cv_bridge (missing: cv_bridge_DIR)
-- Could not find the required component 'cv_bridge'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by "cv_bridge" with
  any of the following names:

    cv_bridgeConfig.cmake
    cv_bridge-config.cmake

  Add the installation prefix of "cv_bridge" to CMAKE_PREFIX_PATH or set
  "cv_bridge_DIR" to a directory containing one of the above files.  If
  "cv_bridge" provides a separate development package or SDK, be sure it has
  been installed.
Call Stack (most recent call first):
  MYNT-EYE-S-SDK/wrappers/ros/src/mynt_eye_ros_wrapper/CMakeLists.txt:36 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/robot/tools/MYNT_EYE/S_SDK/build/CMakeFiles/CMakeOutput.log".
See also "/home/robot/tools/MYNT_EYE/S_SDK/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed

FIX:
在catkin_ws中增加了cv_bridge并将其package修改为了cv_bridge_3,但是在SDK中的wrappers/ros/src中的CMakeLists.txt中将find_package中的cv_bridge也要修改成对应空间中的cv_bridge_3.

find_package(catkin REQUIRED COMPONENTS
  cv_bridge_3
  geometry_msgs
  image_transport
  message_generation
  nodelet
  roscpp
  sensor_msgs
  std_msgs
  tf
)

ERROR 3:

-- Could NOT find image_transport (missing: image_transport_DIR)
-- Could not find the required component 'image_transport'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by "image_transport"
  with any of the following names:

    image_transportConfig.cmake
    image_transport-config.cmake

  Add the installation prefix of "image_transport" to CMAKE_PREFIX_PATH or
  set "image_transport_DIR" to a directory containing one of the above files.
  If "image_transport" provides a separate development package or SDK, be
  sure it has been installed.
Call Stack (most recent call first):
  MYNT-EYE-S-SDK/wrappers/ros/src/mynt_eye_ros_wrapper/CMakeLists.txt:36 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/robot/tools/MYNT_EYE/S_SDK/build/CMakeFiles/CMakeOutput.log".
See also "/home/robot/tools/MYNT_EYE/S_SDK/build/CMakeFiles/CMakeError.log".
make: *** [Makefile:782: cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed

找不到image_transport
FIX:
在wrappers/ros/src/CMakeLists.txt中添加set(image_transport_DIR /opt/ros/noetic/share/image_transport/cmake)

ERROR 4:

-- Could NOT find message_generation (missing: message_generation_DIR)
-- Could not find the required component 'message_generation'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by
  "message_generation" with any of the following names:

    message_generationConfig.cmake
    message_generation-config.cmake

  Add the installation prefix of "message_generation" to CMAKE_PREFIX_PATH or
  set "message_generation_DIR" to a directory containing one of the above
  files.  If "message_generation" provides a separate development package or
  SDK, be sure it has been installed.
Call Stack (most recent call first):
  MYNT-EYE-S-SDK/wrappers/ros/src/mynt_eye_ros_wrapper/CMakeLists.txt:38 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/robot/tools/MYNT_EYE/S_SDK/build/CMakeFiles/CMakeOutput.log".
See also "/home/robot/tools/MYNT_EYE/S_SDK/build/CMakeFiles/CMakeError.log".
make: *** [Makefile:782: cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed

找不到message_generation。
FIX:
在wrappers/ros/src/CMakeLists.txt中添加set(message_generation_DIR /opt/ros/noetic/share/message_generation/cmake)

ERROR 5:

[ 88%] Linking CXX shared library /home/robot/tools/MYNT_EYE/S_SDK/devel/lib/libmynteye_wrapper.so
/usr/bin/ld: cannot find -lBoost::filesystem
collect2: error: ld returned 1 exit status
make[2]: *** [MYNT-EYE-S-SDK/wrappers/ros/src/mynt_eye_ros_wrapper/CMakeFiles/mynteye_wrapper.dir/build.make:144: /home/robot/tools/MYNT_EYE/S_SDK/devel/lib/libmynteye_wrapper.so] Error 1
make[1]: *** [CMakeFiles/Makefile2:2035: MYNT-EYE-S-SDK/wrappers/ros/src/mynt_eye_ros_wrapper/CMakeFiles/mynteye_wrapper.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
Invoking "make -j8 -l8" failed

找不到Boost::filesystem
FIX:
修改wrappers/ros/src/CMakeLists.txt。

find_package(Boost REQUIRED COMPONENTS filesystem)
include_directories(${Boost_INCLUDE_DIRS})

S 系列相机标定

IMU标定

roslaunch mynt_eye_ros_wrapper vins_fusion.launch
rosbag record -O IMU_mynteye_s_calibration /mynteye/imu/data_raw

录制一个小时以上

roslaunch imu_utils mynteye_imu_calibration.launch

rosbag play -r 200 IMU_mynteye_s_calibration.bag

标注

后续再继续标定,目前出现问题:

  1. 同样的IMU标定流程,手中的mynteye D相机正常标定,但是S相机标定时ERROR
  2. 双目标定时,mynteye D相机正常,但是S相机无法降低采样频率,每次降到4hz,相机进程就会被杀死。不清楚是不是因为驱动。

决定还是试试D455,主要目的是将D455标定结果和mynteye D相机进行对比。

你可能感兴趣的:(实验记录,数码相机)