Dynaslam编译运行 ubuntu18 + cpu

1.运行结果展示一下 (小白教程,大佬勿喷)

运行很慢,离实时运行(>30FPS)差得很远,但最终跑起来了

2.环境(python2.7 + opencv2.4.11 + keras==2.0.9 + tensorflow==1.12.3)

对于python2.7.17,是我现在ubuntu18系统的一个版本,另一个也是系统自带的python3.6.9. 两个系统,默认的是python2,可以通过终端输入指令python查看 . 如果不是该版本的可以查怎么切换,方法很多.

对于opencv2.4.11,opencv官网下载源码包.如果以前已经安装过其他高版本的opencv,没关系,不是基于py2装的.接下来,在上一步改变系统py指向py2后,进入opencv2.4下,输入指令

cmake -D WITH_FFMPEG=OFF -D ENABLE_PRECOMPILED_HEADERS=OFF ..

大神这篇博客写的较详细,其他我就不在写了,下面主要写我遇到的问题

3.大坑

1)python2下的pip安装: ubuntu系统装好之后,如果没有更改,py2和py3都有各自带的pip版本,而且都是9.0.1版本.如果更改过系统指向py3 ,用 pip -V 查看的时候,后面会显示基于py3,对于我们后面用pip装包的时候不是很方便.建议对pip进行更新,py2下的pip只能更新到20.3版本

2)mask-rcnn : 下载好后,解压进入,会发现一个requirements.txt文件,打开删掉keras 和 tensorflow 两项,因为前面在py2下 单独装了,可以输入 pip list 查看(py3下用pip3 list)如下图

此为py2下的包. 然后mask-rcnn 目录下 输入sudo pip install -r requirements.txt 安装其他的包,此过程中或许会有错,最大的可能是网络问题,如果不行就将文件中的各个包pip装,网不行就加个源 如:sudo pip install h5py -i https://pypi.tuna.tsinghua.edu.cn/simple/装包的时候还可能出现opencv-python 这玩意找不到与py2对应的版本,这不管,去opencv-python官网,如图

复制黄色部分进行pip安装,先把mask-rcnn装好再说.到这儿,应该就没啥问题了

3)关于Check.py : 这是用来检查mask-rcnn装好,能否正常工作的文件.在这遇到了我编译过程中最大问题. 最终发现不同电脑上的py2根目录下有些文件是不一样的,导致出现了一个

DescriptorBase(metaclass = DescriptorMetaclass):
^
SyntaxError: invalid syntax

这样的语法错误,根本问题是py2的有些文件变了,具体路径为 /usr/local/lib/python2.7/dist-packages/google 如果有不同电脑上就可以发现,可以直接将另一台电脑的google文件夹全拷贝过来,放到自己用的这台电脑,到此问题解决.(当然不是每个py2都有问题,至于这个问题怎么产生的,就不知道了,唯一知道的是py2已经不再维护了.) 如果不复制文件,可以找到这个错误的地方,将该处语法改为 DescriptorBase(six.with_metaclass(DescriptorMetaclass))

上述改过后,应该就能工作了.

4)关于段错误(核心已转储): 我在编译完代码,跑数据集的时候,遇到加载mask-rcnn时,出现这个错误.网上有人说是没指定opencv2.4.11,我们装的那个版本(其实这儿有个很有意思的地方,就是dynaslam文件下的cmakelists.txt文件中指定的版本全是跟py2有关的,但是编译的时候却索引到py3,这是我不懂的地方,看图.有懂的朋友可以评论区解惑)

对于这个问题的解决,办法很普通,就是强制添加py2索引路径,如图

最后关于opencv2.4指定,cmakelists.txt文件其实已经指定了,只要你安装好了就能找到.到此问题解决,能够专心开始下一段学习.

Original: https://blog.csdn.net/AnonymityYUE/article/details/120855579
Author: 小小书童,可笑可笑
Title: Dynaslam编译运行 ubuntu18 + cpu

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/514160/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 【Image Registration】图像配准综述

    文章目录 一、图像配准定义 二、图像配准应用场景 * 2.1 医学图像领域 2.2 其他领域 三、图像配准分类 四、图像配准过程 * 4.1 特征检测(Feature detect…

    人工智能 2023年5月26日
    093
  • 调参侠带你入门深度学习:Lenet分类实战(1):模型的构建

    前言 为什么要再次学习呢?因为我以前都是基于飞桨学的,飞桨实现起来是真的很容易,但是吧,我虽然知道咋实现的,但是我没有能力去将其自己写出来,也不够深入,所以本次学习为了摆脱这种困境…

    人工智能 2023年7月2日
    072
  • Java基础36 super关键字

    Java基础36 super关键字 super 基本介绍 一、基本语法 二、super的使用细节 三、super与this的区别 基本介绍 super代表父类的引用,用于访问父类的…

    人工智能 2023年6月29日
    080
  • 升级Linux服务器你必须要知道的事

    服务器安全是每个系统管理员的头等大事。除了拥有第三方安全工具(如防火墙,DDoS保护等)外,使生产服务器上的所有代码保持最新也是极为重要的。 当您的应用程序投入生产时,升级它的风险…

    人工智能 2023年7月30日
    072
  • [机器学习、Spark]Spark MLlib实现数据基本统计

    👨‍🎓👨‍🎓博主:发量不足 📑📑本期更新内容:Spark MLlib基本统计 📑📑下篇文章预告:Spark MLlib的分类🔥🔥 简介:耐心,自信来源于你强大的思想和知识基础!! …

    人工智能 2023年6月16日
    0105
  • 聚类–DBSCAN

    1、什么是DBSCN DBSCAN也是一个非常有用的聚类算法。 它的主要优点:它不需要用户先验地设置簇的个数,可以划分具有复杂形状的簇,还可以找出不属于任何簇的点。 DBSCAN比…

    人工智能 2023年6月19日
    071
  • 【预测模型】一元多项式回归与二元多项式回归

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

    人工智能 2023年6月17日
    054
  • YOLOv5的Neck端设计

    YOLOv5的Neck端设计 在上一篇《YOLOv5的Backbone设计》中,我们从yolov5的backbone配置文件出发,细致讲解了backbone的网络架构及各模块的源码…

    人工智能 2023年5月26日
    096
  • 【平衡小车】【串级PID参数整定】【详细版】根据现象手动调整平衡小车的PID

    【平衡小车】【串级PID参数整定】【详细版】根据现象手动调整平衡小车的PID 简介:二轮平衡小车的控制分为平衡环(又称为直立环,保持稳定角度)、速度环(用来保持稳定时速度为零)以及…

    人工智能 2023年6月10日
    0186
  • NLP之文本特征提取详解

    深度学习入门小菜鸟,希望像做笔记记录自己学的东西,也希望能帮助到同样入门的人,更希望大佬们帮忙纠错啦~侵权立删。 一、词袋模型(Bag of Words, BoW) 1、目的 2、…

    人工智能 2023年6月25日
    088
  • TensorFlow2.8安装踩坑经验

    ​新手安装时,不知道安装CPU版本还是GPU版本的话,建议看下面这个视频,快速确定可以安装的版本。我也是走了很多弯路以后,才发现自己的GPU不支持2.8。 下载完成后,许多教程将编…

    人工智能 2023年5月23日
    066
  • Pytorch 基础 搭建网络(一)

    本系列博客的目标是用pytorch 搭建一个网络。先简单后复杂吧~ 博客大部分内容参考官方文档,又按照自己更习惯的思路重新整理了下! 好记性不如烂笔头,当写博客的时候,速度会慢下来…

    人工智能 2023年7月23日
    055
  • YOLO 系列论文精读 & YOLOv4

    YOLOv4: Optimal Speed and Accuracy of Object Detection 最优的目标检测速度和精度 目录 一、摘要 二、结论 三、简单介绍 (1…

    人工智能 2023年7月12日
    051
  • 机器学习中的数据预处理方法与步骤

    数据预处理是准备原始数据并使其适用于机器学习模型的过程。这是创建机器学习模型的第一步,也是至关重要的一步。 在创建机器学习项目时,我们并不总是遇到干净且格式化的数据。并且在对数据进…

    人工智能 2023年6月12日
    077
  • unet网络详解

    Unet 参考文献:U-Net: Convolutional Networks for Biomedical Image Segmentation 作者:Olaf Ronneber…

    人工智能 2023年7月27日
    057
  • 五种常见的聚类算法总结

    一、关于聚类的基础描述 1.1 聚类与分类的区别 1.2 聚类的概念 1.3 聚类的步骤 二、几种常见的聚类算法 2.1 K-means聚类算法 1) K-means算法的流程: …

    人工智能 2023年6月15日
    072
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球