【发布时间】:2019-05-04 15:31:28
【问题描述】:
【问题讨论】:
-
使用阈值(寻找亮白色)、模板匹配、OCR 或其他技术来识别文本的位置,然后使用
InPainting填充它docs.opencv.org/3.4.0/df/d3d/tutorial_py_inpainting.html
【问题讨论】:
InPainting 填充它docs.opencv.org/3.4.0/df/d3d/tutorial_py_inpainting.html
在此图像中的大多数情况下,对较白区域进行蒙版然后进行修复的阈值处理。
img = cv2.imread('ultrasound.png')
mask = cv2.threshold(img, 210, 255, cv2.THRESH_BINARY)[1][:,:,0]
dst = cv2.inpaint(img, mask, 7, cv2.INPAINT_NS)
这是面具:
这是修复的图像:
请注意,阈值掩码并不准确,包括没有字母的较亮区域。但更重要的是,如果遮罩不包含需要移除的区域,例如中间十字的暗阴影,则尤其存在问题。这是该区域的放大图。
蒙版只是白色区域,不覆盖黑暗区域。对于此类阈值不够的问题,可以手动调整掩码。在这里,我在蒙版中取了原来的十字架并转移到也覆盖了阴影,并且修复效果更好。 (同样,如果需要,可以手动移除不应该包含在遮罩中的区域)
crosses = mask[235:267,290:320] | mask[233:265,288:318]
mask[235:267,290:318] = crosses
dst = cv2.inpaint(img, mask, 7, cv2.INPAINT_NS)
【讨论】: