算豐TDL SDK 是一款集成算法開發包,提供了便捷的編程接口,使開發者們能夠更快、高效地將各種智能技術應用于自己的產品和服務中。無論開發者是否是智算領域的專家,有了這個SDK作為助手,都能輕松構建智能應用。
開發者們可以利用這一簡單易用的工具,把更多精力放在算法模型、應用創新和優化上,而不必耗費大量時間去處理模型部署相關的問題。今天,就讓我們來領略它是如何助力開發者來構建指南應用。
一、TDL SDK:智能開發的得力助手
算豐推出的TDL SDK,支持眾多常用算法,提供了統一友好的編程接口及詳盡的配套開發文檔。這意味著開發者們即便是初次嘗試,也能迅速掌握并開始高效的開發工作,大大縮減了開發者在應用程序開發上所需的時間。
下圖是TDL SDK的系統架構圖,基于算豐自研的Middleware和TPU SDK,包括內部兩大模塊(Core和Service)、算法C接口、算法應用(Application)。
圖1 TDL SDK系統框架
Core提供了算法相關接口,封裝復雜的底層操作及算法細節,在內部會對模型進行相應的前后處理,并完成推理。Service提供算法相關輔助API,例如:繪圖, 特征比對, 區域入侵判定等功能。C接口實現對現有現有算法模塊的功能封裝,除了支持TDL SDK內部模型外,還支持開發者自有模型(需按文檔進行模型轉換)。Application封裝應用邏輯,如包含人臉抓拍的應用邏輯。
二、如何使用TDL SDK?
使用TDL SDK非常簡單,首先我們需要在算豐的開發者論壇https://developer.sophgo.com/thread/556.html下載我們的TDL SDK。
接下來我們以YOLO V8模型為例,演示如何借助TDLSDK,快速將模型部署到算豐開發板上。
準備YOLO V8 的pt/onnx模型。首先我們可以從yolov8的官方倉庫(https://github.com/ultralytics/ultralytics)中獲取到pt模型文件,并進行下載。
將pt模型轉換為onnx,再由onnx轉換為部署模型所需的cvimodel文件。
這里大家可以參考這份文檔來進行模型轉換,里面有非常詳細的指令說明:https://doc.sophgo.com/cvitek-develop-docs/master/docs_latest_release/CV180x_CV181x/zh/01.software/TPU/YOLO_Development_Guide/build/html/index.html
配置交叉編譯環境
wget
https://sophon-file.sophon.cn/sophon-prod-s3/drive/23/03/07/16/host-tools.tar.gz
tarxvfhost-tools.tar.gz
cdhost-tools
exportPATH=$PATH:$(pwd)/gcc/riscv64-linux-musl-x86_64/bin
編譯cvitek_tdl_sdk
/*進入到cvitek_tdl_sdk的sample目錄下并執行一鍵編譯*/
chmod777compile_sample.sh
./compile_sample.sh
配置開發板的環境變量將編譯好的程序放到算能開發板上后,我們還需要引入依賴庫路徑,才能完成實際的部署。
exportLD_LIBRARY_PATH=/tmp/lfh/cvitek_tdl_sdk/lib:\
/tmp/lfh/cvitek_tdl_sdk/sample/3rd/opencv/lib:\
/tmp/lfh/cvitek_tdl_sdk/sample/3rd/tpu/lib:\
/tmp/lfh/cvitek_tdl_sdk/sample/3rd/ive/lib:\
/tmp/lfh/cvitek_tdl_sdk/sample/3rd/middleware/v2/lib:\
/tmp/lfh/cvitek_tdl_sdk/sample/3rd/lib:\
/tmp/lfh/cvitek_tdl_sdk/sample/3rd/middleware/v2/lib/3rd:
注: /tmp/lfh為示例中開發板的掛載文件夾,請以你的實際路徑為準。
部署完成,運行模型
chmod777sample_yolov8
./sample_yolov8/tmp/lfh/yolov8n_headperson.cvimodel
/tmp/lfh/pic1.jpg
指令運行成功,即可說明我們的模型已經順利移植部署到了板子上啦。以下為可視化展示(mAP(0.5): 86.4%):
除了單獨的人形檢測,我們也提供了基于yolo v8推理的人形與交通工具的檢測(mAP(0.5): 81.8%),客流統計(平均準確率: 96.3%)等等;

圖3 客流統計
三、TDL SDK支持哪些算法?
TDL SDK作為一個便捷的開發工具包,就像是一個種類豐富的算法超市,涵蓋了各種智能應用場景。以下我們列出了當前已經支持的算法:
| 功能描述 | 模型接口 |
|---|---|
| 使用ScrFD Face模型偵測人臉 | CVI_TDL_ScrFDFace |
| 抽取人臉識別特征 | CVI_TDL_FaceRecognition |
| 人臉質量評估與人臉角度偵測 | CVI_TDL_FaceQuality |
| 判斷人臉是否戴口罩 | CVI_TDL_MaskClassification |
| 人臉屬性 | CVI_TDL_FaceAttribute |
| 安全帽檢測 | CVI_TDL_YOLOV8_Hardhat |
| 手勢分類 | CVI_TDL_HandClassification |
| 手部檢測 | CVI_TDL_Hand_Detection |
| 手部關鍵點偵測 | CVI_TDL_HandKeypoint |
| 關鍵點手勢分類 | CVI_TDL_HandKeypointClassification |
| 行人檢測 | CVI_TDL_MobileDetV2_Pedestrian |
| 貓狗及人形檢測 | CVI_TDL_MobileDetV2_Person_Pets |
| 手部、臉及人形檢測 | CVI_TDL_HandFacePerson_Detection |
| 人形及交通工具檢測 | CVI_TDL_PersonVehicle_Detection |
| 人體關鍵點檢測 | CVI_TDL_Yolov8_Pose |
| 車牌檢測 | CVI_TDL_LicensePlateDetection |
| 車牌識別 | CVI_TDL_LicensePlateRecognition_CN |
| 語義分割 | CVI_TDL_Topformer |
| 交通工具檢測 | CVI_TDL_MobileDetV2_Vehicle |
| 客流統計 | CVI_TDL_APP_ConsumerCounting_Run |
| 人臉抓拍 | CVI_TDL_APP_FaceCapture_Run |
| 聲音識別(嬰兒哭聲、語音指令) | CVI_TDL_SoundClassification_V2 |
上述的常用算法,大部分都已經在實際項目中落地,并且也在不斷優化迭代,開發者可以自行體驗。除了支持已有的模型,TDL SDK還開放同類模型的推理接口,開發者只要參考文檔導出模型,可以直接用現有接口推理其自有模型。不僅如此,除了列表里提到的部分,TDL SDK還在不斷維護升級,以支持更多的主流算法。
四、結語
TDL SDK就像是打開智能世界大門的鑰匙,可以幫助開發者快速上手智能開發。如果你正在尋找一款高效、易用的智能開發工具包,那么TDL SDK絕對是你的不二之選!期待與你一起開拓智能化的新時代!
-
編程接口
+關注
關注
1文章
42瀏覽量
8263 -
SDK
+關注
關注
3文章
1101瀏覽量
51737 -
開發包
+關注
關注
0文章
24瀏覽量
7542
發布評論請先 登錄
100G 高速線纜:睿海光電以技術突破構筑智算互聯的高效基石
睿海光電領航AI光模塊:超快交付與全場景兼容賦能智算時代——以創新實力助力全球客戶構建高效算力底座
【Milk-V Duo S 開發板免費體驗】基于Duo S 使用 TDL SDK(V2版本)
【Milk-V Duo S 開發板免費體驗】基于Duo S 使用 TDL SDK(V1版本)
壁仞科技聯合三方打造國產算力集群落地
積算科技上線赤兔推理引擎服務,創新解鎖FP8大模型算力
【Milk-V Duo S 開發板免費體驗】5 - 使用YOLOv11進行目標檢測
高德開放平臺SDK鴻蒙版的技術優勢
【Milk-V Duo S 開發板免費體驗】人臉識別Demo應用
晶豐明源推出Smart DrMOS智能集成功率器件芯片
算豐TDL SDK:打造高效智能應用的神秘武器
評論