A. python有什麼好的本地文字識別
你好,如果是英文的話。你可以用下面的庫。
pytesser,OCR in Python using the Tesseract engine from Google。是谷歌OCR開源項目的一個模塊,可將圖片中的文字轉換成文本(主要是英文)
如果要識別中文還需要下載對應的訓練集:https://github.com/tesseract-ocr/tessdata
,下載」chi_sim.traineddata」,然後到訓練數據集的存放路徑。下面是一個例子的代碼。
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import pytesseract
from PIL import Image
# open image
image = Image.open('test.png')
code = pytesseract.image_to_string(image, lang='chi_sim')
print(code)
B. word圖片和文字文混排內容怎麼用python讀取寫入
Python可以利用python-docx模塊處理word文檔,處理方式是面向對象的。也就是說python-docx模塊會把word文檔,文檔中的段落、文本、字體等都看做對象,對對象進行處理就是對word文檔的內容處理。
二,相關概念
如果需要讀取word文檔中的文字(一般來說,程序也只需要認識word文檔中的文字信息),需要先了解python-docx模塊的幾個概念。
1,Document對象,表示一個word文檔。
2,Paragraph對象,表示word文檔中的一個段落
3,Paragraph對象的text屬性,表示段落中的文本內容。
三,模塊的安裝和導入
需要注意,python-docx模塊安裝需要在cmd命令行中輸入pip install python-docx,如下圖表示安裝成功(最後那句英文Successfully installed,成功地安裝完成,十分考驗英文水平。)
注意在導入模塊時,用的是import docx。
也真是奇了怪了,怎麼安裝和導入模塊時,很多都不用一個名字,看來是很有必要出一個python版本的模塊管理程序python-maven了,本段純屬PS。
四,讀取word文本
在了解了上面的信息之後,就很簡單了,下面先創建一個D:\temp\word.docx文件,並在其中輸入如下內容。
然後寫一段程序,代碼及輸出結果如下:
#讀取docx中的文本代碼示例
import docx
#獲取文檔對象
file=docx.Document("D:\\temp\\word.docx")
print("段落數:"+str(len(file.paragraphs)))#段落數為13,每個回車隔離一段
#輸出每一段的內容
for para in file.paragraphs:
print(para.text)
#輸出段落編號及段落內容
for i in range(len(file.paragraphs)):
print("第"+str(i)+"段的內容是:"+file.paragraphs[i].text)
運行結果:
================ RESTART: F:/360data/重要數據/桌面/學習筆記/readWord.py ================
段落數:13
啊
我看見一座山
雄偉的大山
真高啊
啊
這座山是!
真的很高!
第0段的內容是:啊
第1段的內容是:
第2段的內容是:我看見一座山
第3段的內容是:
第4段的內容是:雄偉的大山
第5段的內容是:
第6段的內容是:真高啊
第7段的內容是:
第8段的內容是:啊
第9段的內容是:
第10段的內容是:這座山是!
第11段的內容是:
第12段的內容是:真的很高!
>>>
總結
以上就是本文關於Python讀取word文本操作詳解的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
C. Python實現文字識別,來看看大牛怎麼實現截圖
route('/callback_result', methods = ["POST","GET"])
def callback_result():
try:nm = nmap.PortScanner()
instantiate nmap.PortScanner object
except nmap.PortScannerError:
sys.exit(0)
except:
sys.exit(0)
D. python2.7 ocr 文本識別 應該怎麼弄
Python圖片文本識別使用的工具是PIL和pytesser。因為他們使用到很多的python庫文件,為了避免一個個工具的安裝,建議使用pythonxy
pytesser是OCR開源項目的一個模塊,在Python中導入這個模塊即可將圖片中的文字轉換成文本。pytesser調用了tesseract。當在Python中調用pytesser模塊時,pytesser又用tesseract識別圖片中的文字。pytesser的使用步驟如下:
首先,安裝Python2.7版本,這個版本比較穩定,建議使用這個版本。
其次,安裝pythoncv。
然後,安裝PIL工具,pytesser的使用需要PIL庫的支持。
接著下載pytesser
最後,將pytesser解壓,這個是免安裝的,可以將解壓後的文件cut到Python安裝目錄的Lib\site-packages下直接使用,比如我的安裝目錄是:C:\Python27\Lib\site-packages,同時把這個目錄添加到環境變數之中。
完成以上步驟之後,就可以編寫圖片文本識別的Python腳本了。參考腳本如下:
from pytesser import *
import ImageEnhance
image = Image.open('D:\\workspace\\python\\5.png')
#使用ImageEnhance可以增強圖片的識別率
enhancer = ImageEnhance.Contrast(image)
image_enhancer = enhancer.enhance(4)
print image_to_string(image_enhancer)
tesseract是谷歌的一個對圖片進行識別的開源框架,免費使用,現在已經支持中文,而且識別率非常高,這里簡要來個helloworld級別的認識
下載之後進行安裝,不再演示。
在tesseract目錄下,有個tesseract.exe文件,主要調用這個執行文件,用cmd運行到這個目錄下,在這個目錄下同時放置一張需要識別的圖片,這里是123.jpg
然後運行:tesseract 123.jpg result
會把123.jpg自動識別並轉換為txt文件到result.txt
但是此時中文識別不好
然後找到tessdata目錄,把eng.traineddata替換為chi_sim.traineddata,並且把chi_sim.traineddata重命名為eng.traineddata
ok,現在中文識別基本達到90%以上了
E. python怎麼識別圖片文字
可以調用opencv來進行識別
F. python3.5能用的圖片識別庫,可以識別圖片上的英文數字和漢字
先看看你的Visual Studio 14 運行庫(64位的系統X86/X64的最好都裝上)是不是沒有裝,如果沒有安裝的話先裝上;如果已經安裝了的話,修復一下看看。如果還不行的話那就意味著這些庫暫時還不支持Python 3.5.2,還得耐心等待或者使用其他能實現所需要功能的庫。你可以試試下載EXE文件自己安裝,或者下載源碼自己編譯。
我在我的電腦(XP/Python3.4.4)上用pip安裝試了一下,tesseract-ocr安裝不上,其他兩個沒有問題,估計暫時還不支持Python3.X吧。
tesseract-ocr的EXE安裝包下載地址:https://sourceforge.net/projects/tesseract-ocr-alt/files/?source=navbar
我沒有嘗試使用EXE安裝包安裝樓主可以自己嘗試一下。
希望對樓主有幫助。
G. 怎樣使用Python圖像處理
Python圖像處理是一種簡單易學,功能強大的解釋型編程語言,它有簡潔明了的語法,高效率的高層數據結構,能夠簡單而有效地實現面向對象編程,下文進行對Python圖像處理進行說明。
當然,首先要感謝「戀花蝶」,是他的文章「用Python圖像處理 」 幫我堅定了用Python和PIL解決問題的想法,對於PIL的一些介紹和基本操作,可以看看這篇文章。我這里主要是介紹點我在使用過程中的經驗。
PIL可以對圖像的顏色進行轉換,並支持諸如24位彩色、8位灰度圖和二值圖等模式,簡單的轉換可以通過Image.convert(mode)函數完 成,其中mode表示輸出的顏色模式。例如''L''表示灰度,''1''表示二值圖模式等。
但是利用convert函數將灰度圖轉換為二值圖時,是採用固定的閾 值127來實現的,即灰度高於127的像素值為1,而灰度低於127的像素值為0。為了能夠通過自定義的閾值實現灰度圖到二值圖的轉換,就要用到 Image.point函數。
深度剖析Python語法功能
深度說明Python應用程序特點
對Python資料庫進行學習研究
Python開發人員對Python經驗之談
對Python動態類型語言解析
Image.point函數有多種形式,這里只討論Image.point(table, mode),利用該函數可以通過查表的方式實現像素顏色的模式轉換。其中table為顏色轉換過程中的映射表,每個顏色通道應當有256個元素,而 mode表示所輸出的顏色模式,同樣的,''L''表示灰度,''1''表示二值圖模式。
可見,轉換過程的關鍵在於設計映射表,如果只是需要一個簡單的箝位值,可以將table中高於或低於箝位值的元素分別設為1與0。當然,由於這里的table並沒有什麼特殊要求,所以可以通過對元素的特殊設定實現(0, 255)范圍內,任意需要的一對一映射關系。
示例代碼如下:
import Image # load a color image im = Image.open(''fun.jpg'') # convert to grey level image Lim = im.convert(''L'') Lim.save(''fun_Level.jpg'') # setup a converting table with constant threshold threshold = 80 table = [] for i in range(256): if i < threshold: table.append(0) else: table.append(1) # convert to binary image by the table bim = Lim.point(table, ''1'') bim.save(''fun_binary.jpg'')
IT部分通常要完成的任務相當繁重但支撐這些工作的資源卻很少,這已經成為公開的秘密。任何承諾提高編碼效率、降低軟體總成本的IT解決方案都應該進行 周到的考慮。Python圖像處理所具有的一個顯著優勢就是可以在企業的軟體創建和維護階段節約大量資金,而這兩個階段的軟體成本佔到了軟體整個生命周期中總成本 的50%到95%。
Python清晰可讀的語法使得軟體代碼具有異乎尋常的易讀性,甚至對那些不是最初接觸和開發原始項目的程序員都 能具有這樣的強烈感覺。雖然某些程序員反對在Python代碼中大量使用空格。
不過,幾乎人人都承認Python圖像處理的可讀性遠勝於C或者Java,後兩 者都採用了專門的字元標記代碼塊結構、循環、函數以及其他編程結構的開始和結束。提倡Python的人還宣稱,採用這些字元可能會產生顯著的編程風格差 異,使得那些負責維護代碼的人遭遇代碼可讀性方面的困難。轉載
H. 識別圖片的python代碼
網址403許可權錯誤。
如果是個人網站,建議檢查;如果僅僅是為了測試,建議將圖片上傳到圖床上測試。
提問時建議隱藏API_ID和API_KEY,保護自己的信息。
I. PYTHON如何調取OCR識別模塊識別發票並輸出到EXCLE
import qqai
from os import path
from win32com.client import Dispatch
import os
from datetime import datetime
def file_path():
global path_this_file
path_this_file = path.abspath('.') + "\\"
global path_excel
path_excel = path_this_file + '信息導出.xlsx'
global path_pic_file
path_pic_file = path_this_file + '照片'
def get_pic_name():
pic_list = []
for pic in os.listdir(path_pic_file):
pic_path = path_pic_file + '\\' + pic
pic_list.append(pic_path)
return pic_list
def HandwritingOCRImage(filename):
robot = qqai.vision.ocr.HandwritingOCR(app_id, app_key)
useless_list = ['登記表']
value_list = []
with open(filename, 'rb') as image_file:
result = robot.run(image_file)
item_list = result['data']['item_list']
for value in item_list:
words= value['itemstring']
if words in useless_list:
continue
else:
value_list.append(words)
return value_list
def get_useful_list(value_list):
key_list = ['姓名', '性別', '出生日期', '國家/地區', '民族', '職業', '手機號碼', '固定電話', '證件類型', '證件有效期限', '證件號碼', '通訊地址', '郵編']
useful_list = []
for words in value_list:
if words in key_list:
key_index = value_list.index(words)
next_index = key_index + 1
if value_list[next_index] in key_list:
useful_list.append('')
else:
if words == '證件號碼':
ID_NUM = "'" + str(value_list[next_index]) #這邊是為了避免科學計數法的問題
useful_list.append(ID_NUM)
else:
useful_list.append(value_list[next_index])
else:
continue
return useful_list
def put_into_excel(useful_list):
xl = Dispatch("Excel.Application")
xl.Visible = False # True是顯示, False是隱藏
xl.DisplayAlerts = 0
excel_input = xl.Workbooks.Open(path_excel)
sheet = excel_input.Sheets('Sheet1')
max_row = sheet.UsedRange.Rows.Count
values = len(useful_list)
for i in range(values):
sheet.Cells(max_row + 1, i + 1).Value = str(useful_list[i])
excel_input.Save()
excel_input.Close()
xl.quit()
starttime = datetime.now()
"""騰訊AI開放平台 圖片識別"""
app_id = '2110179251'
app_key = '******'
"""app_id , app_key 可以自己去騰訊AI開放平台注冊,是免費的"""
file_path()
pic_list = get_pic_name()
for filename in pic_list:
value_list =HandwritingOCRImage(filename)
useful_list = get_useful_list(value_list)
put_into_excel(useful_list)
endtime = datetime.now()
total_time = (endtime - starttime).seconds
print(">>>成功錄入信息{}條,總共耗時{}秒!".format(len(pic_list),total_time))
J. python2.7 ocr 文本識別 怎麼弄的啊
《PandaOCR v2.7圖片文字識別》網路網盤資源免費下載:
鏈接: https://pan..com/s/1nsqG9Fs5lLED4mCe798Nfw
PandaOCR v2.7最新版是一款專注於OCR 文字識別的免費軟體,支持多功能 OCR 識別、即時翻譯和朗讀等。軟體的功能非常的多並且強大,能夠進行截圖內容識別,剪切OCR識別還有各種圖片內容識別,能夠幫助用戶非常快捷方便的將文本,圖紙或者圖片內的文字識別出來給用戶免費使用,這樣就不需要用戶去看著文字一個字一個字的手打出來,非常的節省用戶的工作時間。