ubuntu 16.04 安装 Mask_RCNN 遇到的问题集锦

源码网页(Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow): https://github.com/matterport/Mask_RCNN

看github主页的安装步骤也很简单,但自己一上手各种问题就出来了,这里主要写给自己看的,不喜勿喷,谢谢大家!

第一个坑:pip  

拿到代码的第一步就是去读readme,看到作者的配置是python3.4, tensorflow 1.3, keras 2.0.8 。由于ubuntu 16.04 自带 python2.7和python3.5,也没多想,就用Python3.5了。

第一步:在终端输入:

 sudo pip3 install tensorflow==1.3.0  
 sudo pip3 install keras==2.0.8 

但是并不是想象的那么简单,报错了,如下:

没关系,这个一看就明白了,告诉我们pip版本太低了,也告诉我们怎么更新了,那就在终端输入

sudo pip install --upgrade pip

开始更新。

直到终端出现:

就是更新完成了。

**如果出现  ImportError:cannot import name main.的错误,只要在终端键入

sudo gedit /usr/bin/pip

from pip import main
if __name__ == '__main__':
    sys.exit(main())

  改为

from pip import __main__
if __name__ == '__main__':
    sys.exit(__main__._main())

  就ok了。

**如果提示你的pip无法更新,终端输入

sudo apt-get install python3-pip

重新安装pip,再更新即可。

补充:为了以后使用方便,我将python3.5 的优先级提前。具体操作如下:

查看可替换版本:

 update-alternatives --list python

提示出现  update-alternitives:errror:no alternative for python

说明python的替换版本未安装,终端输入以下命令进行安装:

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 2

重新输入

update-alternatives --list python

出现

就可以进行版本切换了,终端输入

sudo update-alternatives --config python

输出如下:

输入对应数字选择默认版本。

这里可以参考这位博主写的,很详细:https://blog.csdn.net/qq_42938987/article/details/83990333

第二个坑:Mask_RCNN安装

第一步:在终端输入:

 sudo pip3 install tensorflow==1.3.0  
 sudo pip3 install keras==2.0.8 

这次是没问题的,必须注意的是,这里安装TensorFlow和keras下面命令中pip后的3一定要带着,我就是一开始没带后来会有问题,又卸载重装的。

第二步:按照 Mask_RCNN Readme中的步骤安装即可。

1)安装依赖:

cd Mask_RCNN
sudo pip3 install -r requirments.txt

 

2) 执行setup.py 文件(要在Mask_RCNN目录下)

sudo python3 setup.py install

这里出现了一个错误是关于opencv-python的

 

单独安装一下opencv-python:

sudo pip3 install opencv-python

再次安装依赖:

sudo pip3 install -r requirments.txt

是不是好了?

3)安装pycocotools,依然在Mask_RCNN目录下:

git clone https://github.com/waleedka/coco.git
cd coco-master/PythonAPI
sudo make install

My god!又出错了!

幸好告诉我们应该怎么做了,安装一下python3-tk:

sudo apt-get install python3-tk

再执行一下

sudo make install

应该是可以了。

到此,Mask_RCNN安装完成,跑一个demo试试吧!

 第三个坑 :python3 import cv2 与ros 冲突

运行一个demo:

 

这个错误是python3 无法导入cv2.so,没关系,这个很好解决,ctrl+Alt+T打开终端,输入

gedit ~/.bashrc

将ros的环境配置注释掉,如下:

重新打开终端,刷新一下

source ~/.bashrc

在Mask_RCNN下重新打开终端,记住是重新打开终端,很关键,重新运行demo,真的成功了!

结果图:

That’s so cool!

posted @ 2019-03-16 13:46  不拿曾经看以后  阅读(379)  评论(0编辑  收藏  举报