# 实现方案 开始时间:2026-05-18-17-40-02 ## 总体架构 - `backend/`:Python FastAPI 服务,负责文件上传、帧抽取、导丝分割、结果落盘和静态文件服务。 - `frontend/`:单页 Web 操作台,使用原生 HTML/CSS/JS,避免额外前端构建依赖。 - `storage/`:运行时存放上传文件、处理帧、掩膜、叠加图和输出视频。 - `scripts/`:生成演示视频、启动服务和测试辅助脚本。 - `tests/`:算法与 API 的基础回归测试。 ## 分割方法 1. `hessian_ridge` - 对灰度图做 CLAHE 增强。 - 使用 `skimage.filters.frangi` 进行多尺度细线/管状结构增强。 - 自适应阈值与形态学清理后输出掩膜。 2. `edge_morphology` - 对反相增强图执行黑帽/顶帽和 Canny 边缘提取。 - 结合细长形态学核连接断裂线段。 - 用连通域面积过滤去除噪声。 3. `temporal_difference` - 视频场景下利用相邻帧差分提取移动细线候选。 - 与 `hessian_ridge` 的结构响应相交/相并,降低静态骨骼假阳性。 - 图片场景无前一帧时自动退化为 `hessian_ridge`。 4. `fusion` - 将 Hessian、边缘形态学、时序差分结果按权重融合。 - 提供更稳定的第一版默认结果。 5. `compare` - 对同一批帧运行多种方法,前端以矩阵方式对比。 ## Web 交互 - 上传图片区和算法参数面板置于首屏,面向工程调试而非营销页。 - 结果区显示原帧、叠加图、掩膜覆盖率、细线骨架长度等指标。 - 提供输出视频与单帧结果链接。 - 页面风格采用冷静的医学影像工作台:深色背景、清晰边界、克制高亮。 ## 部署方式 - 使用 Python 虚拟环境安装依赖。 - `scripts/run_dev.sh` 启动 FastAPI,默认监听 `0.0.0.0:8000`。 - FastAPI 直接服务前端静态文件,访问 `http://127.0.0.1:8000`。 ## 后续扩展路径 - 增加 PyTorch/ONNX 模型适配器,接入训练好的 U-Net/FRA-Net/MSLNet 类模型。 - 接入 CathAction 或自有标注数据训练流程。 - 增加人工修正、导丝中心线导出、端点定位和时序跟踪。