Python 如何根据提供的词典筛选Tesseract的结果?
我刚开始学习Python,现在已经开始学习Tesseract来创建一个供我自己使用的工具。我编写了一个脚本,用于拍摄屏幕特定部分的四个屏幕截图,然后使用Tesseract从这些图像中提取数据。它基本上是准确的,并且几乎100%的时候都能得到单词,但是仍然有一些垃圾字母和符号,我不希望出现在结果中 与其尝试处理图像(如果这真的是最简单的方法,我可以这样做,但我仍然觉得这会导致更多我不想要的数据通过),我只想保留我可以提供的词典中的结果中的单词Python 如何根据提供的词典筛选Tesseract的结果?,python,tesseract,Python,Tesseract,我刚开始学习Python,现在已经开始学习Tesseract来创建一个供我自己使用的工具。我编写了一个脚本,用于拍摄屏幕特定部分的四个屏幕截图,然后使用Tesseract从这些图像中提取数据。它基本上是准确的,并且几乎100%的时候都能得到单词,但是仍然有一些垃圾字母和符号,我不希望出现在结果中 与其尝试处理图像(如果这真的是最简单的方法,我可以这样做,但我仍然觉得这会导致更多我不想要的数据通过),我只想保留我可以提供的词典中的结果中的单词 import cv2 import pytessera
import cv2
import pytesseract
import pyscreenshot as ImageGrab
im=ImageGrab.grab(bbox=(580,430,780,500))
im.save(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab.png')
im2=ImageGrab.grab(bbox=(770,430,960,500))
im2.save(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab2.png')
im3=ImageGrab.grab(bbox=(950,430,1150,500))
im3.save(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab3.png')
im4=ImageGrab.grab(bbox=(1140,430,1320,500))
im4.save(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab4.png')
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'
from PIL import Image
image = Image.open(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab.png')
image2 = Image.open(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab2.png')
image3 = Image.open(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab3.png')
image4 = Image.open(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab4.png')
print(pytesseract.image_to_string(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab.png'))
print(pytesseract.image_to_string(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab2.png'))
print(pytesseract.image_to_string(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab3.png'))
print(pytesseract.image_to_string(r'C:\Users\Charlie\Desktop\tesseract_images\imagegrab4.png'))
这就是我上面写的。它可能没有尽可能干净,但它做了我现在想要的。当我根据我拍摄的测试屏幕截图运行程序时,我得到以下结果:
Ballistica Prime Receiver
a
“Ze ij
Titania Prime Blueprint
—
‘|! stradavar Prime
Blueprint
My.
Bronco Prime Barrel
uby-
这是我的截图:
它可以很好地提取单词,但是不需要像“uby-”和“'|!”这样的数据,这就是为什么我希望通过只保留字典中的单词来清除它们。如果有更简单的方法,我很想知道,因为我已经一天左右没有使用Tesseract了,除了上面提到的图像处理之外,我不知道还有其他方法可以使用它。你能添加一张测试图片吗screenshot@TERMINATOR编辑了这篇文章以包含itI,因为我帮助添加了图片您可以添加您的考试图片吗screenshot@TERMINATOR编辑了这篇文章,包括了我看到的,因为你的代表性很低,我帮你添加了这张图片