Changelog 2026 10 - NUSNiuMu/insight-capture-dashboard GitHub Wiki
Changelog 2026-10
新条目加在顶部。每条包含“做了什么、为什么、如何验证”。
2026-10-12 · Native 完整性、评分与录制状态展示
提交:e9733db(feat/egohalo-native)。
- 按网页版改为“结论 + 话题表格”:显示消息数、通过/失败、实际/标称帧率和丢帧率,去掉嵌套路径、网络计数、订阅审计和内部计时的逐字段展开。静态话题仅检查存在;未知帧率和静默事件话题不显示虚构丢帧结论。评分与录制库报告独立,评分输入切换时隐藏上一条完整性报告。
- 评分采用响应式相机卡片,只保留分数、异常扣分、可用比例、协方差指标与必要错误;兼容旧单话题结果并去掉重复清单。完整性未通过或检查失败仍按网页流程继续评分。
- Recorder 只显示采集/保存状态、输出、任务、活动目录和剩余空间。完整性检查位于评分/录制库;合并保存期间禁用开始录制及切换目录。
- Qt 构建、真实录制/评分 API 快照与已有报告、800/1152/1600 像素宽度共 30 组 QML 场景通过,无 QML 错误和横向溢出;覆盖静态/事件话题、读取/启动错误、评分上限、单相机失败和保存锁定。完整 Native HTTP/WS 模拟验证“完整性失败仍评分”、独立报告和三页加载通过。
- 当前 Native 窗口已更新,实际评分/录制页读取无错误、六路实时视频重新输出,最后恢复
--fps 30 --fullscreen默认启动且关闭持续诊断。采集后端未重启,未新建或停止录制。脚本、截图、API 快照和诊断归档于~/workspaces/insight_capture_tests/native_reports_20261012/。
2026-10-12 · 现有设备 Native Qt 断外网保障
提交:aaa765f(feat/egohalo-native)。用户确认范围为现有设备断外网,保留本机后端和相机连接。
- 字体/控件嵌入可执行文件,模型通过本机
/asset获取,本机直通视频无需公网信令。正常启动复用本地二进制与运行库,运行库未解包时从本地 tar 恢复。 - 正常编译改为复用本地 Qt 构建镜像,
--network none --pull=never;镜像缺失立即提示,不自动联网拉取或 apt。联网准备单独通过build.sh --prepare-builder明确执行,当前设备镜像已存在。 - 真实无网络编译/运行库导出通过;私有用户网络命名空间仅有 lo、无 IPv4 默认路由,Qt 从本地 tar 启动并清空模型缓存,首次加载两种 GLB、三模型。九页实际控件/API 回归全部通过,Qt 日志为空;缺失镜像路径仅 image inspect、没有 build/run/pull。
- 测试复用当前主机依赖和 GStreamer 注册缓存,不是新设备离线安装验收;业务操作使用模拟后端,不代表推理/优化质量重新验收。当前 WiLoR 本地权重齐全,语音服务未运行,其不可用与公网无关。
- 构建、路由、请求、冷模型、截图与复测脚本归档于
~/workspaces/insight_capture_tests/native_offline_20261012/。采集服务、设备 profile 和驻留 Qt 保持运行;临时 worktree 合回并清理。
2026-10-12 · Native Qt 网页主题与页面切换优化
提交:0fe721d(界面)、f000071(切页),均已合回 feat/egohalo-native。
- 原生九页参照网页暖纸色主题,统一 Inter 字体、琥珀主按钮、白色分组卡片、状态标签、统计卡片和输入/弹窗;侧边栏补品牌、活动指示与紧凑模式,数据集/设置采用响应式分栏。
- 八个工作页面异步创建后复用,保留表单、选择和结果;共用录制库缓存 60 秒,业务修改、录制状态变化或显式刷新使缓存失效,扫描中改变范围会读取最后选择。按命名空间通知数据,隐藏场景只消费轨迹增量,返回时恢复最新几何。
- 隐藏实时页保留连接和 H.264 引用解码,丢弃隐藏显示输出,raw 跳过显示处理;返回等新输出才显示。MP4 跨页暂停保留时间与用户暂停状态。保留 H.264 解码仍占解码资源。
- 最终九页实际控件/API 回归、任务错误恢复、录制跨页保护、删除后导出选择失效通过,QML 日志无错误;1600×1000、1280×800、1152×864 验证通过。4 秒扫描模拟中 31 次切换、八页各创建一次、共用库只读取一次,缓存切页首次 Qt 帧交换中位 12 ms、最大 20 ms;隐藏轨迹序号增长,几何更新暂停。实际 Workspace 网络测试通过范围合并、途中失效和 TTL 复用。
- 同机六路模拟源旧/新对照:切离空间页首次 Qt 帧交换 784–1025 ms → 63–80 ms,返回 63–100 ms → 14–22 ms;新视频 sink 输出恢复 33–159 ms,中位 76.5 ms,四轮切换管线 generation 不变。另验证回放跨页、暂停、拖动至 5 秒、返回实时。计时不是曝光到屏幕延迟,模拟源不代表当前六路实物输入;旧版四轮点击有一轮未形成切页,只统计实际帧交换事件。
- 隔离 worktree 构建并验证,保留同时进行的静止约束修改;代码/Wiki 已推送,临时 worktree/分支清理。脚本、截图、诊断、请求与冻结二进制归档于
~/workspaces/insight_capture_tests/native_ui_20261012/。后端和驻留 Qt 未重启,新代码由./native_dashboard/run.sh在源码较新时自动构建并启动。
详见 Qt 界面与切页优化、Qt 功能对齐清单。
2026-10-12 · Insight3 静止约束、运动解除与计算预算
提交:50e7ef0(feat/egohalo-native)。
- 长采样区分了原始 VIO 缓慢漂移与地图修正变化;显示平滑不能消除定位层的误差。已定位的 Insight3 只有图像固定参考、原生 STATIC 状态、VIO 小运动和最近已收敛地图确认同时成立,才保持进入时世界位姿;没有写死间距,原始 VIO/图像录制保留,Ego 不约束。
- 检测运动、输入失效、时间戳间断/复位即解除,重新进入要求新的地图确认;开启权威 Cube Marker 修正的相机禁用,另有 CLI 对照开关。静止时继续检查图像证据并跳过重复 SuperGlue/PnP,Qt 黄色“静止约束”明确区分当前地图匹配。
- 61 项 Python 功能/回归、实际 ROS 消息回调中的运动解除与时间轴复位、Qt C++ 状态/模型检查通过。两分钟全静止采样 A/B 均 120/120 active、无解除,估计间距约 10.259 cm 保持不变;同期 60 秒 GPU/CPU 中位约 68%/83%,不同时间旧基线不是严格性能对照或光学时延验收。
- 180 秒现场两台实际移动:原始与统一位姿均更新,两台约束解除后重新进入,未新增大幅重定位;最后 60 秒间距范围约 56.063–56.264 cm(约 2 mm 变化),仍有保守解除。不同重启首次匹配曾得到约 11.18 cm,静止稳定不能代替首次匹配精度,实物测距与长期运动定位仍待验收。
- 最终定位服务与默认唯一 Qt 已部署,六路视频和三模型实际加载,持续诊断关闭。完整脚本/数据/构建/截图存于
~/workspaces/insight_capture_tests/static_localization_20261012/;定位说明、性能记录。稳定 Qt 标签保持不变。
2026-10-12 · Native Qt 原生侧边栏与九个功能页面
提交:f1c0fa5(feat/egohalo-native)。
- 从当前分支建立独立 worktree,完成后合回原分支并删除临时分支与 worktree。侧边栏分组、编号与网页相同,九个入口均使用原生 Qt/QML;复用现有 API,没有嵌入网页。
- 接入任务创建/编辑、录制库与确认删除、UMI/LeRobot 导出、完整性/轨迹评分、WiLoR 骨架播放、优化及轨迹比较、话题/目录录制、相机功能与语音设置。空间页保留 NVIDIA 原生视频及 Qt Quick 3D。
- 切页释放本客户端实时预览,MP4 保持时间位置并暂停;后端录制与作业继续。固定状态栏避免轮询造成页面跳动,手部绘图范围仅在结果加载时计算;录制期间禁用任务与重操作。
- 独立模拟 API + Xvfb 实际点击验证九页加载、任务错误恢复、参数契约、处理进度/结果、录制跨页保护、设置以及删除取消/确认,Qt 日志无错误。启动脚本另验首次构建、复用与源码更新自动构建。
- 真实后端与驻留 Qt 未重启,保留主 checkout 同时出现的定位/显示修改;构建产物和截图、请求记录存于
~/workspaces/insight_capture_tests/native_sidebar_20261012/。./native_dashboard/run.sh检测源码更新后自动重新构建。模拟验收不代表设备录制、WiLoR 推理、导出文件或重建质量已经验收。
2026-10-12 · 静止模型抖动的显示端平滑
提交:8be259e(feat/egohalo-native)。
- 用户确认当前两个 Insight3 间距大致正确,随后放大视图发现静止抖动。20 秒采样原始 VIO/统一位姿存在亚毫米逐帧噪声,期间没有新增大幅重定位;A 另有约 6.5 mm 的缓慢地图修正,不能全部视为细碎噪声。
- 只给实时模型显示添加位置与四元数自适应低通,低速 3 Hz、运动时提高截止频率,最多 30 Hz;没有固定死区、额外帧队列或渲染循环。超过 2 cm/5° 的瞬时跳变、输入间断、generation 变化和恢复显示直接采用新位姿,回放绕过过滤。原始位姿、轨迹、定位和录制不改。
- 同一真实输入回放:A/B/头部逐帧位置 P95 0.340/0.260/0.295 mm → 0.170/0.134/0.159 mm,角度 P95 约减少一半。模拟 20 cm/s、90°/s 最大残差 2.24 mm/0.39°,通过符号反转、断点、回放及 Qt 源/显示分离检查,不作为光学时延或定位精度改善。
- 新版实窗六路视频、三模型加载成功;某次显示间距 8.090 cm,原始输入 8.092 cm。诊断同时提供显示/源位姿;缓慢漂移仍会显示,不能靠平滑证明定位可靠。
- 已构建、部署默认唯一 Qt,关闭诊断;后端和地图未重启。完整记录,采样、测试、诊断及旧二进制在
~/workspaces/insight_capture_tests/native_jitter_20261012/。
2026-10-12 · 六路建图竞争优化与定位确认修复
提交:3e7f139、6cc38d8(feat/egohalo-native)。
- 两个 Insight3 接近重叠时,独立全局位姿中心间距约 1.7 cm,原始 VIO 14 秒仅毫米级变化;A 记录 28 次大幅重定位、B 为 0。当前地图仅 8 个确认点,不能套用此前 827 点验收结果。证据指向 A 地图修正不稳定,没有用模型偏移掩盖问题。
- 候选默认两两不超过 5 cm/3°,5 次中至少 3 次支持且含当前观测;重复替代解阻止确认,修正保留完整同一候选 SE(3)。PnP 门限不降低。几何通过但修正不一致时显示定位确认中,无新地图观测时显示 VIO 外推;后端连接和设备离线分别显示。
- 去畸变限制 OpenCV 内部并行、解码后先选帧再转换,并用 typed byte array 避免 ROS 逐字节校验。四路争抢时消息构造约 200–263 ms → 1.7–2.9 ms;真实 ROS CDR 和像素完全一致。14 秒各双目输出 70 帧、四路队列/参考重置均为 0,恢复发布 5 Hz。新增每秒 rig 管线计数。
- SuperPoint 使用最多 8 项图像内容缓存,变化像素/阈值重新计算,不缓存地图 XYZ 或定位修正;真实 TensorRT 重复请求输出一致。Qt 只在展示状态变化时通知,静态原始指标变化不会触发整组重绘。
- 51 项相关 Python 检查、Qt 真 HTTP/状态/轨迹/模型检查、60 个 AU 的硬件选帧像素对照及六路真实窗口通过。最终 60 秒 Ego sink 29.84–30.02 FPS,Insight3 A/B 28.77/28.41 FPS,A/B 大幅重定位均为 0;不是曝光到屏幕延迟。CPU/GPU 中位仍约 83%/93%,不声称整机负载已显著下降。
- Ego 地图保留;新版 Qt、去畸变及 TensorRT worker 已部署,最终一个默认 Qt 窗口、逐帧诊断关闭。后测相机中心间距约 19.3 cm,期间 A 实物视角也变动,尚未与实物测距对照,定位精度和长期漂移仍待验收。稳定标签保持不变。
- 完整性能记录、定位修正说明;证据归档于
~/workspaces/insight_capture_tests/native_perf_20261012/。
2026-10-12 · 收紧视频列并扩大 Native 3D 视图
提交:80c5553(feat/egohalo-native)。
- 固定 2∶1 分栏造成竖屏视频两侧留白。现按源图像比例和可用高度计算视频列宽度,取消左右视频内边距,完整等比例显示,把多余宽度交给 3D。
- 真实 2560×1440 全屏:视频区约 1245 px、3D 1274 px;六路的水平空余均小于 1 px,仅有布局取整。窗口缩放后视频区约 685 px、3D 875 px,六路继续渲染、三个模型加载成功,无 QML 绑定循环或递归布局错误。
- 隔离目录 Qt 构建通过,日常
.native-build/insight-native已更新,默认./native_dashboard/run.sh保留唯一窗口并关闭诊断;采集和建图服务未重启。网页构建通过,dist 无变化。缺少视频尺寸的回放保留原分栏宽度。 - 截图、窗口诊断和更新前二进制归档于
~/workspaces/insight_capture_tests/native_layout_20261012/。
2026-10-12 · Ego 四路建图、Insight3 匹配与模型坐标修复
提交:7235d43(feat/egohalo-native)。完整说明。
- Ego 四路只各解码一次,形成前置、左重叠、右重叠三组独立去畸变双目;四个物理相机都提供定位参考,地图与 BA 使用各组内外参及投影矩阵。标定版本不一致停止新观测,完整新标定使旧地图、参考和修正失效。
- Insight3 独立探索参考视角并保持成功视角积累一致性;在匹配前过滤低置信度对应,地图成熟后继续图像参考帧匹配,失败再走全局描述子。保留原 PnP、覆盖和 3/5 多帧门限,区分真正地图匹配与仅 VIO 外推。
- 用户完成现场运动后生成确认地图,最后观察为 827 点。Qt 原先仍显示三套独立原始 VIO,已接入统一地图位姿;用户确认 B 相对头部位置正确。没有用模型偏移补偿坐标错误,也没有修改设备固件。
- 127 项回归及 5 组 ROS/配置启动检查通过。最终 30 秒状态采样按源图像时间戳去重:A 29/29、B 30/30 通过;内点 13–16 / 16–20,重投影误差 0.617–1.368 / 1.112–1.942 px。独立 6 秒三路全局位姿各收到 180 条消息,同一地图坐标。
- 日常默认 Qt 保留,一套服务栈运行。
native-qt-stable-2026-10-10标签未变。测试、标定、真实匹配输入、配置备份和截图归档于~/workspaces/insight_capture_tests/egohalo_mapping_20261012/。绝对精度、模型安装外参测量、完整运动范围和长期漂移仍待专门验收。
2026-10-10 · 本机 Qt 直接预览与姿态更新优化
提交:53c03bd(feat/egohalo-native)。优化前稳定基线仍为 native-qt-stable-2026-10-10。
- 本机 Qt 复用现有 ROS reader,经 loopback 直接消费 Insight3 原始图像和 Ego 原始 H.264;省掉本机编码/WebRTC 中转,网页与远程 Qt 保留旧链路。默认入口仍为
./native_dashboard/run.sh,INSIGHT_NATIVE_TRANSPORT=webrtc可作对照。 - 任务/录制状态读盘移到线程并缓存统计;隐藏或不变轨迹跳过几何更新,夹爪节点缓存,保留显示轨迹最多 4096 点、完整录制不抽稀。离线视频释放连接、恢复后自动重连。
- 116 项 Python 回归与 Qt C++ 检查通过;保存的 Ego H.264 六路隔离实窗、三模型、回放暂停/跳转/继续/返回实时、离线连接恢复通过。
- 真实 Insight3 A/B 90.10 秒输出 29.99/30.00 FPS,主机预览队列接收到 sink 入口 P95 8.92/8.33 ms,最大帧间隔 51.18/43.61 ms;不是曝光到屏幕扫描延迟。姿态推送约 30 Hz、最长间隔 53.95 ms;任务/录制状态抽样最大 10.37/12.40 ms。
- 实机 Qt 旧 WebRTC 显示对照通过;开发 Chromium 不支持 H.264,网页检查显式禁用 RTC,验证 JPEG/API/WS 与 Qt 共存,无页面异常,未声称网页 H.264 呈现验收。默认客户端与唯一服务栈已部署,逐帧诊断关闭。
- Ego 实物重连、运动统一定位、长期六路录制、光学端到端验收仍待安排。详见 性能记录;数据、二进制与脚本归档在
~/workspaces/insight_capture_tests/native_optimization_20261010/。
2026-10-10 · 稳定版本地 Qt 基线
- 标记并推送
native-qt-stable-2026-10-10,对应提交723ed28,名称为“稳定版本地 Qt”。后续性能优化在当前分支继续,标签保持不变。 - 基线验证:108 项回归通过;Ego 离线时 Insight3 A/B 约 90 秒实际输出 29.86/29.92 FPS,窗口内没有超过 100 ms 的 sink 帧间隔。
- 本机另存二进制、配置和 SHA-256 于
~/workspaces/insight_capture_tests/native_optimization_20261010/stable/。源码标签不包含未跟踪的现场配置和编译产物。 - 稳定标记限定于已验证行为;Ego 实物重连、运动统一定位和长期六路录制仍待验收。
2026-10-10 · 修复 Ego 拔掉后两台 Insight3 断续
提交:723ed28(feat/egohalo-native)。
- 抓包定位失效 Ego USB 地址仍被 DDS 通告,Insight3 反复 ARP 查询后出现约 2 秒发送间断;本地域排除 Ego 专用地址,跨域桥接在源地址消失时退出、重新出现时重建。
- 输入/处理 FPS 以墙钟窗口统计,停顿进入分母,避免间断流仍标称 30 FPS。
- 108 项回归与独立 ROS 桥接断开/恢复检查通过;现场约 90 秒 Qt 实测 A/B 29.86/29.92 FPS,观察窗口内无超过 100 ms 的 sink 帧间隔。默认 Qt 和唯一后端已恢复,Ego 实物重连复核待后续。
2026-10-10 · EgoHalo Native 接入与单配置低延迟预览
提交:b97431b、90e1e82(feat/egohalo-native)。
- 新增 Insight3 A/B + EgoHalo 配置、原始 H.264 四路转发/录制/回放、标定去畸变建图输入;视频占约三分之二,轨迹约三分之一。
- 关闭重复测试服务,保留一套 domain 20 运行配置;减少 CDR 拷贝、调度竞争、解码缓冲占用和错误的参考帧缺失恢复。
- 95 项回归通过;实际六路录制、Qt 回放完成。六路在线短测 Ego 约 29–30 FPS,主机接收至显示入口 P95 82–87 ms,不是光学端到端延迟。
- 日常目录和 Native 二进制已更新;Ego USB 在 15:59:56 断开,重连后的最终六路复核仍待进行。运动统一定位与长期录制验收未完成。详见 EgoHalo 专题。
2026-10-10 · 数采背包硬件说明手册
提交:d6ac89c(experiment/qt-native-dashboard)。
- 新增 12 页硬件说明 PDF、HTML 源、五张安装手册实物图及本机核验记录,并在 README 与 Wiki 提供入口。
- 将电池 D-Tap / 12V 分路、三相机 USB CDC-NCM 网络拓扑与 Orin NX 8GB 本机盘点合并,补全安装、启停、存储、串口/CAN 和排查说明,避免把软件接口存在写成实际硬件已接入。
- 对两份旧文档上电顺序的差异按独立供电开关能力作区分;明确电池容量、线束针脚等仍未确认。
- 验证:12 页 A4、图片全部加载、内容无越界、中文可提取、页码完整,完成逐页目视检查。没有录制验收、没有改变服务或设备配置。