小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

PaddleOCR學(xué)習(xí)(一)PaddleOCR安裝與測(cè)試

 hncdman 2022-05-25 發(fā)布于湖南

鯨落于北

于 2021-08-23 14:20:56 發(fā)布

https://blog.csdn.net/weixin_42708301/article/details/119868531?spm=1001.2014.3001.5502(

PaddleOCR學(xué)習(xí)(二)PaddleOCR檢測(cè)模型訓(xùn)練


訂閱專(zhuān)欄

各種OCR算法試了一圈,還是PaddleOCR比較完善,集成度高,而且各種調(diào)試、測(cè)試、各種backbone的更改都要方便許多,非常的接地氣。網(wǎng)上也有許多paddleocr的相關(guān)教程,但是說(shuō)實(shí)話(huà),有很多不清晰的地方,像我這樣接觸深度學(xué)習(xí)算法的新手,很多東西都搞不清楚,導(dǎo)致浪費(fèi)不少時(shí)間,趁著網(wǎng)絡(luò)在訓(xùn)練,我想做一份最最詳細(xì)的PaddleOCR算法新手教程,確保初次接觸深度學(xué)習(xí)的新手也能快速搞懂。

一、安裝PaddleOCR

首先去github下載:https://github.com/PaddlePaddle/PaddleOCR,然后找個(gè)文件夾解壓。

接下來(lái)需要配置PaddleOCR所需的環(huán)境,我是win10+anaconda,如果是linux的教程網(wǎng)上也很多,比win10簡(jiǎn)單多了,就不寫(xiě)了。

首先,推薦新建一個(gè)環(huán)境:

conda create -n paddle38 python=3.8

1

接下來(lái),安裝PaddlePaddle,推薦使用清華源:

pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple

1

如果要使用gpu版的,安裝paddlepaddle-gpu:

pip install paddlepaddle-gpu

1

然后是安裝shapely,但是需要先從https://www.lfd./~gohlke/pythonlibs/下載shapely安裝包Shapely?1.7.1?cp38?cp38?win_amd64.whl,將其復(fù)制到F:\Anaconda3\envs\paddle38\libs文件夾下(根據(jù)自己新建的環(huán)境的位置修改),然后在anaconda Prompt中,cd到該目錄下,執(zhí)行:

pip install Shapely?1.7.1?cp38?cp38?win_amd64.whl

1

最后cd到剛才解壓的PaddleOCR文件夾中,執(zhí)行:

pip install -r requirements.txt

1

至此,安裝就完成了,我用的是pycharm,記得到pycharm中,將PaddleOCR項(xiàng)目的環(huán)境改為paddle38。

PaddleOCR-develop文件夾目錄下應(yīng)該有以下文件:

  

這是我已經(jīng)安裝完的文件夾,里面有些文件夾是最初沒(méi)有的,比如demo、inference、pretrain_models、results、train_data等,這些后面會(huì)講,不影響。

二、試用官方的模型

完成PaddleOCR安裝之后,推薦先用官方模型對(duì)自己的數(shù)據(jù)進(jìn)行下測(cè)試看看效果,官方預(yù)訓(xùn)練模型的下載地址為:

https://github.com/PaddlePaddle/PaddleOCR/blob/develop/README_ch.md

  

這里有必要解釋一下,推理模型相當(dāng)于訓(xùn)練完成的模型,直接拿來(lái)就可以進(jìn)行predict;而預(yù)訓(xùn)練模型屬于半成品,用于進(jìn)一步的訓(xùn)練,之后用自己的數(shù)據(jù)訓(xùn)練模型時(shí)需要用到預(yù)訓(xùn)練模型。所以這里應(yīng)該先下載推理模型。

如圖,我下載的是超輕量OCR模型,檢測(cè)、方向分類(lèi)、識(shí)別的推理模型我都下載了,在PaddleOCR目錄下新建一個(gè)inference文件夾,用于存放這些模型:

  

接下來(lái)就可以準(zhǔn)備開(kāi)始測(cè)試自己的圖片了,官方也給出了快速開(kāi)始的教程:

https://github.com/PaddlePaddle/PaddleOCR/blob/develop/doc/doc_en/quickstart_en.md

可以使用如下命令進(jìn)行單張圖片的測(cè)試:

這里有兩種方法:

(1)直接在paddle-develop文件夾目錄下打開(kāi)cmd,然后conda activate paddle38,在輸入以下指令;

(2)在anaconda Prompt中先conda activate paddle38,再一路cd到paddle-develop文件夾下。

python tools/infer/predict_system.py --image_dir="./doc/imgs/11.jpg" 

                                      --det_model_dir="./inference/ch_ppocr_mobile_v1.1_det_infer/"  

                                      --rec_model_dir="./inference/ch_ppocr_mobile_v1.1_rec_infer/" 

                                      --cls_model_dir="./inference/ch_ppocr_mobile_v1.1_cls_infer/" 

                                      --use_angle_cls=True 

                                      --use_space_char=True


有的網(wǎng)上教程前面是python3開(kāi)頭,不知道為什么,反正在我的環(huán)境里跑不起來(lái),甚至沒(méi)有任何報(bào)錯(cuò)反應(yīng)。

如果不想使用命令運(yùn)行,而是想在pycharm中使用run的話(huà),需要在代碼中進(jìn)行修改,需要修改的代碼在PaddleOCR-develop/tools/infer文件夾下:

  

這里面,predict_det是檢測(cè)文本用的,predict_rec是識(shí)別文本用的,而predict_system是既檢測(cè)又識(shí)別。另外,這幾個(gè)預(yù)測(cè)文件共用一個(gè)參數(shù)配置文件utility.py,需要更改的參數(shù)如下:

# 注意這些需要修改的參數(shù)在utility文件中不是連續(xù)的

# 是否使用gpu

parser.add_argument("--use_gpu", type=str2bool, default=True)

# 圖片位置(圖片位置相對(duì)于utility文件位置比較遙遠(yuǎn),也可以使用絕對(duì)路徑)

parser.add_argument("--image_dir", type=str, default="../../demo/sample4.jpg")

# 檢測(cè)模型路徑

parser.add_argument("--det_model_dir", type=str, default="../../inference/ch_ppocr_mobile_v1.1_det_infer/")

# 識(shí)別模型路徑

parser.add_argument("--rec_model_dir", type=str, default="../../inference/ch_ppocr_mobile_v1.1_rec_infer")

# 字典路徑(ic15_dict.txt是英文字典,ppocr_keys_v1.txt是中文字典,檢測(cè)一般不區(qū)分中英文,但是識(shí)別需要區(qū)分中英文)

parser.add_argument(

        "--rec_char_dict_path",

        type=str,

        default="../../ppocr/utils/ic15_dict.txt")

# 分類(lèi)模型

parser.add_argument("--cls_model_dir", type=str, default="../../inference/ch_ppocr_mobile_v1.1_cls_infer")

# 字體路徑

def draw_ocr_box_txt(image,

                     boxes,

                     txts,

                     scores=None,

                     drop_score=0.5,

                     font_path="../../doc/simfang.ttf"):

# 字體路徑

def text_visual(texts,

                scores,

                img_h=400,

                img_w=600,

                threshold=0.,

                font_path="../../doc/simfang.ttf"):


修改完這些文件后,運(yùn)行predict_system文件,即可,輸出結(jié)果的位置在predict_system中修改:

draw_img_save = "../../results"

1

這樣即可輸出到PaddleOCR-develop/results文件夾中。

同樣的,如果只進(jìn)行文本檢測(cè)(不識(shí)別),運(yùn)行predict_det,輸出結(jié)果同樣修改。

—————

  

———————————

版權(quán)聲明:本文為CSDN博主「鯨落于北」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/weixin_42708301/article/details/119864744

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多