[开源] 病案翻拍质量自动检测器:面向病案无纸化归档的合规质检工具,支持CLI批量扫描与Web API集成
本项目是专为医院病案室、信息科和医保结算部门设计的图像级质检系统解决病案翻拍件在无纸化归档前「缺页、模糊、非授权复印」三大合规风险。我们不依赖人工抽检而是通过多维度图像分析清晰度/分辨率/对比度、OCR页码连续性校验、水印模板匹配、翻拍与复印特征识别四大核心机制自动生成带问题定位的HTML报告、可筛选Excel清单和结构化JSON数据。它同时提供命令行CLI快速单图诊断、多进程批量处理、可视化Web服务FastAPI Uvicorn及RESTful API接口技术栈基于Python 3.8、OpenCV、Tesseract/PaddleOCR、NumPy与Pandas所有检测逻辑均可配置阈值与权重适配不同等级医院的归档标准。定位与能力范围我们不做通用图像质检只聚焦病案场景的刚性要求必须能判断一页是否该有、是否够清、是否被翻拍过、是否带有效授权水印。因此系统边界非常明确不处理病历文本内容理解不替代临床质控规则引擎也不做原始扫描仪驱动控制。它的输出永远是「这张图是否符合归档图像质量规范」的确定性结论而非概率建议。所有检测项都对应《电子病历系统功能应用水平分级评价标准》《医疗机构病历管理规定》中关于图像完整性、可读性、来源合法性的条款。例如「缺页检测」不是简单数文件个数而是用OCR识别每张图中的页码支持阿拉伯数字、罗马数字、中文格式如“第1页”再按序列逻辑校验中断、重复、乱序「非授权复印检测」则专攻摩尔纹、屏幕边框、反光点、灰度异常等翻拍特有痕迹而非泛泛的“图像失真”。核心功能模块系统能力由五个正交模块构成彼此解耦可独立启用或组合调用模块输入对象输出结果典型使用场景图像质量评估单张图像清晰度拉普拉斯方差、分辨率DPI/像素尺寸、对比度灰度标准差三维度分数与等级判定扫描后即时筛查过滤模糊、低DPI、过暗/过亮图像页码连续性校验图像集合含OCR识别结果缺页、重复页、乱序页、无法识别页四类问题标记及起止位置归档前整套病案完整性核验支撑“一页不漏”审计要求授权水印识别单张图像 水印模板PNG匹配得分、匹配点数、是否命中授权模板判断是否为院内授权翻拍拦截外部复印或手机拍摄件非授权复印检测单张图像摩尔纹/屏幕边框/反光点/灰度异常四项子分合成风险等级无/低/中/高识别手机翻拍屏幕、复印件、扫描件二次翻拍等违规来源报告生成引擎JSON检测结果HTML含图表与问题高亮、Excel多Sheet条件格式、JSON结构化字段三种交付物向病案管理员提交归档质检台账向信息科提供API对接数据使用与配置方式我们提供三层使用入口按需选用命令行CLI适合日常抽检、脚本化集成、服务器批量调度Web服务API适合嵌入HIS、EMR、档案系统实现归档流程自动触发配置文件YAML/JSON所有检测阈值、权重、OCR语言、并发策略均可外部定义例如调整清晰度合格线既可在CLI中临时覆盖mrqa scan-single image.jpg --clarity-threshold 150也可在config.yaml中持久化clarity: threshold: 150.0甚至用环境变量全局生效export MRQA_CLARITY_THRESHOLD150.0这种三层配置体系确保一线人员能快速上手而信息科可统一管控全院质检标准。环境与运行依赖系统对运行环境要求清晰且轻量不捆绑重型中间件组件要求说明是否必需Python3.8主程序运行环境是Tesseract OCR可选安装仅当启用页码识别时需要否可用PaddleOCR替代中文语言包tesseract-ocr-chi-sim或paddleocr支持“第1页”等中文页码格式否英文页码可不装OpenCV / NumPy / Pandaspip install -r requirements.txt图像处理与数值计算基础库是FastAPI / UvicornWeb服务依赖提供API文档Swagger UI与异步任务管理否CLI模式无需Windows用户安装Tesseract只需下载Mannheim版并加入PATHLinuxUbuntu一行命令即可sudo apt-get install tesseract-ocr tesseract-ocr-chi-simmacOS用户则用Homebrewbrew install tesseract tesseract-lang数据与扩展机制所有检测结果均以结构化JSON为中间态字段设计直指业务可读性-quality.overall_score综合分、quality.overall_level优秀/良好/合格/不合格-page_number.page_number识别出的页码、page_number.confidenceOCR置信度-unauthorized_copy.risk_level高/中/低/无风险-issues.by_type按问题类型统计blur/low_resolution/contrast/moire等这使得Excel报告能自动映射为「问题清单」「详细结果」「页码序列」三个工作表并用颜色标注严重程度HTML报告则内置质量分布饼图、分数柱状图、问题条形图而JSON可直接被下游系统解析为质控看板数据源。扩展水印模板也极简只需准备PNG文件通过-w watermark1.png -w watermark2.png参数传入或统一放在./watermarks/目录由配置文件指定系统自动完成模板匹配。限制与说明我们坦诚说明当前能力边界避免误用- OCR页码识别效果高度依赖图像质量若页码区域模糊、倾斜或被遮挡识别率会下降此时建议先用CLI的--verbose参数查看原始OCR文本再针对性优化扫描参数。- 非授权复印检测对纯黑白复印件的判别强于彩色翻拍因摩尔纹等特征在彩色图像中易被压缩算法削弱建议启用reflection_threshold与gray_anomaly_threshold双校验。- 批量处理内存占用与图像尺寸正相关处理超大图如A3幅面300DPI扫描件时建议启用--checkpoint-dir保存中间状态防止单点失败导致全量重跑。- 所有阈值如清晰度100.0、DPI 200均为行业通用起点实际部署时请依据本院历史归档图像样本在config.yaml中微调至最适值而非机械套用。项目地址https://github.com/nexorin9/medical-record-scanner-qa

相关新闻

最新新闻

日新闻

周新闻

月新闻