detectorn2是目标检测很好用的框架,用起来非常方便,关于它详细的介绍可以参考其官网
官网给出的安装是针对X86架构的系统,但是对于ARM架构的系统并未给出详细安装说明,手上正好有一台Jetson AGX Xavier,将该框架安装在上面。
一、安装要求
Requirements
1.检查python环境
上面是官网上给出的安装要求,首先检查自己平台上默认的python环境版本是否满足要求具体命令如下:
打开terminal 输入python3,系统会输出python版本,确认版本是否满足要求。
2.安装pytorch1.3
如果python版本满足要求,接下来安装pytorch,同样严格要求版本1.3,对于1.3版本的pytorch,在其官网上提供了whl的安装包,我们下载安装即可。
Commands to install from binaries via Conda or pip wheels are on our website: https://pytorch.org
NVIDIA Jetson platforms
Python wheels for NVIDIA's Jetson Nano, Jetson TX2, and Jetson AGX Xavier are available via the following URLs:
They require JetPack 4.2 and above, and @dusty-nv maintains them
3.安装torchvision
Torchvision需要从源码开始安装,先去官方网站下载安装包,下载链接如下:
https://github.com/pytorch/vision
下载时需要注意,版本问题,版本至少需要大于0.4.1,我目前安装的是0.5版本
在这个地方不能按照官方给出的说明安装,会出问题
按照下面方法安装:
首先将下载的源码包解压后
Cd 进入解压后的文件夹
Sudo apt-get install libjpeg-dev zliblg-dev
Sudo python3 setup.py install
等待编译完成之后
测试是否正确安装
打开terminal
输入以下命令
Python3
Import torch
Import torchvision
Print(torch.__version__)
Print(torchvision.__version__)
4.关于opencv的安装见我另外一篇文章
4.安装detectorn2
首先从官网上下载源文件,使用源文件进行安装
https://github.com/facebookresearch/Detectron
下载好完整的安装包之后,解压缩
用cd进入该文件夹
python setup.py build develop
遇到问题:不过不是six而是yyaml
Cannot uninstall 'six'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
sudo pip install six --upgrade --ignore-installed six
按照类似的方法可以解决
python demo/demo.py --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml \
--input input1.jpg input2.jpg \
--opts MODEL.WEIGHTS detectron2://COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x/137849600/model_final_f10217.pkl
用该命令进行测试是否安装正常,其中input1.jpg input2.jpg
为当前路径下的测试图像,只输入一幅也可以。
model_final_f10217.pkl
从网上自动下载