文档
注册

Torchvision Adapter

功能简介

Torchvision Adapter提供Torchvision库在NPU设备上的适配,增加了对Torchvision所提供的常用算子的支持,提供基于cv2和基于昇腾NPU的图像处理加速后端以加速图像处理。

安装方法

当前昇腾适配的版本要求Torchvision 0.9.1,PyTorch版本为1.8.1。

  1. 编译安装Torchvision。
    git clone https://github.com/pytorch/vision.git  
    cd vision  
    git checkout v0.9.1  
    # 编包  
    python setup.py bdist_wheel  
    # 安装  
    cd dist  
    pip3 install torchvision-0.9.*.whl    #不同环境下编译出的安装包名称有区别,请用户根据实际情况填写安装包名

    即使用户在安装PyTorch时已经通过pip方式安装了Torchvision包,此处也需要进行编译安装Torchvision的步骤。

  2. 编译安装Torchvision Adapter插件。
    # 下载master分支代码,进入插件根目录  
    git clone -b master https://gitee.com/ascend/vision.git vision_npu  
    cd vision_npu  
    git checkout v0.9.1-dev  
    # 安装依赖库  
    pip3 install -r requirement.txt  
    # 编包  
    python setup.py bdist_wheel  
    # 安装  
    cd dist  
    pip install torchvision_npu-0.9.*.whl    #不同环境下编译出的安装包名称有区别,请用户根据实际情况填写安装包名

使用方法

  • 调用算子。

    以Torchvision的torchvision.ops.nms算子为例。

    • 原生调用方式如下。
      # 算子的cuda/cpu版本调用 
      import torch 
      import torchvision   
      ... 
      torchvision.ops.nms(boxes, scores, iou_threshold) # boxes 和 scores 为 CPU/CUDA Tensor
    • 安装Torchvision Adapter插件之后,只需增加import torchvision_npu则可按照原生方式调用Torchvision算子。
      # 算子的npu版本调用 
      import torch 
      import torch_npu 
      import torchvision 
      import torchvision_npu   
      ... 
      torchvision.ops.nms(boxes, scores, iou_threshold) # boxes 和 scores 为 NPU Tensor

      Torchvision算子在NPU上支持列表如下。

      表1 Torchvision算子在NPU上支持表

      算子

      是否支持

      nms

      deform_conv2d

      ps_roi_align

      ps_roi_pool

      roi_align

      roi_pool

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词