mmpose
mmpose是商汤旗下有又一款好用的工具箱,主要是针对姿态识别任务开发的,包括人体姿态识别和动物姿态识别。里面继承很多现成的网络可以供大家使用,并且提供了训练好的权重。用户可以更具自己的需求训练自己的数据,或者直接应用他们的结果,反正就是很全面啦!!!!
github连接:https://github.com/open-mmlab/mmpose
使用连接:https://mmpose.readthedocs.io/en/latest/demo.html
安装教程
1. 安装mmcv-full
假设你的电脑已经安装了anaconda环境,并且你已经安装了pytorch,最好的pytorch的版本是1.5以上,如果不是的话,最好可以使用以下代码新建一个虚拟环境,我个人喜欢最新的版本,因为现在的安装包兼容性都做的比较好,不懂不用担心兼容新问题,新版本基本都能跑旧版本的代码,大可放心,废话不多说,咱们开始吧。
pytorch版本小于1.5的使用以下代码:
注意自己的cuda版本哈,我是根据自己的来的,查看cuda版本,可以在命令行使用nvcc -V
conda create -n open-mmlab python=3.8 pytorch=1.9 cudatoolkit=11.3 torchvision -c pytorch -y
conda activate open-mmlab
现在是已经满足了pytorch版本大于1.5了,咱们开始安装openmim
注意自己的版本号哈,改成相对应的,如果不想改,就直接用pip install mmcv-full省事
pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu102/torch1.9.0/index.html
2. 安装MMPose
这里建议win系统的同学,由于win没有linux命令行你那么舒服,我建议大家可以安装一个git cmd,这个用起来非常爽,可以让你又linux的感觉。好了,开始安装mmpose了
克隆mmpose库
git clone https://github.com/open-mmlab/mmpose.git
cd mmpose
安装需要的包
pip install -r requirements.txt
pip install -v -e . # or "python setup.py develop"
这里要注意在安装过程中,可能出现某些包安装不了的情况,这个时候需要自己手动安装,我在安装过程中出现了poseval这个库,安装不上,我去百度上搜了以下,这里把安装方法给大家。
安装不上poseval,使用以下手动方法安装
1.第一种方式:
pip install https://github.com/svenkreiss/poseval.git
2.第二种方式:
git clone https://github.com/svenkreiss/poseval.git
cd poseval
pip install -e . # install the local package ('.') in editable mode ('-e')
注意中途出现问题之后,后面有些包没有安装好,还需要使用pip install -r requirements.txt
继续安装
2. 安装mmdet
这个可以安装可以不安装,我建议大家安装以下,因为步骤很简单,如果不去安装的话,后面使用姿态估计的库top-down的思路需要自己标注框的位置,自己做json文件,麻烦,这里就顺手安装了吧。
pip install mmdet
使用教程
1. 预测图片
以上都安装好了之后,下面我们开始来使用他吧
如果我们没有安装mmdet话,只能测试他们提供的图片
下面我们以coco数据集为例,测试玩一下这个库,他们提供了已经标注好的json
python demo/top_down_img_demo.py configs/body/2d_kpt_sview_rgb_img/topdown_heatmap/coco/hrnet_w48_coco_256x192.py https://download.openmmlab.com/mmpose/top_down/hrnet/hrnet_w48_coco_256x192-b9e0b3ab_20200708.pth --img-root tests/data/coco/ --json-file tests/data/coco/test_coco.json --out-img-root vis_results
下面是预测的结果
如果你安装了mmdet话,任意一张图片都可以预测
直接使用以下代码,mmdet可以自己检测到人,不需要在手动标注了
python demo/top_down_img_demo_with_mmdet.py demo/mmdetection_cfg/faster_rcnn_r50_fpn_coco.py https://download.openmmlab.com/mmdetection/v2.0/faster_rcnn/faster_rcnn_r50_fpn_1x_coco/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth configs/body/2d_kpt_sview_rgb_img/topdown_heatmap/coco/hrnet_w48_coco_256x192.py https://download.openmmlab.com/mmpose/top_down/hrnet/hrnet_w48_coco_256x192-b9e0b3ab_20200708.pth --img-root tests/data/coco/ --img 1.jpeg --out-img-root vis_results
下面看一下效果吧
2. 预测视频
预测视频的代码如下:
python demo/top_down_video_demo_with_mmdet.py demo/mmdetection_cfg/faster_rcnn_r50_fpn_coco.py https://download.openmmlab.com/mmdetection/v2.0/faster_rcnn/faster_rcnn_r50_fpn_1x_coco/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth configs/body/2d_kpt_sview_rgb_img/topdown_heatmap/coco/hrnet_w48_coco_256x192.py https://download.openmmlab.com/mmpose/top_down/hrnet/hrnet_w48_coco_256x192-b9e0b3ab_20200708.pth --video-path demo/resources/1.mp4 --out-video-root vis_results
下面开一下效果吧
vis_1
最后,需要识别动物的可以看下面的教程
https://mmpose.readthedocs.io/en/latest/demo.html