# DynamicCalibration

DynamicCalibration 是一款内置于 DepthAI 3.0 的自修复、设备端重新校准工具。它使立体深度相机能够自动监控并恢复其立体外参校准，确保在热漂移、机械冲击或安装变化导致出厂校准精度下降后，仍然保持稳定的深度精度。

### 主要功能

 * 恢复深度性能 — 使视差图恢复清晰、几何一致的输出。
 * 连续或手动操作 — 可实时运行，也可通过手动触发。
 * 校准健康状况监控 — 无需修改设备即可检查校准偏移。
 * 快速、稳健的重新校准 — 通常利用实时立体输入在几秒内完成。
 * 无需特殊标定靶 — 在具有丰富特征内容的自然场景中即可运行。
 * 支持所有运行 DepthAI 3.0 的立体相机 — 包括 OAK-D、OAK-D-Lite、OAK-D Pro、CM4 PoE 等。

### 在 OAK Viewer 中试用（无需编写代码）

体验 DynamicCalibration 功能的最快方式是使用最新版本的 OAK-Viewer：

### OAK Viewer

OAK Viewer 是一款桌面 GUI 应用程序，可让您可视化相机流并与设备交互。它适用于 Windows、macOS 和 Linux。

[点击此处开始使用](https://docs.luxonis.com/software-v3/depthai/tools/oak-viewer.md)

## 自动校准流程

自动校准功能提供启动时和持续的重新校准流程，并整合在同一个功能中。

### ON_START 与 CONTINUOUS

 * 使用 ON_START 在正常操作前自动启动 DCL。
 * 使用 CONTINUOUS 在运行期间持续运行 DCL，以实现持续自修复。
 * 无需在您的应用流程中手动触发 DCL。
 * 在启动和长期部署中都能获得更稳定的校准效果。

[查看集成详情](https://docs.luxonis.com/software-v3/depthai/depthai-components/host_nodes/dynamic_calibration.md)

## 场景指南

好的校准场景能让算法更容易检测、匹配和跟踪特征。建议的特征如下：

 * 包含多个深度范围内的纹理物体。
 * 避免使用空白墙壁或毫无特征的表面。
 * 缓慢移动摄像头以覆盖整个视场；避免突然的运动。

| 建议 | 原始图像 VS. 特征覆盖（绿色区域） |
| --- | --- |
| ✅**确保丰富的纹理和视觉细节** - 纹理丰富、边缘清晰且在视场中均匀分布的物体，能创造理想的校准条件。 | |
| 🚫**避免平坦或毫无特征的表面** - 缺乏纹理表面或视觉上可区分的物体，能提供的可用特征很少。 | |
| 🚫**避免反光和透明表面** - 反光和透明表面会产生错误的3D特征。 | |
| 🚫**避免黑暗场景** - 低对比度、阴影以及照明不足的场景，能检测到的特征很少。 | |
| 🚫**避免重复图案** - 许多有图案的区域看起来过于相似，难以区分。 | |

## 开发者集成

Dynamic Calibration 已包含在 DepthAI 中，无需额外安装。运行以下示例，了解实现概览。

### 克隆并运行示例

```bash
git clone https://github.com/luxonis/depthai-core.git
cd depthai-core/
python3 -m venv venv
source venv/bin/activate
python3 examples/python/install_requirements.py
python3 examples/python/DynamicCalibration/calibration_integration.py
```

### 集成到您的项目中

请参阅 [动态校准库文档](https://docs.luxonis.com/software-v3/depthai/depthai-components/host_nodes/dynamic_calibration.md)，了解如何将 Dynamic
Calibration 集成到您自己的项目中。
