Code Monkey home page Code Monkey logo

ascenddrivingassistance's Introduction

本样例为大家学习昇腾软件栈提供参考,非商业目的!

本样例适配3.3.0及以上版本,支持产品为Atlas200DK、Atlas300(ai1s)。

本README只提供命令行方式运行样例的指导,如需在Mindstudio下运行样例,请参考Mindstudio运行视频样例wiki

YOLOV4_coco_detection_car_video样例

功能:使用yolov4

模型对输入视频进行预测推理,并将结果打印到输出视频上。

样例输入:原始视频文件。

样例输出:带推理结果的视频文件。

前提条件

部署此Sample前,需要准备好以下环境:

软件准备

  1. 获取源码包。

    可以使用以下两种方式下载,请选择其中一种进行源码准备。

    • 命令行方式下载(下载时间较长,但步骤简单)。

      开发环境,非root用户命令行中执行以下命令下载源码仓。

      cd $HOME

      git clone https://gitee.com/ascend/samples.git

    • 压缩包方式下载(下载时间较短,但步骤稍微复杂)。

      1. samples仓右上角选择 克隆/下载 下拉框并选择 下载ZIP

      2. 将ZIP包上传到开发环境中的普通用户家目录中,例如 $HOME/ascend-samples-master.zip

      3. 开发环境中,执行以下命令,解压zip包。

        cd $HOME

        unzip ascend-samples-master.zip

  2. 获取此应用中所需要的原始网络模型。

    参考下表获取此应用中所用到的模型,并将其存放到开发环境普通用户下的工程目录:
    cd $HOME/samples/python/level2_simple_inference/2_object_detection/YOLOV4_coco_detection_car_video/model

    模型名称 模型说明 模型下载路径
    yolov4 基于onnx-YOLOV4的目标检测模型。 请参考https://www.hiascend.com/zh/software/modelzoo/detail/1/abb7e641964c459398173248aa5353bc 下载原始模型。

    说明:

    • modelzoo中提供了转换好的om模型,但此模型不匹配当前样例,所以需要下载原始模型后重新进行模型转换。
      将下载的模型名字更改为工程需要的名字
  3. 将原始模型转换为Davinci模型。

    注:请确认环境变量已经在环境准备和依赖安装中配置完成

    1. 设置LD_LIBRARY_PATH环境变量。

      由于LD_LIBRARY_PATH环境变量在转使用atc工具和运行样例时会产生冲突,所以需要在命令行单独设置此环境变量,方便修改。

      export install_path=$HOME/Ascend/ascend-toolkit/latest

      export LD_LIBRARY_PATH=\${install_path}/atc/lib64

    2. 执行以下atc命令进行模型转换。

      atc --model=./yolov4_dynamic_bs.onnx --framework=5 --output=yolov4_bs1 --input_format=NCHW --soc_version=Ascend310 --input_shape="input:1,3,608,608" --out_nodes="Conv_434:0;Conv_418:0;Conv_402:0"

  4. 获取样例需要的测试视频。

    执行以下命令,进入样例的data文件夹中,下载对应的测试视频。

    cd $HOME/samples/python/level2_simple_inference/2_object_detection/YOLOV4_coco_detection_car_video/data

    wget https://c7xcode.obs.cn-north-4.myhuaweicloud.com/models/YOLOV4_coco_detection_car_video/test_video/test.mp4

样例运行

注:开发环境与运行环境合一部署,请跳过步骤1,直接执行步骤2即可。

  1. 执行以下命令,将开发环境的 YOLOV4_coco_detection_car_video 目录上传到运行环境中,例如 /home/HwHiAiUser,并以HwHiAiUser(运行用户)登录运行环境(Host)。

    scp -r $HOME/samples/python/level2_simple_inference/2_object_detection/YOLOV4_coco_detection_car_video [email protected]:/home/HwHiAiUser

    ssh [email protected]

    说明:

    • xxx.xxx.xxx.xxx为运行环境ip,200DK在USB连接时一般为192.168.1.2,300(ai1s)为对应的公网ip。
  2. 运行可执行文件。

    • 如果是开发环境与运行环境合一部署,执行以下命令,设置运行环境变量,并切换目录。

      export LD_LIBRARY_PATH=

      source ~/.bashrc

      cd $HOME/samples/python/level2_simple_inference/2_object_detection/YOLOV4_coco_detection_car_video/src

    • 如果是开发环境与运行环境分离部署,执行以下命令切换目录。

      cd $HOME/YOLOV4_coco_detection_car_video/src

    切换目录后,执行以下命令运行样例。

    python3.6 yolov4.py ../data/test.mp4

查看结果

运行完成后,结果视频保存在out目录下。

ascenddrivingassistance's People

Contributors

mikehhq avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.