<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          用python寫一個圖像文字識別OCR工具

          共 6594字,需瀏覽 14分鐘

           ·

          2023-01-05 08:45

          f918eea66fa8c2e02fc9ee8770fb2f95.webp

          向AI轉(zhuǎn)型的程序員都關(guān)注了這個號??????

          什么是OCR?

          OCR是英文optical character recognition的首字母縮寫,中文意思:光學(xué)字符識別。或者我們管它叫做:文字識別。文字識別是指電子設(shè)備(例如掃描儀或數(shù)碼相機(jī))檢查紙上打印的字符,然后用字符識別方法將形狀翻譯成計算機(jī)文字的過程;即,對文本資料進(jìn)行掃描,然后對圖像文件進(jìn)行分析處理,獲取文字及版面信息的過程。通俗理解,舉個例子:就是把圖片\PDF里的文字信息進(jìn)行抓取,轉(zhuǎn)換成Word、TXT等可以編輯的文字文本。

          掃描文檔僅僅呈現(xiàn)紙質(zhì)文檔最原始的圖像形式,由于文本無法被軟件讀取,從掃描文檔中提取信息通常需要耗時耗力的手動工作。工作量大且容易出錯。然而,通過光學(xué)字符識別 (OCR)可識別獲取文檔內(nèi)容,將其自動轉(zhuǎn)化為可搜索的文字文檔,如word/PDF,轉(zhuǎn)換后的文檔可以作為數(shù)據(jù)保存,大幅降低勞動力提高工作效率


          衡量一個OCR系統(tǒng)性能好壞的主要指標(biāo)有:拒識率、誤識率、識別速度、用戶界面的友好性,產(chǎn)品的穩(wěn)定性易用性及可行性等。


          PP-OCR是PaddleOCR團(tuán)隊自研的超輕量OCR系統(tǒng),面向OCR產(chǎn)業(yè)應(yīng)用,權(quán)衡精度與速度。近期,PaddleOCR團(tuán)隊針對PP-OCRv2的檢測模塊和識別模塊,進(jìn)行共計9個方面的升級,打造出一款全新的、效果更優(yōu)的超輕量OCR系統(tǒng):PP-OCRv3。

          從效果上看,速度可比情況下,多種場景精度均有大幅提升:

          1. 中文場景,相比于PP-OCRv2中文模型提升超5%;

          2. 英文數(shù)字場景,相比于PP-OCRv2英文數(shù)字模型提升11%;

          3. 多語言場景,優(yōu)化80+語種識別效果,平均準(zhǔn)確率提升超5%。


          cb8458f633de241af224d3370389a7cd.webp

          d5e8f214606bc87047ed6a53019b5a9c.webp


          全新升級的PP-OCRv3的整體的框架圖(粉色框中為PP-OCRv3新增策略)如下圖。檢測模塊仍基于DB算法優(yōu)化,而識別模塊不再采用CRNN,更新為IJCAI 2022最新收錄的文本識別算法SVTR (論文名稱:SVTR: Scene Text Recognition with a Single Visual Model ?),并對其進(jìn)行產(chǎn)業(yè)適配。


          b8ab97963441b5f0f2ffbb719fa6ee70.webp


          最近在技術(shù)交流群里聊到一個關(guān)于圖像文字識別的需求,在工作、生活中常常會用到,比如票據(jù)、漫畫、掃描件、照片的文本提取。

          基于 PyQt + labelme + PaddleOCR 寫了一個桌面端的OCR工具,用于快速實現(xiàn)圖片中文本區(qū)域自動檢測+文本自動識別。

          識別效果如下圖所示:

          639439209446da9764469cf7343d73db.webp


          所有框選區(qū)域為OCR算法自動檢測,右側(cè)列表有每個框?qū)?yīng)的文字內(nèi)容;

          點擊右側(cè)“識別結(jié)果”中的文本記錄,然后點擊“復(fù)制到剪貼板”即可復(fù)制該文本內(nèi)容。


          功能列表

          文本區(qū)域檢測+文字識別

          文本區(qū)域可視化

          文字內(nèi)容列表

          圖像、文件夾加載

          圖像滾輪縮放查看

          繪制區(qū)域、編輯區(qū)域

          復(fù)制所選文本識別結(jié)果


          OCR部分

          圖像文字檢測+文字識別算法,主要借助 paddleocr 實現(xiàn)。

          創(chuàng)建或者選擇一個虛擬環(huán)境,安裝需要用到的第三方庫。

          conda create -n ocr conda activate ocr

          ?

          安裝框架

          如果你沒有NVIDIA GPU,或GPU不支持CUDA,可以安裝CPU版本:

          # CPU版本

          pip install paddlepaddle == 2.1 .0

          -i https://mirror.baidu.com/pypi/simple


          如果你的GPU安裝過CUDA9或CUDA10,cuDNN 7.6+,可以選擇下面這個GPU版本:

          # GPU版本 python3 -m

          pip install paddlepaddle-gpu == 2.1 .0

          -i https://mirror.baidu.com/pypi/simple


          安裝 PaddleOCR

          安裝paddleocr:

          pip install "paddleocr>=2.0.1" # 推薦使用2.0.1+版本

          版面分析,需要安裝 Layout-Parser:

          pip3 install -U https://paddleocr.bj.bcebos.com/whl/layoutparser-0.0.0-py3-none-any.whl

          測試安裝是否成功

          安裝完成后,測試一張圖片--image_dir ./imgs/11.jpg,采用中英文檢測+方向分類器+識別全流程:

          paddleocr --image_dir ./imgs/11.jpg --use_angle_cls true --use_gpu false

          輸出一個list:

          75cc8fa094ca1b0e1d075418976f9d5b.webp


          ?在python中調(diào)用

          2eda3df91a91cd5fe93bef03214bbfad.webp

          輸出結(jié)果是一個list,每個item包含了文本框,文字和識別置信度:

          b00547a66961053b86f361afd508745b.webp


          界面部分

          界面部分基于 pyqt5 實現(xiàn)。

          pyqt GUI程序開發(fā)入門和環(huán)境配置,詳見這篇博客。

          https://blog.csdn.net/Bit_Coders/article/details/119304488


          主要步驟:


          1. 界面布局設(shè)計

          在QtDesigner中拖拽控件,完成程序界面布局,并保存*.ui文件。

          b69dbe4763095b9cd67dcb7ed882f65d.webp


          2. 利用 pyuic 自動生成界面代碼

          在 pycharm 的項目文件結(jié)構(gòu)中找到*.ui文件,右鍵——External Tools——pyuic,會在ui文件同級目錄下自動生成界面 ui 的 python 代碼。

          93147e2bea912b0ed843c3d5e91a2771.webp


          3. 編寫界面業(yè)務(wù)類

          業(yè)務(wù)類 MainWindow 實現(xiàn)程序邏輯和算法功能,與前面第2步生成的ui實現(xiàn)解耦,避免每次修改ui文件會影響業(yè)務(wù)代碼。ui界面上的控件可以通過self._ui.xxxObjectName?訪問。

          f07a79bc87a457dcbe79920028b83529.webp


          4. 實現(xiàn)界面業(yè)務(wù)邏輯

          對主界面上的按鈕、列表、繪圖控件進(jìn)行信號槽連接。自定義的槽函數(shù)不用專門聲明,如果是自定義的信號,需要在類__init__()前加上 yourSignal= pyqtSignal(args)。

          這里以按鈕響應(yīng)函數(shù)、列表響應(yīng)函數(shù)為例。按鈕點擊的信號是 clicked,listWidget列表切換選擇的信號是 itemSelectionChanged 。

          021213d326d03c8e4326275e3b369a70.webp


          5. 運行看看效果

          運行 python main.py 即可啟動GUI程序。

          打開圖片→選擇語言模型ch(中文)→選擇文本檢測+識別→點擊開始,檢測完的文本區(qū)域會自動畫框,并在右側(cè)識別結(jié)果——文本Tab頁的列表中顯示。

          d63efefe5087bae71226330b40314486.webp


          所有檢測出文本的區(qū)域列表,在識別結(jié)果——區(qū)域Tab頁:

          e61ed4dc9df2825677357ccb7457ce0c.webp


          原文地址

          https://blog.csdn.net/Bit_Coders/article/details/121561632



              

          機(jī)器學(xué)習(xí)算法AI大數(shù)據(jù)技術(shù)

          ?搜索公眾號添加:? datanlp

          長按圖片,識別二維碼




          閱讀過本文的人還看了以下文章:


          TensorFlow 2.0深度學(xué)習(xí)案例實戰(zhàn)


          基于40萬表格數(shù)據(jù)集TableBank,用MaskRCNN做表格檢測


          《基于深度學(xué)習(xí)的自然語言處理》中/英PDF


          Deep Learning 中文版初版-周志華團(tuán)隊


          【全套視頻課】最全的目標(biāo)檢測算法系列講解,通俗易懂!


          《美團(tuán)機(jī)器學(xué)習(xí)實踐》_美團(tuán)算法團(tuán)隊.pdf


          《深度學(xué)習(xí)入門:基于Python的理論與實現(xiàn)》高清中文PDF+源碼


          《深度學(xué)習(xí):基于Keras的Python實踐》PDF和代碼


          特征提取與圖像處理(第二版).pdf


          python就業(yè)班學(xué)習(xí)視頻,從入門到實戰(zhàn)項目


          2019最新《PyTorch自然語言處理》英、中文版PDF+源碼


          《21個項目玩轉(zhuǎn)深度學(xué)習(xí):基于TensorFlow的實踐詳解》完整版PDF+附書代碼


          《深度學(xué)習(xí)之pytorch》pdf+附書源碼


          PyTorch深度學(xué)習(xí)快速實戰(zhàn)入門《pytorch-handbook》


          【下載】豆瓣評分8.1,《機(jī)器學(xué)習(xí)實戰(zhàn):基于Scikit-Learn和TensorFlow》


          《Python數(shù)據(jù)分析與挖掘?qū)崙?zhàn)》PDF+完整源碼


          汽車行業(yè)完整知識圖譜項目實戰(zhàn)視頻(全23課)


          李沐大神開源《動手學(xué)深度學(xué)習(xí)》,加州伯克利深度學(xué)習(xí)(2019春)教材


          筆記、代碼清晰易懂!李航《統(tǒng)計學(xué)習(xí)方法》最新資源全套!


          《神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)》最新2018版中英PDF+源碼


          將機(jī)器學(xué)習(xí)模型部署為REST API


          FashionAI服裝屬性標(biāo)簽圖像識別Top1-5方案分享


          重要開源!CNN-RNN-CTC 實現(xiàn)手寫漢字識別


          yolo3 檢測出圖像中的不規(guī)則漢字


          同樣是機(jī)器學(xué)習(xí)算法工程師,你的面試為什么過不了?


          前海征信大數(shù)據(jù)算法:風(fēng)險概率預(yù)測


          【Keras】完整實現(xiàn)‘交通標(biāo)志’分類、‘票據(jù)’分類兩個項目,讓你掌握深度學(xué)習(xí)圖像分類


          VGG16遷移學(xué)習(xí),實現(xiàn)醫(yī)學(xué)圖像識別分類工程項目


          特征工程(一)


          特征工程(二) :文本數(shù)據(jù)的展開、過濾和分塊


          特征工程(三):特征縮放,從詞袋到 TF-IDF


          特征工程(四): 類別特征


          特征工程(五): PCA 降維


          特征工程(六): 非線性特征提取和模型堆疊


          特征工程(七):圖像特征提取和深度學(xué)習(xí)


          如何利用全新的決策樹集成級聯(lián)結(jié)構(gòu)gcForest做特征工程并打分?


          Machine Learning Yearning 中文翻譯稿


          螞蟻金服2018秋招-算法工程師(共四面)通過


          全球AI挑戰(zhàn)-場景分類的比賽源碼(多模型融合)


          斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)


          python+flask搭建CNN在線識別手寫中文網(wǎng)站


          中科院Kaggle全球文本匹配競賽華人第1名團(tuán)隊-深度學(xué)習(xí)與特征工程



          不斷更新資源

          深度學(xué)習(xí)、機(jī)器學(xué)習(xí)、數(shù)據(jù)分析、python

          ?搜索公眾號添加:? datayx??


          瀏覽 140
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  无码内射国产 | 国产AV中文字幕 | 中文板真人性操逼 | 国产一级操逼视频免费播放 | 青青草原视频在线观看免费 |