﻿# 具身智能数据平台使用手册

具身智能数据平台（以下简称“平台”）是逐际动力为 TRON 2 用户提供的一站式数据管理平台。机器人采集的数据从这里上传，经过标注、质检后导出为常用训练格式，也可以直接在平台上发起模型训练。

本手册按照数据的实际流转顺序编写。第 1~3 章帮助您快速熟悉平台；第 4~8 章按“采集 → 标注 → 管理 → 导出 → 训练”逐步展开；第 9 章面向项目经理，介绍项目与账号管理。

<div style="background:#fdf3e9;border:1px solid #f6ddc0;border-radius:8px;padding:12px 16px;margin:14px 0;">
<p style="margin:6px 0;">💡 平台的菜单和按钮会根据账号角色显示。如果您在页面中找不到本手册提到的某个功能，通常是当前账号没有对应权限，请联系项目经理开通。</p>
</div>

# 1 平台简介

## 1.1 平台能做什么

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>环节</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>平台提供的能力</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>采集</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">创建采集任务，分配采集员，跟踪采集进度</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>上传</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">支持 MCAP、BAG、HDF5、LeRobot、视频、音频、图片等格式，支持脚本自动上传和从云存储批量导入</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>标注</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">在数据工作台中按时间段标注动作语义，支持批量标注和审核流程</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>质检</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">按规则自动检查图像帧率、丢帧、首尾静止等问题</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>导出</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">导出为 LeRobot、HDF5、RLDS、MCap、JSON 等格式</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>训练</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">选择 pi0、pi05、ACT 等模型，在 GPU 服务器上直接训练，并查看训练曲线与日志</td></tr>
  </tbody>
</table>

## 1.2 角色说明

平台按角色分配功能。一个账号对应一个角色，项目经理可以为单个账号调整权限（见 9.3）。

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>角色</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>主要工作</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>重点阅读</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>项目经理</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">创建项目和账号，分配采集、标注任务，管理数据，导出与训练</td><td style="border: 1px solid #ccc; padding: 6px 10px;">全部章节</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>采集员</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">按采集任务操作机器人录制数据并上传</td><td style="border: 1px solid #ccc; padding: 6px 10px;">第 2 章、4.2 采集员操作、6.3 上传数据</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>标注员</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">在数据工作台中为数据添加动作语义标注</td><td style="border: 1px solid #ccc; padding: 6px 10px;">第 2 章、5.3 标注员操作、6.2 数据工作台</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>审核员</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">检查标注质量，判定任务合格或退回</td><td style="border: 1px solid #ccc; padding: 6px 10px;">第 2 章、5.4 审核员操作</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>访客</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">只读查看被授权的内容</td><td style="border: 1px solid #ccc; padding: 6px 10px;">第 2 章</td></tr>
  </tbody>
</table>

## 1.3 任务状态

采集任务和标注任务使用同一套状态，任务列表顶部的标签页也按这些状态分类。

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>状态</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>含义</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>下一步</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>待开始</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">任务已创建，尚未开始</td><td style="border: 1px solid #ccc; padding: 6px 10px;">执行人开始工作后改为 <strong>工作中</strong></td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>工作中</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">采集员或标注员正在执行</td><td style="border: 1px solid #ccc; padding: 6px 10px;">执行人完成后改为 <strong>待检查</strong></td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>待检查</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">等待审核员检查</td><td style="border: 1px solid #ccc; padding: 6px 10px;">审核员判定为 <strong>检查合格</strong> 或 <strong>检查不合格</strong></td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>检查不合格</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">审核员退回，需要返工</td><td style="border: 1px solid #ccc; padding: 6px 10px;">执行人修改后重新提交为 <strong>待检查</strong></td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>检查合格</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">审核通过</td><td style="border: 1px solid #ccc; padding: 6px 10px;">提交后改为 <strong>提交数据</strong></td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>提交数据</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">任务结束，数据进入可导出状态</td><td style="border: 1px solid #ccc; padding: 6px 10px;">-</td></tr>
  </tbody>
</table>

# 2 登录与界面

## 2.1 登录

1. 在浏览器中打开 `https://tron2data.limxdynamics.com/signin`。推荐使用最新版 Chrome 或 Edge。
2. 输入项目经理为您分配的账号和密码，点击 **登录**。勾选 **保持登录状态** 后，同一浏览器下次访问无需重新登录。
3. 忘记密码时，点击 **忘记密码** 按页面提示重置，或联系项目经理重置。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/01_login.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 2.2 界面布局

登录后进入 **概览** 页。界面分为三个区域：

- **顶部栏**：左侧为平台名称，右侧为账号菜单。
- **左侧图标栏**：四个一级入口，从上到下依次为 **概览**、**数据**、**模型**、**管理**。
- **二级菜单**：点击一级入口后展开，例如 **数据** 下有数据、上传、采集、标注、质检、字典、图表、导出、LeRobot。

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>一级入口</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>二级菜单</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>本手册章节</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>概览</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">-</td><td style="border: 1px solid #ccc; padding: 6px 10px;">2.3</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>数据</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">数据、上传、采集、标注、质检、字典、图表、导出、LeRobot</td><td style="border: 1px solid #ccc; padding: 6px 10px;">第 4~8 章</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>模型</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">训练</td><td style="border: 1px solid #ccc; padding: 6px 10px;">第 8 章</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>管理</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">项目、用户</td><td style="border: 1px solid #ccc; padding: 6px 10px;">第 9 章</td></tr>
  </tbody>
</table>

点击右上角的账号名，可以打开 **产品手册**、**选择主题**（浅色/深色）、**更改密码**、**切换语言** 或 **退出登录**。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/02_account_menu.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 2.3 概览

概览页汇总您有权限查看的全部项目：

- **顶部指标**：数据总数、数据时长、标注总数、标注时长。
- **分布图**：项目数据分布、采集任务状态分布、标注质量分布（通过率/解决率）、数据质检结果。
- **趋势图**：数据增长趋势、数据质检结果趋势、标注增长趋势、标注质量趋势。

右上角可以 **刷新** 数据、切换 **深色主题** 或 **全屏** 显示，适合投屏展示项目进度。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/02_dashboard.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

# 3 快速上手

下面以“采集一批叠衣服数据并训练 pi05 模型”为例，串起完整流程。每一步的详细说明见对应章节。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/00_flow_quickstart.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;">

1. **准备项目和账号**（项目经理）：在 **管理 → 项目** 创建项目，在 **管理 → 用户** 为采集员、标注员、审核员创建账号。见第 9 章。
2. **创建采集任务**（项目经理）：在 **数据 → 采集** 填写任务名、采集数量、平均时长和采集步骤，指定采集员。见 4.1。
3. **录制数据**（采集员）：用 VR 遥操作 TRON 2，在数据采集软件中录制 MCAP 数据。见 4.2。
4. **上传数据**（采集员）：在 **数据 → 上传** 选择项目后上传 MCAP 文件，或使用批量自动上传脚本。见 6.3。
5. **创建标注任务**（项目经理）：在 **数据 → 数据** 勾选数据，点击底部 **标注** 创建任务。见 5.1。
6. **标注与审核**（标注员、审核员）：标注员在数据工作台中按动作分段标注，完成后提交；审核员检查后判定合格或退回。见 5.2~5.4。
7. **导出数据**（项目经理）：在 **数据 → 导出** 选择 LeRobot 格式导出。见第 7 章。
8. **训练模型**（项目经理）：在 **模型 → 训练** 选择 pi05 和刚导出的数据集，创建训练任务。见第 8 章。

# 4 数据采集

## 4.1 项目经理操作：创建与跟踪采集任务

入口：**数据 → 采集**。

采集任务用于向采集员下达“采什么、采多少”的要求，并跟踪完成进度。顶部标签页按任务状态分类（全部、待开始、工作中、待检查、检查不合格、检查合格、提交数据），可按任务名称、采集员和任务状态筛选。

列表显示每个任务的数据进度、最近数据、动作集、所属项目、采集员、创建时间和任务状态。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/06_collections.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

### 4.1.1 创建采集任务

点击 **创建采集任务**，填写以下内容后点击 **确定**：

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>字段</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>说明</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>任务名 *</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">建议包含场景和动作，例如“桌面叠T恤”</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>项目 *</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">任务所属项目，上传的数据也将归入该项目</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>采集员</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">执行任务的账号</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>机器人设备</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">执行任务使用的机器人</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>采集数量 *</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">需要录制的数据条数</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>平均时长 *</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">每条数据的预期时长（秒）</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>任务备注 / 初始场景</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">补充说明，例如物品摆放位置、光线要求</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>采集步骤</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">按顺序填写每一步的采集动作、操作物体、操作目标和备注，可添加多步</td></tr>
  </tbody>
</table>

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/06_collection_create.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

### 4.1.2 任务详情

点击任务名进入详情页：

- **采集数据**：列出已关联到该任务的数据（文件名、大小、上传时间、状态）。如数据误关联，可点击 **解除关联**。
- **设备**：查看任务使用的机器人设备。
- **概览**：查看任务的基本信息和采集步骤。

右侧面板显示数据进度，并提供 **在数据页查看全部**、**导出本任务数据**、**编辑任务**、**删除任务** 等操作。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/06_collection_detail.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/06_collection_概览.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 4.2 采集员操作

采集员在平台上接收任务、更新状态，在机器人端的 **数据采集软件** 中录制数据，再把录制好的 MCAP 文件上传到本平台。

### 4.2.1 处理采集任务

1. 登录平台，进入 **数据 → 采集**，在 **待开始** 标签页中找到分配给您的任务，阅读采集步骤和要求。
2. 开始采集前，将任务状态更新为 **工作中**。
3. 按 4.2.2~4.2.5 的步骤录制数据，并按 6.3 上传到任务所属项目。
4. 达到采集数量后，将任务状态更新为 **待检查**。
5. 如被判定 **检查不合格**，根据审核意见补录或重录后再次提交。

### 4.2.2 连接机器人与采集软件

1. 参照 [📘 逐际动力 数据采集软件使用手册](https://www.limxdynamics.com/zh/documents/889906272130961408#1.2-网络连接方法) 中的“网络连接方法”连接机器人。
2. 参照 [📘 逐际动力 数据采集软件使用手册](https://www.limxdynamics.com/zh/documents/889906272130961408#1.3-软件访问入口) 中的“软件访问入口”打开数据采集软件（`10.192.1.2:8080`）。是否需要登录，请参照该手册的 [功能边界](https://www.limxdynamics.com/zh/documents/889906272130961408#1.4-功能边界) 一节。
3. 检查相机画面。出厂时已在程序中写入相机 SN，您无需配置。如果左右腕部相机画面对调，请将两个相机交换安装位置。

<div style="background:#fdf3e9;border:1px solid #f6ddc0;border-radius:8px;padding:12px 16px;margin:14px 0;">
<p style="margin:6px 0;">💡 如果相机经过维修更换，或您希望使用自己的相机，请参考 <a href="https://cwjgfm21di.feishu.cn/docx/CqXhdGp8doMZBgxGwercJfGGnXe?from=from_copylink">相机SN配置方法</a>。</p>
</div>

### 4.2.3 调整头部并进入遥操作

<div style="background:#fdf3e9;border:1px solid #f6ddc0;border-radius:8px;padding:12px 16px;margin:14px 0;">
<div style="font-weight:bold;font-size:15px;margin:0 0 4px;">❗ <strong>注意</strong></div>
<p style="margin:6px 0;">请先调整头部，再进入遥操作模式。</p>
</div>

1. 将机器人切换到 `Teleoperator` 模式，在数据采集软件中查看头部相机视角是否合适。
2. 如视角不合适，打开机器人管理平台 limx studio（`10.192.1.4`），将头部俯仰调到最低、偏航回中（pitch=1.04，yaw=0）。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_4_4_3_4.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

3. 参照 [📘 TRON 2 用户手册](https://www.limxdynamics.com/zh/documents/844648486841487360#5.3-遥操作准备) 中的“遥操作准备”和“遥操作使用”，使机器人进入遥操作准备状态。

### 4.2.4 设置录制参数

参照 [📘 逐际动力 数据采集软件使用手册](https://www.limxdynamics.com/zh/documents/889906272130961408) 中的“数据录制”，在数据采集软件中设置以下参数：

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>参数</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>建议设置</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>文件名</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">自拟，建议包含任务名和日期</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>Dominid</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">一般填 0；多台设备共用网络时按需分配</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>格式</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">mcap</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>topic</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">推荐勾选以下 13 个 topic<div style="margin-top:6px;background:#f5f7fa;border:1px solid #ccc;border-radius:4px;padding:8px 10px;font-family:Menlo,Consolas,monospace;font-size:12px;line-height:1.7;white-space:pre-wrap;">1. /camera/left/color/image_resized/compressed    sensor_msgs/msg/CompressedImage
2. /camera/right/color/image_resized/compressed   sensor_msgs/msg/CompressedImage
3. /camera/top/color/image_raw/compressed         sensor_msgs/msg/CompressedImage
4. /gripper_command                               sensor_msgs/msg/JointState
5. /gripper_state                                 sensor_msgs/msg/JointState
6. /joint_command                                 sensor_msgs/msg/JointState
7. /joint_states                                  sensor_msgs/msg/JointState
8. /left_arm/ee_pose                              geometry_msgs/msg/PoseStamped
9. /left_arm/ee_pose_cmd                          geometry_msgs/msg/PoseStamped
10. /right_arm/ee_pose                            geometry_msgs/msg/PoseStamped
11. /right_arm/ee_pose_cmd                        geometry_msgs/msg/PoseStamped
12. /lifter/state
13. /chassis/twist</div></td></tr>
  </tbody>
</table>

### 4.2.5 录制数据

录制前请确认：

- 网络连接稳定。
- 数据盘剩余空间充足。1 分钟数据约占用 800 MB~1.5 GB。

录制步骤：

1. 控制机器人双臂进入准备姿态。
2. 在数据采集软件中点击 **概览 → 数据录制 → 开始录制**，也可以使用 VR 手柄快捷键（见 [📘 TRON 2 用户手册](https://www.limxdynamics.com/zh/documents/844648486841487360#5.1-VR-手柄键位)）。
3. 按采集步骤完成操作。
4. 控制双臂回到准备姿态。
5. 点击 **结束录制**，或使用 VR 手柄快捷键。
6. 重复以上步骤，直到达到采集数量。
7. 参照 [📘 逐际动力 数据采集软件使用手册](https://www.limxdynamics.com/zh/documents/889906272130961408#3.-数据页面) 中的“数据页面”检查、下载或删除录制的数据。

### 4.2.6 采集注意事项

- 操作前确认设备状态正常。
- 采集过程中双臂不要交叉。
- 严格按照任务的采集步骤操作。
- 同一批数据请保持头部相机视角、桌面高度和环境光线一致。部署推理模型时也请尽量保持相同条件，以获得更好的执行效果。

# 5 数据标注

标注是为数据中的每一段动作写上自然语言描述（例如“fold T-Shirt / 叠T恤”），让模型学会把语言指令对应到具体动作。这是训练 VLA（Vision-Language-Action）模型的前提。

## 5.1 项目经理操作：创建标注任务

标注任务由项目经理创建，有两个入口：

- **数据 → 数据**：勾选要标注的数据，点击底部的 **标注**。
- **数据 → 标注**：点击 **创建标注任务**。

弹出的面板有三个标签页：

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>标签页</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>用途</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>创建任务</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">填写任务名、项目、标注员（必填）和审核员，为所选数据新建任务。右侧可预览所选数据</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>追加任务</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">把所选数据追加到已有的标注任务中</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>快速标注</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">不创建任务，直接为所有所选数据写入同一条英文描述和中文描述。适合整条数据只有一个动作的情况</td></tr>
  </tbody>
</table>

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/07_task_create.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/07_task_create_快速标注.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 5.2 标注任务列表与详情

入口：**数据 → 标注**。任务以卡片形式显示，可按状态标签页、任务名、标注员、审核员和标签筛选。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/07_tasks.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

点击任务进入详情页，包含四个标签页：

- **标注数据**：任务内的数据列表，显示标签、内容时长、标注时长、标注数量和检查结果。可对数据执行 **开始标注**、**继续标注**、**清空标注**、**从任务中移除** 或 **删除数据**。
- **批量标注**：一次性为多条数据写入标注，见 5.3.2。
- **问题标注**：汇总审核员标出问题的标注，显示问题内容、审核员、检查时间和修正时间，方便标注员逐条修正。
- **标注统计**：按标注描述统计出现次数。

右侧面板显示标注员、审核员和 **当前流程**（任务状态），并提供 **编辑任务** 和 **删除任务**。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/07_taskdetail_标注数据.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/07_taskdetail_问题标注.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 5.3 标注员操作

### 5.3.1 精细标注

适用于一条数据包含多个动作，需要逐段标注的情况。

1. 在 **数据 → 标注** 的 **待开始** 标签页中打开任务，将任务状态更新为 **工作中**。
2. 在 **标注数据** 中选择一条数据，点击 **开始标注**，进入数据工作台（工作台介绍见 6.2）。
3. 播放数据，找到动作开始的画面，点击 **开始** 或按 **Q** 键。可用空格键播放/暂停，用 ← / → 键逐帧定位。

以叠T恤为例，采集员双手靠近衣物时，即为动作开始：

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_32_zh.png" alt="" loading="lazy" style="width: 100%; max-width: 500px;border:1px solid #ccc;border-radius:8px;">

4. 动作结束时，点击 **停止** 或按 **R** 键。衣服叠好、双臂回到原位，即为动作结束：

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_33_zh.png" alt="" loading="lazy" style="width: 100%; max-width: 500px;border:1px solid #ccc;border-radius:8px;">

5. 在弹出的 **添加标注** 窗口中填写本段动作的描述：
    - ① 选择 **技能**，例如 fold {A}（折叠 {A}）。常用技能直接点选，其他技能在右侧下拉框中搜索。
    - ② 选择 **对象**，例如 T-Shirt（T恤），替换技能中的 {A}。窗口底部会实时显示组合后的中英文描述，如 fold the T-Shirt / 折叠 T恤。如果技能包含 {B}，还需要在 **目标** 行中选择。
    - ③ 如果动作执行失败，勾选 **失败**。
    - ④ 点亮 ⭐ 为本段动作的质量打分。
    - ⑤ 确认无误后，点击 **添加标注**。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/05_annotate_add.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

如果下拉框中也找不到需要的对象，可以新增词条：

- ① 点击对象下拉框右侧的 **+**。
- ② 在展开的输入框中填写 **英文** 和 **中文**（必填），**日文** 可选，然后点击 **创建字典**。

新增的词条会保存到字典（见 6.5），之后可直接选用。技能、目标、状语也可以用同样的方式新增。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/05_annotate_new_object.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

6. 点击 **添加标注** 或按 **Enter** 键后，该段会按技能分组出现在左侧标注列表中（①），并显示开始时间；时间轴上也会出现对应的标注区间。一条数据有多个动作时，重复第 3~6 步。
7. 点击 **保存**（②）或按 **Ctrl+S**。未保存的标注在离开或刷新页面后会丢失。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/05_annotate_done.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

8. 任务内全部数据标注完成后，将任务状态更新为 **待检查**，等待审核员审核。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_41_zh_1.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

### 5.3.2 批量标注

适用于大量数据都是同一动作的情况，例如 100 条数据都是叠T恤。在任务详情页的 **批量标注** 标签页中选择一种模式：

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>模式</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>说明</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>适用场景</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>快速标注</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">为所有数据添加相同的标注描述</td><td style="border: 1px solid #ccc; padding: 6px 10px;">简单重复任务，整条数据只有一个动作</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>批量复制标注</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">将一条样例数据的标注按时间轴比例复制到其他数据</td><td style="border: 1px solid #ccc; padding: 6px 10px;">一条数据包含多个动作，且各数据动作顺序一致</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>批量替换标注</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">按规则批量替换描述、对象、目标等文案</td><td style="border: 1px solid #ccc; padding: 6px 10px;">统一修正已有标注中的用词</td></tr>
  </tbody>
</table>

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/07_taskdetail_批量标注.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

**批量复制标注** 的操作步骤：

1. 按 5.3.1 完整标注其中一条数据，作为样例，并保存。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_70_zh_1.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

2. 回到任务详情页，打开 **批量标注 → 批量复制标注**，选择样例数据作为模板。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_72_zh_1.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

3. 选择要复制到的目标数据，确认复制。平台会按每条数据的时长等比例换算标注时间段。例如样例中 10%~30% 时间段的标注，会落到目标数据同样的 10%~30% 位置。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_73_zh_1.png" alt="" loading="lazy" style="width: 100%; max-width: 800px;border:1px solid #ccc;border-radius:8px;">

4. 复制成功后，在 **标注数据** 中抽查几条数据，确认时间段基本对齐。如有偏差，打开该数据手动微调。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_75_zh_1.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

### 5.3.3 标注时检查数据质量

标注时请同步检查三路相机画面是否完整、三维动画中的机器人姿态是否正常、采集动作是否符合要求。发现异常时，左键单击对应的标注段，选择异常标签：

- **基础数据有误**：相机画面缺失，或姿态数据异常。
- **无效采集数据**：采集动作不符合要求。
- **EE结果异常**：末端执行器（夹爪或灵巧手）数据异常。
- **姿态异常数据**：采集动作或数据完整性不达标。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_37_zh.png" alt="" loading="lazy" style="width: 100%; max-width: 300px;border:1px solid #ccc;border-radius:8px;">

以下两种情况应标为 **基础数据有误**：

- 数据曲线在开头或结尾断开：

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_38_zh.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

- 夹爪数据剧烈波动：

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_39_zh.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 5.4 审核员操作

1. 在 **数据 → 标注** 的 **待检查** 标签页中打开任务。
2. 逐条打开数据，点击工作台上的 **开启检查模式**。可降低播放速度、放大时间轴，逐段核对自然语言描述是否准确、每段标注的起止帧是否落在动作的真实起止位置。起止帧需要全量检查。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_44_zh.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

3. 发现问题时，为该标注段选择对应的异常标签。标出问题的标注会汇总到任务详情页的 **问题标注** 中，供标注员修正。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_45_zh.webp" alt="" loading="lazy" style="width: 100%; max-width: 300px;border:1px solid #ccc;border-radius:8px;">

4. 为每条数据选择质量标签：
    - **高质量**：所有标注均正常，无异常。
    - **低质量**：存在被标记为异常的标注，且审核确认无误。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_46_zh.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

5. 全部数据审核完成后，更新任务状态：
    - 需要标注员修改时，选择 **检查不合格**，任务退回标注员。
    - 无需修改时，选择 **检查合格**。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_47_zh_1.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

任务的整体标注情况可以在 **标注统计** 标签页中查看：

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/07_taskdetail_标注统计.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

# 6 数据管理

## 6.1 数据列表

入口：**数据 → 数据**。这里列出您有权限查看的全部数据，是最常用的页面。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/03_dataset.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

### 6.1.1 查找数据

- 顶部标签页按项目切换。
- 可按数据名称、机器人、标签筛选，也可用 **已分配/未分配**、**已标注/未标注** 快速过滤。
- 点击 **高级搜索** 可组合更多条件：采集员、采集任务、标注任务、项目、时长范围、上传时间范围、多个名称关键词、包含或不包含的标签、质检状态、标注匹配模式，以及 ROS Topic 名称、类型和频率范围。点击 **重置** 清除全部条件。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/03_dataset_adv.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

### 6.1.2 列表字段

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>字段</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>说明</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>文件名</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">点击进入数据工作台</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>文件</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">文件大小，点击可下载原始文件</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>时长 / 项目 / 上传者 / 上传时间</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">数据的基本信息</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>采集任务 / 标注任务</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">数据关联的任务</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>标注</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">已有的标注数量</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>质检</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">质检通过项/总项，例如 1/1。点击可查看每条规则的结果</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>播放</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">快速预览数据</td></tr>
  </tbody>
</table>

### 6.1.3 批量操作

勾选数据后，可使用页面底部的按钮：

- **重命名**：批量修改数据名称。
- **统计**：查看所选数据的标注统计（总体数量、无效标注、工作流程）和标签统计。
- **标注**：创建或追加标注任务，或快速标注，见 5.1。
- **标签**：为数据添加或移除数据标签。
- **删除**：删除所选数据。删除后无法在列表中找回，请谨慎操作。

底部还会显示当前存储空间用量。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/03_stat.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 6.2 数据工作台

在数据列表中点击文件名，或在标注任务中点击 **开始标注**，即可打开数据工作台。工作台用于回放数据并进行标注。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/04_studio.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

- **左侧面板**：
    - **标注**：查看和编辑标签、统计和标注列表，点击 **保存** 保存标注。
    - **数据**：数据的基本信息和标注状态。
    - **面板**：添加或调整右侧显示的面板。
    - **主题**：列出数据中的全部 ROS topic，以及每个 topic 的消息类型、频率（Hz）和消息数量。可用于确认录制是否完整。
    - **问题**：列出数据中检测到的问题。
- **中间画面区**：默认显示三路相机画面和机器人三维动画。三维动画支持旋转视角和测量。
- **底部时间轴**：播放/暂停、跳到开头或结尾、循环播放、调整倍速，并显示当前时间戳。
- **顶部栏**：切换布局、显示或隐藏侧边栏、打开设置。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/04_studio_主题.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

常用快捷键：

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>操作</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>快捷键</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;">播放 / 暂停</td><td style="border: 1px solid #ccc; padding: 6px 10px;">空格</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;">逐帧前进 / 后退</td><td style="border: 1px solid #ccc; padding: 6px 10px;">→ / ←</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;">标注开始</td><td style="border: 1px solid #ccc; padding: 6px 10px;">Q</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;">标注停止</td><td style="border: 1px solid #ccc; padding: 6px 10px;">R</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;">添加标注</td><td style="border: 1px solid #ccc; padding: 6px 10px;">Enter</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;">保存</td><td style="border: 1px solid #ccc; padding: 6px 10px;">Ctrl+S</td></tr>
  </tbody>
</table>

## 6.3 上传数据

入口：**数据 → 上传**。

1. 在页面顶部选择 **项目** 和 **存储**。数据将保存到该项目中。
2. 根据数据类型选择上传方式。

<div style="background:#fdf3e9;border:1px solid #f6ddc0;border-radius:8px;padding:12px 16px;margin:14px 0;">
<div style="font-weight:bold;font-size:15px;margin:0 0 4px;">❗ <strong>注意</strong></div>
<p style="margin:6px 0;">如果所选项目是共享项目，页面会提示“此项目是共享的，所有人都可以访问”。不希望数据被他人看到时，请选择自己的个人项目。</p>
</div>

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/05_upload.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>上传方式</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>说明</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>MCAP / BAG / HDF5</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">上传单个或多个文件。TRON 2 录制的数据为 MCAP 格式</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>LeRobot 文件夹</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">上传整个 LeRobot 数据集文件夹</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>视频</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">可设置画质（20%/50%/70%/100%）、帧率（自动/10/15/30）以及是否包含音频</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>音频 / 图片</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">上传音频或图片文件</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>批量自动上传</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">在机器人终端运行脚本，自动监控指定目录并上传新文件，见 6.3.1</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>从云端导入</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">从对象存储批量导入已有数据，见 6.3.2</td></tr>
  </tbody>
</table>

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/05_upload_video.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

### 6.3.1 批量自动上传

适合数据量大、需要持续上传的场景。上传脚本运行在机器人终端上，自动监控指定目录并上传新文件。

1. 点击 **批量自动上传**，在 **上传配置** 中设置：
    - **数据类型**：例如“单文件（mcap, bag, hdf5）”。
    - **使用父目录层级**：默认 0 层。不同目录下有同名文件时（如不同日期下的 `episode_1.mcap`），可以把父目录名作为文件名前缀，避免命名冲突。
2. 下载上传脚本 `upload.py`。
3. 在终端中运行脚本：
    - `upload`：前台运行，持续监控指定目录并自动上传新文件，只需要普通用户权限。例如 `python3 upload.py upload /data/camera`。
    - `install`：安装为 systemd 后台服务，开机自启并自动上传新文件，需要 root 权限。例如 `sudo python3 upload.py install /data/camera`。
    - `uninstall`：停止并卸载已安装的服务，需要 root 权限。例如 `sudo python3 upload.py uninstall`。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/05_upload_batch.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/05_upload_batch_2.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

### 6.3.2 从云端导入

适合数据已存放在对象存储中的场景。支持腾讯云 COS、阿里云 OSS、华为云 OBS、Amazon S3、Azure Blob Storage、Cloudflare R2、MinIO、RustFS 和火山引擎 TOS。

1. 点击 **从云端导入**，选择云存储服务商，填写访问凭证和存储桶信息。
2. 选择 **导入数据类型**（mcap、hdf5 或 lerobot 文件夹），填写 **扫描前缀** 指定目录。如需用上级目录名区分数据，勾选 **数据名包含上级目录**。
3. 点击 **测试扫描**，确认能列出预期的文件。
4. 点击 **导入数据**。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/05_upload_cloud.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/05_upload_cloud_2.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

<div style="background:#fdf3e9;border:1px solid #f6ddc0;border-radius:8px;padding:12px 16px;margin:14px 0;">
<p style="margin:6px 0;">💡 <strong>测试扫描</strong> 只验证连接并列出文件，不会导入数据。导入任务在后台执行，平台不会保存您的云存储访问凭据，任务结束后会自动删除。</p>
</div>

## 6.4 质检

入口：**数据 → 质检**。质检规则会在数据上传后自动运行，结果显示在数据列表的 **质检** 列。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/08_qc.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

### 6.4.1 添加质检规则

1. 点击 **添加规则**。
2. 填写以下内容：
    - **作用域/项目**：规则对哪个项目生效。
    - **匹配的数据名**：只对名称匹配的数据生效，支持通配符 `*`（任意多个字符）和 `?`（单个字符）。留空表示全部数据。
    - **规则名**、**规则说明**：便于识别规则。
    - **优先级**：数字越小优先级越高，默认 100。同一数据匹配多条规则时，按优先级生效。
    - **启用**：关闭后规则暂不运行。
    - **质检算法**：选择平台提供的质检算法。
    - **详细规则**：点击 **使用模版** 选择常用规则，或点击 **添加规则** 自定义。
3. 保存规则。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/08_qc_rule.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

平台提供以下规则模板：

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>模板</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>检查内容</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;">图像帧率必须大于 10Hz</td><td style="border: 1px solid #ccc; padding: 6px 10px;">相机帧率过低</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;">图像帧最大间隔必须小于 500 毫秒</td><td style="border: 1px solid #ccc; padding: 6px 10px;">相机丢帧或卡顿</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;">开头关节静止不超过 3 秒</td><td style="border: 1px solid #ccc; padding: 6px 10px;">录制开始后长时间未动作</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;">结尾关节静止不超过 3 秒</td><td style="border: 1px solid #ccc; padding: 6px 10px;">动作结束后未及时停止录制</td></tr>
  </tbody>
</table>

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/08_qc_preview.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 6.5 字典

入口：**数据 → 字典**。字典是标注时可选的词条库，统一用词可以让标注更规范，也便于后续统计和训练。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/09_dicts.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

字典按类型分为以下标签页：

- **技能**：动作，例如 pick、fold。
- **对象**：被操作的物体，例如 T-Shirt。
- **目标**：操作的目的地，例如 basket。
- **状语**：补充描述，例如 slowly。
- **标注标签**：标注段上使用的标签，例如 5.3.3 中的异常标签。
- **数据标签**：整条数据上使用的标签。
- **标签分类**：标签的分组。

每个词条包含英文、中文和日文，并显示使用次数和归属范围（全局、项目或同项目共享）。

**新建词条**：点击 **创建字典**，选择归属，填写英文和中文（必填），日文可选。可使用 **批量添加** 一次录入多条。

技能可以直接写成完整的一句话。如果想让同一种说法套用在不同物体上，可以使用占位符：`{A}` 表示动作的第一个对象（主要对象），`{B}` 表示第二个对象（目标位置或辅助对象）。例如 `pick up {A}` 可以应用为 `pick up apple`、`pick up cup`。使用占位符时，中英文中的占位符需保持一致（大写）。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/09_dict_create.png" alt="" loading="lazy" style="width: 100%; max-width: 360px;border:1px solid #ccc;border-radius:8px;">

其他操作：**导出CSV** 导出当前列表；勾选后可 **删除选中字典**；单个词条可 **编辑** 或 **删除**。

## 6.6 图表

入口：**数据 → 图表**。按项目查看标注数据的统计分析，帮助您了解数据分布是否均衡。

- **动作关系**：各动作与对象之间的关系。
- **动作规划**：动作的先后序列。
- **动作时间**：各动作的时长分布。
- **前后依赖**：动作之间的前后衔接关系。
- **标注日历**：按日期显示标注量。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/10_chart_动作关系.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/10_chart_动作时间.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/10_chart_标注日历.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

# 7 数据导出

入口：**数据 → 导出**。

## 7.1 导出步骤

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_78_zh.png" alt="" loading="lazy" style="width: 100%; max-width: 700px;">

1. 选择项目，用数据名称、机器人、标签等条件筛选数据。
2. 选择导出格式标签页，在列表中勾选数据。可使用 **抽样选取** 随机选择一部分数据，用 **显示字段** 调整列表列。
3. 在右侧设置导出参数。右侧同时显示已选择、已使用和可导出的数据量（导出额度）。
4. 点击 **开始导出**。导出在后台执行，可在 **导出记录** 中查看进度。完成后点击 **查看数据** 或 **复制链接** 下载。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/11_export_LeRobot.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

<div style="background:#fdf3e9;border:1px solid #f6ddc0;border-radius:8px;padding:12px 16px;margin:14px 0;">
<p style="margin:6px 0;">💡 数据量越大，导出耗时越长，通常需要数十分钟。建议按任务类型分批导出，便于管理和针对性训练。</p>
</div>

## 7.2 导出格式

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>格式</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>内容</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>适用场景</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>LeRobot</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">图像、语言指令与动作序列，见 7.3</td><td style="border: 1px solid #ccc; padding: 6px 10px;">训练 pi0、pi05、ACT 等 VLA 模型（推荐）</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>HDF5</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">分层存储的多模态数据，见 7.4</td><td style="border: 1px solid #ccc; padding: 6px 10px;">自研训练框架</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>RLDS</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">TFDS 数据集，可设置名称、版本和采样频率</td><td style="border: 1px solid #ccc; padding: 6px 10px;">基于 TensorFlow 的训练框架</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>MCap</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">原始 MCAP 文件及同名标注 JSON</td><td style="border: 1px solid #ccc; padding: 6px 10px;">保留完整原始数据</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>MCap切块</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">按标注段切分的 MCAP 文件</td><td style="border: 1px solid #ccc; padding: 6px 10px;">只需要标注过的动作片段</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>JSON</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">标注结果。可下载全部或导出选中，可选择包含未标注数据，也可上传 JSON 导入标注</td><td style="border: 1px solid #ccc; padding: 6px 10px;">标注结果备份与迁移</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>表格 / 元数据</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">数据列表和元数据信息</td><td style="border: 1px solid #ccc; padding: 6px 10px;">数据盘点与统计</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>原始数据</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">下载链接、数据名、项目名、创建时间</td><td style="border: 1px solid #ccc; padding: 6px 10px;">用自己的工具批量下载原始文件</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>图像标注</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">YOLO、COCO 或 VOC 格式</td><td style="border: 1px solid #ccc; padding: 6px 10px;">视觉检测模型训练</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>时间对齐 / 丢帧检测</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">CSV 报告</td><td style="border: 1px solid #ccc; padding: 6px 10px;">排查多传感器时间同步和丢帧问题</td></tr>
  </tbody>
</table>

<div style="background:#fdf3e9;border:1px solid #f6ddc0;border-radius:8px;padding:12px 16px;margin:14px 0;">
<p style="margin:6px 0;">💡 导出生成的下载链接有效期为 24 小时，过期后请在导出记录中重新获取。</p>
</div>

## 7.3 导出为 LeRobot

LeRobot 是 Hugging Face 开源的机器人学习数据集框架。导出的数据包含视觉数据、自然语言指令和对应的动作序列，可以直接用于第 8 章的模型训练。导出前请先完成标注。

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>参数</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>说明</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>数据集ID</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">数据集名称，默认 <code>limx-tron2/lerobot_dataset</code>。计划发布到 Hugging Face 时，请使用 <code>用户名/仓库名</code> 格式</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>采样频率</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">10~30 Hz，默认 30。频率越低数据集越小</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>图像格式</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">MP4（推荐，比 JPG 节约约 80% 存储空间）或 JPG</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>严格匹配</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">自动裁切观测值和指令值，使二者一一对应，减少噪声</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>自动模糊人脸</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">识别画面中的人脸并模糊处理，有助于数据合规</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>附带关节</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">可选附带头部、底盘、灵巧手数据，默认不附带</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><strong>LeRobot版本</strong></td><td style="border: 1px solid #ccc; padding: 6px 10px;">v3.0 存储效率更高，但部分模型尚不支持；v2.1 兼容性最好</td></tr>
  </tbody>
</table>

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/11_export_LeRobot_2.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

**下载与解压**

导出完成后，在 **导出记录** 中下载 `.tar.gz` 压缩包：

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_84_zh.webp" alt="" loading="lazy" style="width: 100%; max-width: 400px;border:1px solid #ccc;border-radius:8px;">

建议在本地新建专用目录（如 `~/Downloads/mylerobot3`）后解压：

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_85_zh.webp" alt="" loading="lazy" style="width: 100%; max-width: 400px;border:1px solid #ccc;border-radius:8px;">

解压后的文件遵循 LeRobot 数据集的标准目录结构：

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_86_zh.webp" alt="" loading="lazy" style="width: 100%; max-width: 600px;border:1px solid #ccc;border-radius:8px;">

**Topic 映射规则**

平台根据 topic 名称的后缀，自动映射到 LeRobot 字段：

- 以 `/joint_state` 或 `/joint_states` 结尾的 topic，其 `position` 字段映射为观测值 `observation.state`，例如 `/arm/joint_states`。
- 以 `/joint_cmd` 或 `/joint_command` 结尾的 topic，其 `position` 字段映射为动作 `action`，例如 `/arm/joint_command`。

如果自定义 topic 不符合上述规则，请在录制时将其重命名为符合规则的名称。目前导出界面暂不支持手动指定 topic 映射，如有特殊需求请联系技术支持。

## 7.4 导出为 HDF5

HDF5（Hierarchical Data Format version 5）是一种分层数据格式，便于组织多模态数据。导出时会将动作数据与标注的自然语言指令一起写入文件。

- **分组数量**：每个 HDF5 文件包含的数据条数。需要与原始数据一一对应时设为 1。
- **采样频率（Hz）**：默认 30。频率越低数据集越小，但会影响训练精度。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/11_export_HDF5.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

导出后下载的文件如下：

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/ref_doc_0_sec_81_zh.webp" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

**数据结构**

文件按分组命名（如 `chunk_001.hdf5`），采用树状结构：

- `/data` 下按标注段划分为 `episode_001`、`episode_002` 等子组。
- 每个 episode 的属性：`task`（英文指令）、`task_zh`（中文指令）、`score`（动作质量评分）。
- 每个 episode 的数据：`action`（下发的关节指令）、`observation.images.*`（各视角的 JPEG 压缩图像）、`observation.state`（关节观测值）、`observation.gripper`（夹爪开合状态）。

```Plain Text
HDF5 "./chunk_001.hdf5" {
FILE_CONTENTS {
 group      /
 group      /data
 group      /data/episode_001
 dataset    /data/episode_001/action
 dataset    /data/episode_001/observation.gripper
 dataset    /data/episode_001/observation.images.camera_01
 dataset    /data/episode_001/observation.images.camera_02
 dataset    /data/episode_001/observation.images.camera_03
 dataset    /data/episode_001/observation.state
 group      /data/episode_002
 dataset    /data/episode_002/action
 ......
 group      /meta
 }
}
```

# 8 模型训练

## 8.1 训练列表

入口：**模型 → 训练**。列表显示每个训练任务的 ID、模型、训练位置、项目、创建者、状态、创建时间和用时，可按状态、模型、项目和权重 ID 筛选。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/13_train_list.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 8.2 创建训练

点击 **创建训练**，按页面顺序完成以下设置：

1. **训练位置**：选择 GPU 服务器和要使用的 GPU。页面顶部会显示您的训练额度。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/13_train_create_1.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

2. **模型**：选择 pi0、pi05、ACT，或使用自定义镜像。
3. **训练参数**：常用参数如下，其余保持默认即可。

<table style="border-collapse: collapse; width: 100%;">
  <thead>
    <tr style="background-color: #f5f7fa;">
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>参数</strong></th>
      <th style="border: 1px solid #ccc; padding: 6px 10px; text-align: center;"><strong>说明</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><code>batch_size</code></td><td style="border: 1px solid #ccc; padding: 6px 10px;">每步训练的样本数。显存充足时可适当调大</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><code>steps</code></td><td style="border: 1px solid #ccc; padding: 6px 10px;">总训练步数，默认 10000</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><code>prompt</code></td><td style="border: 1px solid #ccc; padding: 6px 10px;">统一的任务指令。留空时使用数据集中的标注指令</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><code>save_interval</code></td><td style="border: 1px solid #ccc; padding: 6px 10px;">每隔多少步保存一次检查点</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><code>learning_rate</code></td><td style="border: 1px solid #ccc; padding: 6px 10px;">学习率</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><code>fsdp_devices</code></td><td style="border: 1px solid #ccc; padding: 6px 10px;">多卡分片训练使用的设备数，默认 auto</td></tr>
    <tr><td style="border: 1px solid #ccc; padding: 6px 10px;"><code>action_horizon</code></td><td style="border: 1px solid #ccc; padding: 6px 10px;">模型一次预测的动作步数</td></tr>
  </tbody>
</table>

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/13_train_create_2.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

4. **训练数据集**：可选择在平台导出的 LeRobot 数据集、已上传的 LeRobot 数据集、数据集下载链接，或 Hugging Face 数据集。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/13_train_create_3.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

5. **其他设置**：填写备注；如需在已有训练的基础上继续训练，选择 **从已有训练继续**，并指定源训练和检查点权重；选择训练所属项目。
6. 点击 **创建训练任务**。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/13_train_create_4.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 8.3 训练详情

点击列表中的训练任务进入详情页。顶部显示训练状态、模型、框架、训练位置、数据格式和用时。

- **训练指标**：损失值（Loss）、梯度范数（Gradient Norm）和训练步数（Step）随时间变化的曲线。Loss 持续下降并趋于平稳，说明训练正常收敛。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/13_train_detail_训练指标.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

- **模型输出**：训练保存的检查点，可下载用于部署推理。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/13_train_detail_模型输出.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

- **实时日志**：训练过程的日志输出。勾选 **自动刷新** 可持续跟踪，点击 **加载更早日志** 查看历史日志。训练失败时，请先在这里查找报错信息。
- **训练参数**：本次训练使用的配置、数据集和参数。点击 **编辑参数并重新训练**，可在当前配置的基础上调整参数后重新发起训练。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/13_train_detail_训练参数.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

## 8.4 LeRobot 数据可视化

入口：**数据 → LeRobot**。训练前，可以在浏览器中预览 LeRobot 数据集，确认画面、动作和语言指令是否正确。

- **浏览导出数据**：选择一个在平台导出的 LeRobot 数据集查看。
- **浏览本地数据**：选择本地目录或本地压缩包，或输入远程压缩包地址查看。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/12_lerobot.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

# 9 系统管理

本章面向项目经理。入口：**管理**。

## 9.1 项目管理

入口：**管理 → 项目**。项目是数据、任务和成员的组织单位，不同项目的数据相互隔离。

- **我的项目**：您创建或管理的项目。卡片显示项目的任务数、数据数和用户数，可 **编辑** 或 **删除**。
- **共享项目**：其他项目经理共享给您的项目，卡片上带有 **共享** 标记。
- 勾选多个项目后，可使用 **批量删除/合并**。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/14_projects.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

**创建项目**：点击 **创建项目**，填写项目名称。勾选 **置顶项目** 后，该项目会在列表中置顶显示。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/14_project_create.png" alt="" loading="lazy" style="width: 100%; max-width: 360px;border:1px solid #ccc;border-radius:8px;">

## 9.2 用户管理

入口：**管理 → 用户**。顶部标签页按角色分类（全部用户、访客、采集员、标注员、审核员、项目经理），可按关键字和项目搜索。

列表显示登录帐号、姓名、所属项目、角色、最后登录时间、创建时间和过期时间。每个账号可执行 **编辑**、**权限**、**禁用**、**删除**。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/15_users.png" alt="" loading="lazy" style="width: 100%; max-width: 1000px;border:1px solid #ccc;border-radius:8px;">

### 9.2.1 创建用户

1. 点击 **创建用户**。
2. 填写 **登录帐号**、**姓名** 和 **密码**。可点击 **随机生成** 生成强密码。
3. 选择 **角色** 和 **项目**。
4. 按需设置 **过期时间**。到期后账号将无法登录，适合临时采集员或外部标注人员。
5. 保存，并将账号和密码告知对方。建议对方首次登录后通过账号菜单的 **更改密码** 修改密码。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/15_user_create.png" alt="" loading="lazy" style="width: 100%; max-width: 360px;border:1px solid #ccc;border-radius:8px;">

### 9.2.2 批量创建用户

需要一次创建多个账号时，点击 **批量新增**：

- **自动生成**：选择角色和所属项目，填写用户名前缀和生成数量，点击 **生成**。
- **CSV 输入**：按 `用户名,密码,角色,项目` 的格式逐行填写。可先 **下载模板** 或 **生成示例** 参考格式。

确认无误后，点击 **确认创建**。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/15_user_batch.png" alt="" loading="lazy" style="width: 100%; max-width: 600px;border:1px solid #ccc;border-radius:8px;">

## 9.3 调整用户权限

每个角色都有一组默认权限。如需为单个账号增减权限，在用户列表中点击该账号的 **权限**，勾选或取消对应功能后点击 **保存**。

权限按功能划分，通常分为“查看”和“管理/执行”两级，例如 **查看标注任务**、**执行标注**、**审核标注**、**管理标注任务**。点击 **恢复全部角色默认** 可将该账号恢复为角色的默认权限。

<img src="https://oss.limxdynamics.com/uploads/material/默认/TRON 2/data_management/V2/15_user_perm.png" alt="" loading="lazy" style="width: 100%; max-width: 600px;border:1px solid #ccc;border-radius:8px;">

<div style="background:#fdf3e9;border:1px solid #f6ddc0;border-radius:8px;padding:12px 16px;margin:14px 0;">
<p style="margin:6px 0;">💡 人员离职或合作结束时，建议先 <strong>禁用</strong> 账号，确认无需保留后再删除。</p>
</div>

# 10 常见问题

**Q1：登录后看不到某个菜单或按钮？**

菜单和按钮按账号权限显示。请联系项目经理确认您的角色，或在 **管理 → 用户 → 权限** 中开通对应功能。

**Q2：上传的数据在数据列表中找不到？**

请确认顶部选择的项目与上传时选择的项目一致，并点击 **重置** 清除筛选条件。数据较大时，上传后需要一段时间完成解析。

**Q3：数据的质检显示未通过怎么办？**

点击数据列表的 **质检** 列查看未通过的规则。常见原因是相机帧率过低、丢帧，或录制首尾静止时间过长。请检查网络和录制操作，必要时重新采集。

**Q4：标注到一半离开了页面，标注还在吗？**

未保存的标注会丢失。请养成按 **Ctrl+S** 随时保存的习惯。

**Q5：批量复制标注后，时间段不准确？**

批量复制按时长比例换算时间段，各数据动作节奏差异较大时会出现偏差。请抽查后手动微调，或对差异较大的数据单独精细标注。

**Q6：导出的 LeRobot 数据缺少 `observation.state` 或 `action`？**

请检查录制的 topic 名称是否符合 7.3 的映射规则，例如关节状态应以 `/joint_states` 结尾，关节指令应以 `/joint_command` 结尾。

**Q7：导出的下载链接打不开？**

下载链接有效期为 24 小时。请在 **导出记录** 中重新复制链接。

**Q8：训练任务失败怎么办？**

打开训练详情的 **实时日志** 查找报错信息。常见原因包括数据集格式与模型不匹配（可尝试导出为 LeRobot v2.1）、`batch_size` 过大导致显存不足。
