opencv|目标检测和物体分割Detectron2项目在Ubuntu中安装小试

在现在计算机视觉领域,大概很多人都知道Detectron2项目,这是一个由Facebook(哈,现在已经是Meta了吧)推出的目标物体检测和分割的AI实现,其前身是鼎鼎大名的 Detectron,什么叫长江后浪推前浪啊,前身就如此声名遐迩,那么继承者也大抵不会让人失望。因此Detectron2问世以后,逐渐成为大家工作或研究的必备工具框架。

和第一代Detectron相比,Detectron2不仅支持第一代已有的目标检测、实例分割、姿态估计等任务,还增加支持语义分割和全景分割。新增了Cascade R-CNN,Panoptic FPN和TensorMask新模型。它是很多人目标检测的神器。
【 opencv|目标检测和物体分割Detectron2项目在Ubuntu中安装小试】 opencv|目标检测和物体分割Detectron2项目在Ubuntu中安装小试
文章插图

如果关注技术发展和开源项目的朋友可能都知道,很多的技术实现,都是基于之前一些基础性的预训练模型或者框架而实现的。而在计算机视觉领域,Detectron2就是这样的基础框架,很多项目的demo要跑起来或者项目运行,都依赖于Detectron2。

而Detectron2,由于是以前的Facebook团队维护的,所以它本身还要依赖于PyTorch。目前,Detectron2基本的依赖是python大于等于3.6版本,pyTorch需要在1.8以及以上,在pytorch版本正确的前提下,再安装与其版本匹配的torchvision。当然了,OpenCV虽然并不一定要,不过demo运行需要OpenCV,另外我们平时使用OpenCV也几乎必不可少是吧。

准备工作做好以后,就开始了。当然还是要说一下,既然是计算机视觉,那么好的GPU显卡和CUDA就不能少吧。没错,当你安装了GPU的CUDA,才能安装。如果实在没有显卡,那只能安装CPU版本的了,然而CPU版的Detectron2如同CPU版的TensorFlow等深度学习框架,你懂的。

这里用的是Ubuntu20.04,机器带一块主流的GPU。接下来就是安装Detectron2。官方说明,不同版本的CUDA有不同的安装命令。机智客个人的系统里是CUDA11.0。在终端里输入nvcc -V命令可以查看电脑里安装了什么CUDA。之后再看Torch版本。这个用pip list或者pip show torch命令查看版本,最后才是按版本安装。这里需要在终端输入python -m pip install detectron2 -f \https://dl.fbaipublicfiles.com/detectron2/wheels/cu111/torch1.9/index.html命令即可。执行完这一步,相应的Detectron2才算按要求安装。

当然了,我们以前运行程序,或者我们平时查看或者运行某个项目的时候都被要求用conda的虚拟环境,所以机智客觉得在安装Detectron2的时候,同样也建议在启动某个项目时,在独立的虚拟环境里安装。这样更安全,能避免版本冲突和各种异常。