91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

在英特爾酷睿Ultra處理器上優(yōu)化和部署YOLOv8模型

英特爾物聯(lián)網(wǎng) ? 來源:英特爾物聯(lián)網(wǎng) ? 2024-05-30 17:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

英特爾 酷睿 Ultra處理器是英特爾公司推出的一個高端處理器品牌,其第一代產(chǎn)品基于Meteor Lake架構(gòu),使用Intel 4制程,單顆芯片封裝CPU、GPU(Intel Arc Graphics)和 NPU(Intel AI Boost),具有卓越的AI性能。

本文將詳細介紹使用OpenVINO工具套件在英特爾 酷睿Ultra處理器上實現(xiàn)對YOLOv8模型的INT8量化和部署。

1

第一步:環(huán)境搭建

首先,請下載并安裝最新版的NPU和顯卡驅(qū)動:

NPU 驅(qū)動:https://www.intel.cn/content/www/cn/zh/download/794734/intel-npu-driver-windows.html

顯卡驅(qū)動:

https://www.intel.cn/content/www/cn/zh/download/785597/intel-arc-iris-xe-graphics-windows.html

a46b2724-1e63-11ef-91d2-92fbcf53809c.png

然后,請下載并安裝Anaconda,然后創(chuàng)建并激活名為npu的虛擬環(huán)境:(下載鏈接:https://www.anaconda.com/download)

conda create -n npu python=3.11    #創(chuàng)建虛擬環(huán)境
conda activate npu           #激活虛擬環(huán)境
python -m pip install --upgrade pip  #升級pip到最新版本

最后,請安裝openvino、nncf、onnx和ultralytics:

pip install openvino nncf onnx ultralytics

a479fd62-1e63-11ef-91d2-92fbcf53809c.png

2

第二步:導出yolov8s模型并實現(xiàn)INT8量化

使用yolo命令導出yolov8s.onnx模型:

yolo export model=yolov8s.pt format=onnx

使用ovc命令導出OpenVINO格式,F(xiàn)P16精度的yolov8s模型

ovc yolov8s.onnx

a486298e-1e63-11ef-91d2-92fbcf53809c.png

使用benchmark_app程序依次測試FP16精度的yolov8s模型在CPU,GPU和NPU上的AI推理性能,結(jié)果如下圖所示:

benchmark_app -m yolov8s.xml -d CPU  #此處依次換為GPU,NPU

a49247c8-1e63-11ef-91d2-92fbcf53809c.png

用NNCF實現(xiàn)yolov8s模型的INT8量化

NNCF全稱Neural Network Compression Framework,是一個實現(xiàn)神經(jīng)網(wǎng)絡(luò)訓練后量化(post-training quantization)和訓練期間壓縮(Training-Time Compression)的開源工具包,如下圖所示,通過對神經(jīng)網(wǎng)絡(luò)權(quán)重的量化和壓縮以最低精度損失的方式實現(xiàn)推理計算的優(yōu)化和加速。

a49e1fa8-1e63-11ef-91d2-92fbcf53809c.png

NNCF提供的量化和壓縮算法

在上述量化和壓縮算法中,訓練后INT8量化(Post-Training INT8 Quantization)是在工程實踐中應用最廣泛的,它無需重新訓練或微調(diào)模型,就能實現(xiàn)模型權(quán)重的INT8量化,在獲得顯著的性能提升的同時,僅有極低的精度損失,而且使用簡便。

用NNCF實現(xiàn)YOLOv8s模型INT8量化的范例代碼yolov8_PTQ_INT8.py,如下所示:

import torch, nncf
import openvino as ov 
from torchvision import datasets, transforms
# Specify the path of model and dataset
model_dir = r"yolov8s.xml"
dataset = r"val_dataset"
# Instantiate your uncompressed model
model = ov.Core().read_model(model_dir)
# Provide validation part of the dataset to collect statistics needed for the compression algorithm
val_dataset = datasets.ImageFolder(dataset, transform=transforms.Compose([transforms.ToTensor(),transforms.Resize([640, 640])]))
dataset_loader = torch.utils.data.DataLoader(val_dataset, batch_size=1)
# Step 1: Initialize transformation function
def transform_fn(data_item):
  images, _ = data_item
  return images.numpy()
# Step 2: Initialize NNCF Dataset
calibration_dataset = nncf.Dataset(dataset_loader, transform_fn)
# Step 3: Run the quantization pipeline
quantized_model = nncf.quantize(model, calibration_dataset)
# Step 4: Save the INT8 quantized model
ov.save_model(quantized_model, "yolov8s_int8.xml")

運行yolov8_PTQ_INT8.py,執(zhí)行結(jié)果如下所示:

a4aab6c8-1e63-11ef-91d2-92fbcf53809c.png

使用benchmark_app程序依次測試INT8精度的yolov8s模型在CPU,GPU和NPU上的AI推理性能,結(jié)果如下圖所示:

benchmark_app -m yolov8s_int8.xml -d CPU  #此處依次換為GPU,NPU

a4b31c96-1e63-11ef-91d2-92fbcf53809c.png

從上圖可以看出,yolov8s模型經(jīng)過INT8量化后,相比FP16精度模型,無論在Latency還是Throughput上,都有明顯提升。

3

第三步:編寫YOLOv8推理程序

yolov8目標檢測模型使用letterbox算法對輸入圖像進行保持原始寬高比的放縮,據(jù)此,yolov8目標檢測模型的預處理函數(shù)實現(xiàn),如下所示:

from ultralytics.data.augment import LetterBox
# 實例化LetterBox
letterbox = LetterBox()
# 預處理函數(shù)
def preprocess_image(image: np.ndarray, target_size=(640, 640))->np.ndarray:
  image = letterbox(image)  #YOLOv8用letterbox按保持圖像原始寬高比方式放縮圖像
  blob = cv2.dnn.blobFromImage(image, scalefactor=1 / 255, size=target_size, swapRB=True)
  return blob

yolov8目標檢測模型的后處理函數(shù)首先用非極大值抑制non_max_suppression()算法去除冗余候選框,然后根據(jù)letterbox的放縮方式,用scale_boxes()函數(shù)將檢測框的坐標點還原到原始圖像上,如下所示:

# 后處理函數(shù): 從推理結(jié)果[1,84,8400]的張量中拆解出:檢測框,置信度和類別
def postprocess(pred_boxes, input_hw, orig_img, min_conf_threshold = 0.25, 
         nms_iou_threshold = 0.7, agnosting_nms = False, max_detections = 300):
  # 用非極大值抑制non_max_suppression()算法去除冗余候選框
  nms_kwargs = {"agnostic": agnosting_nms, "max_det":max_detections}
  pred = ops.non_max_suppression(
    torch.from_numpy(pred_boxes),
    min_conf_threshold,
    nms_iou_threshold,
    nc=80,
    **nms_kwargs
  )[0]
  # 用scale_boxes()函數(shù)將檢測框的坐標點還原到原始圖像上
  shape = orig_img.shape
  pred[:, :4] = ops.scale_boxes(input_hw, pred[:, :4], shape).round()
  
  return pred

完整代碼詳細參見:yolov8_infer_ov.py,其運行結(jié)果如下所示:

a4be35fe-1e63-11ef-91d2-92fbcf53809c.png

4

總結(jié)

英特爾 酷睿 Ultra處理器內(nèi)置了CPU、GPU和NPU,相比之前,無論是能耗比、顯卡性能還是AI性能,都有顯著提升;通過OpenVINO和NNCF,可以方便快捷實現(xiàn)AI模型的優(yōu)化和INT量化,以及本地化部署,獲得非常不錯的端側(cè)AI推理性能。



審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    20250

    瀏覽量

    252208
  • 英特爾
    +關(guān)注

    關(guān)注

    61

    文章

    10301

    瀏覽量

    180416
  • GPU芯片
    +關(guān)注

    關(guān)注

    1

    文章

    307

    瀏覽量

    6516
  • OpenVINO
    +關(guān)注

    關(guān)注

    0

    文章

    118

    瀏覽量

    767

原文標題:在英特爾? 酷睿? Ultra處理器上優(yōu)化和部署YOLOv8模型 | 開發(fā)者實戰(zhàn)

文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    相當完美的新一代移動級處理器!英特爾Ultra X9 388H首測

    2026年1月26日,英特爾正式解禁了 Panther Lake ,也就是英特爾Ultra X處理器
    的頭像 發(fā)表于 01-30 13:42 ?1406次閱讀
    相當完美的新一代移動級<b class='flag-5'>處理器</b>!<b class='flag-5'>英特爾</b><b class='flag-5'>酷</b><b class='flag-5'>睿</b><b class='flag-5'>Ultra</b> X9 388H首測

    【NPU實戰(zhàn)】迅為RK3588玩轉(zhuǎn)YOLOv8:目標檢測與語義分割一站式部署指南

    【NPU實戰(zhàn)】迅為RK3588玩轉(zhuǎn)YOLOv8:目標檢測與語義分割一站式部署指南
    的頭像 發(fā)表于 12-12 14:30 ?6140次閱讀
    【NPU實戰(zhàn)】<b class='flag-5'>在</b>迅為RK3588<b class='flag-5'>上</b>玩轉(zhuǎn)<b class='flag-5'>YOLOv8</b>:目標檢測與語義分割一站式<b class='flag-5'>部署</b>指南

    大顯存突破!解鎖120B MoE大模型,英特爾Ultra 285H拓展AI新應用

    電子發(fā)燒友原創(chuàng) 章鷹 11月20日,2025英特爾技術(shù)創(chuàng)新與產(chǎn)業(yè)生態(tài)大會上,英特爾中國技術(shù)部總經(jīng)理高宇宣布,今天我們帶來兩款重要的產(chǎn)品,英特爾??
    的頭像 發(fā)表于 11-23 08:00 ?9488次閱讀
    大顯存突破!解鎖120B MoE大<b class='flag-5'>模型</b>,<b class='flag-5'>英特爾</b><b class='flag-5'>酷</b><b class='flag-5'>睿</b><b class='flag-5'>Ultra</b> 285H拓展AI新應用

    英特爾舉辦行業(yè)解決方案大會,共同打造機器人“芯”動脈

    11月19日,2025英特爾行業(yè)解決方案大會上,英特爾展示了基于英特爾? ?
    的頭像 發(fā)表于 11-19 21:51 ?6737次閱讀
    <b class='flag-5'>英特爾</b>舉辦行業(yè)解決方案大會,共同打造機器人“芯”動脈

    使用ROCm?優(yōu)化部署YOLOv8模型

    ://github.com/ultralytics/ultralytics/tree/main YOLOv8模型的卓越性能使其多個領(lǐng)域具有廣泛的應用前景,如自動駕
    的頭像 發(fā)表于 09-24 18:32 ?852次閱讀
    使用ROCm?<b class='flag-5'>優(yōu)化</b>并<b class='flag-5'>部署</b><b class='flag-5'>YOLOv8</b><b class='flag-5'>模型</b>

    求助,關(guān)于K230部署yolov8時遇到問題求解

    使用yolov8訓練出來了一個十個類別的模型并且按照要求轉(zhuǎn)換成了.kmodel模型,部署到K230時 使用yolo大作戰(zhàn)里面的代碼提示我l
    發(fā)表于 08-12 07:26

    硬件與應用同頻共振,英特爾Day 0適配騰訊開源混元大模型

    今日,騰訊正式發(fā)布新一代混元開源大語言模型英特爾憑借人工智能領(lǐng)域的全棧技術(shù)布局,現(xiàn)已在英特爾?
    的頭像 發(fā)表于 08-07 14:42 ?1365次閱讀
    硬件與應用同頻共振,<b class='flag-5'>英特爾</b>Day 0適配騰訊開源混元大<b class='flag-5'>模型</b>

    RV1126 yolov8訓練部署教程

    YOLOv8 是 ultralytics 公司 2023 年 1月 10 號開源的基于YOLOV5進行更新的 下一個重大更新版本,目前支持圖像分類、物體檢測和實例分割任務(wù),鑒于Yolov
    的頭像 發(fā)表于 04-16 14:53 ?1454次閱讀
    RV1126 <b class='flag-5'>yolov8</b>訓練<b class='flag-5'>部署</b>教程

    英特爾Ultra 200HX游戲本發(fā)布

    近日,英特爾舉辦了“英特爾 Ultra 200HX新品分享會”,來自10家OEM的20款高性能筆記本集中亮相,為廣大游戲發(fā)燒友和高性能
    的頭像 發(fā)表于 04-09 09:24 ?1219次閱讀

    RK3576 yolov8訓練部署教程

    本章展示yolov8模型EASY EAI Orin nano的部署過程。
    的頭像 發(fā)表于 04-02 16:04 ?1861次閱讀
    RK3576 <b class='flag-5'>yolov8</b>訓練<b class='flag-5'>部署</b>教程

    英特爾Ultra AI PC上部署多種圖像生成模型

    全新英特爾Ultra 200V系列處理器對比上代Meteor Lake,升級了模塊化結(jié)構(gòu)、封裝工藝,采用全新性能核與能效核、
    的頭像 發(fā)表于 04-02 15:47 ?1484次閱讀
    <b class='flag-5'>在</b><b class='flag-5'>英特爾</b><b class='flag-5'>酷</b><b class='flag-5'>睿</b><b class='flag-5'>Ultra</b> AI PC上<b class='flag-5'>部署</b>多種圖像生成<b class='flag-5'>模型</b>

    英特爾Ultra處理器助力亦心AI閃繪本地功能上線

    英特爾Ultra處理器支持的AI實時繪畫軟件“亦心AI閃繪”本地功能已正式上線,能夠基于本地大模型
    的頭像 發(fā)表于 04-02 15:27 ?1245次閱讀

    微星攜英特爾為玩家打造非凡游戲體驗,兩款泰坦家族新品均搭載全新英特爾Ultra HX處理器

    3月29日,英特爾Ultra 200HX新品分享會上,搭載該處理器的高性能筆記本齊聚一堂,
    的頭像 發(fā)表于 04-02 09:37 ?1311次閱讀

    英特爾發(fā)布最強大的商用AI PC產(chǎn)品陣容

    處理器。在臺式機和移動設(shè)備形態(tài)中,該產(chǎn)品組合為全球企業(yè)提供包含計算性能、能效、連接性、安全性和可管理性的全面解決方案。 如今是PC更新?lián)Q代的關(guān)鍵節(jié)點,憑借英特爾??
    的頭像 發(fā)表于 03-08 09:28 ?1180次閱讀

    為什么Ubuntu20.04使用YOLOv3比Yocto操作系統(tǒng)的推理快?

    20.04 和 47.3 FPS 中 Yocto(IOTG Yocto BSP,標簽:發(fā)行-74_tgl_u_mr3)中使用英特爾? ? i7-1185G7E
    發(fā)表于 03-05 06:48