我一直在尝试使用图像处理脚本/ OCR,它允许我tesseract从下图中的框中提取字母(使用).

经过大量的处理,我能够让图片看起来像这样

为了消除噪声,我将图像反转,然后进行填充和高斯模糊以消除噪声.这就是我接下来的结果.

在经过一些冲击和侵蚀来消除噪音(侵蚀是扭曲文本的步骤)后,我能够使图像看起来像这样,然后通过tesseract运行

这是一个非常好的渲染,通过tesseract可以获得相当准确的结果.虽然它有时会因为它将散列(#)读为H或W而失败.这引出了我的问题!
有没有办法使用opencv,skimage,PIL(最好是opencv)我可以锐化这个图像,以增加tesseract正确读取我的图像的机会?或者有没有办法从第三张图像到最终图像,而不必使用侵蚀,最终扭曲图像中的文本.
任何帮助将不胜感激!
我一直在尝试使用请求之外的并发命令,以便从多个不同的用户发送多个不同的直接消息。我设计的应用程序的目的是尽可能快地发送这些直接消息,并且单独发送每个请求花费的时间太长。
下面的代码是我尝试过的工作,但我清楚地发现,期货将不会读取存储在数组中的请求。
任何有关如何执行此操作的建议将不胜感激。
from concurrent import futures
import requests
from requests_oauthlib import OAuth1
import json
from datetime import datetime
startTime = datetime.now()
URLS = ['https://api.twitter.com/1.1/direct_messages/new.json'] * 1
def get_oauth():
oauth = OAuth1("xxxxxx",
client_secret="zzzxxxx",
resource_owner_key="xxxxxxxxxxxxxxxxxx",
resource_owner_secret="xxxxxxxxxxxxxxxxxxxx")
return oauth
oauth = get_oauth()
req = []
def load_url(url, timeout):
req.append(requests.post(url, data={'screen_name':'vancephuoc','text':'hello pasdfasasdfdasdfasdffpls 1 2 3 4 5'}, auth=oauth, stream=True, timeout=timeout))
req.append(requests.post(url, data={'screen_name':'vancephuoc','text':'hello this is tweetnumber2 1 2 3 4 5 7'}, auth=oauth, stream=True, timeout=timeout))
with futures.ThreadPoolExecutor(max_workers=100) as executor:
future_to_url = dict((executor.submit(req, url, 60 …Run Code Online (Sandbox Code Playgroud)