从零开始 Mask RCNN 实战:基于 Win10 + Anaconda 的 Mask RCNN 环境搭建

简介: 从零开始 Mask RCNN 实战:基于 Win10 + Anaconda 的 Mask RCNN 环境搭建

大名鼎鼎的 Mask RCNN 一举夺得 ICCV2017 Best Paper,名声大造。Mask RCNN 是何恺明基于以往的 Faster RCNN 架构提出的新的卷积网络,实现高效地检测图中的物体,并同时生成一张高质量的每个个体的分割掩码,即有效地目标的同时完成了高质量的语义分割。


image.png


论文地址:

https://arxiv.org/abs/1703.06870


开源地址:

https://github.com/matterport/Mask_RCNN


本文主要介绍如何配置 Mask RCNN 的训练和测试环境,为了方便起见,选择的外部环境是 Win10 + Anaconda。


1. 安装 Anaconda


安装 Anaconda 很简单,在其官网上下载对应的 Win10(64位)版本,一步一步安装即可。安装后在启动栏显示安装成功的 Anaconda 组件。


image.png


2. 下载 Mask RCNN 开源库


从 GitHub 网站:

https://github.com/matterport/Mask_RCNN


将该项目下载下来。


同时下载 Mask RCNN 的预训练模型 “mask_rcnn_coco.h5”,放置于本地 Mask_RCNN 开源库的根目录下。


“mask_rcnn_coco.h5” 下载地址:

https://github.com/matterport/Mask_RCNN/releases


在里面的 Mask R-CNN 2.0 下找到 “mask_rcnn_coco.h5” 并下载。


3. 创建虚拟环境


在 Mask RCNN 源码目录下的 README.md,查看环境要求:


image.png


如图, Python 版本要求在 3.4 以上,TensorFlow 版本要求在 1.3 以上,Keras 版本要求在 2.0.8 以上。

打开 Anaconda Prompt:

image.png


创建并激活环境:


image.png


4. 安装 TensorFlow

这里选择安装的 TensorFlow 版本是 1.5.0。

CPU 版本:


pip install tensorflow==1.5.0


GPU 版本:


pip install tensorflow-gpu==1.5.0


这样直接安装,由于网络问题可能会出现安装失败的情况。解决方法是使用国内的镜像源下载,例如清华、豆瓣。


清华:

https://pypi.tuna.tsinghua.edu.cn/simple


豆瓣:

https://pypi.douban.com/simple


CPU 安装命令改为:



pip install -i https://pypi.douban.com/simple tensorflow==1.5.0


GPU 安装命令改为:



pip install -i https://pypi.douban.com/simple tensorflow-gpu==1.5.0


5. 安装 Keras

安装 Keras 的方法与安装 TensorFlow 类似。需要注意的是 TensorFlow 与 Keras 版本的匹配。


image.png


从上图可以看到,我们刚安装的 TensorFlow 版本是 1.5.0,对应的 Keras 版本为 2.1.6。


一行命令完成 Keras 安装:



pip install -i https://pypi.douban.com/simple keras==2.1.6


安装完成之后,可以验证。进入 Python 环境,输入 “import tensorflow as tf” 和 “import keras”,如果没有报错,则证明 TensorFlow 和 Keras 均安装成功。


image.png


6. 安装 requirements.txt 中的所有 Python 库


在刚下载的 Mask RCNN 源代码的根目录下有一个 requirements.txt,里面包含了所需的所有 Python 库。因此,我们还要安装:


  • numpy
  • scipy
  • Pillow
  • cython
  • matplotlib
  • scikit-image
  • opencv-python
  • h5py
  • imgaug
  • IPython[all]


安装方法也很简单,例如安装 numpy:



pip install -i https://pypi.douban.com/simple numpy


其他 Python 库的安装类似。


7. 安装 pycocotools 库


如果需要在 COCO 数据集上训练或测试,需要安装 pycocotools(coco 数据集的应用 API)。如果你不需要在 COCO 数据集上训练和测试,只使用 Mask RCNN 训练自己的数据集,则可以直接跳过这一步。


1)下载 pycocotools 源文件


github下载:

https://github.com/philferriere/cocoapi


码云下载:

https://gitee.com/ACANX/cocoapi


2)提前准备


安装 Cython(之前在 requirements.txt 中已经安装过了)


安装 VS2015 环境


因为之前我已经安装整个 VS 2015 了,所以这个环境不缺,可参考:


https://blog.csdn.net/sinat_33486980/article/details/92840377


3)安装


  • 打开 Anaconda Prompt,进入 MaskRCNN 环境;
  • 切换到 cocoapi\PythonAPI 目录;
  • 依次运行:



python setup.py build_ext --inplace


python setup.py build_ext install

进入 Python shell,输入以下命令,验证 pycocotools 是否安装成功:

from pycocotools.coco import COCO
from pycocotools import mask

image.png


8. 验证环境搭建是否成功


下面使用 Mask RCNN 源代码提供的 demo 程序,验证一下环境是否搭建成功。


首先,打开 Anaconda Prompt,进入 MaskRCNN 环境,安装 jupyter notebook,方法与上面安装其它 Python 库类似,也可以在 Anaconda Navigator 中直接安装。


然后,在 Anaconda Prompt 中,输入 “jupyter notebook”,打开 jupyter notebook。


接着,打开 Mask RCNN 源代码 samples 目录下的 demo.ipynb 文件。


image.png

最后,选择 Cell 菜单,在 Cell 下拉菜单选择 Run All,稍等片刻,在该页面底部会输出运行结果:


image.png


大功告成!基于 Win10 + Anaconda 的 MaskRCNN 环境搭建顺利完成~

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
2月前
|
机器学习/深度学习 人工智能 算法框架/工具
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
【10月更文挑战第7天】本文将深入探讨卷积神经网络(CNN)的基本原理,以及它如何在图像识别领域中大放异彩。我们将从CNN的核心组件出发,逐步解析其工作原理,并通过一个实际的代码示例,展示如何利用Python和深度学习框架实现一个简单的图像分类模型。文章旨在为初学者提供一个清晰的入门路径,同时为有经验的开发者提供一些深入理解的视角。
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN)及其应用
【9月更文挑战第24天】本文将深入探讨深度学习中的一种重要模型——卷积神经网络(CNN)。我们将通过简单的代码示例,了解CNN的工作原理和应用场景。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息。
118 1
|
27天前
|
机器学习/深度学习 计算机视觉 网络架构
为什么卷积现在不火了:CNN研究热度降温的深层原因分析
纵观近年的顶会论文和研究热点,我们不得不承认一个现实:CNN相关的研究论文正在减少,曾经的"主角"似乎正逐渐淡出研究者的视野。
70 11
为什么卷积现在不火了:CNN研究热度降温的深层原因分析
|
15天前
|
机器学习/深度学习 人工智能 自然语言处理
探索深度学习中的卷积神经网络(CNN)及其在现代应用中的革新
探索深度学习中的卷积神经网络(CNN)及其在现代应用中的革新
|
26天前
|
机器学习/深度学习 人工智能 算法框架/工具
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
【10月更文挑战第36天】探索卷积神经网络(CNN)的神秘面纱,揭示其在图像识别领域的威力。本文将带你了解CNN的核心概念,并通过实际代码示例,展示如何构建和训练一个简单的CNN模型。无论你是深度学习的初学者还是希望深化理解,这篇文章都将为你提供有价值的见解。
|
2月前
|
机器学习/深度学习 人工智能 自动驾驶
深度学习中的卷积神经网络(CNN)及其应用
【10月更文挑战第21天】本文旨在深入探讨深度学习领域的核心组成部分——卷积神经网络(CNN)。通过分析CNN的基本结构、工作原理以及在图像识别、语音处理等领域的广泛应用,我们不仅能够理解其背后的技术原理,还能把握其在现实世界问题解决中的强大能力。文章将用浅显的语言和生动的例子带领读者一步步走进CNN的世界,揭示这一技术如何改变我们的生活和工作方式。
|
2月前
|
机器学习/深度学习 人工智能 监控
深入理解深度学习中的卷积神经网络(CNN):从原理到实践
【10月更文挑战第14天】深入理解深度学习中的卷积神经网络(CNN):从原理到实践
169 1
|
27天前
|
机器学习/深度学习 人工智能 自动驾驶
深入解析深度学习中的卷积神经网络(CNN)
深入解析深度学习中的卷积神经网络(CNN)
41 0
|
1月前
|
机器学习/深度学习 人工智能 TensorFlow
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
【10月更文挑战第32天】本文将介绍深度学习中的一个重要分支——卷积神经网络(CNN),以及其在图像识别领域的应用。我们将通过一个简单的代码示例,展示如何使用Python和TensorFlow库构建一个基本的CNN模型,并对其进行训练和测试。
|
1月前
|
机器学习/深度学习 自然语言处理 TensorFlow
深度学习中的卷积神经网络(CNN)及其应用
【10月更文挑战第26天】在这篇文章中,我们将深入探讨卷积神经网络(CNN)的基本原理、结构和应用。CNN是深度学习领域的一个重要分支,广泛应用于图像识别、语音处理等领域。我们将通过代码示例和实际应用案例,帮助读者更好地理解CNN的概念和应用。

热门文章

最新文章