国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Python實現(xiàn)OCR大批量識別圖片文字,并將文字保存到txt文檔中,文末源碼直接拿!

這篇具有很好參考價值的文章主要介紹了Python實現(xiàn)OCR大批量識別圖片文字,并將文字保存到txt文檔中,文末源碼直接拿!。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

項目背景

在當今數(shù)字化時代,圖像文字識別(Optical Character Recognition, OCR)技術的應用越來越廣泛。

OCR技術可以將印刷體文字轉化為可編輯的文本格式,從而方便進行文本分析、數(shù)據(jù)挖掘等操作。Python作為一種簡潔、易用的編程語言,提供了豐富的圖像處理和機器學習庫,使得實現(xiàn)圖像文字識別變得簡單而高效。

本文將介紹如何使用Python實現(xiàn)大批量識別圖片文字,并將文字保存到txt文檔中!

項目介紹

本項目使用的文字識別模型來自飛槳開源模型: chinese_ocr_db_crnn_server Module

該模型基于 chinese_text_detection_db_server 檢測得到的文本框,繼續(xù)識別文本框中的中文文字。之后對檢測文本框進行角度分類。最終識別文字算法采用 CRNN(Convolutional Recurrent Neural Network) 即卷積遞歸神經(jīng)網(wǎng)絡。其是DCNN和RNN的組合,專門用于識別圖像中的序列式對象。與CTC loss配合使用,進行文字識別,可以直接從文本詞級或行級的標注中學習,不需要詳細的字符級的標注。該Module是一個通用的OCR模型,支持直接預測。

項目主要功能:

  • 支持識別多種圖片類型
support_type = ["bmp", "dib", "jpeg", "jpg", "jpe", "jp2", "png", "webp", "pbm", "pgm", "pxm", "pnm", "tiff", "tif"]
  • 支持自定義圖片路徑
  • 支持大批量的圖片識別
  • 支持將每一張圖片的文字寫入對應的txt文件中

運行項目

第一步: 從文末的源碼地址,下載項目并解壓到本地電腦

第二步: 配置運行環(huán)境,使用pycharm導入項目,在【terminal】下運行下面命令:

pip install -r requirements.txt

如果下載第三方庫比較慢,可以考慮換一下pip的下載源:

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

阿里云 http://mirrors.aliyun.com/pypi/simple/
中國科技大學 https://pypi.mirrors.ustc.edu.cn/simple/
豆瓣(douban) http://pypi.douban.com/simple/
清華大學 https://pypi.tuna.tsinghua.edu.cn/simple/
中國科學技術大學 http://pypi.mirrors.ustc.edu.cn/simple/

第三步: 運行前可以替換image_path為自定義的路徑,默認圖片保存位置為當前py文件下的image文件夾。

代碼詳解

1、導入需要的庫,paddlehub用于搭建模型,cv2用于讀取圖片,os模塊創(chuàng)建文件

import paddlehub as hub
import cv2
import warnings
import os

2、識別圖片,傳入圖片地址,,并將識別出的文字保存到對應的txt文本中

def ocr_images(images):
    if images:
        for r in images:
            file_path = r.get("file_path")
            ocr_result_txt_path = r.get("result_txt_path")
            ocr = hub.Module(name="chinese_ocr_db_crnn_server", enable_mkldnn=True) 
            ocr_result = ocr.recognize_text(images=[cv2.imread(file_path)])
            with open(ocr_result_txt_path, "w") as f:
                for i in ocr_result[0]["data"]:
                    f.write(i["text"])
                print(ocr_result_txt_path, "寫入完成!")

3、獲取指定路徑下的所有圖片地址,或者同級文件夾images中的所有圖片地址

def return_images_files(images_path=None):
    # 返回指定路徑下的所有圖片絕對地址,如果沒有指定,當前路徑下的images文件夾
    if images_path is None:
        # 獲取當前 py 文件所在的絕對地址
        cwd = os.getcwd()
        # 拼接 images 文件夾地址
        images_path = os.path.join(cwd, "images")
        # 如果沒有 images 文件夾,就新建一個
        if "images" not in os.listdir(cwd):
            os.mkdir(images_path)
    # 拼接 ocr_result 文件夾地址
    ocr_result_path = os.path.join(images_path, "ocr_result")
    if "ocr_result" not in os.listdir(images_path):
        os.mkdir(ocr_result_path)
    # 獲取文件夾下所有文件
    files = [os.path.abspath(os.path.join(r, f)) for r, _, fs in os.walk(images_path) for f in fs]
    # 判斷文件夾下是否有文件
    if files:
        result = []
        for f in files:
            f_type = f.split(".")[1]
            # 判斷文件類型是否存在
            if f_type in support_type:
                # 返回圖片地址和識別結果txt的文件名
                result_txt_name = f.split(images_path)[1].replace("\\", "").split(".")[0] + ".txt"
                result_txt_path = os.path.join(ocr_result_path, result_txt_name)
                result_dict = {
                    "file_path": f,
                    "result_txt_path": result_txt_path
                }
                result.append(result_dict)
        return result

以上是部分源碼,,有需要的朋友可以在文末的源碼地址免費獲??!

源碼地址

鏈接:https://pan.baidu.com/s/1TRcxqttjnGfg6xPwnHuCuA?pwd=akxs
提取碼:akxs文章來源地址http://www.zghlxwxcb.cn/news/detail-557001.html

到了這里,關于Python實現(xiàn)OCR大批量識別圖片文字,并將文字保存到txt文檔中,文末源碼直接拿!的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Python 自動獲取大批量excel數(shù)據(jù)并填寫到網(wǎng)頁表單(pandas;selenium)

    Python 自動獲取大批量excel數(shù)據(jù)并填寫到網(wǎng)頁表單(pandas;selenium)

    自動獲取大批量excel數(shù)據(jù)并填寫到網(wǎng)頁表單 部分網(wǎng)頁獲取下拉列表點擊的方式有所差異 這個請根據(jù)網(wǎng)頁源碼自做選擇 一定要學會使用IPDB調試工具 太好用了?。。?! 可能需要pip update一下 看提示 很好解決 沒有報錯最好啦 Python真是太好用了 辦公利器?。。。?!

    2024年02月12日
    瀏覽(25)
  • ZooKeeper+Kafka+ELK+Filebeat集群搭建實現(xiàn)大批量日志收集和展示

    ZooKeeper+Kafka+ELK+Filebeat集群搭建實現(xiàn)大批量日志收集和展示

    大致流程:將nginx 服務器(web-filebeat)的日志通過filebeat收集之后,存儲到緩存服務器kafka,之后logstash到kafka服務器上取出相應日志,經(jīng)過處理后寫入到elasticsearch服務器并在kibana上展示。 一、集群環(huán)境準備 二、搭建zookeeper集群 前提條件:三臺機器分別修改時區(qū)、關閉防火墻

    2024年02月04日
    瀏覽(25)
  • 100天精通Python(實用腳本篇)——第113天:基于Tesseract-OCR實現(xiàn)OCR圖片文字識別實戰(zhàn)

    100天精通Python(實用腳本篇)——第113天:基于Tesseract-OCR實現(xiàn)OCR圖片文字識別實戰(zhàn)

    ???? 本文已收錄于 《100天精通Python從入門到就業(yè)》:本專欄專門針對零基礎和需要進階提升的同學所準備的一套完整教學,從0到100的不斷進階深入,后續(xù)還有實戰(zhàn)項目,輕松應對面試,專欄訂閱地址:https://blog.csdn.net/yuan2019035055/category_11466020.html 優(yōu)點 : 訂閱限時9.9付費專

    2024年01月22日
    瀏覽(29)
  • elasticsearch刪除大批量數(shù)據(jù)方法

    一般回用如下: 示例: 如果刪除任務完成了,返回如下: 數(shù)據(jù)查詢任務:

    2024年02月12日
    瀏覽(27)
  • 多線程處理大批量數(shù)據(jù)操作

    ?@Autowired private DataSourceTransactionManager dataSourceTransactionManager; @Autowired private TransactionDefinition transactionDefinition; @Autowired private StudentService studentService; /** ?* 對用戶而言,27s 任是一個較長的時間,我們嘗試用多線程的方式來經(jīng)行修改操作看能否加快處理速度 ?* 預計創(chuàng)建10個線程

    2024年02月09日
    瀏覽(19)
  • python request大批量發(fā)送請求調用接口時,報錯:[WinError 10048] 通常每個套接字地址(協(xié)議/網(wǎng)絡地址/端口)只允許使用一次。

    python request大批量發(fā)送請求調用接口時,報錯:[WinError 10048] 通常每個套接字地址(協(xié)議/網(wǎng)絡地址/端口)只允許使用一次。

    接到一個項目需求,其中需要調用到供應商的Http? API,因為有大量的測試資源,所以代碼中會循環(huán)調用API。 然而在測試代碼執(zhí)行過程中,過程中偶爾報錯: ?此時看到報錯,懷疑是可能是同時并發(fā)的問題, 但實際上并未對該接口進行限制,所以應該不是這個的問題,?進一

    2023年04月10日
    瀏覽(92)
  • MySQL---使用索引優(yōu)化、大批量插入數(shù)據(jù)優(yōu)化

    MySQL---使用索引優(yōu)化、大批量插入數(shù)據(jù)優(yōu)化

    1. 使用索引優(yōu)化 索引是數(shù)據(jù)庫優(yōu)化最常用也是最重要的手段之一 , 通過索引通??梢詭椭脩艚鉀Q大多數(shù)的 MySQL 的性能優(yōu)化問題: 1.1?避免索引失效應用-全值匹配 該情況下,索引生效,執(zhí)行效率高。 1.2?避免索引失效應用-最左前綴法則 1.3?避免索引失效應用-其他匹配原則

    2024年02月07日
    瀏覽(24)
  • Jmeter(三十一):制造大批量的用戶數(shù)據(jù)數(shù)據(jù)

    Jmeter(三十一):制造大批量的用戶數(shù)據(jù)數(shù)據(jù)

    需求:因測試需要,要造100w用戶數(shù)據(jù),通過用戶名、手機號、密碼可新增用戶,其中用戶名和電話號碼要求100w用戶不能重復 要點: 1、通過Bean shell Sampler實現(xiàn)用戶名和手機號的足夠隨機。 符合我們常用規(guī)則的手機號:第一位為1,第二位為3-9,后面的9位為0-9即可。 phone=${_

    2024年02月10日
    瀏覽(25)
  • 遠程運維大批量IT設備?向日葵批量部署、分組授權與安全功能解析

    遠程運維大批量IT設備?向日葵批量部署、分組授權與安全功能解析

    數(shù)字化轉型的不斷推進,給予了企業(yè)全方位的賦能,但任何發(fā)展都伴隨著成本與代價,比如在數(shù)字化轉型過程中企業(yè)內部辦公與外部業(yè)務所需的不斷增加的IT設備數(shù)量,就為日常的運維工作提出了更大的挑戰(zhàn)。 針對企業(yè)面對海量IT設備時的運維難、效率低、容易出錯等問題,

    2024年02月14日
    瀏覽(23)
  • 使用postman做接口測試傳入大批量動態(tài)參數(shù)的方法

    使用postman做接口測試傳入大批量動態(tài)參數(shù)的方法

    postman是一個非常好用的接口測試工具,而且功能也很強大,今天只簡單說一下使用postman如何對一個接口傳入大批量參數(shù)進行測試的方法。 以我測試的平臺為例,我們的平臺是做在線教育平臺的,我模擬的場景是老師有一門課叫ABC,現(xiàn)在需要有1000個學生加入ABC這門課。我們不

    2024年01月23日
    瀏覽(32)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包