您当前的位置: 首页 >  linux
  • 3浏览

    0关注

    417博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

detectron2(目标检测框架)无死角玩转-01:框架安装,以及demo测试(winds + linux)

江南才尽,年少无知! 发布时间:2020-01-17 19:03:19 ,浏览量:3

以下链接是个人关于detectron2(目标检测框架),所有见解,如有错误欢迎大家指出,我会第一时间纠正。有兴趣的朋友可以加微信:17575010159 相互讨论技术。若是帮助到了你什么,一定要记得点赞!因为这是对我最大的鼓励。 文末附带 \color{blue}{文末附带} 文末附带 公众号 − \color{blue}{公众号 -} 公众号− 海量资源。 \color{blue}{ 海量资源}。 海量资源。

detectron2(目标检测框架)无死角玩转-00:目录

注意,本人编写该博客的时间为 2020 / 01 / 17 ,也就是说,你现在下载的作者代码或许 \color{red}{注意,本人编写该博客的时间为2020/01/17,也就是说,你现在下载的作者代码或许} 注意,本人编写该博客的时间为2020/01/17,也就是说,你现在下载的作者代码或许 和本人的代码不一样(如果作者有更新过) \color{red}{和本人的代码不一样(如果作者有更新过)} 和本人的代码不一样(如果作者有更新过)

资源下载

在安装之前,请大家从以下链接下载好detectron2源码: https://github.com/facebookresearch/detectron2

linux 环境 模块安装

下载好之后呢,还是老旧的套路,阅读README.md,可以看到如下: 在这里插入图片描述 进入INSTALL.md,可以看到如下: 在这里插入图片描述 构建以上环境之后就可以去编译安装detectron2了,根据下面的提示: 在这里插入图片描述 本人在detectron2根目录,注意不是子目录detectron2,执行如下:

pip install -e .

别少了那个点啊,安装成功之后本人打印如下: 在这里插入图片描述 好了,下面我们就要进行demo测试了。

demo测试

通过根目录下面的README.md,可以看到如下: 在这里插入图片描述 点击进入可以看到: 在这里插入图片描述 我们首先来一个最简单的版本,这列为了方便,我给大家复制了一张图像,input1.jpg 在这里插入图片描述 我们把这张图片当做输入,在根目录执行如下指令:

python demo/demo.py --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml   
--input input1.jpg   
--output . 
--opts MODEL.WEIGHTS detectron2://COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x/137849600/model_final_f10217.pkl  

本人把input1.jpg 放在根目录下,执行之后覆盖根目录下的input1.jpg 显示如下: 在这里插入图片描述 这样我们就完成测试了,出了语义分割之外,大家还可以通过以下链接下载更多的模型,通过如下链接: 在这里插入图片描述 下载好之后,更改–opts MODEL.WEIGHTS参数,指定路径重新运行即可,不如目标检测,本人测试如下: 在这里插入图片描述

Winds 环境

首先,本人是参考该链接内容进行安装: https://github.com/conansherry/detectron2

本人ancoda环境(cuda10.1)
conda create -n  detectron2  -y python=3.6
conda activate detectron2
conda install pytorch torchvision cudatoolkit=10.1 -c pytorch
pip install cython
pip install git+https://github.com/philferriere/cocoapi.git#subdirectory=PythonAPI
pip install tensorboard
pip install cloudpickle
pip install matplotlib

然后进入 detectron2 的根目录执行:

python setup.py build develop
报错解决

报错一 Traceback (most recent call last): File “setup.py”, line 12, in import Cpython ModuleNotFoundError: No module named ‘Cpython’

比较坑爹的问题,直接找到 setup.py 文件,把 import Cpython 注释掉即可,然后重新执行。

后续本人没有报错,完成打印显示如下: 在这里插入图片描述 测试执行如下指令(和前面的一样,主要一下winds下 / 要替换成 \ ):

python demo\demo.py --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml    --input input1.jpg    --output .  --opts MODEL.WEIGHTS detectron2://COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x/137849600/model_final_f10217.pkl

测试结果查看,参考 Linux 的介绍即可。

报错二 玄学报错 \color{red}{玄学报错} 玄学报错 Process finished with exit code -1073741819 (0xC0000005) 训练的时候程序莫名奇妙的退出了,调试可以发现代码在 losses.backward() 处莫名奇妙的退出。本人调试了很久,最终发现主要是需要cuda为10.1,而且 pytorch 的配置需要如下:

结语

到这里为止,我们已经安装好了detectron2,并且进行了demo演示,那么接下来我们就去训练coco数据集,以及自己的数据集。

在这里插入图片描述

关注
打赏
1592542134
查看更多评论
立即登录/注册

微信扫码登录

0.0397s