启动模型评测任务(单任务)
前提条件
已创建模型评测任务,且状态为“等待配置”。
启动评测任务
- 在左侧导航栏选择“模型开发 > 模型评测”,进入“模型评测”页面。
- 在模型评测列表找到目标评测任务,单击对应“操作”列的“进入仿真环境”。
- (可选)在“单任务模型评测指南”界面,阅读模型评测指引,勾选“不再提示”,后续将不会弹出此界面,完成后单击“我已了解”。
- 进入仿真环境页面。
界面左侧的“Entity Outliner”选项中显示当前仿真环境的所有实体,包括物体、物体面、室内光源、自然光源等。
一切实际显示的参数与创建评测任务时选择的仿真资产一致。
图1 仿真环境示例
- (可选)测试模型连通性。 图2 测试模型连通性示例
- 输入“测试时长”,该测试时长范围在0.01~300秒。
- 单击“测试模型连通性”,在弹框单击yes,即可开始调试。
- 在“日志”显示框,查看看技能评测内部模型推理服务的反馈,请参见测试模型连通性日志。
- 在页面左侧选择“技能测评”选项卡,单击“创建观测相机”,可以添加用于保存回放视频的调整相机,建议保持系统默认的相机配置。 图3 创建观测相机示例
如果要调整观测相机位置,请参见后续的“调整观测相机位置”。
- (可选)配置仿真环境的数据增广。
- 在界面右侧选择“数据增广”选项,或者单击仿真软件左侧导航栏的
,界面右侧会显示“数据增广”选项。 图4 打开数据增广示例
- 在“数据增广”选项,可以按照需要配置物体位姿增广、环境纹理增广、光源增广。
系统会根据评测任务选择的仿真资产显示数据增广的默认配置,也可以根据需求调整数据增广配置(请参见后续的“调整数据增广配置”)。
如果要删除或增加数据增广的配置,请继续下一步。
- (可选)增加或删除数据增广的配置。
如果评测任务的仿真资产属于系统预置,不建议增加或删除仿真环境的实体配置,请保持默认配置。
如果评测任务的仿真资产属于自定义创建,请严格按照仿真环境的实体数量配置。
在目标数据增广选项,单击
,即可增加配置;单击
,即可删除配置。 - 在完成数据增广配置后,单击“全局随机与预览”预览数据增广配置效果。
- 整体配置完成后,单击“保存增广配置”,会保存当前所有配置,在后续评测任务中生效。
- 在界面右侧选择“数据增广”选项,或者单击仿真软件左侧导航栏的
- 单击“启动评测”,弹出“确认启动”对话框,确认后单击“Yes”,即启动评测任务。 图5 Yes
- 启动评测任务后,该评测任务状态为“执行中”,单击“仿真环境”进入仿真环境可查看机器人仿真测试实时画面。 图6 执行中评测任务示例
- 评测任务执行完成后,该评测任务状态为“已完成”,可以查看该任务的评测详情。
测试模型连通性日志
常见模型调测反馈有以下几种:
[时间戳] 测试模型连通性命令已发送成功,将在xxx 秒后自动停止; [时间戳] 测试进行中... [时间戳] 测试时长已到,正在自动停止模型测试 ... [时间戳] 模型测试已自动停止 [时间戳] 轮询模型推理状态失败:推理错误--xxx (整个数据流有问题,需要按错误信息提示进行排查)
- 如果日志窗口没有报错信息,且机器人可以正常做动作,则说明整个r2c适配流程没有问题,可以按模型评测流程进行模型效果评测。
- 如果日志窗口没有报错信息,但是机器人没有做动作,先确认开发环境界面中的r2c-client服务是否有报错:
- 如果r2c-client服务有报错,需要修改错误之后重启r2c-client服务,再重新测试模型连通性。
- 如果r2c-client服务没有报错,则说明整个r2c数据适配流程没有问题,需要排查:
- “<机器人名称>_transformer”python模块中夹爪关节点和模型输入输出之间的转换和模型训练中数据处理模块的逻辑是否相同。
- 如果b1的数据转换逻辑是一致的,则可能是模型性能问题,可以进入模型评测环节,考虑增加数据量提升模型性能。
- 如果日志窗口有报错,需要基于错误提示排查,主要有三类问题:
- r2c_<机器人名称>.yaml 中转换的r2c数据和模型部署时提供的r2c.json中定义的数据格式是否匹配。
轮询模型推理状态失败:推理错误--Build model input from r2c failed. "Name 'wrist_1_joint1' not found in names: ['shoulder_pan_joint', 'shoulder_lift_joint', 'elbow_joint', 'wrist_1_joint', 'wrist_2_joint', 'wrist_3_joint', 'gripper']"
- r2c.json中数据字段是否支持模型推理进行解析。
轮询模型推理状态失败:推理错误--Build model input from r2c failed. 'Missing "input_features" field in model_ext_meta****"****_mapping". Actual fields: [\'input_features1\', \'output_features\']'
- r2c.json 中定义的模型输入和输出数据格式和模型内部使用的数据格式是否匹配。
轮询模型推理状态失败:推理错误--Get infer action failed, err: Error in inference server:[N]Traceback (most recent call last):[N] File "/opt/cloud/lerobot_ascend/serving/websocket_policy_server.py", line 266, in _handler[N] action_chunk = self._predict_action_chunk(obs)[N] File "/opt/cloud/lerobot_ascend/serving/websocket_policy_server.py", line 200, in _predict_action_chunk[N] action_tensor = self._get_action_chunk(observation)[N] File "/opt/cloud/lerobot_ascend/serving/websocket_policy_server.py", line 153, in _get_action_chunk[N] chunk = self._policy.predict_action_chunk(observation)[N] File "/opt/miniconda3/envs/lerobot/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 116, in decorate_context[N] return func(*args, **kwargs)[N] File "/opt/cloud/lerobot_ascend/lerobot/src/lerobot/policies/act/modeling_act.py", line 131, in predict_action_chunk[N] batch[OBS_IMAGES] = [batch[key] for key in self.config.image_features][N] File "/opt/cloud/lerobot_ascend/lerobot/src/lerobot/policies/act/modeling_act.py", line 131, in <listcomp>[N] batch[OBS_IMAGES] = [batch[key] for key in self.config.image_features][N]KeyError: 'observation.images.head_camera'[N]
- r2c_<机器人名称>.yaml 中转换的r2c数据和模型部署时提供的r2c.json中定义的数据格式是否匹配。
调整观测相机位置
- 方法一:调整观测相机坐标轴
- 在创建观测相机后,单击界面左侧“Entity Outliner”选项,在列表中显示创建的相机实体。
- 双击相机实体(比如skill_test_scene_camera),界面中间会显示观测相机位置(图7的红圈处),以坐标轴形式显示观测相机位置。
- 鼠标选中该坐标轴,按照实际拖动该坐标轴即可调整观测相机位置;或者在界面右侧“Inspector”选项的“Transform”处,修改Values的Translate的数值,即修改观测相机的X、Y、Z坐标数值,依次调整观测相机位置。 图7 观测相机位置示例(坐标轴)
图8 调整观测相机位置数值示例(坐标轴)
- 方法二:以观测视角调整观测相机位置
将鼠标放置在界面目标位置处,单击鼠标右键,然后按照规划左右、上下等拖动画面,直至移至目标观测位置。
按Esc键可以退出当前调整操作。
图9 调整视角示例
调整数据增广配置
如果本次不调整数据增广参数,默认保持上一次操作的配置。
- 物体位姿增广 图10 物体、分布区域实体与配置示例
选择要配置的物体、分布区域,从随机化功能开关中打开/关闭一种或多种。
- 环境纹理增广
表1 环境纹理增广 参数
说明
物体面
选择要纹理随机化的实体。
图11 环境纹理实体与配置示例
基础纹理
选择要随机化的基础纹理,单击参数右侧的
,在“添加基础纹理”弹窗,勾选单个或多个基础纹理,完成后单击“确认添加”。图12 选择基础纹理示例
污损纹理
选择要随机化的污损纹理,单击参数右侧的
,在“添加污损纹理”弹窗,勾选单个或多个污损纹理,完成后单击“确认添加”。图13 选择污损纹理示例
- 光源增广
表2 光源增广 参数
说明
自然光源
图14 自然光源实体与配置示例
按照需求配置时间段,选择“未配置”、“上午”、“下午”、“晚上”,当前仿真环境自然光源会按照配置的时间段呈现。
图15 以下午时间段为例
打开“随机化自然光”开关,当前仿真环境自然光源会随机化切换到任一时间段呈现。
室内光源
图16 室内光源实体与配置示例
选择要进行光源随机化的室内光源实体,从随机化功能开关中打开/关闭一种或多种,主要包括“随机化开灯”、“随机化颜色”、“随机化亮度”,室内光源实体会按照随机化功能显示。
