您好,
会员登录 快速注册
退出 ( 条未读消息)
关于本站 意见反馈 首页

公告:小宅博客网可以开发票了,需要发票的,去群里找群主哈!!
全部文章分类
  • 人工智能 >

  • 编程语言 >

  • WPF系列 >

  • ASP.NET系列 >

  • Linux >

  • 数据库 >

  • 嵌入式 >

  • WEB技术 >

  • PLC系列 >

  • 微服务与框架 >

  • 小宅DIY >

  • 学习资料 >

OpenCv基础 ANN车牌识别 yolov5车牌识别 指针式仪表识别 ROS系列 YOLO Halcon Detectron2 昇腾AI ChatGPT在线体验 英伟达JETSON ChatGLM ChatTTS FunASR 地平线 ByteTrack 魔搭社区 LangChain
C C# C++ Python Java Go
WPF
ASP.NET小功能 GPS定位系统-MVC GPS定位系统-VUE ASP.NET WebRTC
Linux Linux内核 Shell MakeFile
MySql SqlServer Oracle
STM8 STM32 51单片机
VUE入门 HTML JavaScript CSS layui镜像网站 ElementUi中文官网 element-plus 图标
三菱 欧姆龙 西门子 施耐德 松下 台达
IOTSharp IOTGateway ABP FRAMEWORK Docker
亚克力音响 编程仙途:智驭万法
面试题与技巧 Python入门技能树 微软C#教程
首页 编程之美 工具下载 全国就业 流量地图 文心一言
Detectron2
Detectron2 介绍 Windows11下安装cuda Detectron2 环境搭建 Detectron2 利用代码进行模型测试 Detectron2 利用现有数据集进行训练 Detectron2 自定义数据集
Windows11下安装cuda
Detectron2 利用代码进行模型测试
激萌の小宅 小宅博客网 Detectron2

文章作者:激萌の小宅

促销:¥0

价格:¥0

配送方式: 购买后立即生效(如购买异常,请联系站长)
付款之后一定要等待自动跳转结束,否则购买可能会失败
  • 0 天

    有效期

  • 0

    总销量

  • 0

    累计评价

Detectron2 环境搭建

运行环境说明:

    电脑环境:windows 11专业版

    IDE:PyCharm Community Edition 2022.2.3

    Python版本:Python 3.10


1、搭建虚拟环境

    搭建虚拟环境的方法可以参考《YOLOv5安装开发环境》。

    注意:

    1、在《YOLOv5安装开发环境》中,tensorflow-cpu安装的版本是2.3.0,目前这个版本已经安装不了了,博主这里安装的是最新版2.11.0

    2、在《YOLOv5安装开发环境》中,python版本用的是3.8,我这边用的是3.10,这个要注意一下。


创建虚拟环境

conda create -n detectron python==3.10 // 创建虚拟环境
conda activate detectron // 进入虚拟环境

通用数据包安装:

备用地址:https://pypi.tuna.tsinghua.edu.cn/simple

pip install tensorflow-cpu==2.11.0 -i https://mirror.baidu.com/pypi/simple
pip install pyqt5 pillow opencv-python matplotlib -i https://mirror.baidu.com/pypi/simple

以下数据包是运行Detectron2所必须的

pip install pycocotools==2.0.6 -i https://mirror.baidu.com/pypi/simple
pip install iopath==0.1.9 -i https://mirror.baidu.com/pypi/simple
pip install yacs -i https://mirror.baidu.com/pypi/simple
pip install black -i https://mirror.baidu.com/pypi/simple
pip install tabulate -i https://mirror.baidu.com/pypi/simple
pip install cloudpickle -i https://mirror.baidu.com/pypi/simple
pip install tqdm -i https://mirror.baidu.com/pypi/simple
pip install fvcore -i https://mirror.baidu.com/pypi/simple
pip install omegaconf -i https://mirror.baidu.com/pypi/simple
pip install hydra-core -i https://mirror.baidu.com/pypi/simple
pip install matplotlib -i https://mirror.baidu.com/pypi/simple
pip install torch -i https://mirror.baidu.com/pypi/simple
pip install ninja


注意事项:

1、安装ninja时,不要带上数据源,直接用系统默认数据源安装,不然可能会编译失败!

2、torch一定要安装,不要觉得,我已经安装torch==1.13.0+cu117了,torch就可以不用安装了,如果不安装,会报下面这个错误!

QQ图片20230203163746.jpg


2、下载官方代码

    官方代码下载地址:https://github.com/facebookresearch/detectron2

QQ截图20230203160240.jpg

    下载完成之后,将压缩包解压到一个非中文目录下面,然后使用PyCharm打开工程。


3、配置工程环境

    避坑说明:

    在博客 https://blog.csdn.net/iracer/article/details/125755029 中,说是要修改各种文件、安装各种组件,其实都完全没必要,安装之后反而无法编译源码,坑死我了。。。


    将前面安装好的虚拟环境添加到我们的环境中。

QQ图片20230203160937.jpg


在上一章节中,我们已经安装好了CUDA11.7,这里直接打开终端,安装对应版本的torch和torchvision即可。

安装命令如下:

pip install torch==1.13.0+cu117 torchvision==0.14.0+cu117 -f https://download.pytorch.org/whl/torch_stable.html

安装完成之后,我们就能看到我们安装的软件包了。

QQ截图20230203212642.jpg

QQ截图20230203212723.jpg


此时,如果直接进行源码编译,会报下面这个错误:

注意:部分电脑环境不进行任何修改也能编译成功,在决定是否修改之前,请先进行编译尝试,以便确定是否需要进行相应的修改。。。

QQ截图20230203212900.jpg

解决方案如下:

参考博客:https://blog.csdn.net/qq_21532607/article/details/128075997


打开文件“..\envs\detectron\Lib\site-packages\torch\include\ATen\Parallel.h”

将32行

inline TORCH_API void lazy_init_num_threads() {

替换成

inline void lazy_init_num_threads() {

QQ截图20230203213309.jpg


4、源码编译

记得在虚拟环境下执行下面命令,进行编译

python setup.py build develop

注意:如果要重新编译,记得删除“detectron2-main\build\”目录下的文件,避免不必要的错误。

第一次编译时,会下载东西,如果网络不好,可能会编译超时,如下:

QQ截图20230203213838.jpg

解决办法是,直接带上数据源地址进行编译:

python setup.py build develop -i https://mirror.baidu.com/pypi/simple

编译结果如下:

QQ截图20230203213944.jpg


5、运行测试

运行测试参考博客(不推荐该博客的安装方法,不能用):https://blog.csdn.net/iracer/article/details/125755029?spm=1001.2014.3001.5501


去github上下载需要的测试模型:https://github.com/facebookresearch/detectron2/blob/main/MODEL_ZOO.md

1、选择model zoo中一个模型下载用于测试

2、注意1个模型需要下载2个文件:

    1)表格第1列模型名称右键另存的是 [*.yaml] 模型描述文件

    2)表格倒数第2列model按钮右键另存为的是 [*.pkl] 权重文件

3、下载权重文件*.pkl

    例如,下载模型权重文件为:model_final_f10217.pkl

    在detectron2-main下新建一个models目录存放下载的模型权重(也可以放其他地方)。

    就像这样“detectron2-main\models\model_final_f10217.pkl”,模型多了,当然你可以再建个子文件夹做区分。

4、下载网络结构文件*.yaml

    例如,下载模型结构文件为:mask_rcnn_R_50_FPN_3x.yaml

    将上述文件拷贝到detectron2-main\configs中合适的文件夹下

    说明:官方代码里面其实已经自带了很多模型文件,博主这里其实并没有下载yaml文件,博主是直接使用的自带yaml文件。


进到github中,博主主要下载的是下面两个连接文件。 

QQ截图20230203220640.jpg

5、准备一些测试用的图片,放到“detectron2-main\demo\images”目录下面

QQ截图20230203220952.jpg

然后执行测试命令(测试图片3.jpg):

GPU模式:

python demo/demo.py --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml --input demo/images/3.jpg --opts MODEL.WEIGHTS models/model_final_f10217.pkl


CPU模式:

python demo/demo.py --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml --input demo/images/1.jpg --opts MODEL.WEIGHTS models/model_final_f10217.pkl MODEL.DEVICE cpu


QQ截图20230203221133.jpg


注意:如果发现显示的图片大小和实际的不一致,可以尝试将“detectron2-main/demo/demo.py”文件中的所有“cv2.namedWindow”方法给屏蔽掉!!


Windows11下安装cuda
Detectron2 利用代码进行模型测试

友情链接: CSDN激萌の小宅 95知识库 自考题库 罗分明个人网络博客 精益编程leanboot

小宅博客  www.bilibili996.com All Rights Reserved. 备案号: 闽ICP备2024034575号

网站经营许可证  福建省福州市 Copyright©2021-2025 版权所有

小宅博客
首页 智能家居 地图定位
公告:小宅博客网可以开发票了,需要发票的,去群里找群主哈!!

文章作者:激萌の小宅

促销:¥0

价格:¥0

配送方式: 购买后立即生效(如购买异常,请联系站长)
付款之后一定要等待自动跳转结束,否则购买可能会失败
  • 0 天

    有效期

  • 0

    总销量

  • 0

    累计评价

Detectron2 环境搭建

运行环境说明:

    电脑环境:windows 11专业版

    IDE:PyCharm Community Edition 2022.2.3

    Python版本:Python 3.10


1、搭建虚拟环境

    搭建虚拟环境的方法可以参考《YOLOv5安装开发环境》。

    注意:

    1、在《YOLOv5安装开发环境》中,tensorflow-cpu安装的版本是2.3.0,目前这个版本已经安装不了了,博主这里安装的是最新版2.11.0

    2、在《YOLOv5安装开发环境》中,python版本用的是3.8,我这边用的是3.10,这个要注意一下。


创建虚拟环境

conda create -n detectron python==3.10 // 创建虚拟环境
conda activate detectron // 进入虚拟环境

通用数据包安装:

备用地址:https://pypi.tuna.tsinghua.edu.cn/simple

pip install tensorflow-cpu==2.11.0 -i https://mirror.baidu.com/pypi/simple
pip install pyqt5 pillow opencv-python matplotlib -i https://mirror.baidu.com/pypi/simple

以下数据包是运行Detectron2所必须的

pip install pycocotools==2.0.6 -i https://mirror.baidu.com/pypi/simple
pip install iopath==0.1.9 -i https://mirror.baidu.com/pypi/simple
pip install yacs -i https://mirror.baidu.com/pypi/simple
pip install black -i https://mirror.baidu.com/pypi/simple
pip install tabulate -i https://mirror.baidu.com/pypi/simple
pip install cloudpickle -i https://mirror.baidu.com/pypi/simple
pip install tqdm -i https://mirror.baidu.com/pypi/simple
pip install fvcore -i https://mirror.baidu.com/pypi/simple
pip install omegaconf -i https://mirror.baidu.com/pypi/simple
pip install hydra-core -i https://mirror.baidu.com/pypi/simple
pip install matplotlib -i https://mirror.baidu.com/pypi/simple
pip install torch -i https://mirror.baidu.com/pypi/simple
pip install ninja


注意事项:

1、安装ninja时,不要带上数据源,直接用系统默认数据源安装,不然可能会编译失败!

2、torch一定要安装,不要觉得,我已经安装torch==1.13.0+cu117了,torch就可以不用安装了,如果不安装,会报下面这个错误!

QQ图片20230203163746.jpg


2、下载官方代码

    官方代码下载地址:https://github.com/facebookresearch/detectron2

QQ截图20230203160240.jpg

    下载完成之后,将压缩包解压到一个非中文目录下面,然后使用PyCharm打开工程。


3、配置工程环境

    避坑说明:

    在博客 https://blog.csdn.net/iracer/article/details/125755029 中,说是要修改各种文件、安装各种组件,其实都完全没必要,安装之后反而无法编译源码,坑死我了。。。


    将前面安装好的虚拟环境添加到我们的环境中。

QQ图片20230203160937.jpg


在上一章节中,我们已经安装好了CUDA11.7,这里直接打开终端,安装对应版本的torch和torchvision即可。

安装命令如下:

pip install torch==1.13.0+cu117 torchvision==0.14.0+cu117 -f https://download.pytorch.org/whl/torch_stable.html

安装完成之后,我们就能看到我们安装的软件包了。

QQ截图20230203212642.jpg

QQ截图20230203212723.jpg


此时,如果直接进行源码编译,会报下面这个错误:

注意:部分电脑环境不进行任何修改也能编译成功,在决定是否修改之前,请先进行编译尝试,以便确定是否需要进行相应的修改。。。

QQ截图20230203212900.jpg

解决方案如下:

参考博客:https://blog.csdn.net/qq_21532607/article/details/128075997


打开文件“..\envs\detectron\Lib\site-packages\torch\include\ATen\Parallel.h”

将32行

inline TORCH_API void lazy_init_num_threads() {

替换成

inline void lazy_init_num_threads() {

QQ截图20230203213309.jpg


4、源码编译

记得在虚拟环境下执行下面命令,进行编译

python setup.py build develop

注意:如果要重新编译,记得删除“detectron2-main\build\”目录下的文件,避免不必要的错误。

第一次编译时,会下载东西,如果网络不好,可能会编译超时,如下:

QQ截图20230203213838.jpg

解决办法是,直接带上数据源地址进行编译:

python setup.py build develop -i https://mirror.baidu.com/pypi/simple

编译结果如下:

QQ截图20230203213944.jpg


5、运行测试

运行测试参考博客(不推荐该博客的安装方法,不能用):https://blog.csdn.net/iracer/article/details/125755029?spm=1001.2014.3001.5501


去github上下载需要的测试模型:https://github.com/facebookresearch/detectron2/blob/main/MODEL_ZOO.md

1、选择model zoo中一个模型下载用于测试

2、注意1个模型需要下载2个文件:

    1)表格第1列模型名称右键另存的是 [*.yaml] 模型描述文件

    2)表格倒数第2列model按钮右键另存为的是 [*.pkl] 权重文件

3、下载权重文件*.pkl

    例如,下载模型权重文件为:model_final_f10217.pkl

    在detectron2-main下新建一个models目录存放下载的模型权重(也可以放其他地方)。

    就像这样“detectron2-main\models\model_final_f10217.pkl”,模型多了,当然你可以再建个子文件夹做区分。

4、下载网络结构文件*.yaml

    例如,下载模型结构文件为:mask_rcnn_R_50_FPN_3x.yaml

    将上述文件拷贝到detectron2-main\configs中合适的文件夹下

    说明:官方代码里面其实已经自带了很多模型文件,博主这里其实并没有下载yaml文件,博主是直接使用的自带yaml文件。


进到github中,博主主要下载的是下面两个连接文件。 

QQ截图20230203220640.jpg

5、准备一些测试用的图片,放到“detectron2-main\demo\images”目录下面

QQ截图20230203220952.jpg

然后执行测试命令(测试图片3.jpg):

GPU模式:

python demo/demo.py --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml --input demo/images/3.jpg --opts MODEL.WEIGHTS models/model_final_f10217.pkl


CPU模式:

python demo/demo.py --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml --input demo/images/1.jpg --opts MODEL.WEIGHTS models/model_final_f10217.pkl MODEL.DEVICE cpu


QQ截图20230203221133.jpg


注意:如果发现显示的图片大小和实际的不一致,可以尝试将“detectron2-main/demo/demo.py”文件中的所有“cv2.namedWindow”方法给屏蔽掉!!