# Ascbot-Model **Repository Path**: yongxing912/ascbot-model ## Basic Information - **Project Name**: Ascbot-Model - **Description**: atlas小车部署的三个模型 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-01-15 - **Last Updated**: 2025-01-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # [目录](contents) - [目录](#目录) - [1. 模型分类](#1._模型分类) - [2. 原始模型](#2._原始模型) - [2.1. ATC_CollisionAntiDrop_caffe_AE](#2.1._ATC_CollisionAntiDrop_caffe_AE) - [2.2. ATC_LaneDetection_caffe_AE](#2.2._ATC_LaneDetection_caffe_AE) - [2.3. ATC_Object_detection_caffe_AE](#2.3._ATC_Object_detection_caffe_AE) - [3. 部署模型](#3._部署模型) # [1. 模型分类](contents) - **ATC_CollisionAntiDrop_caffe_AE** - 模型功能:该模型用于智能小车检测前方是否有跌落危险。 - **ATC_LaneDetection_caffe_AE** - 模型功能:该模型用于智能小车检测车道线,实现循道行驶。 - **ATC_Object_detection_caffe_AE** - 模型功能:用于选择小车的运行模式:自由形式、循道模式、物体跟随模式。 # [2. 原始模型](contents) ## [2.1. ATC_CollisionAntiDrop_caffe_AE](contents) 参考实现 : https://github.com/weiliu89/caffe 原始模型权重下载地址 : https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/collision/collision_avoidance_model.caffemodel 原始模型网络下载地址 : https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/collision/collision_avoidance_model.prototxt 对应的cfg文件下载地址: https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/collision/insert_op_collision_avoidance.cfg ### om模型 om模型下载地址: https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/collision/collision_avoidance_model.om 使用ATC模型转换工具进行模型转换时可以参考如下指令,具体操作详情和参数设置可以参考 [ATC工具使用指导](https://support.huaweicloud.com/ti-atc-A200dk_3000/altasatc_16_002.html) ``` atc --model="collision_avoidance_model.prototxt" --weight="collision_avoidance_model.caffemodel" --soc_version=Ascend310 --framework=0 --output="collision_avoidance_model" --insert_op_conf=insert_op_collision_avoidance.cfg ``` ### 使用msame工具推理 参考 https://gitee.com/ascend/tools/tree/master/msame, 获取msame推理工具及使用方法。 获取到msame可执行文件之后,将待检测om文件放在model文件夹,然后进行性能测试。 ### 性能测试 使用msame推理工具,参考如下命令,发起推理性能测试: ``` ./msame --model ../model/collision_avoidance_model.om --output output/ --loop 100 ``` ``` [INFO] output data success Inference average time: 1.654040 ms Inference average time without first time: 1.651808 ms [INFO] unload model success, model Id is 1 [INFO] Execute sample success. Test Finish! ``` Batch: 1, shape: 224 * 224 * 3,带AIPP,平均推理性能1.65ms ### 精度测试 待完善 ## [2.2. ATC_LaneDetection_caffe_AE](contents) 参考实现 : https://github.com/weiliu89/caffe 原始模型权重下载地址 : [https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/following/road_following_model.caffemodel](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC Model/car/following/road_following_model.caffemodel) 原始模型网络下载地址 : [https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/following/road_following_model.prototxt](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC Model/car/following/road_following_model.prototxt) 对应的cfg文件下载地址: [https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/following/insert_op_road_following.cfg](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC Model/car/following/insert_op_road_following.cfg) ### om模型 om模型下载地址: [https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/following/road_following_model.om](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC Model/car/following/road_following_model.om) 使用ATC模型转换工具进行模型转换时可以参考如下指令,具体操作详情和参数设置可以参考 [ATC工具使用指导](https://support.huaweicloud.com/ti-atc-A200dk_3000/altasatc_16_002.html) ``` atc --model="road_following_model.prototxt" --weight="road_following_model.caffemodel" --soc_version=Ascend310 --framework=0 --output="road_following_model" --insert_op_conf=insert_op_road_following.cfg ``` ### 使用msame工具推理 参考 https://gitee.com/ascend/tools/tree/master/msame, 获取msame推理工具及使用方法。 获取到msame可执行文件之后,将待检测om文件放在model文件夹,然后进行性能测试。 ### 性能测试 使用msame推理工具,参考如下命令,发起推理性能测试: ``` ./msame --model ../model/road_following_model.om --output output/ --loop 100 [INFO] output data success Inference average time: 1.583040 ms Inference average time without first time: 1.578444 ms [INFO] unload model success, model Id is 1 [INFO] Execute sample success. Test Finish! ``` Batch: 1, shape: 224 * 224 * 3,带AIPP,平均推理性能 1.58ms ### 精度测试 待完善 ## [2.3. ATC_Object_detection_caffe_AE](contents) 参考实现 : https://github.com/weiliu89/caffe 原始模型权重下载地址 : https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/object_detection/road_object_detection_deploy.caffemodel 原始模型网络下载地址 : https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/object_detection/road_object_detection_deploy.prototxt 对应的cfg文件下载地址: https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/object_detection/insert_op_road_object_detection_deploy.cfg ### om模型 om模型下载地址: https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/car/object_detection/road_object_detection_deploy.om 使用ATC模型转换工具进行模型转换时可以参考如下指令,具体操作详情和参数设置可以参考 [ATC工具使用指导](https://support.huaweicloud.com/ti-atc-A200dk_3000/altasatc_16_002.html) ``` atc --model="road_object_detection_deploy.prototxt" --weight="road_object_detection_deploy.caffemodel" --soc_version=Ascend310 --framework=0 --output="road_object_detection_deploy" --insert_op_conf=insert_op_road_object_detection_deploy.cfg ``` ### 使用msame工具推理 参考 https://gitee.com/ascend/tools/tree/master/msame, 获取msame推理工具及使用方法。 获取到msame可执行文件之后,将待检测om文件放在model文件夹,然后进行性能测试。 ### 性能测试 使用msame推理工具,参考如下命令,发起推理性能测试: ``` ./msame --model ../model/road_object_detection_deploy.om --output output/ --loop 100 ``` ``` [INFO] output data success Inference average time: 8.184620 ms Inference average time without first time: 8.183535 ms [INFO] unload model success, model Id is 1 [INFO] Execute sample success. Test Finish! ``` Batch: 1, shape: 220 * 224 * 3,带AIPP,平均推理性能8.18ms ### 精度测试 待完善 # 3. 部署模型 2. `cd $HOME/samples/cplusplus/contrib/Ascbot/model` **获取 collision_avoidance_model 模型** `wget https://gitee.com/link?target=https%3A%2F%2Fmodelzoo-train-atc.obs.cn-north-4.myhuaweicloud.com%2F003_Atc_Models%2FAE%2FATC%2520Model%2Fcar%2Fcollision%2Fcollision_avoidance_model.om` **获取 road_following_model 模型** `wget https://gitee.com/link?target=https%3A%2F%2Fmodelzoo-train-atc.obs.cn-north-4.myhuaweicloud.com%2F003_Atc_Models%2FAE%2FATC%2520Model%2Fcar%2Ffollowing%2Froad_following_model.om` **获取 road_object_detection_deploy 模型** `wget https://gitee.com/link?target=https%3A%2F%2Fmodelzoo-train-atc.obs.cn-north-4.myhuaweicloud.com%2F003_Atc_Models%2FAE%2FATC%2520Model%2Fcar%2Fobject_detection%2Froad_object_detection_deploy.om` 设置LD_LIBRARY_PATH环境变量。 由于LD_LIBRARY_PATH环境变量在转使用atc工具和运行样例时会产生冲突,所以需要在命令行单独设置此环境变量,方便修改。 ```bash export install_path=$HOME/Ascend/ascend-toolkit/latest export LD_LIBRARY_PATH=\\${install_path}/atc/lib64 ``` ## 样例部署 1. 开发环境命令行中设置编译依赖的环境变量。 ```bash export DDK_PATH=$HOME/Ascend/ascend-toolkit/latest/arm64-linux:$DDK_PATH export NPU_HOST_LIB=$DDK_PATH/acllib/lib64/stub:${install_path}/arm64-linux/acllib/lib64/stub:$NPU_HOST_LIB ``` 1. 切换到ascbot_c75目录,创建目录用于存放编译文件,例如,本文中,创建的目录为 build/intermediates/host。 ```bash cd $HOME/samples/cplusplus/contrib/Ascbot mkdir -p build/intermediates/host ``` 1. 切换到 build/intermediates/host 目录,执行 cmake 生成编译文件。 ```bash cd build/intermediates/host make clean cmake ../../../src -DCMAKE_CXX_COMPILER=aarch64-linux-gnu-g++ -DCMAKE_SKIP_RPATH=TRUE** ``` 1. 执行make命令 `make` ## 样例运行 1. 设置环境 切换为 root `su - root` 执行如下命令 ```bash vim /etc/rc.local 添加以下指令 echo 504 >/sys/class/gpio/export echo 444 >/sys/class/gpio/export chown -R HwHiAiUser /sys/class/gpio/gpio444 chown -R HwHiAiUser /sys/class/gpio/gpio504 chown -R HwHiAiUser /sys/class/gpio/gpio444/direction chown -R HwHiAiUser /sys/class/gpio/gpio504/direction chown -R HwHiAiUser /sys/class/gpio/gpio444/value chown -R HwHiAiUser /sys/class/gpio/gpio504/value chown -R HwHiAiUser /dev/i2c-1 chown -R HwHiAiUser /dev/i2c-2 chown -R HwHiAiUser /dev/ttyAMA0 usermod -aG HwHiAiUser HwHiAiUser ``` 2. 运行可执行文件。 `cd $HOME/samples/cplusplus/contrib/Ascbot/out` 切换目录后,执行以下命令运行样例。 `./main Channel-0` ## 查看结果 运行完成后,可下载手机端应用控制小车运行。 [手机端下载地址](https://gitee.com/link?target=https%3A%2F%2Fshare.weiyun.com%2F5lsbfzF)