2.7 KiB
经验记录
本文件用于记录每次执行中出现的关键问题和解决方案。
2026-05-18-17-40-02 Web 导丝分割系统第一版
1. pytest 无法导入本地 backend 包
A. 具体问题:执行 pytest -q 时,tests/test_api.py 和 tests/test_segmentation.py 报 ModuleNotFoundError: No module named 'backend'。
B. 产生问题原因:项目是从空目录新建,尚未安装为 Python 包;pytest 启动时没有稳定地把项目根目录放入 pythonpath。
C. 解决问题方案:新增 pytest.ini,配置 pythonpath = . 和 testpaths = tests。
D. 后续如何避免问题:从零构建 Python 项目时同步添加 pytest 配置,或使用标准包管理配置声明测试路径。
2. scikit-image 0.26 参数变更警告
A. 具体问题:remove_small_objects 使用 min_size 时测试出现 FutureWarning。
B. 产生问题原因:当前环境的 scikit-image 版本将 min_size 标记为废弃参数,并引入 max_size 表达“移除小于等于该面积的对象”。
C. 解决问题方案:将 remove_small_objects(binary, min_size=...) 改为 remove_small_objects(binary, max_size=...)。
D. 后续如何避免问题:固定依赖版本后仍要关注测试警告;图像处理库升级时优先查看函数签名和文档。
3. 融合模式首帧过分割
A. 具体问题:视频第 0 帧没有前帧,融合模式覆盖率一度达到约 22%,明显偏宽。
B. 产生问题原因:时序差分在无前帧时退化为 Hessian,融合投票逻辑对无前帧使用了一票通过,导致边缘形态学噪声被并入。
C. 解决问题方案:融合模式统一使用两票通过,低响应时才回退到一票;同时将边缘形态学改成暗线候选约束下的边缘检测。
D. 后续如何避免问题:视频算法要单独检查首帧、丢帧和单图退化路径;融合策略必须记录每个子方法的置信约束。
2026-05-18-17-55-29 运行确认与演示视频录制
1. Playwright 安装下载卡住
A. 具体问题:尝试安装 playwright==1.55.0 用于浏览器录屏时,pip 长时间停留在大型 wheel 下载阶段,没有继续输出。
B. 产生问题原因:Playwright 包体积较大,当前网络下载速度或连接稳定性不足;继续等待会影响本次“确保可运行”的收口。
C. 解决问题方案:终止该安装进程,改用系统已有 google-chrome --headless 截取首页,并使用当前已安装的 OpenCV 将真实页面截图和真实 API 分割结果合成为演示 mp4。
D. 后续如何避免问题:演示录制优先复用本机已有工具;只有确实需要完整浏览器交互录屏时,再单独安装 Playwright 并预留下载时间。