亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Python語言的圖文識別方法研究

        2019-08-07 06:01:14史記征
        關(guān)鍵詞:符號語言

        ◆史記征 崔 俊

        (重慶安全技術(shù)職業(yè)學(xué)院 重慶 404020)

        將圖片翻譯成文字一般被稱為光學(xué)字符識別,其英文拼寫為Optical Character Recognition,簡稱OCR。光學(xué)字符識別的處理對象是通過拍照或者掃描獲得的圖片文本資料,并對圖像文件進(jìn)行分析提取,從而獲得圖片上的文字信息的過程。OCR的應(yīng)用多在打印、平面廣告、印刷等行業(yè),用來快速將圖片或紙質(zhì)資料轉(zhuǎn)換為可供編輯的文本資料,技術(shù)性較強(qiáng),對從業(yè)人員要求較高。在國內(nèi),對中文OCR研究水平較高的企業(yè)有漢王、清華文通、尚書,他們的產(chǎn)品各具特色,價格昂貴。國外對OCR的研究較早,IBM、惠普、微軟等一些大型智能產(chǎn)品公司,雖然沒有生產(chǎn)自己的OCR產(chǎn)品,但他們的技術(shù)人員早已掌握OCR核心原理,并在自己的軟件系統(tǒng)中嵌入了OCR功能。對于一般的程序設(shè)計者,并不需要完整的OCR功能,主要在開發(fā)中能夠集成基本的OCR功能就可以了。利用Python語言第三方庫,通過少量代碼,即可實現(xiàn)圖文識別,將給工作、生活、學(xué)習(xí)帶來極大便利。

        1 Python語言圖文識別背景

        1.1 Python語言的特點(diǎn)

        吉多·范羅蘇姆( Guido Van Rossum)作為Python語言的設(shè)計發(fā)明者,于1990年發(fā)布了Python的第一個版本。作為一種計算機(jī)高級程序設(shè)計語言,Python具有如下特點(diǎn):

        (1)易于學(xué)習(xí)

        Python的編程思維簡單,注重邏輯、輕于語法,庫資源豐富。Python的程序流程清晰、控制簡單,保留字較少、易于理解。

        (2)易于閱讀

        Python代碼定義得非常清晰,它沒有使用其他語言通常用來訪問變量、定義代碼塊和進(jìn)行模式匹配的命令式符號,而是采用強(qiáng)制縮進(jìn)的編碼方式,去除了“{}”等語法符號,從而看起來十分規(guī)范和優(yōu)雅,具有極佳的可讀性。

        (3)免費(fèi)、開源

        Python是FLOSS (自由/開放源碼軟件)之一。使用Python是免費(fèi)的,開發(fā)者可以自由地發(fā)布這個軟件的副本,閱讀源代碼,甚至對它做改動。

        (4)高級語言

        使用 Python語言編程時,無須考慮諸如管理程序內(nèi)存等底層的細(xì)節(jié),只需集中精力關(guān)注程序的主要邏輯即可。

        (5)可移植性

        由于Python語言具有開源的特點(diǎn),Python代碼的移植非常方便,可以在各種不同的操作系統(tǒng)上運(yùn)行,應(yīng)用十分廣泛。在計算機(jī)的各個領(lǐng)域,Python都取得了一席之地,成長持續(xù)迅速。因為Python是用C語言開發(fā)的,正是由于C語言具有極強(qiáng)的可移植性,使得在任何帶有 ANSI C編譯器的平臺上也可以運(yùn)行Python代碼。

        (6)面向?qū)ο?/p>

        Python不但支持面向?qū)ο缶幊蹋仓С置嫦蜻^程編程。在“面向?qū)ο蟆钡木幊陶Z言中,程序代碼是由數(shù)據(jù)和功能組合而成的對象構(gòu)建起來的。與其他的面向?qū)ο笳Z言不同,Python以極其簡單而又非常強(qiáng)大編碼風(fēng)格實現(xiàn)了面向?qū)ο缶幊獭T凇懊嫦蜻^程”的語言中,程序是由過程或僅僅是可重用代碼的函數(shù)構(gòu)建起來的。

        (7)解釋性

        Python作為一種解釋型編程語言,在開發(fā)過程中不存在編譯環(huán)節(jié)。通常情況下,由于程序運(yùn)行不依賴于本地機(jī)器碼,純粹的解釋型語言通常比編譯型語言運(yùn)行得慢。然而,與 Java語言類似,Python本質(zhì)上是字節(jié)編譯的,其結(jié)果就是可以生成一種近似于機(jī)器語言的中間形式。這不僅改善了Python的性能,同時使它保持了解釋型語言的優(yōu)點(diǎn)。

        (8)可擴(kuò)展可嵌入性

        在Python中,部分程序可以使用其他語言編寫,如C/C++。同時,Python還可以嵌入到C/C++程序中,為它們提供腳本功能。

        1.2 Python語言版本

        Python發(fā)展至今,經(jīng)歷了多個版本的更迭,目前仍然保留的版本主要是基于Python2.X和Python3.X。Python3.X 是未來的趨勢,有許多重要的類庫都已經(jīng)停止對Python2.X的更新,只保留對Python3.X的更新。

        1.3 圖文識別API

        Python進(jìn)行圖文識別主要使用 pytesseract庫和 pillow庫。PyTesser是 Python的光學(xué)字符識別模塊,它將圖像或圖像文件作為輸入并輸出一個字符串。PyTesser使用Tesseract OCR引擎,將圖像轉(zhuǎn)換為可接受的格式,并將 Tesseract可執(zhí)行文件作為外部腳本調(diào)用。PIL(Python Imaging Library)是Python平臺上的圖像處理標(biāo)準(zhǔn)庫,PIL功能非常強(qiáng)大,但其API卻非常簡單易用。由于PIL僅支持到Python 2.7,于是有編程愛好者在PIL的基礎(chǔ)上創(chuàng)建了兼容的版本,名字叫pillow,支持最新的Python 3.x。圖文識別需要安裝Tesseract OCR引擎,Tesseract的Windows安裝包下載地址為:http://digi.bib.uni-mannheim.de/tesseract/tesseractocr-setup-4.00.00dev.exe,下載后雙擊直接安裝即可。安裝完成后,需要將Tesseract添加到系統(tǒng)變量中。如識別中文漢字,需到https://github.com/tesseract-ocr/tessdata/find/master/chi_sim.traineddata下載chi_sim.traineddata文件,然后將chi_sim.traineddata文件放到Tesseract OCR引擎安裝目錄下的tessdata文件夾下。

        2 Python語言在圖文識別中的應(yīng)用

        2.1 第三方庫安裝

        Python第三方庫最常用的安裝方式是通過 pip命令。作為Python的內(nèi)置命令,pip需要通過命令行執(zhí)行。本文所需庫的安裝命令有兩條:pip install pillow、pip install pytesseract。

        2.2 圖文識別過程

        (1)在D盤根目錄下保存待識別的圖片文件,文件分別命名為“數(shù)字.png”、“英文.png”、“漢字.png”、“符號.png”,圖片文件內(nèi)容如圖1——圖4所示。

        (2)編寫Python代碼

        #文件名:ImageConvertText.py

        # -*- coding: utf-8 -*-

        from PIL import Image

        import pytesseract

        print("-------------------------------------")

        text=pytesseract.image_to_string(Image.open('D:XX.png'),lang='chi_sim')

        #XX代表D盤下待識別的圖片文件名

        #chi_sim是一個解析中文簡體的數(shù)據(jù)包,需自己下載

        print(text)

        print("-------------------------------------")

        圖1 數(shù)字

        圖2 英文

        圖3 符號

        圖4 漢字

        (3)圖文識別結(jié)果分析

        圖5 數(shù)字識別結(jié)果

        圖6 英文識別結(jié)果

        圖7 符號識別結(jié)果

        圖8 漢字識別結(jié)果

        從識別結(jié)果可以看出:Python庫對數(shù)字、英文單詞、漢字的識別正確率極高,能達(dá)到99%;但對常見符號的識別正確率較低。這和圖片上文字所使用的字體、圖片清晰度、圖片是否有污點(diǎn)、圖片中的文字是否排列整齊有關(guān)。可以通過機(jī)器學(xué)習(xí),對常見符號進(jìn)行識別訓(xùn)練,以提高識別正確率。

        3 結(jié)語

        由于Python語言擁有強(qiáng)大的第三方庫,利用Python庫進(jìn)行圖文識別,代碼量少、識別準(zhǔn)確率高,為圖片文字轉(zhuǎn)化為可編輯的文本提供了一種有效的途徑,將為人們獲取知識提供極大的便利。

        猜你喜歡
        符號語言
        學(xué)符號,比多少
        幼兒園(2021年6期)2021-07-28 07:42:14
        語言是刀
        文苑(2020年4期)2020-05-30 12:35:30
        “+”“-”符號的由來
        讓語言描寫搖曳多姿
        變符號
        多向度交往對語言磨蝕的補(bǔ)正之道
        累積動態(tài)分析下的同聲傳譯語言壓縮
        我有我語言
        倍圖的全符號點(diǎn)控制數(shù)
        圖的有效符號邊控制數(shù)
        91国产熟女自拍视频| 国产在线AⅤ精品性色| 国产成人亚洲精品电影| 99re6久精品国产首页| 最新永久免费AV网站| 亚洲国产一区二区精品| 一区二区三区亚洲免费| 大量漂亮人妻被中出中文字幕| 亚洲区精品久久一区二区三区女同 | 视频一区二区在线播放| 在线观看网址你懂的| 无码专区亚洲avl| 一区二区三区精品偷拍| 亚洲av无吗国产精品| 美女丝袜美腿玉足视频| 亚洲综合av一区二区三区蜜桃| 免费无遮挡无码永久视频| 97无码免费人妻超级碰碰夜夜| 女人被爽到呻吟gif动态图视看| 免费精品无码av片在线观看| 人妻少妇精品无码专区二| 97色综合| 国产少妇一区二区三区| 国产精品国产三级国产专区不| 久久精品网站免费观看| 少妇被粗大的猛烈进出69影院一| 国产影片中文字幕| 国产日韩网站| 国产成人精品免费视频大全| 精品av一区二区在线| 久久无码高潮喷水抽搐 | 日韩精品无码免费专区网站| 日韩高清亚洲日韩精品一区| 亚洲区1区3区4区中文字幕码| av免费在线播放观看| av在线观看一区二区三区| 中文字幕无码日韩专区免费| 亚洲黄色性生活一级片| 一个人看的在线播放视频| 精品久久综合日本久久综合网| 国产裸体美女永久免费无遮挡 |