From 1f90817d5d94e3dc5393c2528e4015b9461fbfeb Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Tue, 6 Feb 2024 11:41:45 +0000 Subject: [PATCH 01/18] update Samples/YOLOV5USBCamera/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Samples/YOLOV5USBCamera/README.md | 49 ++++++++++++++++++------------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/Samples/YOLOV5USBCamera/README.md b/Samples/YOLOV5USBCamera/README.md index 7effbab..f28736a 100644 --- a/Samples/YOLOV5USBCamera/README.md +++ b/Samples/YOLOV5USBCamera/README.md @@ -2,7 +2,8 @@ #### 样例介绍 -通过USB接口连接Camera与开发板,从Camera获取视频,基于yolov5s模型对输入视频中的物体做实时检测,将推理结果信息使用imshow方式显示。 +通过USB接口连接Camera与开发板,从Camera获取视频,基于yolov5s模型对输入视频中的物体做实时检测,将推理结果信息使用imshow方式显示。 + 样例结构如下所示: ![输入图片说明](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/samples-pic/EdgeAndRobotics/%E5%8D%95%E7%BA%BF%E7%A8%8B%E7%A4%BA%E4%BE%8B%E5%9B%BE%E7%89%87.png) @@ -33,11 +34,13 @@ cd EdgeAndRobotics-master/AIApplication/YOLOV5USBCamera ``` -#### 准备环境 +#### 执行准备 + +1. 确认已安装带桌面的镜像且HDMI连接的屏幕正常显示 -1. 以HwHiAiUser用户登录开发板。 +2. 以HwHiAiUser用户登录开发板。 -2. 设置环境变量。 +3. 设置环境变量。 ``` # 配置程序编译依赖的头文件与库文件路径 @@ -45,7 +48,7 @@ export NPU_HOST_LIB=$DDK_PATH/runtime/lib64/stub ``` -3. 安装ACLLite库。 +4. 安装ACLLite库。 参考[ACLLite仓](https://gitee.com/ascend/ACLLite)安装ACLLite库。 @@ -54,22 +57,26 @@ 1. 以HwHiAiUser用户登录开发板,切换到当前样例目录。 2. 获取PyTorch框架的Yolov5模型(\*.onnx),并转换为昇腾AI处理器能识别的模型(\*.om)。 - - ``` - # 为了方便下载,在这里直接给出原始模型下载及模型转换命令,可以直接拷贝执行。 - cd model - wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/yolov5s.onnx --no-check-certificate - wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/aipp.cfg --no-check-certificate - atc --model=yolov5s.onnx --framework=5 --output=yolov5s --input_shape="images:1,3,640,640" --soc_version=Ascend310B4 --insert_op_conf=aipp.cfg - ``` - - atc命令中各参数的解释如下,详细约束说明请参见[《ATC模型转换指南》](https://hiascend.com/document/redirect/CannCommunityAtc)。 - - - --model:ResNet-50网络的模型文件的路径。 - - --framework:原始框架类型。5表示ONNX。 - - --output:yolov5s.om模型文件的路径。请注意,记录保存该om模型文件的路径,后续开发应用时需要使用。 - - --input\_shape:模型输入数据的shape。 - - --soc\_version:昇腾AI处理器的版本。 + - 当设备内存**小于8G**时,可设置如下两个环境变量减少atc模型转换过程中使用的进程数,减小内存占用。 + ``` + export TE_PARALLEL_COMPILER=1 + export MAX_COMPILE_CORE_NUMBER=1 + ``` + - 为了方便下载,在这里直接给出原始模型下载及模型转换命令,可以直接拷贝执行。 + ``` + cd model + wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/yolov5s.onnx --no-check-certificate + wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/aipp.cfg --no-check-certificate + atc --model=yolov5s.onnx --framework=5 --output=yolov5s --input_shape="images:1,3,640,640" --soc_version=Ascend310B4 --insert_op_conf=aipp.cfg + ``` + + atc命令中各参数的解释如下,详细约束说明请参见[《ATC模型转换指南》](https://hiascend.com/document/redirect/CannCommunityAtc)。 + + - --model:ResNet-50网络的模型文件的路径。 + - --framework:原始框架类型。5表示ONNX。 + - --output:yolov5s.om模型文件的路径。请注意,记录保存该om模型文件的路径,后续开发应用时需要使用。 + - --input\_shape:模型输入数据的shape。 + - --soc\_version:昇腾AI处理器的版本。 3. 编译样例源码。 -- Gitee From d0437531b23ac36c6aadfcc1b90296bd7cd97267 Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 09:26:16 +0800 Subject: [PATCH 02/18] m --- Samples/YOLOV5MultiInput/src/main.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Samples/YOLOV5MultiInput/src/main.cpp b/Samples/YOLOV5MultiInput/src/main.cpp index 1dd9702..68e7714 100644 --- a/Samples/YOLOV5MultiInput/src/main.cpp +++ b/Samples/YOLOV5MultiInput/src/main.cpp @@ -33,7 +33,6 @@ namespace { const uint32_t titleHeight = 30; const int channel[36] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, 17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35}; - // bool exitFlag = false; struct Config { @@ -351,6 +350,8 @@ int main(int argc, char *argv[]) { while(!exitFlag) { sleep(10); } - cv::destroyAllWindows(); + if (displayMode == "imshow") { + cv::destroyAllWindows(); + } return 0; } -- Gitee From 4e408745fe028c92293bf1d43ddf540c8f6599ac Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 15:15:20 +0800 Subject: [PATCH 03/18] commit change --- Peripherals/Audio/MIPIAudio/README.md | 4 ++-- Peripherals/Audio/USBAudio/Readme.md | 4 ++-- Peripherals/Camera/MIPICamera/README.md | 4 ++-- Peripherals/Camera/USBCamera/readme.md | 4 ++-- Peripherals/DVPP/vdec/README.md | 4 ++-- Peripherals/DVPP/venc/README.md | 4 ++-- Peripherals/Display/HDMIDisplay/README.md | 4 ++-- Peripherals/Display/MIPIDisplay/README.md | 4 ++-- Samples/ACLHelloWorld/README.md | 4 ++-- Samples/HandWritingTrainAndInfer/README.md | 4 ++-- Samples/ResnetPicture/README.md | 4 ++-- Samples/YOLOV5MultiInput/README.md | 4 ++-- Samples/YOLOV5MultiInput/src/main.cpp | 4 ---- Samples/YOLOV5USBCamera/README.md | 4 ++-- Samples/YOLOV5USBCamera/src/main.cpp | 2 -- 15 files changed, 26 insertions(+), 32 deletions(-) diff --git a/Peripherals/Audio/MIPIAudio/README.md b/Peripherals/Audio/MIPIAudio/README.md index f6a0b1f..ff78929 100644 --- a/Peripherals/Audio/MIPIAudio/README.md +++ b/Peripherals/Audio/MIPIAudio/README.md @@ -15,7 +15,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/OnBoardInterface/Audio/MIPIAudio + cd EdgeAndRobotics/Peripherals/Audio/MIPIAudio ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -28,7 +28,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/OnBoardInterface/Audio/MIPIAudio + cd EdgeAndRobotics-master/Peripherals/Audio/MIPIAudio ``` #### 准备环境 diff --git a/Peripherals/Audio/USBAudio/Readme.md b/Peripherals/Audio/USBAudio/Readme.md index f597269..8c69200 100644 --- a/Peripherals/Audio/USBAudio/Readme.md +++ b/Peripherals/Audio/USBAudio/Readme.md @@ -17,7 +17,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/OnBoardInterface/Audio/USBAudio + cd EdgeAndRobotics/Peripherals/Audio/USBAudio ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -30,7 +30,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/OnBoardInterface/Audio/USBAudio + cd EdgeAndRobotics-master/Peripherals/Audio/USBAudio ``` #### 准备环境 diff --git a/Peripherals/Camera/MIPICamera/README.md b/Peripherals/Camera/MIPICamera/README.md index 4e98f12..ae2d620 100644 --- a/Peripherals/Camera/MIPICamera/README.md +++ b/Peripherals/Camera/MIPICamera/README.md @@ -17,7 +17,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/OnBoardInterface/Camera/MIPICamera + cd EdgeAndRobotics/Peripherals/Camera/MIPICamera ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -30,7 +30,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/OnBoardInterface/Camera/MIPICamera + cd EdgeAndRobotics-master/Peripherals/Camera/MIPICamera ``` #### 准备环境 diff --git a/Peripherals/Camera/USBCamera/readme.md b/Peripherals/Camera/USBCamera/readme.md index db7267d..67fb9f8 100644 --- a/Peripherals/Camera/USBCamera/readme.md +++ b/Peripherals/Camera/USBCamera/readme.md @@ -15,7 +15,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/OnBoardInterface/Camera/USBCamera + cd EdgeAndRobotics/Peripherals/Camera/USBCamera ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -28,7 +28,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/OnBoardInterface/Camera/USBCamera + cd EdgeAndRobotics-master/Peripherals/Camera/USBCamera ``` #### 准备环境 diff --git a/Peripherals/DVPP/vdec/README.md b/Peripherals/DVPP/vdec/README.md index 9b70450..a1befcb 100644 --- a/Peripherals/DVPP/vdec/README.md +++ b/Peripherals/DVPP/vdec/README.md @@ -15,7 +15,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/OnBoardInterface/DVPP/vdec + cd EdgeAndRobotics/Peripherals/DVPP/vdec ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -28,7 +28,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/OnBoardInterface/DVPP/vdec + cd EdgeAndRobotics-master/Peripherals/DVPP/vdec ``` #### 准备环境 diff --git a/Peripherals/DVPP/venc/README.md b/Peripherals/DVPP/venc/README.md index aa4a0ef..317a4aa 100644 --- a/Peripherals/DVPP/venc/README.md +++ b/Peripherals/DVPP/venc/README.md @@ -15,7 +15,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/OnBoardInterface/DVPP/venc + cd EdgeAndRobotics/Peripherals/DVPP/venc ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -28,7 +28,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/OnBoardInterface/DVPP/venc + cd EdgeAndRobotics-master/Peripherals/DVPP/venc ``` #### 准备环境 diff --git a/Peripherals/Display/HDMIDisplay/README.md b/Peripherals/Display/HDMIDisplay/README.md index b968f57..70b85dc 100644 --- a/Peripherals/Display/HDMIDisplay/README.md +++ b/Peripherals/Display/HDMIDisplay/README.md @@ -15,7 +15,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/OnBoardInterface/Display/HDMIDisplay + cd EdgeAndRobotics/Peripherals/Display/HDMIDisplay ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -28,7 +28,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/OnBoardInterface/Display/HDMIDisplay + cd EdgeAndRobotics-master/Peripherals/Display/HDMIDisplay ``` #### 准备环境 diff --git a/Peripherals/Display/MIPIDisplay/README.md b/Peripherals/Display/MIPIDisplay/README.md index 425de73..feb60cb 100644 --- a/Peripherals/Display/MIPIDisplay/README.md +++ b/Peripherals/Display/MIPIDisplay/README.md @@ -15,7 +15,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/OnBoardInterface/Display/MIPIDisplay + cd EdgeAndRobotics/Peripherals/Display/MIPIDisplay ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -28,7 +28,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/OnBoardInterface/Display/MIPIDisplay + cd EdgeAndRobotics-master/Peripherals/Display/MIPIDisplay ``` #### 准备环境 diff --git a/Samples/ACLHelloWorld/README.md b/Samples/ACLHelloWorld/README.md index 0665691..88ac5ac 100644 --- a/Samples/ACLHelloWorld/README.md +++ b/Samples/ACLHelloWorld/README.md @@ -21,7 +21,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/AIApplication/ACLHelloWorld + cd EdgeAndRobotics/Samples/ACLHelloWorld ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -34,7 +34,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/AIApplication/ACLHelloWorld + cd EdgeAndRobotics-master/Samples/ACLHelloWorld ``` diff --git a/Samples/HandWritingTrainAndInfer/README.md b/Samples/HandWritingTrainAndInfer/README.md index 9acfa3d..82fdb47 100644 --- a/Samples/HandWritingTrainAndInfer/README.md +++ b/Samples/HandWritingTrainAndInfer/README.md @@ -15,7 +15,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/AIApplication/Mnist_For_Pytorch + cd EdgeAndRobotics/Samples/Mnist_For_Pytorch ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -28,7 +28,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/AIApplication/Mnist_For_Pytorch + cd EdgeAndRobotics-master/Samples/Mnist_For_Pytorch ``` #### 准备环境 diff --git a/Samples/ResnetPicture/README.md b/Samples/ResnetPicture/README.md index 68bafe3..a01456a 100644 --- a/Samples/ResnetPicture/README.md +++ b/Samples/ResnetPicture/README.md @@ -15,7 +15,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/AIApplication/ResnetPicture + cd EdgeAndRobotics/Samples/ResnetPicture ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -28,7 +28,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/AIApplication/ResnetPicture + cd EdgeAndRobotics-master/Samples/ResnetPicture ``` #### 准备环境 diff --git a/Samples/YOLOV5MultiInput/README.md b/Samples/YOLOV5MultiInput/README.md index 2196817..8823ddf 100644 --- a/Samples/YOLOV5MultiInput/README.md +++ b/Samples/YOLOV5MultiInput/README.md @@ -16,7 +16,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/AIApplication/YOLOV5MultiInput + cd EdgeAndRobotics/Samples/YOLOV5MultiInput ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -29,7 +29,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/AIApplication/YOLOV5MultiInput + cd EdgeAndRobotics-master/Samples/YOLOV5MultiInput ``` #### 准备环境 diff --git a/Samples/YOLOV5MultiInput/src/main.cpp b/Samples/YOLOV5MultiInput/src/main.cpp index 68e7714..b549214 100644 --- a/Samples/YOLOV5MultiInput/src/main.cpp +++ b/Samples/YOLOV5MultiInput/src/main.cpp @@ -209,7 +209,6 @@ void* GetInput(void* arg) { } usleep(100); } - LOG_PRINT("[INFO] channel %d add msgData. tid : %ld", *(int *)arg, pthread_self()); } cnt++; } else { @@ -227,7 +226,6 @@ void* GetInput(void* arg) { } usleep(100); } - LOG_PRINT("[INFO] channel %d add end msgData. tid : %ld", *(int *)arg, pthread_self()); return NULL; } @@ -260,7 +258,6 @@ void* ModelExecute(void* arg) { } usleep(100); } - LOG_PRINT("[INFO] channel %d infer msgOut. tid : %ld", msgData.ChannelId, pthread_self()); } } } @@ -273,7 +270,6 @@ void* ModelExecute(void* arg) { } usleep(100); } - LOG_PRINT("[INFO] infer msg end. tid : %ld", pthread_self()); return NULL; } diff --git a/Samples/YOLOV5USBCamera/README.md b/Samples/YOLOV5USBCamera/README.md index f28736a..98141b5 100644 --- a/Samples/YOLOV5USBCamera/README.md +++ b/Samples/YOLOV5USBCamera/README.md @@ -18,7 +18,7 @@ cd ${HOME} git clone https://gitee.com/ascend/EdgeAndRobotics.git # 切换到样例目录 - cd EdgeAndRobotics/AIApplication/YOLOV5USBCamera + cd EdgeAndRobotics/Samples/YOLOV5USBCamera ``` - 压缩包方式下载(**下载时间较短,但步骤稍微复杂**)。 @@ -31,7 +31,7 @@ chmod +x EdgeAndRobotics-master.zip unzip EdgeAndRobotics-master.zip # 4. 切换到样例目录 - cd EdgeAndRobotics-master/AIApplication/YOLOV5USBCamera + cd EdgeAndRobotics-master/Samples/YOLOV5USBCamera ``` #### 执行准备 diff --git a/Samples/YOLOV5USBCamera/src/main.cpp b/Samples/YOLOV5USBCamera/src/main.cpp index a940a4b..fe46de0 100644 --- a/Samples/YOLOV5USBCamera/src/main.cpp +++ b/Samples/YOLOV5USBCamera/src/main.cpp @@ -204,7 +204,6 @@ void* GetInput(void* arg) { } usleep(100); } - LOG_PRINT("[INFO] preprocess add msgData. tid : %ld", pthread_self()); } else { LOG_PRINT("[INFO] frame read end."); break; @@ -250,7 +249,6 @@ void* ModelExecute(void* arg) { } usleep(100); } - LOG_PRINT("[INFO] infer msgData. tid : %ld", pthread_self()); } } } -- Gitee From 383f64a97954cfd1cb8a7e3ff29f3835fa961f51 Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:18:15 +0000 Subject: [PATCH 04/18] update Samples/ACLHelloWorld/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Samples/ACLHelloWorld/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Samples/ACLHelloWorld/README.md b/Samples/ACLHelloWorld/README.md index 88ac5ac..2db4063 100644 --- a/Samples/ACLHelloWorld/README.md +++ b/Samples/ACLHelloWorld/README.md @@ -49,7 +49,7 @@ |--- main.cpp // 样例源码 ``` -#### 准备环境 +#### 执行准备 1. 以HwHiAiUser用户登录开发板。 -- Gitee From 4e70f7284b83b027bd87dd81f3a490119f06a1c0 Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:19:06 +0000 Subject: [PATCH 05/18] update Samples/HandWritingTrainAndInfer/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Samples/HandWritingTrainAndInfer/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Samples/HandWritingTrainAndInfer/README.md b/Samples/HandWritingTrainAndInfer/README.md index 82fdb47..115d0df 100644 --- a/Samples/HandWritingTrainAndInfer/README.md +++ b/Samples/HandWritingTrainAndInfer/README.md @@ -31,7 +31,7 @@ cd EdgeAndRobotics-master/Samples/Mnist_For_Pytorch ``` -#### 准备环境 +#### 执行准备 - 本样例中的模型支持PyTorch2.1.0、torchvision1.16.0版本,请参考[安装PyTorch](https://www.hiascend.com/document/detail/zh/canncommercial/700/envdeployment/instg/instg_0046.html)章节安装PyTorch以及torch_npu插件。 ``` -- Gitee From 054b77710629534f522e1156d6c814aac1326bdf Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:20:41 +0000 Subject: [PATCH 06/18] update Samples/ResnetPicture/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Samples/ResnetPicture/README.md | 38 ++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/Samples/ResnetPicture/README.md b/Samples/ResnetPicture/README.md index a01456a..8f293f1 100644 --- a/Samples/ResnetPicture/README.md +++ b/Samples/ResnetPicture/README.md @@ -31,7 +31,7 @@ cd EdgeAndRobotics-master/Samples/ResnetPicture ``` -#### 准备环境 +#### 执行准备 1. 以HwHiAiUser用户登录开发板。 @@ -52,22 +52,26 @@ 1. 以HwHiAiUser用户登录开发板,切换到当前样例目录。 2. 获取PyTorch框架的ResNet50模型(\*.onnx),并转换为昇腾AI处理器能识别的模型(\*.om)。 - - ``` - # 为了方便下载,在这里直接给出原始模型下载及模型转换命令,可以直接拷贝执行。 - cd model - wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/resnet50/resnet50.onnx - wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/resnet50/resnet50_DVPP/aipp.cfg - atc --model=resnet50.onnx --framework=5 --output=resnet50 --input_shape="actual_input_1:1,3,224,224" --soc_version=Ascend310B4 --insert_op_conf=aipp.cfg - ``` - - atc命令中各参数的解释如下,详细约束说明请参见[《ATC模型转换指南》](https://hiascend.com/document/redirect/CannCommunityAtc)。 - - - --model:ResNet-50网络的模型文件的路径。 - - --framework:原始框架类型。5表示ONNX。 - - --output:resnet50.om模型文件的路径。请注意,记录保存该om模型文件的路径,后续开发应用时需要使用。 - - --input\_shape:模型输入数据的shape。 - - --soc\_version:昇腾AI处理器的版本。 + - 当设备内存**小于8G**时,可设置如下两个环境变量减少atc模型转换过程中使用的进程数,减小内存占用。 + ``` + export TE_PARALLEL_COMPILER=1 + export MAX_COMPILE_CORE_NUMBER=1 + ``` + - 为了方便下载,在这里直接给出原始模型下载及模型转换命令,可以直接拷贝执行。 + ``` + cd model + wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/resnet50/resnet50.onnx + wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/resnet50/resnet50_DVPP/aipp.cfg + atc --model=resnet50.onnx --framework=5 --output=resnet50 --input_shape="actual_input_1:1,3,224,224" --soc_version=Ascend310B4 --insert_op_conf=aipp.cfg + ``` + + atc命令中各参数的解释如下,详细约束说明请参见[《ATC模型转换指南》](https://hiascend.com/document/redirect/CannCommunityAtc)。 + + - --model:ResNet-50网络的模型文件的路径。 + - --framework:原始框架类型。5表示ONNX。 + - --output:resnet50.om模型文件的路径。请注意,记录保存该om模型文件的路径,后续开发应用时需要使用。 + - --input\_shape:模型输入数据的shape。 + - --soc\_version:昇腾AI处理器的版本。 3. 获取测试图片数据。 -- Gitee From 210a84db73f0fae56f462d7943c159336cccd697 Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:24:22 +0000 Subject: [PATCH 07/18] update Samples/YOLOV5MultiInput/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Samples/YOLOV5MultiInput/README.md | 49 +++++++++++++++++------------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/Samples/YOLOV5MultiInput/README.md b/Samples/YOLOV5MultiInput/README.md index 8823ddf..4c3ffe8 100644 --- a/Samples/YOLOV5MultiInput/README.md +++ b/Samples/YOLOV5MultiInput/README.md @@ -54,22 +54,26 @@ 1. 以HwHiAiUser用户登录开发板,切换到当前样例目录。 2. 获取PyTorch框架的YoloV5s模型(\*.onnx),并转换为昇腾AI处理器能识别的模型(\*.om)。 - - ``` - # 为了方便下载,在这里直接给出原始模型下载及模型转换命令,可以直接拷贝执行。 - cd model - wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/yolov5s_nms.onnx --no-check-certificate - wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/aipp.cfg --no-check-certificate - atc --model=yolov5s_nms.onnx --framework=5 --output=yolov5s_nms --input_shape="images:1,3,640,640;img_info:1,4" --soc_version=Ascend310B4 --insert_op_conf=aipp.cfg - ``` - - atc命令中各参数的解释如下,详细约束说明请参见[《ATC模型转换指南》](https://hiascend.com/document/redirect/CannCommunityAtc)。 - - - --model:YoloV5s网络的模型文件的路径。 - - --framework:原始框架类型。5表示ONNX。 - - --output:om模型文件的路径。请注意,记录保存该om模型文件的路径,后续开发应用时需要使用。 - - --input\_shape:模型输入数据的shape。 - - --soc\_version:昇腾AI处理器的版本。 + - 当设备内存**小于8G**时,可设置如下两个环境变量减少atc模型转换过程中使用的进程数,减小内存占用。 + ``` + export TE_PARALLEL_COMPILER=1 + export MAX_COMPILE_CORE_NUMBER=1 + ``` + - 为了方便下载,在这里直接给出原始模型下载及模型转换命令,可以直接拷贝执行。 + ``` + cd model + wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/yolov5s_nms.onnx --no-check-certificate + wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/yolov5s/aipp.cfg --no-check-certificate + atc --model=yolov5s_nms.onnx --framework=5 --output=yolov5s_nms --input_shape="images:1,3,640,640;img_info:1,4" --soc_version=Ascend310B4 --insert_op_conf=aipp.cfg + ``` + + atc命令中各参数的解释如下,详细约束说明请参见[《ATC模型转换指南》](https://hiascend.com/document/redirect/CannCommunityAtc)。 + + - --model:YoloV5s网络的模型文件的路径。 + - --framework:原始框架类型。5表示ONNX。 + - --output:om模型文件的路径。请注意,记录保存该om模型文件的路径,后续开发应用时需要使用。 + - --input\_shape:模型输入数据的shape。 + - --soc\_version:昇腾AI处理器的版本。 3. 准备测试视频。 @@ -93,11 +97,14 @@ 5. 运行样例。 - 执行以下脚本运行样例: - - ``` - bash sample_run.sh - ``` + - 在HDMI连接屏幕场景,执行以下脚本运行样例。此时会以画面的形式呈现推理效果。 + ``` + bash sample_run.sh imshow + ``` + - 在直连电脑场景,执行以下脚本运行样例。此时会以结果打屏的形式呈现推理效果。 + ``` + bash sample_run.sh stdout + ``` #### 相关操作 -- Gitee From 3b1c0dc05fb8682606531095a3c7c4dfeae8d420 Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:26:04 +0000 Subject: [PATCH 08/18] update Samples/HandWritingTrainAndInfer/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Samples/HandWritingTrainAndInfer/README.md | 38 ++++++++++++---------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/Samples/HandWritingTrainAndInfer/README.md b/Samples/HandWritingTrainAndInfer/README.md index 115d0df..0557c6b 100644 --- a/Samples/HandWritingTrainAndInfer/README.md +++ b/Samples/HandWritingTrainAndInfer/README.md @@ -141,27 +141,31 @@ **注:**若需更换测试图片,则需自行准备测试图片,并将测试图片放到omInfer/data目录下。 3. 获取PyTorch框架的ResNet50模型(\*.onnx),并转换为昇腾AI处理器能识别的模型(\*.om)。 - - ``` - # 为了方便下载,在这里直接给出原始模型下载及模型转换命令,可以直接拷贝执行。 - # 将在线推理时导出的mnist.onnx模型拷贝到model目录下 - cd ../model - cp ../../mnist.onnx ./ + - 当设备内存**小于8G**时,可设置如下两个环境变量减少atc模型转换过程中使用的进程数,减小内存占用。 + ``` + export TE_PARALLEL_COMPILER=1 + export MAX_COMPILE_CORE_NUMBER=1 + ``` + - 为了方便下载,在这里直接给出原始模型下载及模型转换命令,可以直接拷贝执行。 + ``` + # 将在线推理时导出的mnist.onnx模型拷贝到model目录下 + cd ../model + cp ../../mnist.onnx ./ - # 获取AIPP配置文件 - wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/wanzutao/mnist/aipp.cfg + # 获取AIPP配置文件 + wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/wanzutao/mnist/aipp.cfg - # 模型转换 - atc --model=mnist.onnx --framework=5 --insert_op_conf=aipp.cfg --output=mnist --soc_version=Ascend310B4 - ``` + # 模型转换 + atc --model=mnist.onnx --framework=5 --insert_op_conf=aipp.cfg --output=mnist --soc_version=Ascend310B4 + ``` - atc命令中各参数的解释如下,详细约束说明请参见[《ATC模型转换指南》](https://hiascend.com/document/redirect/CannCommunityAtc)。 + atc命令中各参数的解释如下,详细约束说明请参见[《ATC模型转换指南》](https://hiascend.com/document/redirect/CannCommunityAtc)。 - - --model:转换前模型文件的路径。 - - --framework:原始框架类型。5表示ONNX。 - - --output:转换后模型文件的路径。请注意,记录保存该om模型文件的路径,后续开发应用时需要使用。 - - --input\_shape:模型输入数据的shape。 - - --soc\_version:昇腾AI处理器的版本。 + - --model:转换前模型文件的路径。 + - --framework:原始框架类型。5表示ONNX。 + - --output:转换后模型文件的路径。请注意,记录保存该om模型文件的路径,后续开发应用时需要使用。 + - --input\_shape:模型输入数据的shape。 + - --soc\_version:昇腾AI处理器的版本。 4. 编译样例源码。 -- Gitee From 16994b8927921e441ec1c105c1a6ee6621c1e92d Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:34:48 +0000 Subject: [PATCH 09/18] update Samples/HandWritingTrainAndInfer/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Samples/HandWritingTrainAndInfer/README.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Samples/HandWritingTrainAndInfer/README.md b/Samples/HandWritingTrainAndInfer/README.md index 0557c6b..982334b 100644 --- a/Samples/HandWritingTrainAndInfer/README.md +++ b/Samples/HandWritingTrainAndInfer/README.md @@ -2,7 +2,7 @@ #### 样例介绍 - +本样例使用MNIST数据集实现了手写数字识别体的训练,onnx推理,om推理全过程。 #### 样例下载 @@ -65,7 +65,12 @@ 1. 以HwHiAiUser用户登录开发板,切换到样例目录下。 -2. 运行训练脚本。 +2. 设置环境变量减小算子编译内存占用。 + ``` + export TE_PARALLEL_COMPILER=1 + export MAX_COMPILE_CORE_NUMBER=1 + ``` +3. 运行训练脚本。 ``` python3 main.py -- Gitee From 8b247f1dd955667593b1575824f6d08cb9eeb732 Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:38:48 +0000 Subject: [PATCH 10/18] update Peripherals/Display/HDMIDisplay/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Peripherals/Display/HDMIDisplay/README.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Peripherals/Display/HDMIDisplay/README.md b/Peripherals/Display/HDMIDisplay/README.md index 70b85dc..326e42c 100644 --- a/Peripherals/Display/HDMIDisplay/README.md +++ b/Peripherals/Display/HDMIDisplay/README.md @@ -43,11 +43,12 @@ export NPU_HOST_INC=$HOME/Ascend/CANN-7.0/runtime/include/ ``` -#### 运行样例 +#### 执行准备 +1. 确认已更新dt.img(关闭drm的配置,打开vdp的配置) -1. 以HwHiAiUser用户登录开发板,切换到当前样例目录。 +2. 以HwHiAiUser用户登录开发板,切换到当前样例目录。 -2. 编译样例源码。 +3. 编译样例源码。 依次执行如下命令执行编译: @@ -60,7 +61,7 @@ 在build目录下会生成可执行文件sample_hdmi。 -3. 运行样例。 +4. 运行样例。 可执行文件的运行命令格式如下: -- Gitee From 5c867d59b65532ed10fb6df6cab9a6edc222a6ba Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:39:35 +0000 Subject: [PATCH 11/18] update Peripherals/Display/MIPIDisplay/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Peripherals/Display/MIPIDisplay/README.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Peripherals/Display/MIPIDisplay/README.md b/Peripherals/Display/MIPIDisplay/README.md index feb60cb..9b245e7 100644 --- a/Peripherals/Display/MIPIDisplay/README.md +++ b/Peripherals/Display/MIPIDisplay/README.md @@ -31,11 +31,12 @@ cd EdgeAndRobotics-master/Peripherals/Display/MIPIDisplay ``` -#### 准备环境 +#### 执行准备 +1. 确认已更新dt.img(关闭drm的配置,打开vdp的配置) -1. 以HwHiAiUser用户登录开发板。 +2. 以HwHiAiUser用户登录开发板。 -2. 设置环境变量。 +3. 设置环境变量。 ``` # 配置程序编译依赖的头文件与库文件路径 -- Gitee From 7a203aa4f56f31b25096fe803af00c790314292e Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:40:06 +0000 Subject: [PATCH 12/18] update Peripherals/DVPP/vdec/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Peripherals/DVPP/vdec/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Peripherals/DVPP/vdec/README.md b/Peripherals/DVPP/vdec/README.md index a1befcb..be47651 100644 --- a/Peripherals/DVPP/vdec/README.md +++ b/Peripherals/DVPP/vdec/README.md @@ -31,7 +31,7 @@ cd EdgeAndRobotics-master/Peripherals/DVPP/vdec ``` -#### 准备环境 +#### 执行准备 1. 以HwHiAiUser用户登录开发板。 -- Gitee From 8321e680bb820d27a0261b5fa62f28aa6802ed8c Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:40:26 +0000 Subject: [PATCH 13/18] update Peripherals/DVPP/venc/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Peripherals/DVPP/venc/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Peripherals/DVPP/venc/README.md b/Peripherals/DVPP/venc/README.md index 317a4aa..a2a4805 100644 --- a/Peripherals/DVPP/venc/README.md +++ b/Peripherals/DVPP/venc/README.md @@ -31,7 +31,7 @@ cd EdgeAndRobotics-master/Peripherals/DVPP/venc ``` -#### 准备环境 +#### 执行准备 1. 以HwHiAiUser用户登录开发板。 -- Gitee From abdd09be28bbfc3992e39dbe119bb5bbab51c40d Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:40:47 +0000 Subject: [PATCH 14/18] update Peripherals/Camera/USBCamera/readme.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Peripherals/Camera/USBCamera/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Peripherals/Camera/USBCamera/readme.md b/Peripherals/Camera/USBCamera/readme.md index 67fb9f8..111ed70 100644 --- a/Peripherals/Camera/USBCamera/readme.md +++ b/Peripherals/Camera/USBCamera/readme.md @@ -31,7 +31,7 @@ cd EdgeAndRobotics-master/Peripherals/Camera/USBCamera ``` -#### 准备环境 +#### 执行准备 1. 以HwHiAiUser用户登录开发板。 -- Gitee From 8e10e4716dff4aacc3aa73b8b40d17b170e83696 Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:41:11 +0000 Subject: [PATCH 15/18] update Peripherals/Camera/MIPICamera/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Peripherals/Camera/MIPICamera/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Peripherals/Camera/MIPICamera/README.md b/Peripherals/Camera/MIPICamera/README.md index ae2d620..9ed446c 100644 --- a/Peripherals/Camera/MIPICamera/README.md +++ b/Peripherals/Camera/MIPICamera/README.md @@ -33,7 +33,7 @@ cd EdgeAndRobotics-master/Peripherals/Camera/MIPICamera ``` -#### 准备环境 +#### 执行准备 1. 以HwHiAiUser用户登录开发板。 -- Gitee From c0aafef5edaf01187db734c31abee85dc5ffd37a Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:41:31 +0000 Subject: [PATCH 16/18] update Peripherals/Audio/MIPIAudio/README.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Peripherals/Audio/MIPIAudio/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Peripherals/Audio/MIPIAudio/README.md b/Peripherals/Audio/MIPIAudio/README.md index ff78929..5934c14 100644 --- a/Peripherals/Audio/MIPIAudio/README.md +++ b/Peripherals/Audio/MIPIAudio/README.md @@ -31,7 +31,7 @@ cd EdgeAndRobotics-master/Peripherals/Audio/MIPIAudio ``` -#### 准备环境 +#### 执行准备 1. 以HwHiAiUser用户登录开发板。 -- Gitee From 907f63ae2bcbd0b4afee000b1fc5c600f94e52cf Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 07:41:55 +0000 Subject: [PATCH 17/18] update Peripherals/Audio/USBAudio/Readme.md. Signed-off-by: fuyangchenghu <1015138540@qq.com> --- Peripherals/Audio/USBAudio/Readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Peripherals/Audio/USBAudio/Readme.md b/Peripherals/Audio/USBAudio/Readme.md index 8c69200..14bb82c 100644 --- a/Peripherals/Audio/USBAudio/Readme.md +++ b/Peripherals/Audio/USBAudio/Readme.md @@ -33,7 +33,7 @@ cd EdgeAndRobotics-master/Peripherals/Audio/USBAudio ``` -#### 准备环境 +#### 执行准备 1. 以HwHiAiUser用户登录开发板。 -- Gitee From 8d0bc92f4995c4fe70747791bf0cf905c50b630c Mon Sep 17 00:00:00 2001 From: fuyangchenghu <1015138540@qq.com> Date: Wed, 7 Feb 2024 16:38:56 +0800 Subject: [PATCH 18/18] change script --- Samples/YOLOV5MultiInput/out/.keep | 0 Samples/YOLOV5MultiInput/scripts/sample_run.sh | 11 ++++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 Samples/YOLOV5MultiInput/out/.keep diff --git a/Samples/YOLOV5MultiInput/out/.keep b/Samples/YOLOV5MultiInput/out/.keep new file mode 100644 index 0000000..e69de29 diff --git a/Samples/YOLOV5MultiInput/scripts/sample_run.sh b/Samples/YOLOV5MultiInput/scripts/sample_run.sh index a75e8d5..cdb1806 100644 --- a/Samples/YOLOV5MultiInput/scripts/sample_run.sh +++ b/Samples/YOLOV5MultiInput/scripts/sample_run.sh @@ -3,14 +3,19 @@ ScriptPath="$( cd "$(dirname "$BASH_SOURCE")" ; pwd -P )" function main() { + echo $1 + if [ "$1" != "imshow" ] && [ "$1" != "stdout" ]; then + echo "[ERROR] please choose output display mode: [bash sample_run imshow] [bash sample_run stdout]" + return + fi + echo "[INFO] The sample starts to run" - running_command="./main imshow" cd ${ScriptPath}/../out - ${running_command} + ./main $1 if [ $? -ne 0 ];then echo "[INFO] The program runs failed" else echo "[INFO] The program runs successfully" fi } -main +main $1 -- Gitee