用途:在文档图像预处理流程中,作为图像增强的最后一步使用,紧接在 ocr_agent 之前调用。它通过 Unsharp Mask 提高文字边缘的局部对比度,让字符轮廓更锐利,从而有助于提升 OCR 精度,是文档预处理的常用标准做法。
主要能力:基于 NumPy 与 OpenCV 实现;支持高斯模糊半径 sigma 与锐化强度 strength 两个参数;可对灰度图处理;可选在锐化后用 Otsu 阈值二值化,得到纯黑白文字。
必要用法:核心函数为 unsharp_mask(img, sigma=1.0, strength=1.5),先高斯模糊,再用 addWeighted 按 1.0+strength 与 -strength 叠加原图与模糊图,最后裁剪到 0-255 并转 uint8。用于 OCR 时先转灰度:gray = cv2.cvtColor(denoised_doc, cv2.COLOR_BGR2GRAY),再 sharpened = unsharp_mask(gray, sigma=1.0, strength=1.5)。可选二值化:_, binary = cv2.threshold(sharpened, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)。
适用场景:文档图像增强、OCR 前处理;文档推荐参数 sigma=1.0、strength=1.5。
限制与注意:锐化过强(strength > 2.5)会产生光晕,反而使 OCR 变差;对非常小的文字(如 MRZ 字段)可将 strength 提高到 2.0。其余使用环境与依赖版本等信息暂未提供。