czxt3000 2023-11-13 04:59 采纳率: 59.8%
浏览 24
已结题

如何加深图中字体,以便于识别

img


腐蚀不行,锐化不知道怎么选择算子。请给出具体的代码并根据图片确认没问题。

  • 写回答

10条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2023-11-13 04:59
    关注

    引自强大而免费的微信小程序:皆我百晓生

    优化了些,在使用膨胀操作加粗文字后,添加以下代码:
    dilated = 255 - dilated

    这将将文字部分亮度反转,达到将文字变成黑色的效果。

    修改后的代码如下所示:

    import cv2
    import numpy as np
    
    # 加载图片
    image = cv2.imread('wordsicons.png')
    
    # 提取绿色通道
    green_channel = image[:, :, 1]
    
    # 使用双边滤波增强文字清晰度
    filtered = cv2.bilateralFilter(green_channel, 9, 75, 75)
    
    # 使用阈值处理
    _, thresholded = cv2.threshold(filtered, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)
    
    # 应用膨胀操作加粗文字
    kernel = np.ones((3, 3), np.uint8)
    dilated = cv2.dilate(thresholded, kernel, iterations=2)
    
    # 将加深的字体反转为黑色
    dilated = 255 - dilated
    
    # 将加深的字体融合回原始图片中
    result = image.copy()
    result[:, :, 1] = dilated
    
    # 显示结果
    cv2.imshow('Result', result)
    cv2.waitKey(0)
    cv2.destroyAllWindows()
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(9条)

报告相同问题?

问题事件

  • 系统已结题 11月21日
  • 已采纳回答 11月13日
  • 赞助了问题酬金50元 11月13日
  • 创建了问题 11月13日