python读取图片上的文字_Python帮你读取图片中的文字(OCR)
此文主要介紹如何通過Python讀取圖片中的文字(光學(xué)字符識(shí)別,OCR)
第一步 安裝 tesseract
安裝過程中注意勾選中文(chi_sim, chi_tra)。
第二步 python 安裝 pytesseract pip install pytesserac
下面開始詳細(xì)介紹如何識(shí)別圖片中的(中文)字符。
下圖為案例圖片。
靜夜思
#************************ 導(dǎo)入所需的python庫 **********************#
import cv2
import numpy as np
import pytesseract as pt
import matplotlib.pyplot as plt
#******************* 讀取圖片為灰度格式并查看 ********************#
img = cv2.imread(r'XX\Test.jpg',0)
plt.imshow(img, cmap = 'gray', interpolation = 'bicubic')
plt.show()
#*************** 讀取圖片中的文字并輸出(打印出來)***************#
text = pt.image_to_string(img, lang="chi_sim")
print(type(text),len(text))
print(text)
該部分將輸出:
靜夜思2
我們發(fā)現(xiàn)并沒有讀取出圖片中的文字,可能是圖片中的“噪音”降低了文字的可辨識(shí)度。
讓我們對圖片進(jìn)行黑白二值化處理,提高文字的可辨識(shí)度。
#************ 將圖像進(jìn)行黑白二值處理提高文字的可辨識(shí)度 ************#
ret,img2 = cv2.threshold(np.array(img), 20, 20, cv2.THRESH_BINARY)
plt.imshow(img2, cmap = 'gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([])
plt.show()
text2 = pt.image_to_string(img2, lang="chi_sim")
print(type(text2),len(text2))
print(text2)
該部分將輸出:
靜夜思3
OK,成功讀取出了圖片中的文字,這時(shí)文字以字符串形式保存,下面我們把它轉(zhuǎn)換為列表(list)。
#********** 將讀取后的文字與標(biāo)點(diǎn)符號(hào)以列表(list)形式輸出 **********#
print(text2.split())
該部分將輸出:
['靜', '夜', '思', '李', '白', '床', '前', '明', '月', '光', ',', '疑', '是', '地', '上', '霜', '。', '舉', '頭', '望', '明', '月', ',', '低', '頭', '怪', '故', '鄉(xiāng)', '。']
轉(zhuǎn)化為列表后進(jìn)一步分析,如自言語言處理,將變得非常方便。
如果您喜歡這篇文章,希望您能花一秒時(shí)間留下您的小手印 Thanks?(・ω・)ノ
總結(jié)
以上是生活随笔為你收集整理的python读取图片上的文字_Python帮你读取图片中的文字(OCR)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 禁止套娃是什么意思?禁止套娃梗介绍
- 下一篇: C++轻量级微服务_从微服务架构解析信源