【问题标题】:C++ - How to implement a Mask R-CNN?C++ - 如何实现 Mask R-CNN?
【发布时间】:2019-03-09 01:14:09
【问题描述】:

我需要在 C++ 中实现一个自定义 Mask-RCNN 来对自定义数据集执行实例分割。由于我是初学者,我只知道理论,但我真的不知道如何应用它。

您能给我一些指导来开始我的项目吗?谢谢。

【问题讨论】:

    标签: c++ instance mask segment


    【解决方案1】:

    对于初学者来说,使用 C++ 进行机器学习将是一个非常高的标准。

    几乎所有的包都使用 python 作为 API。 Tensorflow 允许在 C++ 中运行会话 API,但您需要在 python 中构建图形。并且处理 tensorflow 的构建会很痛苦。

    从它的 github 获取 Mask-RCNN,在 python 中运行它,理解它。检查许可证是否符合您的需要。然后,假设您的项目是使用 C++ 编写的,请复习 C++ 和 python 之间的绑定。让您的 C++ 调用导入 Mask-RCNN 的 python 层。

    任何其他方法都会给初学者带来重大障碍。

    【讨论】:

    • 谢谢杰弗里。我从 GitHub 获得了 Mask-RCNN,现在我将创建一个自定义数据集,例如 here,看看会发生什么。以后我会按照你说的去管理C++项目。
    【解决方案2】:

    C++ 非常适合制作 ML 应用程序。

    你需要学习的一些概念是

    • 矩阵布局(行主要,列主要)
    • 矢量
    • 矩阵向量乘法
    • 矩阵矩阵乘法

    最重要的是缓存局部性。减少缓存未命中尤其是矩阵乘法(gemm 和 gemv)将是网络速度的决定因素。使用缓存友好的简单矩阵乘法(n^3 负载)将为您提供最佳结果。

    【讨论】:

      猜你喜欢
      • 2020-01-02
      • 2018-11-28
      • 2023-03-12
      • 2018-04-04
      • 2020-07-28
      • 2019-03-24
      • 2020-05-05
      • 2020-09-09
      • 2019-08-17
      相关资源
      最近更新 更多