table.append(0)
else:
table.append(1)
bim = lim.point(table, '1')
bim.save(file+'.1.jpg')
two_value()
# 去除干扰线
im = Image.open(file+'.1.jpg')
# 图像二值化
data = im.getdata()
w, h = im.size
black_point = 0
for x in range(1, w - 1):
for y in range(1, h - 1):
mid_pixel = data[w * y + x] # 像素点像素值
if mid_pixel <50: # 找出上下左右四个方向像素点像素值
top_pixel &#61; data[w * (y - 1) &#43; x]
left_pixel &#61; data[w * y &#43; (x - 1)]
down_pixel &#61; data[w * (y &#43; 1) &#43; x]
right_pixel &#61; data[w * y &#43; (x &#43; 1)]
# 判断上下左右的黑色像素点总个数
if top_pixel <5: #小于5比小于10更精确
black_point &#43;&#61; 1
if left_pixel <5:
black_point &#43;&#61; 1
if down_pixel <5:
black_point &#43;&#61; 1
if right_pixel <5:
black_point &#43;&#61; 1
if black_point <1:
im.putpixel((x, y), 255)
# print(black_point)
black_point &#61; 0
im.save(file&#43;&#39;.2.jpg&#39;)
# 去除干扰线
im &#61; Image.open(file&#43;&#39;.2.jpg&#39;)
# 图像二值化
data &#61; im.getdata()
w, h &#61; im.size
black_point &#61; 0
for x in range(1, w - 1):
for y in range(1, h - 1):
if x <2 or y <2:
im.putpixel((x - 1, y - 1), 255)
if x > w - 3 or y > h - 3:
im.putpixel((x &#43; 1, y &#43; 1), 255)
im.save(file&#43;&#39;.3.jpg&#39;)
# 定义常量
APP_ID &#61; &#39;11352343&#39;
API_KEY &#61; &#39;Nd5Z1NkGoLDvHwBnD2bFLpCE&#39;
SECRET_KEY &#61; &#39;A9FsnnPj1Ys2Gof70SNgYo23hKOIK8Os&#39;
# 初始化AipFace对象
aipOcr &#61; AipOcr(APP_ID, API_KEY, SECRET_KEY)
# 读取图片
filePath&#61;file&#43;&#39;.3.jpg&#39;
def get_file_content(filePath):
with open(filePath, &#39;rb&#39;) as fp:
return fp.read()
# 定义参数变量
options &#61; {
&#39;detect_direction&#39;: &#39;true&#39;,
&#39;language_type&#39;: &#39;CHN_ENG&#39;,
}
# 调用通用文字识别接口
result &#61; aipOcr.basicGeneral(get_file_content(filePath), options)
print(result)
words_result&#61;result[&#39;words_result&#39;]
for i in range(len(words_result)):
print(words_result[i][&#39;words&#39;].replace(&#39; &#39;,&#39;&#39;).replace(&#39;.&#39;,&#39;&#39;)) #去掉可能被识别的空格与.
以上就是本文的全部内容&#xff0c;希望对大家的学习有所帮助&#xff0c;也希望大家多多支持爱安网。