当前位置: 首页 > news >正文

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/opencvgit clone https://github.com/opencv/opencv.git
cd opencv/
git checkout tags/3.4.3cd ~/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/srccatkin initgit 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 1cd ~/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" withany of the following names:cv_bridgeConfig.cmakecv_bridge-config.cmakeAdd 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 hasbeen 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 COMPONENTScv_bridge_3geometry_msgsimage_transportmessage_generationnodeletroscppsensor_msgsstd_msgstf
)

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.cmakeimage_transport-config.cmakeAdd the installation prefix of "image_transport" to CMAKE_PREFIX_PATH orset "image_transport_DIR" to a directory containing one of the above files.If "image_transport" provides a separate development package or SDK, besure 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.cmakemessage_generation-config.cmakeAdd the installation prefix of "message_generation" to CMAKE_PREFIX_PATH orset "message_generation_DIR" to a directory containing one of the abovefiles.  If "message_generation" provides a separate development package orSDK, 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.launchrosbag play -r 200 IMU_mynteye_s_calibration.bag

标注

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

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

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

相关文章:

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/opencvgit clone https://github.com/opencv/opencv.git cd opencv/…...

有效降低数据库存储成本方案与实践 | 京东云技术团队

背景 随着平台的不断壮大,业务的不断发展,后端系统的数据量、存储所使用的硬件成本也逐年递增。从发展的眼光看,业务与系统要想健康的发展,成本增加的问题必须重视起来。目前业界普遍认同开源节流大方向,很多企业部门…...

分布式数据库Schema 变更 in F1 TiDB

分布式数据库Schema 变更 in F1 & TiDB 【转载】TiDB 源码阅读系列文章(十七)DDL 源码解析 | PingCAP 上述文章主要叙述了从DDL语句发起到执行的过程,简单介绍了弄一套相同的模式来后台处理数据回填,从而提高DDL的并发度的一…...

图形库篇 | EasyX | 图像处理

图形库篇 | EasyX | 图像处理 图像类型 IMAGE表示图像,用于定义一个图像变量,与导入的图片资源一一对应。 IMAGE img;加载与绘制图像 函数功能函数加载图像void loadimage(IMAGE* pDstImg,LPCTSTR pImgFile,int nwidth = 0,int nHeight = 0,bool bResize = false)绘制图像v…...

AWTK UI 自动化测试工具发布

AWTK UI 自动化 提供了兼容 Appium 的接口,可以使用 Appium 的工具来进行 UI 自动化测试。但是使用起来有点麻烦,用的人不多,所以最终决定开发一个 AWTK 专用的 UI 自动化测试工具。相比 Appium,这个工具有下列特点: …...

Java后端开发——JDBC入门实验

JDBC(Java Database Connectivity)是Java编程语言中用于与数据库建立连接并进行数据库操作的API(应用程序编程接口)。JDBC允许开发人员连接到数据库,执行各种操作(如插入、更新、删除和查询数据&#xff09…...

LCA

定义 最近公共祖先简称 LCA(Lowest Common Ancestor)。两个节点的最近公共祖先,就是这两个点的公共祖先里面,离根最远的那个。 性质 如果 不为 的祖先并且 不为 的祖先,那么 分别处于 的两棵不同子树中&#…...

ts学习02-数据类型

新建index.html <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> </h…...

javaSE的发展历史以及openjdk和oracleJdk

1 JavaSE 的发展历史 1.1 Java 语言的介绍 SUN 公司在 1991 年成立了一个称为绿色计划&#xff08;Green Project&#xff09;的项目&#xff0c;由 James Gosling&#xff08;高斯林&#xff09;博士领导&#xff0c;绿色计划的目的是开发一种能够在各种消费性电子产品&…...

【入门Flink】- 10基于时间的双流联合(join)

统计固定时间内两条流数据的匹配情况&#xff0c;需要自定义来实现——可以用窗口&#xff08;window&#xff09;来表示。为了更方便地实现基于时间的合流操作&#xff0c;Flink 的 DataStrema API 提供了内置的 join 算子。 窗口联结&#xff08;Window Join&#xff09; 一…...

【Python Opencv】图片与视频的操作

文章目录 前言一、opencv图片1.1 读取图像1.2 显示图像1.3 写入图像1.4 示例代码 二、Opencv视频2.1 从相机捕获视频获取摄像头一帧一帧读取显示图片VideoCapture 中的get和set函数示例代码 2.2 从文件播放视频示例代码 2.3 保存视频示例代码 总结 前言 在计算机视觉和图像处理…...

【从入门到起飞】JavaAPI—System,Runtime,Object,Objects类

&#x1f38a;专栏【JavaSE】 &#x1f354;喜欢的诗句&#xff1a;更喜岷山千里雪 三军过后尽开颜。 &#x1f386;音乐分享【如愿】 &#x1f384;欢迎并且感谢大家指出小吉的问题&#x1f970; 文章目录 &#x1f354;System类⭐exit()⭐currentTimeMillis()&#x1f384;用…...

【Git】的分支和标签的讲解及实际应用场景

目录 讲解 环境讲述 分支标签的区别 分支 命令 场景应用 标签 命令 标签规范 讲解 环境讲述 当软件从开发到正式环境部署的过程中&#xff0c;不同环境的作用 开发环境&#xff1a;用于开发人员进行软件开发、测试和调试。在这个环境中&#xff0c;开发人员可以快速地…...

修改django开发环境runserver命令默认的端口

runserver默认8000端口 虽然python manage.py runserver 8080 可以指定端口&#xff0c;但不想每次runserver都添加8080这个参数 可以通过修改manage.py进行修改&#xff0c;只需要加三行&#xff1a; from django.core.management.commands.runserver import Command as Ru…...

kubeadm安装k8s高可用集群

目录 一、环境规划 二、注意事项&#xff1a; 三、环境准备&#xff1a; 1. 关闭防火墙规则&#xff0c;关闭selinux&#xff0c;关闭swap交换&#xff1a; 2. 修改主机名 3. 所有节点修改hosts文件&#xff1a; 4. 所有节点时间同步&#xff1a; 5. 所有节点实现Linux的资…...

来看看电脑上有哪些不为人知的小众软件?

​ 电脑上的各类软件有很多&#xff0c;除了那些常见的大众化软件&#xff0c;还有很多不为人知的小众软件&#xff0c;专注于实用功能&#xff0c;简洁干净、功能强悍。 1.桌面停靠栏工具——BitDock ​ BitDock是一款运行在Windows系统中的桌面停靠栏工具&#xff0c;功能实…...

一个进程最多可以创建多少个线程?

前言 话不多说&#xff0c;先来张脑图~ linux 虚拟内存知识回顾 虚拟内存空间长啥样 在 Linux 操作系统中&#xff0c;虚拟地址空间的内部又被分为内核空间和用户空间两部分&#xff0c;不同位数的系统&#xff0c;地址空间的范围也不同。比如最常见的 32 位和 64 位系统&am…...

ElasticSearch文档分析

ElasticSearch文档分析 包含下面的过程&#xff1a; 将一块文本分成适合于倒排索引的独立的 词条将这些词条统一化为标准格式以提高它们的“可搜索性”&#xff0c;或者 recall 分析器执行上面的工作。分析器实际上是将三个功能封装到了一个包里&#xff1a; 字符过滤器 首先&a…...

Xilinx FPGA平台DDR3设计详解(一):DDR SDRAM系统框架

DDR SDRAM&#xff08;双倍速率同步动态随机存储器&#xff09;是一种内存技术&#xff0c;它可以在时钟信号的上升沿和下降沿都传输数据&#xff0c;从而提高数据传输的速率。DDR SDRAM已经发展了多代&#xff0c;包括DDR、DDR2、DDR3、DDR4和DDR5&#xff0c;每一代都有不同的…...

Spring Data JPA方法名命名规则

最近巩固一下JPA&#xff0c;网上看到这些资料&#xff0c;这里记录巩固一下。 一、Spring Data Jpa方法定义的规则 简单条件查询 简单条件查询&#xff1a;查询某一个实体类或者集合。 按照Spring Data的规范的规定&#xff0c;查询方法以find | read | get开头&…...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 &#xff08;一&#xff09;多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如&#xff0c;当用户上传一张“蓝色连衣裙”的图片时&#xff0c;接口可自动提取图像中的颜色&#xff08;RGB值&…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

linux 错误码总结

1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

GitHub 趋势日报 (2025年06月08日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制

在数字化浪潮席卷全球的今天&#xff0c;数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具&#xff0c;在大规模数据获取中发挥着关键作用。然而&#xff0c;传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时&#xff0c;常出现数据质…...

SQL慢可能是触发了ring buffer

简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...

脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)

一、OpenBCI_GUI 项目概述 &#xff08;一&#xff09;项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台&#xff0c;其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言&#xff0c;首次接触 OpenBCI 设备时&#xff0c;往…...

Xela矩阵三轴触觉传感器的工作原理解析与应用场景

Xela矩阵三轴触觉传感器通过先进技术模拟人类触觉感知&#xff0c;帮助设备实现精确的力测量与位移监测。其核心功能基于磁性三维力测量与空间位移测量&#xff0c;能够捕捉多维触觉信息。该传感器的设计不仅提升了触觉感知的精度&#xff0c;还为机器人、医疗设备和制造业的智…...

SpringAI实战:ChatModel智能对话全解

一、引言&#xff1a;Spring AI 与 Chat Model 的核心价值 &#x1f680; 在 Java 生态中集成大模型能力&#xff0c;Spring AI 提供了高效的解决方案 &#x1f916;。其中 Chat Model 作为核心交互组件&#xff0c;通过标准化接口简化了与大语言模型&#xff08;LLM&#xff0…...

阿里云Ubuntu 22.04 64位搭建Flask流程(亲测)

cd /home 进入home盘 安装虚拟环境&#xff1a; 1、安装virtualenv pip install virtualenv 2.创建新的虚拟环境&#xff1a; virtualenv myenv 3、激活虚拟环境&#xff08;激活环境可以在当前环境下安装包&#xff09; source myenv/bin/activate 此时&#xff0c;终端…...