课程介绍

多媒体,通常理解为“multi”和“media”的结合,是指文本、声音、图像、视频等媒体形式的整合。近年来,4K超高清、VR、全息投影、5G直播等新兴多媒体应用和服务层出不穷。

智能多媒体

深度学习是基于多媒体技术,如图像处理和识别、音频处理和语音识别等。本课程基于BM1684深度学习处理器,其峰值性能为17.6 TOPS INT8和2.2 TFTOPS FP32,支持32路高清硬件解码。它展示了处理器的核心能力:计算能力+多媒体处理能力。

智能多媒体关键技术与指标

关键技术包括编解码技术、图像处理技术和媒体通信技术。关键指标包括解码通道的数量、帧速率、分辨率、图像处理接口的丰富程度、延迟和协议支持。

本课程将着重介绍图像处理技术、编解码技术、媒体通信技术三个方面的内容。通过理论与实践相结合,使学生了解智能多媒体的相关理论,快速掌握基本的实践方法。

相关GitHub链接

sophgo_ffmpeg: https://github.com/sophgo/sophon_ffmpeg

sophgo_opencv: https://github.com/sophgo/sophon_opencv

 

课程章节 ( 20节课)

1_ 基础知识
开始学习
1.1 前置基础
待学习
1.2 图像处理技术
待学习
1.3 图像视频编码技术
待学习
1.4 多媒体通信技术
待学习
1.5 多媒体开发基础
待学习
2_ 编程实战
开始学习
2.1 开发环境搭建
待学习
2.2 云平台开发环境
待学习
2.3 多媒体开发基础编程
待学习
2.4 边缘检测
待学习
2.5 图像裁剪及尺寸变换
待学习
2.6 图像加权融合
待学习
2.7 图像灰度直方图
待学习
2.8 FFMPEG视频编码
待学习
2.9 ROI视频编码
待学习
2.10 FFMPEG视频解码
待学习
2.11 OPENCV视频解码
待学习
2.12 图像压缩标准JPEG编解码
待学习
2.13 RTSP拉流+RTMP推流
待学习
3_ 综合设计
开始学习
3.1 车辆识别
待学习
3.2 基于无人机的建筑图像识别
待学习

课程目标

完成本课程后,学生将能够:

  • 了解智能多媒体的基础知识
  • 掌握算法TPU处理器BM1684及其平台的体系结构和使用方法,以及交叉编译环境的设置和使用方法
  • 熟悉多媒体软件平台的部署和开发
  • 掌握视频编解码能力,以及图像处理技术。

课程对象

深度学习开发爱好者,有一定的Linux开发基础。

课程推荐

course-cover

编译器开发

作为框架和硬件之间的桥梁,深度学习编译器可以实现一次性代码开发和重用各种计算能力处理器的目标。最近,算能也开源了自己开发的TPU编译工具——TPU-MLIR (Multi-Level Intermediate Representation)。TPU-MLIR是一个面向深度学习处理器的开源TPU编译器。该项目提供了完整的工具链,将各种框架下预训练的神经网络转换为可在TPU中高效运行的二进制文件bmodel,以实现更高效的推理。本课程以实际实践为驱动,引导您直观地理解、实践、掌握智能深度学习处理器的TPU编译框架。

目前,TPU-MLIR项目已应用于算能开发的最新一代深度学习处理器BM1684X。结合处理器本身的高性能ARM内核以及相应的SDK,可以实现深度学习算法的快速部署。本课程将介绍MLIR的基本语法,以及编译器中各种优化操作的实现细节,如图形优化、int8量化、算子分割、地址分配等。

与其他编译工具相比,TPU-MLIR有几个优点

1. 简单方便

通过阅读开发手册和项目中包含的示例,用户可以了解模型转换的过程和原理,并快速入门。此外,TPU-MLIR是基于当前主流编译工具库MLIR设计的,用户也可以通过它了解MLIR的应用。本项目提供了一套完整的工具链,用户可直接通过现有接口快速完成模型转换工作,无需适应不同的网络。

2. 通用性

目前,TPU- mlir已经支持TFLite和onnx两种格式,这两种格式的模型可以直接转换为TPU可用的bmodel。如果不是这两种格式呢?事实上,onnx提供了一套转换工具,可以将目前市场上主要的深度学习框架编写的模型转换为onnx格式,然后再进行bmodel转换。

3、精度与效率并存

在模型转换过程中,有时会失去精度。TPU-MLIR支持INT8对称和非对称量化,结合原开发公司的校准和tune技术,大大提高了性能,保证了模型的高精度。此外,TPU-MLIR还使用了大量的图优化和算子分割优化技术来保证模型的高效运行。

4. 实现终极性价比,构建下一代深度学习编译器

为了支持图形化计算,神经网络模型中的算子需要开发图形化版本;为了适应TPU,应该为每个运营商开发一个版本的TPU。此外,有些场景需要适应相同计算能力处理器的不同型号,每次都必须手工编译,这将非常耗时。深度学习编译器就是用来解决这些问题的。TPU-mlir的一系列自动优化工具可以节省大量的人工优化时间,因此在RISC-V上开发的模型可以顺利自由地移植到TPU上,以获得最佳的性能和性价比。

5. 完整的信息

课程包括中英文视频教学、文档指导、代码脚本等,详实丰富的视频资料详细应用指导清晰的代码脚本TPU-MLIR站在MLIR巨头的肩膀上打造,现在整个项目的所有代码都已经开源,免费向所有用户开放。

代码下载链接:https://github.com/sophgo/tpu-mlir

tpu - mlir开发参考手册:https://tpumlir.org/docs/developer_manual/01_introduction.html

总体设计思想论文:https://arxiv.org/abs/2210.15016

视频教程:https://space.bilibili.com/1829795304/channel/collectiondetail?sid=734875

课程目录

序号 课程名 课程分类 课程资料
      视频 文档 代码
1.1 Deep learning编译器基础 TPU_MLIR基础
1.2 MLIR基础 TPU_MLIR基础
1.3 MLIR基本结构 TPU_MLIR基础
1.4 MLIR之op定义 TPU_MLIR基础
1.5 TPU_MLIR介绍(一) TPU_MLIR基础
1.6 TPU_MLIR介绍(二) TPU_MLIR基础
1.7 TPU_MLIR介绍(三) TPU_MLIR基础
1.8 量化概述 TPU_MLIR基础
1.9 量化推导 TPU_MLIR基础
1.10  量化校准 TPU_MLIR基础
1.11 量化感知训练(一) TPU_MLIR基础
1.12  量化感知训练(二) TPU_MLIR基础
2.1 Pattern Rewriting TPU_MLIR实战
2.2 Dialect Conversion TPU_MLIR实战
2.3 前端转换 TPU_MLIR实战
2.4 Lowering in TPU_MLIR TPU_MLIR实战
2.5 添加新算子 TPU_MLIR实战
2.6 TPU_MLIR图优化 TPU_MLIR实战
2.7 TPU_MLIR常用操作 TPU_MLIR实战
2.8 TPU原理(一) TPU_MLIR实战
2.9 TPU原理(二) TPU_MLIR实战
2.10  后端算子实现 TPU_MLIR实战
2.11 TPU层优化 TPU_MLIR实战
2.12 bmodel生成 TPU_MLIR实战
2.13 To ONNX format TPU_MLIR实战
2.14 Add a New Operator TPU_MLIR实战
2.15 TPU_MLIR模型适配 TPU_MLIR实战
2.16 Fuse Preprocess TPU_MLIR实战
2.17 精度验证 TPU_MLIR实战

 

course-cover

Milk-V Duo开发板实践课程

本课程介绍了硬件电路的设计和基本环境的搭建,并提供了一些简单的开发示例和一些基本的深度学习示例。

Milk-V Duo是基于CV1800B的超小型嵌入式开发平台。它体积小,功能全面,配备双核,可以分别运行linux和rtos系统,并具有各种可连接的外设。

  • 可扩展性:Milk-V Duo核心板具有多种接口,如GPIO, I2C, UART, SDIO1, SPI, ADC, PWM等。
  • 多种可连接外设:Milk-V Duo核心板可扩展各种设备,如LED,便携式屏幕,摄像头,WIFI等。

课程特点:

  • 内容材料丰富完整,包括开发板硬件设计、外设接口说明、基本环境设置方法、示例代码脚本等。
  • 学习路径科学合理,从开发板的介绍和基本使用开始,引导到实际项目,充分利用开发板,为用户自身开发提供参考。
  • 实际项目丰富,课程提供了许多实际代码使用和功能演示的示例。通过简单地修改和组合代码,可以实现不同的功能。

课程目录

course-cover

SE5开发系列课

深度神经网络模型可以快速训练和测试,然后由行业部署,在现实世界中有效地执行任务。在小型、低功耗的深度学习边缘计算平台上部署这样的系统受到业界的高度青睐。本课程采用实践驱动的方法,引导你直观地学习、实践和掌握深度神经网络的知识和技术。

SOPHON深度学习微服务器SE5是采用SOPHON自主研发的第三代TPU处理器BM1684的高性能、低功耗边缘计算产品。INT8运算能力高达17.6 TOPS,支持32路全高清视频硬件解码和2路编码。本课程将快速引导您了解SE5服务器的强大功能。通过本课程,您可以了解深度学习的基础知识并掌握其基本应用。

课程的特点

1. 一站式服务

 在SE5应用程序中遇到的所有常见问题都可以在这里找到。

  • 为深度学习微服务器提供全栈解决方案
  • 一步一步、详细而清晰地分解开发过程
  • 支持所有主流框架,易于使用的产品

2. 系统的教学

它包括设置环境、开发应用程序、转换模型和部署产品,以及拥有镜像的实际环境等所有内容。

  • 环境是如何构建的?
  • 如何编译模型?
  • 应用程序是如何开发的?
  • 场景如何部署?

3. 完整的材料

本课程包括视频教程、文档指南、代码脚本和其他综合材料。

  • 丰富的视频素材
  • 详细的应用指导
  • 清晰的代码脚本
  • 代码下载链接:https://github.com/sophon-ai-algo/examples

4. 免费的云开发资源

在线免费申请使用SE5-16微服务器云测试空间