# 概念

了解核心组件和术语对于有效使用我们的转换工具至关重要。 本页介绍您在浏览文档时会遇到的一些关键概念。

## 转换

转换是将模型格式进行转换的过程。 格式决定了模型的存储和部署方式。

## RVC 平台

历史上，Luxonis 设备发布了多个世代。 我们将其称为 机器人视觉核心（RVC）平台，每个平台都有自己的一套功能和需求。 更多信息请参阅 [硬件](https://docs.luxonis.com/hardware.md) 部分。

### RVC 编译格式

适用于特定 RVC 平台的模型格式：

 * RVC2 — .superblob（以及作为遗留格式的 .blob）
 * RVC3 — .blob
 * RVC4 — .dlc

#### SHAVEs

流式混合架构向量引擎（SHAVEs）是 RVC2 VPU 上的硬件计算核心，负责执行神经网络工作负载。 在 DepthAI v2 中，模型被编译为 .blob 文件，每个文件针对固定数量的 SHAVEs 构建。 相比之下，DepthAI v3 引入了
.superblob 文件，将所有可能的 SHAVE 配置打包在一个模型文件中 （有关详细信息，请参阅 [推理](https://docs.luxonis.com/software-v3/ai-inference/inference.md) 部分中的“设置模型
SHAVEs”小节）。 这使得在管线初始化期间可以动态选择所需的 SHAVEs 数量，从而提供更大的灵活性，因为相同的模型文件可以跨不同的 SHAVE 分配重用，而无需重新编译。

## 量化

量化是一种用于使 AI 模型更小、更快、更高效的方法。 这是通过降低模型权重和激活值的精度来实现的。

### 量化为何重要

现代 AI 模型通常使用大量的数值数据，默认情况下这些数据以 32 位浮点格式存储（一种精确但占用内存的数值存储方式）。虽然在训练过程中这种精度是有用的，但在实际应用中使用模型时，通常不需要这么高的精度。这种简化带来了以下好处：

 * 更快的执行速度（处理的数据更少）
 * 更少的内存使用（模型体积更小）
 * 更低的功耗
 * 精度损失极小（如果处理得当）

### 描述

对于我们的 RVC4 设备，我们使用 [Qualcomm Neural Processing SDK
量化](https://docs.qualcomm.com/bundle/publicresource/topics/80-63442-2/quantized_models.html)。 简而言之，其工作原理如下：

 1. 确定输入数据的范围（真实最小值和最大值）。
 2. 确定编码范围（编码最小值和最大值），确保其满足特定要求（例如零表示）。
 3. 将每个 32 位浮点值转换为：
    * 16 位浮点值，或
    * 0 到 255 之间的 8 位定点值。

### 校准数据

在量化过程中，使用数据来确定模型权重和激活值的输入范围以及编码范围。 选择合适的校准数据可以在不显著丢失信息的情况下降低精度。为实现这一点，校准数据必须：

 * 代表模型在训练期间遇到的数据，并且
 * 覆盖模型预期处理的所有数值范围。

建议从验证图像构建校准数据集。使用更大、更多样化的校准集应该意味着模型量化后的整体性能更好。
