chore(render): 撤销切片性能诊断埋点 + 记录实测结论
- 实测(帧间隙时间戳)定位: 拖切片本身流畅(GPU/RTX3060, 每帧~7-15ms); 唯一卡点是首次开 体素/切片的 GPU 着色器编译+体上传(一次性 ~1.2-1.7s), 属固有成本, M1 可接受。 - 撤销临时诊断埋点(帧时间戳); 体绘制保持全程统一全质量(Auto/InteractiveAdjust=0)。 - STATUS §6 记录性能排查结论与教训(勿臆测根因, CPU回退/磁盘flush 均被实测否定)。 - 全 40 测试绿; app 构建干净。
This commit is contained in:
parent
a0fcc4cc62
commit
e27a93073a
|
|
@ -70,7 +70,8 @@
|
||||||
1. ~~**散点 #17**:`ScatterActor`(剖面原数据 2597 点彩色散点),数据详情"原数据"视图~~ ✅ **已完成**(2026-06-08,离屏 PNG 核对吻合 Python 真值,接入数据详情「反演剖面/原数据」切换;app 待人工登录肉眼复核交互)。
|
1. ~~**散点 #17**:`ScatterActor`(剖面原数据 2597 点彩色散点),数据详情"原数据"视图~~ ✅ **已完成**(2026-06-08,离屏 PNG 核对吻合 Python 真值,接入数据详情「反演剖面/原数据」切换;app 待人工登录肉眼复核交互)。
|
||||||
2. ~~**异常叠加**:`AnomalyActor`(markType 点/线/面)~~ ✅ **已完成**(2026-06-08,叠加在数据详情 #18/#17 上,「显示异常」开关默认开;离屏 `verify_section_anomaly.png` 折线位置吻合 ref_18;样本 3 异常均 markType=2 dashed;app 待人工登录复核)。**注**:dashed 点画在 VTK OpenGL2 下偏弱(几乎实线),几何/颜色/位置正确,纯观感项可后续调。
|
2. ~~**异常叠加**:`AnomalyActor`(markType 点/线/面)~~ ✅ **已完成**(2026-06-08,叠加在数据详情 #18/#17 上,「显示异常」开关默认开;离屏 `verify_section_anomaly.png` 折线位置吻合 ref_18;样本 3 异常均 markType=2 dashed;app 待人工登录复核)。**注**:dashed 点画在 VTK OpenGL2 下偏弱(几乎实线),几何/颜色/位置正确,纯观感项可后续调。
|
||||||
3. ~~**DEM/影像地形**~~ ✅ **已完成**(2026-06-08)。`render::buildTerrain`(GDAL 读 dem.tif 高程 + image.tif 影像;DEM CRS→4326→GeoLocalFrame 配准成 warp 面;影像 EPSG:3857→像素纹理坐标贴图)。离屏 `verify_terrain_3d.png` 卫星影像正确贴微起伏面、方向正立、配准对位。**注**:影像须用 **GDAL 读像素**(vtkTIFFReader 对此压缩 TIFF 报错);+2 单测;接入 app 3D「地形」图层。dem.tif 低分辨率→起伏细微。Z 基准与帘面/体素夸张未统一(spec M-3 待办)。
|
3. ~~**DEM/影像地形**~~ ✅ **已完成**(2026-06-08)。`render::buildTerrain`(GDAL 读 dem.tif 高程 + image.tif 影像;DEM CRS→4326→GeoLocalFrame 配准成 warp 面;影像 EPSG:3857→像素纹理坐标贴图)。离屏 `verify_terrain_3d.png` 卫星影像正确贴微起伏面、方向正立、配准对位。**注**:影像须用 **GDAL 读像素**(vtkTIFFReader 对此压缩 TIFF 报错);+2 单测;接入 app 3D「地形」图层。dem.tif 低分辨率→起伏细微。Z 基准与帘面/体素夸张未统一(spec M-3 待办)。
|
||||||
- **dd_slice 交互切片** ✅ 已完成(同日):3D「切片」图层=`vtkImagePlaneWidget` 在体素 image 拖切面(spec M1-b);**注**:切片在 image 原始米坐标,与夸张体绘制有纵向比例差(M-3)。交互项待人工复核。
|
- **dd_slice 交互切片** ✅ 已完成(同日):3D「切片」图层=`vtkImagePlaneWidget` 在体素 image 拖切面(spec M1-b);**左键拖动=移动切面**(默认左键取值光标已改),中键=取值;纵向夸张已烤进体素 image(zDisplayScale),切片/体绘制/帘面同坐标系(切片穿过体素)。
|
||||||
|
- **性能排查结论(2026-06-08,实测)**:体绘制走 **GPU(RTX3060)**,拖动每帧~7–15ms(非 CPU 回退,前判误);拖动流畅。**唯一卡点=首次开体素/切片的 GPU 着色器编译+体上传(一次性 ~1.2–1.7s)**,属固有成本,M1 可接受(如需消除可后续 pre-warm)。体绘制设 Auto/InteractiveAdjustSampleDistances=0(全程统一全质量,GPU 够快)。教训:勿臆测性能根因(CPU回退/磁盘flush 均被实测否定),用帧间隙时间戳实测定位。
|
||||||
4. **dd_voxel 回归**:✅ **已完成**(2026-06-08,CRS 已定 EPSG:4547)。`render::buildVoxelFromScatters`:散点 projX/Y→4547→4326→GeoLocalFrame 配准 + IDW(maxDist 裁剪)→ `buildVoxel`;离屏 `verify_voxel_top.png` 两臂支撑吻合 ref voxel_hslice、`verify_voxel_3d.png` profile1 片贴合帘面;+1 单测(VoxelRegister,需 PROJ_DATA)。**UI 已接入**(增量3):3D「视图详情」浮层「体素」图层勾选驱动;main() 自动设 PROJ_DATA(部署须随包附带 proj 数据);PROJ 不可用则该层禁用。**注**:仅 2 交叉线→薄十字片(15.9% 充填,半透明偏淡),可信满体需≥3线(设计 §10/§14)。**dd_slice 交互切片未做**(buildVoxel 已暴露 image 供 reslice widget)。
|
4. **dd_voxel 回归**:✅ **已完成**(2026-06-08,CRS 已定 EPSG:4547)。`render::buildVoxelFromScatters`:散点 projX/Y→4547→4326→GeoLocalFrame 配准 + IDW(maxDist 裁剪)→ `buildVoxel`;离屏 `verify_voxel_top.png` 两臂支撑吻合 ref voxel_hslice、`verify_voxel_3d.png` profile1 片贴合帘面;+1 单测(VoxelRegister,需 PROJ_DATA)。**UI 已接入**(增量3):3D「视图详情」浮层「体素」图层勾选驱动;main() 自动设 PROJ_DATA(部署须随包附带 proj 数据);PROJ 不可用则该层禁用。**注**:仅 2 交叉线→薄十字片(15.9% 充填,半透明偏淡),可信满体需≥3线(设计 §10/§14)。**dd_slice 交互切片未做**(buildVoxel 已暴露 image 供 reslice widget)。
|
||||||
5. **底图瓦片**(二维地图,天地图/Mapbox):M1.5。
|
5. **底图瓦片**(二维地图,天地图/Mapbox):M1.5。
|
||||||
6. **Credential(QtKeychain)**:记住一个月免登录持久化(P3 Task2 未做)。
|
6. **Credential(QtKeychain)**:记住一个月免登录持久化(P3 Task2 未做)。
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue