中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁 > 智能計算 > 設計應用 > 英特爾開發(fā)板部署 YOLOv5:完成透明物體目標檢測

        英特爾開發(fā)板部署 YOLOv5:完成透明物體目標檢測

        作者:楊雪峰 英特爾創(chuàng)新大使 時間:2025-02-10 來源:OpenVINO 中文社區(qū) 收藏

        Intel 的哪吒(Nezha)是一款專為邊緣AI和物聯(lián)網(wǎng)應用設計的高性能計算平臺,搭載了Intel? N97處理器、內(nèi)置 Intel? UHD Graphics GPU,并提供高達8GB LPDDR5內(nèi)存與32GB至64GB eMMC存儲選項。它支持 Windows 和 Linux 操作系統(tǒng),具備豐富的接口如千兆以太網(wǎng)、HDMI 1.4、USB 3.0/2.0 以及 GPIO 等,兼容樹莓派擴展板。

        本文引用地址:http://www.antipu.com.cn/article/202502/466786.htm

        此外,該套件采用無風扇設計并集成了 TPM 2.0 安全模塊,適用于自動化、物聯(lián)網(wǎng)網(wǎng)關、數(shù)字標牌及機器人等多種場景,結合 OpenVINO? 工具包可加速深度學習模型推理,便于開發(fā)者快速構建高效且安全的解決方案。

        YOLOv5 簡介

        YOLOv5 是 YOLO(You Only Look Once)系列中的一種實時對象檢測系統(tǒng),它以速度快、準確性高而聞名。對于開發(fā)者來說,YOLOv5 提供了一種簡單易用的方法來創(chuàng)建高效的對象檢測模型。官方 GitHub 倉庫提供了豐富的資源和示例代碼,可以幫助用戶快速入門并開始構建自己的檢測器。

        圖片

        GitHub: https://github.com/ultralytics/yolov5

        哪吒套件部署 YOLOv5

        YOLOv5 以其出色的實時性能和高準確性而受到廣泛歡迎,并且官方提供了詳盡的文檔和支持,與其他設備相同,在哪吒套件上部署 YOLOv5 進行透明物體時,用戶仍需注意一些關鍵步驟。

        首先,確保開發(fā)環(huán)境已正確配置,包括安裝所有必要的依賴項如 Python、PyTorch 等。接著,準備訓練數(shù)據(jù)集是至關重要的一步,這通常涉及將圖像及其標注信息按照特定格式整理好。對于透明物體檢測這樣的特定任務,可能還需要對模型做一些微調(diào)以優(yōu)化其識別能力。整個過程雖然需要一定的技術背景支持,但借助于豐富的在線資源和社區(qū)幫助,即使是初次嘗試者也能順利完成部署。

        下面的步驟可以讓你在搭載在哪吒套件的 windows 平臺快速上手訓練自己的模型。

        搭配環(huán)境與安裝依賴

        在 win+R 中打開 cmd,輸入以下代碼創(chuàng)建并進入一個名為 yolov5s, python3.8 版本的虛擬環(huán)境:

        conda create -n yolov5s python=3.8
        conda activate yolov5s

        克隆倉庫:從官方 GitHub 倉庫克隆 YOLOv5 項目到本地機器。

        git clone https://github.com/ultralytics/yolov5 
        cd yolov5

        然后輸入以下代碼,即可自動下載安裝所有需要的庫。

        pip install -r requirements.txt

        如果下載速度過慢,可能會導致報錯,可以復制下面代碼(清華源)到cmd中運行,然后在重新進行上面下載庫的步驟:

        conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ 
        conda config --ad
        conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/ 
        conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/ 
        conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/ 
        conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/

        Appendix

        1.數(shù)據(jù)集下載

        Trans10K 是一個公開的大規(guī)模透明物體分割數(shù)據(jù)集,包含10,428張真實場景圖像,每張都經(jīng)過手動標注。它提供了多樣化的透明物體樣本,如杯子、瓶子和窗戶等。數(shù)據(jù)集分為訓練(5,000張)、驗證(1,000張)和測試(4,428張)三部分,并進一步細分為簡單和困難類別,整個數(shù)據(jù)集大小約為10.6GB。

        可以使用相應的 SDK 進行下載:

        pip install openxlab #安裝
        pip install -U openxlab #版本升級
        import openxlab
        openxlab.login(ak=<Access Key>, sk=<Secret Key>) #進行登錄,輸入對應的AK/SK
        from openxlab.dataset import info
        info(dataset_repo='OpenDataLab/Trans10K') #數(shù)據(jù)集信息及文件列表查看
        from openxlab.dataset import get
        get(dataset_repo='OpenDataLab/Trans10K', target_path='/path/to/local/folder/')  # 數(shù)據(jù)集下載
        from openxlab.dataset import download
        download(dataset_repo='OpenDataLab/Trans10K',source_path='/README.md', target_path='/path/to/local/folder') #數(shù)據(jù)集文件下載

        下載后解壓即可。

        2.格式化數(shù)據(jù)

        Trans10K 數(shù)據(jù)集通常包含圖像及其對應的標注文件。為了與 YOLOv5 兼容,您需要確保每個圖像都有一個對應的.txt文件,其中包含目標框的位置信息。格式如下:

        class_index x_center y_center width height

        所有坐標都是相對于圖像尺寸的歸一化值(0.0到1.0之間)。

        然而 Trans10K 的標注格式不是 YOLO 格式。

        圖片

        這就需要編寫一個腳本來將標注轉(zhuǎn)換為 YOLO 格式。轉(zhuǎn)換腳本如下:

            import cv2
            import numpy as np    
            import os
            from pathlib import Path    
            path_to_masks = 'path/to/mask'    
            path_to_save_yolo_labels = ' path/to/mask/label'    
            def convert_mask_to_bbox(mask_path, save_path):
                # 創(chuàng)建保存路徑        
                Path(save_path).mkdir(parents=True, exist_ok=True)
                
                # 遍歷 mask 文件
                 for mask_file in os.listdir(mask_path):
                    if mask_file.endswith(".png"):  # mask 以 .png 格式保存
                        mask = cv2.imread(os.path.join(mask_path, mask_file), cv2.IMREAD_GRAYSCALE)
                        contours, _ = cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
                        
                        # 獲取文件名,無擴展名
                        filename = os.path.splitext(mask_file)[0]                
                        bbox_file = open(os.path.join(save_path, filename + ".txt"), 'w')
                        
                        for contour in contours:
                            x, y, w, h = cv2.boundingRect(contour)                    
                            # YOLO 格式:class x_center y_center width height (歸一化到[0,1]范圍)                    
                            img_height, img_width = mask.shape                    
                            x_center = (x + w / 2) / img_width                    
                            y_center = (y + h / 2) / img_height                    
                            width = w / img_width                    
                            height = h / img_height                    
                            # 假設所有目標都是同一類 (class = 0)                    
                            bbox_file.write(f"0 {x_center} {y_center} {width} {height}n")                                
                            bbox_file.close()
            # 使用示例    
            convert_mask_to_bbox(path_to_masks, path_to_save_yolo_labels)

        3.組織文件結構

        按照 YOLOv5 的要求組織文件結構。需要以下目錄結構:

        /path/to/dataset/
        
        ├── images/│   
        ├── train/│   
        └── val/
        └── labels/    
        ├── train/    
        └── val/

        images/ 目錄下存放圖像文件。

        labels/ 目錄下存放相應的標注文件(.txt)。

        4.配置data.yaml文件

        編輯 YOLOv5 項目中的 data.yaml 文件或者新建一個 trans10k_data.yaml,指定數(shù)據(jù)集路徑及類別信息,如下所示。

        train: /path/to/dataset/images/train  # 訓練圖片路徑
        val: /path/to/dataset/images/val      # 驗證圖片路徑
        nc: 1  # 類別數(shù)量,假設只有一個類別
        names: ['transparent_object']  # 類別名稱列表

        啟動訓練

        使用以下命令啟動訓練過程。您可以根據(jù)硬件性能調(diào)整圖片大小(--img)、批量大小(--batch)等選項。

        python train.py --img 640 --batch 16 --epochs 50 --data data/trans10k_data.yaml --cfg models/yolov5s.yaml --weights yolov5s.pt

        訓練完成后,就得到了一個能夠檢測透明目標的模型。

        圖片

        總結

        通過遵循上述步驟,即使是初學者也能迅速掌握 YOLOv5 的訓練方法并在 Intel 的哪吒(Nezha)上成功運行。哪吒套件憑借其高性能的 Intel? N97 處理器、內(nèi)置的 Intel? UHD Graphics GPU 以及高達8GB的 LPDDR5 內(nèi)存,為實時提供了強大的計算支持。

        借助 YOLOv5 的強大功能以及個性化的 Trans10K 數(shù)據(jù)集,用戶能夠快速開發(fā)出針對透明物體的高度精確的對象檢測模型。哪吒套件的無風扇設計和豐富的接口選項比如千兆以太網(wǎng)、HDMI 1.4、USB 3.0/2.0等,使其非常適合部署在各種邊緣計算環(huán)境中,無論是智能監(jiān)控、工業(yè)自動化還是其他物聯(lián)網(wǎng)應用,都能提供可靠且高效的解決方案。



        評論


        相關推薦

        技術專區(qū)

        關閉