我目前正在从事一个需要为 OCR 处理图像的项目。我设置了过滤器以使 OCR 的工作尽可能简单,但图像的一个方面我无法弄清楚如何修复。在包含的图像中,您可以看到我正在尝试阅读的文本(“PRTraining Tissue...”),并且图像周围有一个黑色边框,需要删除才能使我的歪斜校正代码起作用。有没有什么简单的方法可以在不影响文字的情况下快速用白色填充这个黑色边框?
未过滤的图像:
过滤图像:
我已经编写了一些代码来删除大部分背景,但是大的黑点仍然作为边框。包含的代码是我的图像裁剪脚本,它删除了大部分图像的黑色边框并尝试尽可能地隔离文本,但不幸的是,它仍然留下了相当多的黑色,与我的歪斜校正脚本混淆。
def boarderRemoval(img):
"""
Takes in a numpy array and crops the image down to isolate the text (Still leaves a small black border that varys from image to image\n
Vars:\n
- img <- numpy array of the label\n
Returns:\n
- Cropped down image with smaller black borders
"""
contours, hierarchy = cv2.findContours(img, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
cnt = contours[0]
x,y,w,h = cv2.boundingRect(cnt)
correctedImage = img[y: y + h, x: x + w]
return correctedImage
白衣非少年
相关分类