[英]Image Preprocessing for OCR - Tessaract
顯然,這張圖片非常堅固,因為它的清晰度低並且不是真正的單詞。 但是,使用此代碼,我沒有檢測到任何接近:
import pytesseract
from PIL import Image, ImageEnhance, ImageFilter
image_name = 'NedNoodleArms.jpg'
im = Image.open(image_name)
im = im.filter(ImageFilter.MedianFilter())
enhancer = ImageEnhance.Contrast(im)
im = enhancer.enhance(2)
im = im.convert('1')
im.save(image_name)
text = pytesseract.image_to_string(Image.open(image_name))
print(text)
輸出
, Mdfiaodfiamms
這里有什么想法? 我的對比功能產生的圖像是:
哪個看起來不錯? 我沒有大量的OCR經驗。 你會在這里推薦什么預處理? 我已經嘗試將圖像調整得更大,這有點但不夠,還有一堆來自PIL的不同濾鏡。 沒有什么特別接近的
你是對的,tesseract在更高的分辨率下效果更好,所以有時調整圖像大小有幫助 - 但不要轉換為1位。
我得到了很好的結果轉換為灰度,使其大3倍,使字母更亮:
>>> im = Image.open('j78TY.png')\
.convert('L').resize([3 * _ for _ in im.size], Image.BICUBIC)\
.point(lambda p: p > 75 and p + 100)
>>> pytesseract.image_to_string(im)
'NedNoodleArms'
檢查這個jupyter筆記本 :
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.