开源软件名称:sample-objectdetectionbyyolov3
开源软件地址:https://gitee.com/Atlas200DK/sample-objectdetectionbyyolov3
开源软件介绍:
中文|English 该案例仅仅用于学习,打通流程,不对效果负责,不支持商用。 Yolov3检测网络应用本Application支持运行在Atlas 200 DK或者AI加速云服务器上,实现了对yolov3目标检测网络的推理功能。 当前分支中的应用适配1.32.0.0及以上版本的DDK&RunTime。 前提条件部署此Sample前,需要准备好以下环境: - 已完成Mind Studio的安装。
- 已完成Atlas 200 DK开发者板与Mind Studio的连接,交叉编译器的安装,SD卡的制作及基本信息的配置等。
部署可以选择如下快速部署或者常规方法部署,二选一即可: 快速部署,请参考: https://gitee.com/Atlas200DK/faster-deploy 。 说明: - 该快速部署脚本可以快速部署多个案例,请选择objectdetectionyolov3案例部署即可。
- 该快速部署脚本自动完成了代码下载、模型转换、环境变量配置等流程,如果需要了解详细的部署过程请选择常规部署方式。转 :2. 常规部署
常规部署,请参考: https://gitee.com/Atlas200DK/sample-README/tree/master/sample-objectdetectionyolov3 。 说明: - 该部署方式,需要手动完成代码下载、模型转换、环境变量配置等过程。完成后,会对其中的过程更加了解。
编译打开对应的工程。 以Mind Studio安装用户在命令行中进入安装包解压后的“MindStudio-ubuntu/bin”目录,如:$HOME/MindStudio-ubuntu/bin。执行如下命令启动Mind Studio。 ./MindStudio.sh 启动成功后,打开sample-objectdetctionbyyolov3工程,如图 打开objectdetectionyolov3工程所示。 图 1 打开objectdetectionyolov3工程
在src/param_configure.conf文件中配置相关工程信息。 图 2 配置文件路径
该配置文件默认配置内容如下: remote_host:Atlas 200 DK开发者板的IP地址。 说明: - 注意参数填写时不需要使用“”符号。
- 当前已经按照配置示例配置默认值,请按照配置情况自行修改。
执行deploy脚本, 进行配置参数调整及第三方库下载编译 打开Mind Studio工具的Terminal,此时默认在代码主目录下,执行如下命令在后台指执行deploy脚本,进行环境部署。如图 执行deploy脚本所示。 图 3 执行deploy脚本
说明: - 首次deploy时,没有部署第三方库时会自动下载并编译,耗时可能比较久,请耐心等待。后续再重新编译时,不会重复下载编译,部署如上图所示。
- deploy时,需要选择与开发板通信的主机侧ip,一般为虚拟网卡配置的ip。如果此ip和开发板ip属于同网段,则会自动选择并部署。如果非同网段,则需要手动输入与开发板通信的主机侧ip才能完成deploy。
开始编译,打开Mindstudio工具,在工具栏中点击Build > Build > Build-Configuration。如图 编译操作及生成文件所示,会在目录下生成build和run文件夹。 图 4 编译操作及生成文件
注意: 首次编译工程时,Build > Build为灰色不可点击状态。需要点击Build > Edit Build Configuration,配置编译参数后再进行编译。 将需要推理的图片上传至Host侧任一属组为HwHiAiUser用户的目录。 图片要求如下: - 格式:jpg、png、bmp。
- 输入图片宽度:16px~4096px之间的整数。
- 输入图片高度:16px~4096px之间的整数。
运行在Mindstudio工具的工具栏中找到Run按钮,点击 Run > Run 'sample-objectdetection',如图 程序已执行示意图所示,可执行程序已经在开发板执行。 图 5 程序已执行示意图 以上报错信息请忽略,因为Mind Studio无法为可执行程序传参,上述步骤是将可执行程序与依赖的库文件部署到开发者板,此步骤需要ssh登录到开发者板至相应的目录文件下手动执行,具体请参考以下步骤。 在Mind Studio所在Ubuntu服务器中,以HwHiAiUser用户SSH登录到Host侧。 ssh HwHiAiUser@host_ip 对于Atlas 200 DK,host_ip默认为192.168.1.2(USB连接)或者192.168.0.2(NIC连接)。 进入yolov3检测网络应用的可执行文件所在路径。 命令举例如下: cd ~/HIAI_PROJECTS/workspace_mind_studio/sample_objectdetectionbyyolov3_XXXXX/out 说明: - 此路径中sample_objectdetectionbyyolov3_XXXXX的XXXXX是一串字母和数字的随机组合,每次重新编译运行时都会随机生成。
执行应用程序。 执行run_object_detection_yolov3.py脚本会将推理生成的图片保存至指定路径。 命令示例如下所示: python3 run_object_detection_yolov3.py -w 416 -h 416 -i ./example.jpg -o ./out - -w/model_width:模型的输入图片宽度,为16~4096之间的整数。
- -h/model_height:模型的输入图片高度,为16~4096之间的整数。
- -i/input_path:输入图片的目录/路径,可以有多个输入。
- -o/output_path:输出图片的目录,默认为当前目录。
其他详细参数请执行python3 run_object_detection_yolov3.py --help命令参见帮助信息。 |
请发表评论