郑州专业的网站建设网站建设职能

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

郑州专业的网站建设,网站建设职能,网页设计与制作dw,虚拟电子商务网站建设前期规划方案文章目录 Openvslam 学习报告什么是Openvslam概念特点 安装和运行OpenVSLAM克隆源代码安装依赖库测试#xff08;环境已经安装成功#xff09;运行运行失败的总结运行成功 系统设计模块和函数接口调用流程流程图参考资料 Openvslam 学习报告 什么是Openvslam 概念 OpenVSL… 文章目录 Openvslam 学习报告什么是Openvslam概念特点 安装和运行OpenVSLAM克隆源代码安装依赖库测试环境已经安装成功运行运行失败的总结运行成功 系统设计模块和函数接口调用流程流程图参考资料 Openvslam 学习报告 什么是Openvslam 概念 OpenVSLAMVisual SLAM是一个开源的视觉定位与地图构建Visual Simultaneous Localization and MappingVisual SLAM库。它旨在通过使用单目相机、双目相机、RGB-D相机或者其他传感器实现实时的相机定位和地图构建。Visual SLAM 是一种技术可以使机器例如机器人、车辆或者无人机在未知环境中通过感知视觉信息实时地进行定位和建立地图。使开发者能够利用相机捕获的图像数据来定位相机自身并创建环境地图。它结合了特征提取、特征匹配、姿态估计、地图构建等核心技术以实现准确和实时的相机定位和地图构建。 特点 多传感器的支持实时性能开源易用 安装和运行OpenVSLAM 克隆源代码 git clone https://github.com/lp-research/openvslam安装依赖库 安装Ubuntu系统依赖 sudo apt update -y sudo apt upgrade -y –no-install-recommends

basic dependencies

sudo apt install -y build-essential pkg-config cmake git wget curl unzip

g2o dependencies

sudo apt install -y libatlas-base-dev libsuitesparse-dev

OpenCV dependencies

sudo apt install -y libgtk-3-dev sudo apt install -y ffmpeg sudo apt install -y libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libavresample-dev

eigen dependencies

sudo apt install -y gfortran

other dependencies

sudo apt install -y libyaml-cpp-dev libgoogle-glog-dev libgflags-dev# (if you plan on using PangolinViewer)

Pangolin dependencies

sudo apt install -y libglew-dev安装Eigen矩阵库 cd /Desktop/study/dir wget -q http://bitbucket.org/eigen/eigen/get/3.3.4.tar.bz2 tar xf 3.3.4.tar.bz2 rm -rf 3.3.4.tar.bz2 cd eigen-eigen-5a0156e40feb mkdir -p build cd build cmake -DCMAKE_BUILD_TYPERelease -DCMAKE_INSTALL_PREFIX/usr/local .. make -j4 sudo make install安装OpenCV库 cd /Desktop/study/dir wget -q https://github.com/opencv/opencv/archive/3.4.0.zip unzip -q 3.4.0.zip rm -rf 3.4.0.zip cd opencv-3.4.0 mkdir -p build cd build cmake -DCMAKE_BUILD_TYPERelease -DCMAKE_INSTALL_PREFIX/usr/local -DENABLE_CXX11ON -DBUILD_DOCSOFF -DBUILD_EXAMPLESOFF -DBUILD_JASPEROFF -DBUILD_OPENEXROFF -DBUILD_PERF_TESTSOFF -DBUILD_TESTSOFF -DWITH_EIGENON -DWITH_FFMPEGON -DWITH_OPENMPON .. make -j4 sudo make install安装DBoW2 cd /Desktop/study/dir git clone https://github.com/shinsumicco/DBoW2.git cd DBoW2 mkdir build cd build cmake -DCMAKE_BUILD_TYPERelease -DCMAKE_INSTALL_PREFIX/usr/local .. make -j4 sudo make install安装g2o cd /Desktop/study/dir git clone https://github.com/RainerKuemmerle/g2o.git cd g2o git checkout 9b41a4ea5ade8e1250b9c1b279f3a9c098811b5a mkdir build cd build cmake -DCMAKE_BUILD_TYPERelease -DCMAKE_INSTALL_PREFIX/usr/local -DCMAKE_CXX_FLAGS-stdc11 -DBUILD_SHARED_LIBSON -DBUILD_UNITTESTSOFF -DBUILD_WITH_MARCH_NATIVEON -DG2O_USE_CHOLMODOFF -DG2O_USE_CSPARSEON -DG2O_USE_OPENGLOFF -DG2O_USE_OPENMPON .. make -j4 sudo make install安装Pangolin库 cd /Desktop/study/dir git clone https://github.com/stevenlovegrove/Pangolin.git cd Pangolin git checkout ad8b5f83222291c51b4800d5a5873b0e90a0cf81 mkdir build cd build cmake -DCMAKE_BUILD_TYPERelease -DCMAKE_INSTALL_PREFIX/usr/local .. make -j4 sudo make install编译源码 cd /Desktop/study/openvslam mkdir build cd build cmake -DBUILD_WITH_MARCH_NATIVEON -DUSE_PANGOLIN_VIEWERON -DUSE_SOCKET_PUBLISHEROFF -DUSE_STACK_TRACE_LOGGERON -DBOW_FRAMEWORKDBoW2 -DBUILD_TESTSON .. make -j4测试环境已经安装成功 运行 运行失败的总结 爆红是我改过代码之后的输出。可能是爆内存了。听取老师的建议后我租了服务器。并且通过查阅资料发现可以使用Docker一键安装。 运行成功 \( docker pull celinachild/openvslam:latest\) docker run –gpus all -it –ipchost –nethost –privileged -e DISPLAYunix\(DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:rw -e NVIDIA_DRIVER_CAPABILITIESall celinachild/openvslam# for mapping \) ./run_video_slam -v ./orb_vocab/orb_vocab.dbow2 -m ./aist_living_lab_1/video.mp4 -c ./aist_living_lab_1/config.yaml –no-sleep –map-db map.msg# for localization $ ./run_video_localization -v ./orb_vocab/orb_vocab.dbow2 -m ./aist_living_lab_2/video.mp4 -c ./aist_living_lab_2/config.yaml –no-sleep –map-db map.msg系统设计 OpenVSLAM的整体系统设计可以概括为以下几个关键方面 相机模型和传感器输入OpenVSLAM支持多种不同类型的相机模型和传感器输入包括单目、双目、RGB-D相机等。特征提取和跟踪OpenVSLAM使用视觉特征来进行定位和建图。特征提取和跟踪模块负责检测图像中的关键点并在连续帧之间跟踪这些特征点。视觉里程计这个模块负责计算相机在连续帧之间的运动估计以确定相机的位置和姿态。回环检测OpenVSLAM包括回环检测模块用于识别在不同时间点拍摄的相似帧并纠正可能的漂移。建图建图模块将特征点和运动估计转化为地图用于表示环境的三维结构。优化优化模块用于全局地图优化以提高定位的准确性和地图的一致性。可视化和输出OpenVSLAM还包括可视化工具和输出模块以便于用户查看定位和地图结果。 模块和函数接口 OpenVSLAM的代码基本上按照上述系统设计分为多个模块每个模块包含多个函数和类。以下是一些主要模块和它们的功能 FeatureExtractor 模块负责特征点提取。Initializer 模块执行初始化操作例如初始化视觉里程计。Tracking 模块执行相机的跟踪和定位。LoopDetector 模块用于检测回环。Map 模块管理地图的结构包括关键帧和地图点。Optimizer 模块执行全局地图优化。System 模块系统的核心协调各个模块的运行。 调用流程 OpenVSLAM的调用流程通常涉及以下步骤 初始化OpenVSLAM系统选择相机类型和配置。提供传感器输入如图像序列或相机数据流。执行特征提取和跟踪计算视觉里程计。在运行中回环检测模块可能会触发来检测回环。定期执行全局地图优化以提高地图的一致性和定位精度。输出定位结果和地图数据以便可视化或后续应用。 流程图 参考资料 lp-research/openvslam: OpenVSLAM Fork for LP-Research (github.com) zm0612/openvslam-comments: openvslam的注释版代码 (github.com) https://hub.docker.com/r/celinachild/openvslam https://arxiv.org/abs/1910.01122 (论文OpenVSLAM: A Versatile Visual SLAM Framework) ChatGPT (openai.com)