算丰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文章
38浏览量
8020 -
SDK
+关注
关注
3文章
1048浏览量
46378 -
开发包
+关注
关注
0文章
24浏览量
7260
发布评论请先 登录
相关推荐
智能体验一触即发 —— 涂鸦App SDK 5系列,打造您的专属智能应用!
![<b class='flag-5'>智能</b>体验一触即发 —— 涂鸦App <b class='flag-5'>SDK</b> 5系列,<b class='flag-5'>打造</b>您的专属<b class='flag-5'>智能</b>应用!](https://file.elecfans.com/web2/M00/40/04/pYYBAGJrTDSAYdI1AAASTiyZjeQ622.jpg)
![](https://file1.elecfans.com/web3/M00/06/DA/wKgZO2ePxA2AEaTzAAQet3Edt48898.jpg)
算家计算 开启贵州人工智能算力服务新篇章
![<b class='flag-5'>算</b>家计算 开启贵州人工<b class='flag-5'>智能</b><b class='flag-5'>算</b>力服务新篇章](https://file1.elecfans.com//web3/M00/03/FC/wKgZO2dthmGAT0yIABlGyezR4uQ682.png)
华为与中国能建打造“东数西算”标杆数据中心
开源芯片系列讲座第24期:基于SRAM存算的高效计算架构
![开源芯片系列讲座第24期:基于SRAM存<b class='flag-5'>算</b>的<b class='flag-5'>高效</b>计算架构](https://file1.elecfans.com/web2/M00/E5/E7/wKgZomZFcsyAcT-5AAA2A4dQRkQ217.png)
通过Google Play SDK管理中心打造更安全、更优质的SDK
![通过Google Play <b class='flag-5'>SDK</b>管理中心<b class='flag-5'>打造</b>更安全、更优质的<b class='flag-5'>SDK</b>](https://file1.elecfans.com/web2/M00/0B/97/wKgZomc1YpmAUUkDAAAmldJ4qcQ506.png)
智能照明控制模块:打造舒适、高效的光环境
在 Duo S 上使用 TDL SDK 高效部署人脸检测模型
![在 Duo S 上使用 <b class='flag-5'>TDL</b> <b class='flag-5'>SDK</b> <b class='flag-5'>高效</b>部署人脸检测模型](https://file1.elecfans.com/web2/M00/A6/4A/wKgaomUTnHiADnB2AAAtr1gPdQM010.png)
评论