python - 如何在python中改善灰色背景图像上的模糊文本
问题描述
我正在处理灰色背景图像,我必须在其中增强文本以便我可以进行 OCR 我做了一些方法,但我未能增强文本。我正在处理这张图片。https://i.stack.imgur.com/Nm7Ti.jpg
im = cv.imread('image.png')
imgray = cv.cvtColor(im, cv.COLOR_BGR2GRAY)
ret, thresh = cv.threshold(imgray, 127, 255, cv.THRESH_BINARY)
def size_threshold(bw, minimum, maximum):
retval, labels, stats, centroids = cv.connectedComponentsWithStats(bw)
for val in np.where((stats[:, 4] < minimum) + (stats[:, 4] > maximum))[0]:
labels[labels==val] = 0
return (labels > 0).astype(np.uint8) * 255
def y_centroid_threshold(bw, minimum, maximum):
retval, labels, stats, centroids = cv.connectedComponentsWithStats(bw)
for val in np.where((centroids[:, 1] < minimum) + (centroids[:, 1] > maximum))[0]:
labels[labels==val] = 0
return (labels > 0).astype(np.uint8) * 255
sized = size_threshold(thresh, 60, 300)
centered = y_centroid_threshold(sized, 40, 63)
cv.imwrite('ocr_out.png', centered)
解决方案
推荐阅读
- javascript - Javascript使用正则表达式删除字符串中的所有“,”
- sql - 如果第一个字符下划线,SQL Like 运算符不起作用
- matrix - 在处理组织分层数据时,我可以使用矩阵作为可视化来删除 power bi 中的空格吗
- ios - iOS 14.4.2 更新后 Xamarin 表单首选项停止工作
- python-3.x - 如何修复错误 Koa Native Open edX 平台 Ubuntu 20.04 64 位安装错误?
- blueprism - 是否有 vbo 根据其他字段的值从集合中获取值并将其保存为数据项?
- amazon-web-services - AWS S3 Permissios - 创建文件夹,同时只能上传某些扩展
- azure - 什么是服务总线中的传出消息?
- flutter - 有没有办法在同一个查询中使用 <= 或 >= 函数来假设年龄和地理位置
- mysql - UnhandledPromiseRejectionWarning:SequelizeConnectionError:服务器不支持本地主机中的安全连接