設(shè)置
  • 日夜間
    隨系統(tǒng)
    淺色
    深色
  • 主題色

超越蘋果 M1,OpenCV 4.7 在華為昇騰架構(gòu)下僅 3.29ms 完成 ResNet50 推理

2023/1/18 8:30:06 來源:IT之家 作者:汪淼 責編:汪淼

IT之家 1 月 18 日消息,英特爾開源計算機視覺庫 OpenCV 4.7 于去年 12 月正式發(fā)布。新版本帶來了全新的 ONNX 層,大大提高了 DNN 代碼的卷積性能,還為 DNN 模塊提供了華為昇騰 CANN 后端支持。

根據(jù) OpenCV 中國團隊的最新測試,基于昇騰異構(gòu)計算架構(gòu) CANN 的加速能力,用 OpenCV Zoo 中的 PP-ResNet50、MobileNet 和 YOLOX 對 CANN 后端進行了測試,發(fā)現(xiàn)三個模型在 CANN 后端下分別達到了 3.29ms,1.21ms,12.80ms 的優(yōu)異結(jié)果。

同時,CANN 后端的推理結(jié)果也與默認 CPU 后端的基本保持一致。使用 OpenCV,用戶只需下面 7 行 Python 代碼,無需學習 CANN 的 API,就可以簡潔地調(diào)用起昇騰 AI 處理器,實現(xiàn)神經(jīng)網(wǎng)絡(luò)加速推理(核心為第三、四行代碼,其余為常見模型推理邏輯代碼):

import cv2 as cv
net = cv.dnn.readNet("/path/to/model.onnx")
net.setPreferableBackend(cv.dnn.DNN_BACKEND_CANN)
net.setPreferableTarget(cv.dnn.DNN_TARGET_NPU)
input = cv.imread("/path/to/image.jpg")
net.setInput(cv.dnn.blobFromImage(input))
out = net.forward()
▲ 使用 CANN 后端推理的示例代碼

南方科技大學計算機系的于仕琪老師表示,即使 OpenCV 針對 ARM CPU 進行了 winograd conv 等優(yōu)化,在蘋果標桿 CPU M1 上完成 ResNet50 推理都要跑 20ms 以上,而華為昇騰僅用了 3.29ms。

IT之家了解到,昇騰 CANN(Compute Architecture for Neural Networks)是華為針對 AI 場景推出的異構(gòu)計算架構(gòu)。昇騰 CANN 支持昇思 MindSpore,OpenCV DNN,飛槳 Paddle、PyTorch、TensorFlow 等神經(jīng)網(wǎng)絡(luò)推理和訓練框架,并兼容多種底層硬件設(shè)備。

圖片

廣告聲明:文內(nèi)含有的對外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。

相關(guān)文章

關(guān)鍵詞:昇騰,OpenCV

軟媒旗下網(wǎng)站: IT之家 最會買 - 返利返現(xiàn)優(yōu)惠券 iPhone之家 Win7之家 Win10之家 Win11之家

軟媒旗下軟件: 軟媒手機APP應(yīng)用 魔方 最會買 要知