0


detectron2安装详细教程+demo测试

目录

win10 detectron2 安装教程

1. 准备工作

  • conda 添加清华镜像源 参考这篇文章:Conda 常用命令详解 + 配置
  • pip 添加清华镜像源 参考这篇文章:pip添加各种国内镜像源
  • 注意:全文所用 cmd 都需要用管理员身份打开❗ > 嫌每次都右击选择管理员身份麻烦的话参考这篇文章:如何设置 cmd 默认以管理员身份打开?

2. Requirements (安装依赖)

  • Linux 或 macOS Python≥ 3.7
  • PyTorch ≥ 1.8 和 与 PyTorch安装版本 相匹配的 torchvision。 将它们一起从 pytorch.org 安装来确保这一点。安装PyTorch参考链接:Win10 安装 CUDA(CUDA Toolkit)、cuDNN + PyTorch 详细教程
  • gcc & g++ ≥ 5.41. 下载链接:MinGW-w64 - for 32 and 64 bit Windows 下载好之后解压到本地即可。> sjlj 稳定性好,支持 32位。seh 性能比较好,但不支持 32位,64位的选seh。> 选第四个即可> 在这里插入图片描述> 也可以选择下载 在线安装工具 然后完整安装:> 在这里插入图片描述2. 添加系统环境变量参考:你的安装位置\MinGW64\bin
  • OpenCV 是可选的,但演示和可视化需要它。> OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它提供了很多函数,这些函数非常高效地实现了计算机视觉算法(最基本的滤波到高级的物体检测皆有涵盖)。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV 的应用领域非常广泛,包括图像拼接、图像降噪、产品质检、人机交互、人脸识别、动作识别、动作跟踪、无人驾驶等。pip install opencv-contrib-python=4.5.3.56> 这个版本的 opencv-python 在 Python3.8+PyTorch1.8.1 环境下运行正常。
  • fvcore> fvcore是一个轻量级的核心库,它提供了在各种计算机视觉框架 (如Detectron2)中共享的最常见和最基本的功能。 这个库基于Python 3.6+ 和 PyTorch。1. 点击fvcore 下载链接到GitHub下载压缩包到本地2. 解压并 cd 到 setup.py 所在目录cd 你的下载目录\fvcore3. 然后用指令安装python setup.py build --force develop
  • ninja 是可选的,但建议使用,可以帮助更快的构建detectron2。命令行安装:pip install ninjaconda install ninja
  • pycocotools> COCO(Common Objects in Context),是微软团队提供的一个可以用来进行图像识别的数据集。> > pycocotools(python api tools of COCO) 有助于在COCO中加载、解析和可视化annotations。> > 但是,pycocotools的维护者不再提供Windows平台的支持。所以在Windows安装需要修改一些源文件的内容。方法一:这是微雨曳荷.Windows下安装detectron2(免修改版本)的方法,可以尝试pip install pycocotools-windows方法二:点击链接GitHub - philferriere/cocoapi: Clone of COCO API 下载 Github 上 修改好 适合windows的coco版本 到本地,然后用pip setup.py安装cd coco/PythonAPIpython setup.py build_ext --inplacepython setup.py build_ext install
  • Visual Studio 2019——MSVC编译环境> detectron2需要微软的MSVC(Microsoft Visual C/C++)编译器。(需要MSVC当中的cl.exe)> 注意安装 2017~2019版!!点击链接Visual Studio 官方下载地址下载 官方生成工具 后双击运行安装即可。> 1. 安装只选择 C++ build tools 选项即可在这里插入图片描述> 2. 建议安装到默认位置> 3. 添加系统环境变量(detectron2需要MSVC当中的cl.exe,因此你需要配置cl.exe的系统环境)参考:C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30133\bin\Hostx64\x64

3. 安装detectron2

  1. 点击链接 GitHub - Detectron2免修改版下载链接 下载到本地后解压到一个你确定不会删的文件夹> 这是Github作者修改过的版本,放在了Github上,下载.zip压缩包(也可以> > git clone 链接> > 克隆到本地)并用命令行安装即可。(下载下来是detectron2框架所有文件,)
  2. 运行 cmd 并 cd到这个文件夹> 或者在这个文件夹地址栏输入cmd并回车,打开的cmd就已经进入到当前目录了
  3. 然后用下面命令安装:pip install -e .

至此detectron2框架就安装好了。👏🏻👏🏻👏🏻

4. 运行demo.py进行测试

demo.py:

from detectron2.engine.defaults import DefaultPredictor
from detectron2.config import get_cfg
from detectron2.data import MetadataCatalog    # 元数据目录from detectron2.utils.visualizer import Visualizer, ColorMode
from detectron2 import model_zoo    # 图像库"""
总之,DataCatalog和MetadataCatalog两个类实现了torch.utils.data.Dataset的创建与具体数据集读取的分,
提供了使用字符串创建Dataset和DataLoader的方法。
"""import cv2
import numpy as np

classDetector:"""
    定义检测器
    """def__init__(self, model_type='OD'):
        self.cfg = get_cfg()# 配置文件if model_type =='OD':# 目标检测模式
            self.cfg.merge_from_file(model_zoo.get_config_file("COCO-Detection/faster_rcnn_R_101_FPN_3x.yaml"))# coco图像库已经训练好的图像模型(Faster-RCNN;ResNet101)
            self.cfg.MODEL.WEIGHTS = model_zoo.get_checkpoint_url(# 模型权重"COCO-Detection/faster_rcnn_R_101_FPN_3x.yaml")elif model_type =="IS":# 实例分割模式
            self.cfg.merge_from_file(model_zoo.get_config_file("COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml"))
            self.cfg.MODEL.WEIGHTS = model_zoo.get_checkpoint_url("COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml")

        self.cfg.MODEL.ROI_HEADS.SCORE_THRESH_TEST =0.7# 分数阈值测试
        self.cfg.MODEL.DEVICE ='cuda'# 运算设备
        self.predictor = DefaultPredictor(self.cfg)# 最基本的预测器defonImage(self, imagePath):
        image = cv2.imread(imagePath)# 读取图像
        predictions = self.predictor(image)# 预测(置信度,位置,类别)

        viz = Visualizer(image[:,:,::-1], 
                        metadata=MetadataCatalog.get(self.cfg.DATASETS.TRAIN[0]),
                        instance_mode=ColorMode.IMAGE_BW)# 可视化工具

        output = viz.draw_instance_predictions(predictions["instances"].to('cpu'))# 把 GPU 跑的数据结果放到 CPU

        cv2.imshow("Result", output.get_image()[:,:,::-1])
        cv2.waitKey()if __name__ =='__main__':
    detector = Detector(model_type='IS')# 这里选择检测模式('OD': 目标检测;'IS': 实例分割)
    detector.onImage('./test1.jpg')# 这里放你的测试图片路径

测试图片:
test2

测试结果:
result

终于配置好了,还不含泪三连❗❗❗😭😭😭

References

  1. Requirements (必备条件)部分可参考:小白wwj.Windows10下安装detectron2超详细教程(小白视角)
  2. detectron2安装部分可参考:微雨曳荷.Windows下安装detectron2(免修改版本)
  3. 关于 python setup.py install 的理解:python setup.py install 常用命令参数详解
  4. detectron2 官方文档

本文转载自: https://blog.csdn.net/qq_45770232/article/details/126471738
版权归原作者 LiYikou 所有, 如有侵权,请联系我们删除。

“detectron2安装详细教程+demo测试”的评论:

还没有评论