envi-classic-lab-automation

使用 ENVI Classic 5.6 自动完成遥感实验并生成完整实验报告。当用户提到 ENVI Classic、ENVI 5.6、遥感实验自动化、代做 ENVI 操作、逐步截图、每一步截图、按指导书完成实验、生成遥感实验 Word/PDF、全自动遥感报告,或提供实验指导书、模板、数据目录和参考成品时使用。此 Skill 负责实验编排与证据完整性,并在证据通过后调用已有 remote-sensin

SKILL.md

GitHub

ENVI Classic 遥感实验全流程

目标是交付真实完成的实验与可核验报告,而不是只写一份看似完整的文字。以 ENVI Classic 5.6(64 位)为首选执行环境;每一个实验操作步骤都必须有自己的真实界面截图。

截图原真性是硬约束:报告只能插入 MCP 捕获或用户明确提供的原始截图文件。禁止使用 Python、Pillow、OpenCV 或其他图像处理方式裁剪、标注、拼接、增强或重绘截图。需要对照时,在 Word 中将两个独立原图对象左右或上下排版,不生成新的合成位图。

必须使用的能力

  1. 先使用 envi-classic MCP 完成环境检查、受控启动、老师输入登记、步骤计划冻结、GUI 操作、截图和证据校验。
  2. 报告写作阶段必须加载并遵循现有 remote-sensing-report Skill。不要在本 Skill 中另造一套报告生成器。
  3. 输入含 PDF、DOC/DOCX 或最终要求 PDF 时,同时使用相应的 PDF/文档 Skill 解析、生成、渲染和检查。

如果 envi-classic MCP 不可用,或 remote-sensing-report Skill 不存在,明确报告依赖缺失并停止在证据包阶段;不得假装已经自动操作 ENVI 或生成最终报告。

工作流

执行前完整阅读 workflow.md 和 evidence-schema.md。需要编写或调试 GUI 配方时,再阅读 gui-recipes.md。

如果任务是“实验九 图像锐化”,还必须读取 experiment-9-image-sharpening.md,使用其中 38 个阶段作为最低截图集合。

如果任务是“实验十 数字形态学处理”,还必须读取 experiment-10-digital-morphology.md,以其中阶段为最低截图集合。该预设刻意比旧成品更细,补足旧成品把多项腐蚀、膨胀、开运算、闭运算合并成少量截图的问题。

1. 盘点输入

  • 把老师提供的实验数据、实验指导书和报告模板视为三类必需输入。学生草稿、旧报告和参考成品都不是生成流程的必需输入。
  • 识别全部数据文件(包括 ENVI 原始数据与 .hdr 配对文件)、已有结果、学生信息、输出要求和可选参考成品。
  • 保留原始文件;所有新输出写入新的运行目录或带明确后缀的成品文件。
  • 从指导书提取:实验目的、原理、操作步骤、参数、输出文件、结果分析要求、思考题。
  • 从模板提取:封面字段、标题层级、字体字号、页眉页脚、目录、图表题注和固定段落。
  • 启动会话后立即调用 envi_classic_register_inputs,登记三类老师输入及哈希;之后不得替换输入。

2. 先建“步骤—截图”检查表

在启动 ENVI 前,把指导书拆成有序 stage_id。每个可独立叙述的操作都必须对应唯一截图,不得等操作结束后再猜步骤。

至少覆盖:

  • 数据打开或输入波段选择;
  • 菜单路径与工具窗口;
  • 每一次参数、核模板、角度、阈值、公式或变量映射设置;
  • 输出文件名、目录和格式设置;
  • 运算完成后的结果窗口;
  • 原始影像与各处理结果的视觉对比;
  • 指导书要求的统计、剖面、直方图或评价指标。

同一个操作同时包含“参数设置”和“结果查看”时,拆成两个阶段。禁止用同一截图代替多个阶段。

检查表完成后、任何 GUI 截图之前,调用 envi_classic_set_stage_plan 冻结完整阶段、证据类型、必填参数键和预期窗口。冻结后不得为通过验收而删减阶段或调低截图数。

3. 实机执行与逐步留证

  1. 调用 envi_classic_health_check,确认目标确为 ENVI Classic 5.6 64 位。
  2. 调用 envi_classic_launch,保存 session_id 与运行目录。
  3. 用 envi_classic_list_menu_items 发现真实菜单,不凭记忆猜名称。
  4. 原生菜单使用 envi_classic_invoke_menu;自绘对话框使用受限 envi_classic_run_recipe。
  5. 每完成检查表中的一个阶段,立即调用 envi_classic_capture_evidence,写清:
    • 唯一 stage_id;
    • 可直接用作图题的中文 caption;
    • 实际操作和菜单路径;
    • 全部关键参数;
    • 能唯一匹配的 ENVI 窗口标题。
  6. 每个结果文件生成后调用 envi_classic_register_output,登记文件、哈希和必要统计。

操作失败或界面与预期不同,停止后续配方,列出当前窗口和菜单重新定位。不得继续盲点坐标。

4. 证据门禁

调用 envi_classic_finalize_evidence。该工具只按已经冻结的计划验收,不再接受临时 required_stages、截图门槛或关闭输出要求等降级参数。

只有 complete=true 才能进入报告写作。若出现漏图、重复阶段、顺序错误、哈希不一致或结果文件缺失,返回 ENVI 补做对应阶段;不得通过删减报告步骤绕过门禁。

5. 委托现有报告 Skill

加载 remote-sensing-report,向它提供:

  • 原始模板;
  • 实验指导书;
  • 数据与登记后的真实结果文件;
  • report-evidence.json 与 report-evidence.md;
  • 学生信息和输出目录;
  • 参考成品体现的完整度要求。

要求它以原模板文件为文档母版,保留模板资产、页边距、页眉页脚和 PAGE 字段;使用真实 Heading 样式生成可更新目录。按证据顺序写详细方法,把原始截图作为图件插入,生成图题、参数表、结果分析、结论和思考题答案。没有证据的数据和结论不得编造。

旧版 .doc 模板应先复制并转换为新的 .docx,不得修改原模板。报告生成器必须读取 MCP 的 report-evidence.json,按 stage_id 和哈希取图;不得依赖“第 N 张图恰好对应某步骤”的脆弱位置映射。

参考成品防泄漏

当用户提供参考成品用于 benchmark:

  1. 先只记录参考文件路径、大小、页数和哈希;不得读取其正文或图片来生成候选报告。
  2. 用老师三类输入和本次 MCP 证据生成候选报告,并记录候选 DOCX/PDF 哈希。
  3. 候选冻结后才读取参考成品,按预先建立的 rubric 比较模板忠实度、步骤覆盖、截图密度、参数正确性和版面质量。
  4. 优化必须泛化到 Skill、MCP 或报告生成规则,不能把参考成品内容硬编码进实验预设。

6. 最终验收

渲染 Word/PDF 并逐页检查。交付必须同时满足:

  • 封面、目录、正文层级和页码完整;
  • 文档确实继承模板资产和样式;标题不是仅靠手工加粗的 Normal 段落;
  • 指导书中的每一步在方法章节有文字、有对应截图、有图题;
  • 参数值、菜单路径、输出名与证据清单一致;
  • 结果章节包含原图和处理结果的可比较展示;
  • 分析与思考题引用真实观察或统计;
  • 图片清晰、未拉伸、未截断,题注与正文不跨页错位;
  • Word 与 PDF 均可打开,页数和内容一致;
  • 原模板、原数据、原报告均未被覆盖。
  • 可选参考成品只参与候选冻结后的评分,且评测记录保留双方哈希。

缺少任何一步截图时,最终状态只能是“证据不完整”,不能称为成品。