本样例为大家学习昇腾软件栈提供参考,非商业目的!
本样例适配3.0.0及以上版本,支持产品为Atlas200DK、Atlas300(ai1s)。
本README只提供命令行方式运行样例的指导,如需在Mindstudio下运行样例,请参考Mindstudio运行图片样例wiki。
功能:使用count_person.caffe模型对密集人群进行计数。
样例输入:密集人群图像
样例输出:标记出人数的图像。
部署此Sample前,需要准备好以下环境:
- 请确认已按照环境准备和依赖安装准备好环境。
- 已完成对应产品的开发环境和运行环境安装。
可以使用以下两种方式下载,请选择其中一种进行源码准备。
-
命令行方式下载(下载时间较长,但步骤简单)。
开发环境,非root用户命令行中执行以下命令下载源码仓。
cd $HOME git clone https://github.com/Ascend/samples.git -
压缩包方式下载(下载时间较短,但步骤稍微复杂)。
-
samples仓右上角选择 克隆/下载 下拉框并选择 下载ZIP。
-
将ZIP包上传到开发环境中的普通用户家目录中,例如 $HOME/ascend-samples-master.zip。
-
开发环境中,执行以下命令,解压zip包。
cd $HOME unzip ascend-samples-master.zipt -
参考下表获取此应用中所用到的模型,并将其存放到开发环境普通用户下的工程目录:
cd $HOME/samples/python/contrib/crowdCount/model
| 模型名称 | 模型说明 | 模型下载路径 |
|---|---|---|
| count_person.caffe | 基于caffe的密集人群计数处理。 | 请参考https://github.com/Ascend/modelzoo/tree/master/contrib/TensorFlow/Research/cv/crowdCount/ATC_count_person_caffe_AE 原始模型章节,下载原始模型及对应的cfg文件。 |
注:请确认环境变量已经在环境准备和依赖安装中配置完成
-
设置LD_LIBRARY_PATH环境变量。
由于LD_LIBRARY_PATH环境变量在使用atc工具和运行样例时会产生冲突,所以需要在命令行单独设置此环境变量,方便修改。
export LD_LIBRARY_PATH=${install_path}/atc/lib64 -
执行以下命令使用atc命令进行模型转换。
atc --input_shape="blob1:1,3,800,1408" --weight="count_person.caffe.caffemodel" --input_format=NCHW --output="count_person.caffe" --soc_version=Ascend310 --insert_op_conf=insert_op.cfg --framework=0 --model="count_person.caffe.prototxt"
执行以下命令,进入样例的data文件夹中,下载对应的测试图片。
cd $HOME/samples/python/contrib/crowdCount/data
wget https://c7xcode.obs.cn-north-4.myhuaweicloud.com/models/crowdCount/crowd.jpg
注:开发环境与运行环境合一部署,请跳过步骤1,直接执行步骤2即可。
-
执行以下命令,将开发环境的crowdCount目录上传到运行环境中,例如 /home/HwHiAiUser,并以HwHiAiUser(运行用户)登录运行环境(Host)。
scp -r $HOME/samples/python/contrib/crowdCount/ HwHiAiUser@xxx.xxx.xxx.xxx:/home/HwHiAiUser scp -r $HOME/samples/python/common/atlas_utils/ HwHiAiUser@xxx.xxx.xxx.xxx:/home/HwHiAiUser ssh HwHiAiUser@xxx.xxx.xxx.xxx- xxx.xxx.xxx.xxx为运行环境ip,200DK在USB连接时一般为192.168.1.2,300(ai1s)为对应的公网ip。
-
运行可执行文件。
- 如果是开发环境与运行环境合一部署,执行以下命令,设置运行环境变量,并切换目录。
export LD_LIBRARY_PATH= source ~/.bashrc cd $HOME/samples/python/contrib/crowdCount/src python3 main.py ../data/- 如果是开发环境与运行环境分离部署,执行以下命令切换目录。
cd $HOME/crowdCount/src切换目录后,执行以下命令运行样例。
python3.6 main.py ../data/
运行完成后,会在运行环境的命令行中打印出推理结果。
