# ascend-yolov9-sample **Repository Path**: cumt/ascend-yolov9-sample ## Basic Information - **Project Name**: ascend-yolov9-sample - **Description**: 华为昇腾 Ascend YOLOV8 推理示例 C++ , 基于Ascend Sample官方示例中的sampleYOLOV7进行的YOLOV9适配。 - **Primary Language**: C++ - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 2 - **Created**: 2024-03-14 - **Last Updated**: 2025-04-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Ascend YOLOV9 Sample #### 介绍 华为昇腾 Ascend YOLOV9 推理示例 C++ , 基于Ascend Sample官方示例中的[sampleYOLOV7](https://gitee.com/ascend/samples/tree/master/inference/modelInference/sampleYOLOV7)进行的YOLOV9适配。YOLOV7输出为[1,25200,85],而YOLOV9和YOLOV8输出格式为[1,84,8400],主要差异在于后处理的算法上。 #### 安装教程 1. 硬件为华为Atlas 500 Pro 服务器。 2. 在服务器上安装Ubuntu 20.04操作系统,并正确安装固件、驱动和CANN等依赖性,具体可以参考华为官网,npu-smi info 可以打印相关的NPU信息。 3. 下载官方Ascend Sample官方示例项目[samples](https://gitee.com/ascend/samples),并正确编译和安装ACLLITE库。具体可以参考[sampleYOLOV7](https://gitee.com/ascend/samples/tree/master/inference/modelInference/sampleYOLOV7)中的安装步骤。 yolov9-c-converted.pt模型(https://github.com/WongKinYiu/yolov9/releases/download/v0.1/yolov9-c-converted.pt)转换如下: 在windows操作系统上可以安装YOLOV9环境,并执行如下python脚本将.pt模型转化成.onnx模型: ```python #从base环境创建新的环境yolov9 conda create -n yolov9 --clone base #激活虚拟环境yolov9 conda activate yolov9 #克隆yolov9代码 git clone https://github.com/WongKinYiu/yolov9 # 安装yolov9项目的依赖 (yolov9) I:\yolov9-main>pip install -r requirements.txt # 模型转换导出onnx (yolov9) I:\yolov9-main>python export.py --weights yolov9-c-converted.pt --include onnx ``` 输出如下所示: ```bash (yolov9) I:\yolov9-main>python export.py --weights yolov9-c-converted.pt --include onnx export: data=I:\yolov9-main\data\coco.yaml, weights=['yolov9-c-converted.pt'], imgsz=[640, 640], batch_size=1, device=cpu, half=False, inplace=False, keras=False, optimize=False, int8=False, dynamic=False, simplify=False, opset=12, verbose=False, workspace=4, nms=False, agnostic_nms=False, topk_per_class=100, topk_all=100, iou_thres=0.45, conf_thres=0.25, include=['onnx'] YOLO 2024-3-13 Python-3.11.5 torch-2.1.2 CPU Fusing layers... gelan-c summary: 387 layers, 25288768 parameters, 64944 gradients, 102.1 GFLOPs PyTorch: starting from yolov9-c-converted.pt with output shape (1, 84, 8400) (49.1 MB) ONNX: starting export with onnx 1.15.0... ONNX: export success 2.9s, saved as yolov9-c-converted.onnx (96.8 MB) Export complete (4.4s) Results saved to I:\yolov9-main Detect: python detect.py --weights yolov9-c-converted.onnx Validate: python val.py --weights yolov9-c-converted.onnx PyTorch Hub: model = torch.hub.load('ultralytics/yolov5', 'custom', 'yolov9-c-converted.onnx') Visualize: https://netron.app ``` 查看onnx模型的网格结构,执行如下命令: ```bash (yolov9) I:\yolov9-main>netron yolov9-c-converted.onnx Serving 'yolov9-c-converted.onnx' at http://localhost:8080 ``` 浏览器打开http://localhost:8080,可以查看网络结构的输入和输出,输入为[1,3,640,640],输出为[1,84,8400]. ![yolov9_inputoutput](data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wgARCAEqAr4DASIAAhEBAxEB/8QAGwABAAMBAQEBAAAAAAAAAAAAAAECAwUEBgf/xAAWAQEBAQAAAAAAAAAAAAAAAAAAAQL/2gAMAwEAAhADEAAAAftgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPn/oOefM6fReCPn+/2OZZx9e/ReP9VyOugKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALFVxRcUXFFxRcUXFFxRcUXFFxRcUXFFxRcUXFFxRcUXFFxRcUXFFxRcUXFFxRcUXFFxRcUXFFxRcUAAAAAAAeXE6DmDpufU6Tm9AtvhuS8kHsc+DovDc9bjZHecmp2HFuddxukbgAAAAAAAAAAAAAAAAAAAAAAAM9DGtqgAAAAAHnp6xzfP2hyMOt6DldHQN8Nzyc7uj5/qewfP9DoDjc/6lHznH+7WfF5/SdOX5H6H3LAUAAAAAAAAAAAAAAAAAAAAAAADGtqgAAAAAAAAADbHcMtiEiEiE+Q9Tm9MhMBl5DoOfB0Xi9xDzWNzwnueXE6CfKel58z2PHU9yRCRCRCRCRCRCRCRCRCRCRCRCRCRCRCRCRjW1QAAAAAAAAABvhucrn/AENDm+L6Xzx4PL3Naw+d+og4MdsfKx9bMfN0+kmz5/3+vzr4uxPljXmdmK8HH+k2Pi/H+h0MeD2PYfJ+D9AzPnOl0PInRCgAAAAAAAAAAAAAAAY1tUAAAAAAAAAAXoNGY0ZjRmNGY0ZjRmNGY0ZjRmNGY0ZjRmNGY0ZjRmNGY0ZjRmNGY0ZjRmNGY0ZjRmNGY0ZjRmNGY0ZjRmNGY0ZiYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB5fV84e/wBHFiPdHmxOj7OGs97x2XodP5j6dAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABWwwj0CtNRXH0Cuewx2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAz0BmaPL6hrluQsKrCqwqsKrVCwqZGqwqsKrCqwqsKrCqwqsKrCqwqsKrCqwqsKrCqwqsKrCqwqsKrCqwqsKrCqwwi1QAAAAADiene0cjf3+Wq+PtUPN6nqRvhuvP83U8xzvTt6zje2+yc/md/wA8vP53aVyfZHtTgX79ZfR0a21AlAAAAAAAAAAAAAAAAAAAAAAz0DGtqgAAAAAAAAADbHcJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJEJGNbVAAAAAAAAAAG+G5zrzzjoLcqOtTKtnQ5HY5C16nKqnRy5esvqyt59T0W8fql07PA2jbGvgrpdfgelPB6ebZfZTDKOn0PF6LOkFAAAAAAAAAAAAAAAAAxraoAAAAAAAAAA3wHoYDdgN2A3YDdgN2A3YDfzyN86DdgNq5jdgN2AtfIbsBuwG7AbsBuwG7AbsBuwG7AbsBuwG7AbsBuwG7AbsBuwG7ATUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/8QALxAAAQQCAQMCBQMEAwAAAAAAAwABAgQREhMFFDFAUBAVIjBgICWAITVBcDM0Nv/aAAgBAQABBQL/AFj1H/mm5B9UecSFBxbdN8griN0mvU/a+ntVYv4hYrdxMdXjtQ6ZEaALhBOiRixqxHThWkOkKnJrP8bMLVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVarVa+obx+AP5+7YdmrOafJC1KTEtcRXPPMbMiN3TzTZ1TeCHYZI2NxvbhEfd/V3MNYHab356PPqoYOPqAS2PmEOYnUwjnLqAmg/UgcYicovcNmyn8/dPByAiN2OwJMB6xtJ7ijGp9EwSkGEXiNN4lCT25BLmNYmrQl3jVpxiFnGr4CGftD8T1Tc/YW5SLA9Su9GZBlpy7epAo6vuT+fQuETk/Q3j7Uun1Zm91fz6b/H4A/n0zeJEaJP1HshrRn1CqNvh4UCwIMF6tZnG9WmadyMLRbYATR7Aq0AnHYgh3a5jdyHuHvVonRrAa0WOKVdrYHritBOOtajZ9jfz6ZvFgQ52+MhVwDNYZt6sIDOcceVCgKD2hWH6p1ScY0bZ2mTuXjUpuSzDpLCiBp/uczgs2of3bqkxRHOwGAbBG4OmS/pYNGx0wFkgXEV43HeT0XNALW9m6o9kpwsV+zoZfqNX/t+xP59M3iY4EaQRTnq2e3A7kCIqw2Wi0U8IvKYAlfgFx8Q3HEYxpgBjKARCXaVmedUnezrhLI9TlG4BShMb8NavGsGAhjd4xeXEPkLV5zzGMrYw3GPRhtAdWvMHsb+fTbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbLZbfwMOcdYYrwylBYhYXzGDhh1KExi6iIhAWYWG+Yw4YdSFOALjHn+HdR+ixbLCxapmHWJRZ26RH/AM9XqnPGmYVdVYu3RAwETo1M5IW/w52aTQEMSmARHwztxw42ZotMAiO7M7cQ+OAhi/jWzLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDLDJ/P33nFpfCU4xedgY5fBvH2dmd/g8mZTMIcvcn8/dbJKwJynKMeVRjyKuSZC68rDxpXz2qbwZyPZY0uPnPxMxu47qcmA5SNesEHKdqzXU7RlUY45d1cHWjaM4yc57HHE0aLvKj7f9WU/n7r1xPKYBklwD0hVi8phhN+3FxyrjlL4N4cbOV6sXdqkGbjbm7WLRYWHsVh2oDoBhCHSwwkalGKpdPjwE6YEhJ9PFMRemhKRmaMfcX8+m/x+AP59M3j8Afz6ZvBzEHZlajF5WmjPuoupWMSe1DEJ7q3f4i2rFoFc1gVaHe1+3+Y1eCn1CFuALZ5W5WbQTSkefUrlixXdXLEq8K9x3DRslsOg9QMQprs43LF40Zv1Ehmgcl2hUnItP2R/Ppm8HjLl7bEoDeJWARq7MUBB15wnF5O5qUSX+owOQJY2pzevcYFCqcc6PdACMBSW497K2xIQ6v1BrJVZtzBSuQMcEKB5iqV7ALNWzOy4adliz6dbixKZ4Wn6cQEgwanSof2/wBkfz6ZvH35BFKaeEJP8HbLRjGEf0THArRi0Y+yP59PlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVlZWVn/Wf/8QAHhEAAgEDBQAAAAAAAAAAAAAAAUEAEBFgIFBhcID/2gAIAQMBAT8B29+FlaHTxl769CgoMXUMdBl//8QAIBEAAQMDBQEAAAAAAAAAAAAAAQBBYBARcCAhMFBRYf/aAAgBAgEBPwHrWRx41o299X2XnYFHGj8BdGhi7oNT1GX/AP/EAD0QAAIBAwMBBAYFDAIDAAAAAAECAwAREhMhMQQiMkFRECNSYXGRBRRQYIEgM0BCYnByc4ChscEwQ1OCkP/aAAgBAQAGPwL92PR/zRXUdRHvp2yXzFfSDqbqYhb5V0v1TLX/AO21+K6r+caZ5FuyZ471qdOLdQ685e+guk8PUhdw3j90YWyx03y45qabK+rba1dQFk7MosBbu0kd74i16kaDqTEJO8Mb0enQ7YkXpYElxZeHtQnnnMrgWXs2t/8ABSQsuQxNx51pRxXsgbdrVG+laNza99/lQVwlibd/tfKn04gypycrfKk04wWKByC1gKQRoMmBNma3FC4sfL0rHizMwNgtFljckHEp43ouyuMWClbbiimhLqDfHbjz5pCgZy4uFHNJZH7V77d23nXT+skS8o7njUg05TptZrLQiAcZC6sVsG+FCN4po7nEM6WBp1wlYJ3mVdhUZCSO0gyCItzao2USOX4RV7VB8WW/g3P2jbf5foEiDlltTPtYoBUKXF0YE00Y07GTPLxO96nxaPTNzcnu1E+lFIdMKVkoR6EGNuL2xPu2pVLZEDnz9Mb27IVgf7VJ2CyGbIqD3ltUloRGDMjBRbjame3Z0wP7moWKO2KlWVHxP+aULCwViS2T3Irp9Nb4Shj8K+kBhvK1035romC7RJZt+NqjZ4byLJ2pDLe4rrEwQwuSdTPiulm0NYaQUx5Y1GidDvuezNuh+NIs7ZSeJ+4uoYkz9rHf9A1WhBcm+5/dMieL8flhpnxBpC0ltQXXsnf8jUU3TzrGKUFvK1q0VmBfyodPpSs226rsKCSSAMfD0ZzNit7cVnE4ZfRpRyhn91Dp8/W841omZc/L0ZSuFFa4b1dr3rX1Bpe1TPC2YXwHNPZJEKmxDi32305eNW55HuqdsItQObSM9inl4V1Oqobjn4VFPIqTqIu0r8j3ipdZQ1rYK3gLV0wftJ27X8R4U+nbntWPjUFuptfLD1Y7NabyqZOz7id6gQdTpwPe8iN/uplM0roJcY5FexP411MLTS2WxFpcj86VvrLFsd4y+y/hULfWU6m9wAv6nyqONZI1jifK9wMm91TfylpQWQPmvjva9axkGn7Q3rbqFhy7rm1dQMg9nvqj9apngbIYniolSVJ1KH1ca92wrp2eCfVJYvdOSfKpIXdVIfuDvu16iWV7M+w95oevSD1XZdxfxqHVhkkjuSxiTvW4qA6Rskx7+y+NTPqiXsDJhxf3V1n8Y/x9t2dFYe8UHaJCw4JWibDfmgdGO68dnihqRo9vaF6BsLjijYAX5oMVGQ4NuKvJEjn9pb1p6SYezjtWmY1w9m21dhFX4CiREgJ5OPNerjRP4Rar/V4r/wAAr6wk+AsAy4XvWUkMbHzZb0sKPpRfrKq80qNGrKvAYXrCFhEfAheK01JPiSfGiUjVSebCgxUZDg+VammuftW3pHeQ6aG4jt41aRFYftC9WFYYLh7NtqKRAR+VhxUhkl1Wc3Jxt/UNnIdv81plJInPAkW16kxB7DYm9CVYZmU37q8U0mjOEAvkV2pEKSx590utr05UHsNib0JRDMym/C8UZDHKkYF82XagujMlxcF1sPuf0srfmlbte6ulSBg7h8iV8BXVpM4Q6hbemv4hjX/p/uuleZoxFGAVC8n411SSuEYSE2NNfxRjUazNihHP40Ol1l6iPG4ceH3PsRcGjpxql/ZFqvJEjH9pb1bwrTwXD2bbVYCwFXeJGPmVqxFxWnguHs22r1capf2Rb+rxVJ3bj0qCe8bCrMfjtx8f+UgEXHPpFyBfigryIpPAJ+4LzmRw4yIs2wt7qlLeSm3ltXRMzPcr7Z8qnLSuMXNrN3aUseYVNvfUBZn/ADzDvn9quqv7Rv8AKosucB6Y40fFSrE7fCnRpGzWTAFVGTeNOtyHWVVBcDxtzamh+sNbENliL/4qFSzLkmTMiZGlYsQFJBuls/I1DDCQrytbIjiupheUO6R5rJjavo+z/nu/tzxXXvr9zK/Z7x866fqnmVlZrFMK+kDn+aJw24roH17M67HAbV9JPMA0i7AnwqEtzj9oci3w/QMsedyLmx/CsmBvxyd6RLEBO7YkWqUyKe09+9yPfQJBuOLEihGFsoNxY2tWRG/jud/j5/kLJvdQRRIZlYvnceBtam7TnJw5JPiKMu9yuNIFd1KcMOaQ6khxv48/Ggr3FjcMp3FSAl5DILMzm5qJtSZjGezk1dRNG0mToboDsdqgeXVuu+mx2B+FSPlKNTvKrbGoUzkXS7rKd6LlpBl3wrbN8aAGwH7+oUWNmDXva29N2XKLszjgU6LHI5TnGhpo8t1y7NuPxrFY3kYbkLbb51HiGbU7oFN2GWxt2qSGF4cze5kbZaSZdAjbPn+1ZTOFFa+qNPzppllBUbcGrAjWtcrY7UIZNB7g3MJ7vxqPVji0nfABT2qMaT4RooYriDelKImncAkn0LgFuzWu/dHxqZ58PVcsndNSiZApUiwHojuIcJGtgp7a/GkijVSmYV2Pmal0hEI4e8ZDyfIUv1cRjsZu0p2WtSGTRcHfbKonc3Zluft2GRULYk3AqRGildWYm6y2G/mL1MbbNa3yqJdFxMqWEiuBb407aZlzseyRzb31CTbbMt7r02SYgHbfmoZNBCnaz2FaEHT5Jt2sgLfhUHUjpxmlwYi/+6ldBhJLJkURvD411BlDesAsWfI1oSdPsi7Nn3qjmPSp02Ny1muW+VasvR5W2T1osgqQM6rlGoFzzQji6fNQQ2WYFajKkc3/AI2a9RFY8he7xE2vTDL6upcOsfftU8k010PjiBl7/dXUDs2Q2R14NRXhCOrXefO+dRhOpyGpl3Bt7/fTyJEJ8+CzWwPnaomWIdQAtimVt/Om13RWcknfa5qD+AfcwO0SFx+sV39ALKCRwSOPTY8VioAHkPybSIrDyYXoKoAA8B/Rf//EACwQAAIBBAMAAQMCBwEBAAAAAAERACExUWFBcYGREEChMFAgYLHB0eHwgHD/2gAIAQEAAT8h/wDmP/S1KXgzzIrHEjFAlbpHAsbf9vpVcGkTBf8AKXXUqQJFwwLQTqxM90/nj+UeMKWrpBE1gGJf1lNIv/cqzg/6CcqBsTryMQ0QGzqa8wmMKju7S3kUB+H/AJtBkRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtQhH7ex/IN/9ZUhrKRWcCMI3CFWFY4hFJQlSPiz3FwRAF5lOmz3Hug5mE3IBV9IgXUYIm1Ua+QEFloKyIoCy4ZEcCrNfSxH62CCqWTS8AVKoBPkvzC20jMQpWNbi0DU6glfso/LhMkmUUc3IAgctAuS4YTgdFD6mop89Q+qungbbtDD6CkA79ti7mbxfNgmer6KERBjUyHVF6agxeAkHY/ceKfuvn6X/ANYrYBAO1RD9PYbBP+ZzxSqIGUgnBk4Yhfl8QT1QJzMioSr8i8O8JHtkLgo5xBDJkAyJ/hDIgAJ32+liADUw+SU/oYEYqJoKozng4gjOzwQ1Wo6H/cCv0Evkf5IUOJBKsFgAfmN1U23h1LfcJ/JCAozWgJQzukQ2CTJXRKT+F4dwOAPmIhVmAq4VyeO4EoPE8cguJx0RrK/EVNhcf55/c7/2TcFzB+X8Nj9MseQJCCempb91v/bgBIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiIYiGIhiXvt7EJgGpRoP+MCExChJPgiDbAD4+pIAk2EARyBgJRkTYi/Mq0VXVPdoIBIEWAHk1pF2XVZNevoPMiCxr5KlyTEtDQJBoCvm0IDAYIht3FRHV18O30GS1Z3PkWDzYIpKFmQETlawP9BgG7Edm37Hf+3sQ/CJEkZyENmKEU+FSCRvV7gtBRVQGQ3uFA93vkOV1a8T7ipbbgDt11AndnNWbs0UAKyaVhB8UUCjwmTFVtyq4SRIoDKle0YwMjjCEASBTmVtW4PkESAN6LcQAXVeQO+H+46ucUAI5y9juGhGcAD+8/wCxkx5UpBD/AEJ2tYmOICx9KsPzeILCesmR/wBaOHQgfyh7/wBeVgtXVY5LQSRPwEIp8L2W1A9lnQMyhYAA3J0cDrOINb8OYugHCRYSUrrmAt0gz+3QT/h4/sd/7exAMZFgCNZZhMhI9gCAA3FeExEAjI/CaFhKfMJzCXCtCRHDZAXO4S5a2rpBkWBAgL8yioeD8IXg5h/CHCShCpikGPtCAENx5VLpb4gAAEC3/ohNTEEkGz4lKBpApzYoDU/2lplgp8xrxkBHiXEE3Ajcy7iwMOFEGsFekezpv5Q5TADAl5JvBgFVADAAAAALAQCMRFdP4SjQjRosqFVr6KrD9jv/AG4QWnWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWdZ1nWEsv/AMFlKtgAqSwIIDQ/iuURXIcjEaxgFJozWArSOQXRcKhBtTrWAFWIcic/qEZozWktGsGVUgXUwNL4Kev+TzXyatlRGOy6BjkqIijYDTBxmFcEq6rL3aAYRtNgKqVX4aiRrMU5IuqyhXwukbJspkVz/wBj+TzkYBEEMGb4RLfEFxEECAoSBAEglFo4lD8IMjAIABARH2CSJhGIQIgihhIzrv4R9kiW+P8AzWFTVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVNU1TVASfYIYOTK+qER7Ap/2jtwRVDI7Bb362P0gVVYA1H1JgcJMbmWAJGCf3O/+sFb7ADRQ4G3MKQRcDygbEOZAH4MPTNHxYPn2HBV3gxLKlXQloAo8DqUzGY8J/aL2J2vpYjbtEATShPuDt8ligiCTRulSLeMylFoc8QmnovJkhcFTDjeIhXQKoEV8QeOWfDZaXtAsXr2GlyMBCwRFoCqUFjh/lBJYmlbJWnUAVXDgGC6vMPaoSlY/n2XS+WDqp24+YSEqIBSxD3EkNT+4L8eu/r9L/wCsVkVVxWSyMs2jIQDBANR3CfMkThcFyrgCAgKVgNfYHUCiOrFDaLpHIzNEVFzGd0AIIJg/y+tiFqUiOKr/ABFzYTB8AwrZgwJoMGUa1ANhInCBJ/vENMQcKDcVCPxDlTajofACPBqSC5BlVcZ6MOVmhVIGkrdTOR1NhbMPLhfWsNWtDeV2EmVHtQpb81E+cAkTAw0EAOB+5X/txZSeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyeTyXvt7H8g3/ALexPEBRtmVaikD91fwIIy4IgLEPkiGwwYxWuEEceByjZsI0F2QqxcVSj4Eu0J0dMysB6NVlcyjZ6DMk/jBw1UDq/JzoJREEo9XjDAWycUTguOfQlWfiKjyCJp2iqAZCQdjiZOgRNQ+IcrI9iSyqD6Gu53W2EYQSLJo8OVbGgYBDruEoExkqok7Okr6iZTgHkoPgDg5qHM5A3ACsqQaFIOBCnFfIsYBEmf2W/wDb2IiJcABRCdSITEKglZWQ/AMNZOZukgOjNqOKqi3BgzDOEQgABbClIJgmKBoRtCD+gB1Kr6lIDtNYkUY5gYOQElKNm6lE55OeRZErkDQQthY9wDYkD5rmACCCliWdAuIOymQNnj/aIVxWHkFcmEFACAMzQQZnx4BsjGyS1UrwrwO4QcZ7PuHWAkKF/F6wF9QkrBhwgW32XAhXHiDkLe4lfPpPXmfhL7mLSUckCyKUtdrisaaDlMAP9mpf+3sfYWeiAEPfpzvbg9PqAwASoQeYEBuwEB/DXsbQCAwsgBAfst/7dnMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZMbJjZP/AMz/AP/aAAwDAQACAAMAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUhV9DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAJMIIAAAIFMEOAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAww4gARAwDTejAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQwwwwwww84w48ww0wwwwwwwwwwwwwwwwwAAAAAAAAAAAAsXYsQCzsnQIh0wDAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUmjLMrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQwggwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAA482RABJ5J1rKhAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAQwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwAAAAAAAAAAAAkXZAFrk0voZiWnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/8QAKxEAAQIDBgYCAwEAAAAAAAAAAQARIUHwMVFhgcHREFBxkaGxYOEgcPEw/9oACAEDAQE/EOWSPQp4k4j2EBAPhruncDidGQDfoZq7b/4NXfZOsORSapbKve6PF6yZV5dGMU8QbvvdNBstEbYWR8/xNyluMnV/5CNnIBwkQmuuQLNU9oIBkRPl7dWl8EIgAp4RTtXVCAyKve6Injo3yuRKbTVBiAEyfaEWy1UHF0fDIPP9YzdWN10KlVzKffzwrxur6nsjgnDjL3shcgcNX9jJG4B6a7jshInDxToGAHxIcLAUxByQlU6KD2raq5TZe01gXJwWIq36WK9Gw9N/r+o2wqzR6ZRhn9fLP//EACsRAAECAwYFBQEBAAAAAAAAAAEAESEx8EFRYaHB0RBxgbHhUGBwkfEgQP/aAAgBAgEBPxD0y0cx3QBYMCrQGOmyLMQMNXRL/A9rf0yFZbq5Pam9CEK5bIQH1k+/EQrF1Y1SZCEEQ5XtW2TxepugIRnDINqnn6ZayEWx4TWCnwMJrD/cIF6sTV978LQakrI3umgRfTol0CDdcwyEA2NdlIlkzE4+d1hU6oIxPMVWY2Q01f3XaBengTzybdG4uA7HZQOLn7jyiGB6ZuiLR8YtBkYk1x7hOM9UIBuWXAY1HZWVduhjVSTFiOfaHJiigQtfRlbAx02P2iIEDHNE5J9oidYJ6+/HCZFWKzrl+ouxRaSX7TTWp2QMC9+3lAGA1LypIXIWVd5/EJB6gdWp1aemr+7P/8QALBABAAIBAwQBBAICAwEBAAAAAQARITFRYUGRofDxEHGBsUBQMGAgcIDRwf/aAAgBAQABPxD/AKx9NvF2ohGTSv2ofxfSGvLXqIlMm0sX7Grs8QoaI9Sar0FXLdCDka3AS8rzBAtsSllfeV+rYiTIKttC2sH/AFHtFAyPUVprmAQQHUIrW3L7EJ1qw0b69C+J2pBA1q2u8Us9cDnaKZX0zfXQKb2hyFtaW230gxwALSda0jpSxYJ3rjdtJtzx11xX/mwY4L3nPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPHPCIOp/H8A/0H9T/NZ6RZzF0ZL3gJ+FdFZbL6MZzaVnXbIH7q8GCryyNRq9zWqgdTgtQtWVHqDai5kAoIdRjpcbH9kHhVlI0dAqmLR7optZqJ0BVC3pdSTHWFZL61v9PAJc75B1QoHIoY1uhKuUBM5G6cZvBEpyQ3WzFYwYCNk4cZxKETIEK6GhsStTpFM6PEas4hYNplrLFCbMY653leCrGsNUtL0liPu6F8kTxVYyUtgElFot6axRkkwQtstvXNVh4uzXeQDQFrb6Y7QRWcoLvWFNlbW660fzdE9gaDpr9rpjKdCk6bYq2HP2szAxJdXRRLGmzT+xEpyKt/SV5+n6n+ZMlO0CgXXSOgEQXJV00w8xSWYCshaxrniLo7KRU0CIFFmAUXZawoeulGmdJaaNrbWi2XuLGOQmrGSsmCyci7uwur1L3bi8azz7QKVy6/TwCXmqosIitc+CPM+nhVyBKioWK7GkEKFAlpFQWIdbrQqR0KWWErXQd4uii9qoBMUj1CaQzTkSBZKKnRBWsqMtAy1cpf2MwHmiXJf5DWppektWoq7c7XBPh9j0lrQA7MagVxsB0XX0IMcoMH3rVIbmM6eOp0UyLLFUrmCSqsj817r8qg9QKL46/wBn+p/CEC6BEJo4Xj/j4B/j+/8AGNg7PtVQAAABgD+1/U/jsRDQ6TidpxO04nacTtOJ2nE7TidpxO04nacTtOJ2nE7TidpxO04nacTtOJ2nE7TidpxO04nacTtOJ2nE7TidpxO04nacTtOJ2nE7TidpxO04nacTtOJ2nE7TidpxO04nacTtOJ2nE7TidpxO04nacTtOJ2nE7TidpxO04nacTtOJ2nE7TidpxO04nacTtOJ2nE7TidpxO04nacTtP0v4/gEcdQoFGRedv+eehBQdaBXtKhqPbY0OMPzX1csAtXoRKaimkLt36MUHSsIGtUL/ABM1lAFNgpZ4GDwoc9oXIFZaiRoBC7UWBQXq4+lJisloWqC6DC6Askp2RyOmHeKBVAMq9IywTcoapW2pozGxMNoXIKMF0tw9rGsDcpR4X6ODisjuULX8E1RXSFbtpL6bSlWFASo1QIN2aVKikVnIFrE21jeUAqECpTBeia/0f6n8fwCKJgioIFTo2hEMZP6WgdKBSy9UwBYjt6wdMtGZThFCkysEsGxypQgYlwZMcxS0OrEvEseqAq1mZaNlt2Bd3ApAN9QQJfQwxisQQDyUIXRdZi3SWdRVEaG+mFxgztKnmoIJRzMr/UuK24cwUwVStb20RbrbEtTpKLD7bwrtck2Y11oy7t4qAkgmXkkwxeUIK0+BctaW20pcF/SmkilQym01pnOmsV6aMxtpTa84xO87QjAwsX3uEwYw14WrQTB0ftrghJHBhSCNXFryTmFBSleS3SC9quIDBbTo6UF1mLBZOIYIcgs0M1rpKhkMLgLLDGerWs337UChZZi7zUU7i6lQJgEljrRiaz138lywvwcQcEtwbsVYQK1XW9f6Sn+p/H8AhQiF0GiCa5cysp2GtspFlOZQrOgDUot64xCFwUUjYKsA5KiiyDrxrVGtCClBFC31p6XUrul2NQXTVoC3aA1YEJOttS+tSrFQsNaEOMsXayWYtu7wrXiEQQoYB+FQwWG2IujBoW0cxBmmcNRBaPUY23v/ANkULldcAkjvfVBWqLAy2uq0sLIAAgKMOlotZYNYYHxEQGuu9DNws5AQVKKA9JitAZ5RaeMln5gywVdZWlY/EezNpv3oZg9MBrZhtqX1qJLIKHQ7L8wqNMWRWtGdIpTKADuCMLC1AoDYJagigFbbdKy5gY5CkQdChzmY67J0gFiaBt/R/qfx2AbVzPW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563PW563GZdf/BbwrqbZA6r81MtcBAzepuq/wDkcGLXF6jRcfeoIPQI47a0DbPRi2H1QiFYC50voyyrAHR0IV3ZnTnJAJdWi9RKXHaK6f8AE3SsoOpnQZsUZwwArFwGzATLAglaWW03/p6J58FiNg4pfxA+DJlplgLrTg3LCRwO84bbOhbk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) 将yolov9-c-converted.onnx模型上传到Atlas 500 Pro服务器上,在ascend-yolov9-sample-master/model目录下执行如下命令进行模型转换: ```bash atc --model=yolov9-c-converted.onnx --framework=5 --output=yolov9-c-converted --input_shape="images:1,3,640,640" --soc_version=Ascend310P3 --insert_op_conf=aipp.cfg ``` 其中的: --soc_version=Ascend310P3可以通过npu-smi info命令进行查看,我这里打印的是 310P3 则,--soc_version 为 Ascend前缀加上310P3,即Ascend310P3。 --input_shape="images:1,3,640,640" 表示NCHW,即批处理为1,通道为3,图片大小为640x640 。 --insert_op_conf=aipp.cfg 中的aipp.cfg来自官网[sampleYOLOV7](https://gitee.com/ascend/samples/tree/master/inference/modelInference/sampleYOLOV7)示例。 #### 使用说明 1. SSH登录服务器,切换到root用户 2. 进入Ascend YOLOV9 Sample项目目录,如果是压缩包,可以用unzip 进行解压: ```bash ascend-yolov9-sample-master.zip -d ./kztech cd ascend-yolov9-sample-master/src ``` 模型转化按上述方式进行。 3. 编译执行 ```bash # src目录下 cmake . make #如果正确执行,则会在../out目录中生成 sampleYOLOV9 可执行文件,在src目录中运行示例 ../out/sampleYOLOV9 #如果报如下错误: ../out/sampleYOLOV9: error while loading shared libraries: libswresample.so.3: cannot open shared object file: No such file or directory 则尝试设置如下环境变量后重试: export LD_LIBRARY_PATH=/usr/local/Ascend/thirdpart/aarch64/lib:$LD_LIBRARY_PATH #正确执行后,会在当前目录中生成out_0.jpg文件 ``` 执行成功,控制台打印如下信息: ```bash root@atlas500ai:/home/kztech/ascend-yolov9-sample-master/src# ../out/sampleYOLOV9 [INFO] Acl init ok [INFO] Open device 0 ok [INFO] Use default context currently [INFO] dvpp init resource ok [INFO] Load model ../model/yolov9-c-converted.om success [INFO] Create model description success [INFO] Create model(../model/yolov9-c-converted.om) output success [INFO] Init model ../model/yolov9-c-converted.om success [INFO] filter boxes by confidence threshold > 0.350000 success, boxes size is 10 [INFO] filter boxes by NMS threshold > 0.450000 success, result size is 1 [INFO] object detect [0.954102:dog] success [INFO] Inference elapsed time : 0.049535 s , fps is 20.187815 [INFO] Unload model ../model/yolov9-c-converted.om success [INFO] destroy context ok [INFO] Reset device 0 ok [INFO] Finalize acl ok ``` out_0.jpg输出结果如下: ![out_0.jpg](./src/out_0.jpg) #### 参与贡献 1. Fork 本仓库 2. 提交代码 3. 新建 Pull Request