【问题标题】:How to set config load_system_dawg when using pytesseract to improve result?使用 pytesseract 提高结果时如何设置配置 load_system_dawg?
【发布时间】:2019-12-18 14:48:11
【问题描述】:

我正在尝试通过使用 pytesseract 配置更改参数来改善结果。我想知道是否有可能更改 https://github.com/tesseract-ocr/tesseract/wiki/ImproveQuality#page-segmentation-method 中指定的 load_system_dawg 和 load_freq_dawg,因为我想要得到的单词并不是真正的英语,而是像 XYZ ### 和其他一些独特的字母序列这样的坐标。看截图

我可以调整 --psm 的配置,但如果我尝试 --load_system_dawg 0,则会出现没有这样的命令行参数或文件不存在的错误。我不知道,似乎值得一试......

params = r'--psm 11'
string = pytesseract.image_to_string(img, config = params)

我假设没有办法通过 python 来做到这一点,但如果我可以指导我如何改变它,我会很感激它,因为我对 C++ 的方式了解不多。这个变化会通过pytesseract初始化吗?此外,我也尝试过更改用户模式,但不确定这是否是更好的方法

【问题讨论】:

    标签: python ocr tesseract python-tesseract


    【解决方案1】:

    你需要知道以下几点:

    例如,如果你应用阈值图像将变为:

    接下来申请bitwise_not:

    现在,如果您阅读(假设图像是单个统一的文本块。):

    Hinecratt 1.14.4 1.14.4 / vanilla Javea: 136 51 64bit
    68 fps (8 chunk updates) T: inf vsune fancy-clouds veo Hem: 4ah 8757 2648NE
    Integrated server @ 11 ms ticks, 13 tx, 735 rx Allocated: 814% 1664M6
    C: 1615376 (5) 0: 15, pC: G66, pu: 6, ab: Se
    c afte oe CPU: 16% AND Fiyzen 7 L786 ECight-Core Processor
    Client Chunk Cache: 1659, 75 Display: 1926%1880 CHVIOIA Corporation?
    ServerChunkCache: S734 GeForce OTA 1666 606/PCle/55E2
    ninecrattoverworld FC: a 4.6.4 HVIDIA 431.68
    42: S6L641 / 11.66668 ¢ 361.939 Targeted Block
    Block: S61 11 361 Hinecrattiron_ore
    Chunk: 13 11 3 in 18 @ 22
    Facing: west (Towards negative 43 095.4 7 15.79 Targeted Fluid
    Client Light: 11 (8 sky, 11 block? ninecrattempty
    Server Light: (8 sky, 11 black?
    CHS: 67 MH: 67
    5H 3:67 0: 67 M: 67 ML: 67
    Biome: minecrattdesert
    Local Difficulty: 165 7/7 6.66 (Day 243
    Looking at block: 295 16 361
    Looking at liquid: 295 16 361
    Sounds: 37247 + a7G
    Debug: Pie Cehittl: hidden FPS + TPS Caltl: hidden
    For hele: press Fa + oO
    

    代码:

    import cv2
    import numpy as np
    import pytesseract
    
    # Load the image
    img = cv2.imread("sPQDo1c.png")
    
    # Convert to the HSV color-space
    hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
    
    # Threshold
    thr = cv2.inRange(hsv, np.array([0, 0, 214]), np.array([179, 0, 225]))
    
    # Bitwise-not
    bnt = cv2.bitwise_not(thr)
    
    # OCR
    print(pytesseract.image_to_string(bnt, config="--psm 6"))
    
    # Display
    cv2.imshow("", bnt)
    cv2.waitKey(0)
    

    我使用的是pytesseract版本0.3.7

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-15
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多