使用PaddleOCR,訓練自己的模型
- 前言______PaddleOcr的安裝與準備作業
- 資料準備
- 1. 下載icdar2015圖片集
- 2. 下載icdar2015資料集配套的標注檔案
- 3.組織資料集路徑
- 4.下載預訓練模型
- 5.組織預訓練模型路徑
- 6.修改組態檔
- ~~設定完成,開始訓練~~
- 到了緊張刺激的DEBUG環節才對
- 如何制作自己的資料集?
- 模型評估與模型檢查
ps:為方便讀者文章中需要用到的檔案均使用我的網盤分享下載,同時也會給出官網下載地址
前言______PaddleOcr的安裝與準備作業
1.PaddleOcr相關組件安裝我在上一個博客中已經介紹完畢→ PaddleOcr安裝與使用全程指南 ←點擊跳轉
2.下載PaddleOcr官方檔案包,
https://kyc592.lanzous.com/i5C7Gkojm7c 密碼:kyc
或官網下載地址:https://gitee.com/paddlepaddle/PaddleOCR

然后解壓到專案檔案夾的根目錄下,

一定確保按照前一篇博客操作完畢,Paddleocr可以正常運行,盡量減少待會出現的極 其 繁 重的debug作業,
至此完成準備作業,
資料準備
訓練自己的模型,需要的資料有:
①訓練用的圖片集 ②測驗用的圖片集 ③前面兩個圖片集配套的標注檔案 ④預訓練模型
1. 下載icdar2015圖片集
演示采用的 ①訓練用的圖片集 ②測驗用的圖片集 ③前面兩個圖片集配套的標注檔案 采用的均是來自現成的 icdar2015資料集,若有意自己搜集圖片集和生成配套標注檔案 點擊跳轉至→ * 如何制作自己的資料集?
先進行一下兩個圖片集的下載,
ch4_training_images.zip 是icdar2015資料集的訓練圖片集,共1000張
https://kyc592.lanzous.com/iKdkQkpytcf 密碼:kyc
ch4 _test_images.zip 是icdar2015資料集的測驗圖片集,共500張
https://kyc592.lanzous.com/isNpFkpzb5g 密碼:kyc
注意兩個圖片集千萬不要用錯了
或 官網下載地址:https://rrc.cvc.uab.es/?ch=4&com=downloads,需要先進行注冊登錄才可下載,

2. 下載icdar2015資料集配套的標注檔案
train_icdar2015_label.txt 是訓練集的配套標注檔案:
https://kyc592.lanzous.com/i9aPSkpzp1g 密碼:kyc
test_icdar2015_label.txt 是測驗集的配套標注檔案:
https://kyc592.lanzous.com/i72mHkpzp0f 密碼:kyc
注意兩個標注檔案千萬不要用錯了
或 官方下載地址:
訓練集的配套標注檔案:https://paddleocr.bj.bcebos.com/dataset/train_icdar2015_label.txt
測驗集的配套標注檔案:
https://paddleocr.bj.bcebos.com/dataset/test_icdar2015_label.txt
3.組織資料集路徑
【建議以下所有的路徑均寫絕對路徑】
將第一步中下載的兩個圖片集解壓出來,與第二步中下載的配套標注檔案
按照圖片中的方式存放到train_data檔案夾中,(共兩個檔案夾,兩個檔案)
4.下載預訓練模型
PaddleOCR的檢測模型當前支持3個主干,即MobileNetV3,ResNet18_vd和ResNet50_vd,可以根據需要使用PaddleClas中的模型替換主干,
相關資料:
MobileNet
針對亟需在移動端應用深度學習技術的需求,MobileNet在存盤空間和能耗低的地方表現優秀,在損失精度很小的情況下,計算量,存盤空間,準確率方面都有明顯提升,ResNet 系列模型
ResNet創新性的提出了殘差結構,一舉在ILSVRC2015比賽中取得冠軍,top5錯誤率為3.57%,斯坦福大學的Joyce
Xu將ResNet稱為「真正重新定義了我們看待神經網路的方式」的三大架構之一,
官方下載地址:
MobileNetV3預訓練模型:
https://paddle-imagenet-models-name.bj.bcebos.com/MobileNetV3_large_x0_5_pretrained.tar
ResNet18_vd預訓練模型:
https://paddle-imagenet-models-name.bj.bcebos.com/ResNet18_vd_pretrained.tar
ResNet50_vd預訓練模型:
https://paddle-imagenet-models-name.bj.bcebos.com/ResNet50_vd_ssld_pretrained.tar
打開鏈接即彈出下載請求,
這里演示使用的是ResNet50_vd預訓練模型,
5.組織預訓練模型路徑
新建一個pretain_models檔案夾,將下載的預訓練模型解壓進來,
在config/det檔案夾下找到det_mv3_db_v1.1.yml檔案,只需要將“pretrain
_weights”指定為前面獲取的預訓練模型路徑,

我的為 D:\PO\pretain_models\ResNet50_vd_ssld_pretrained

6.修改組態檔
①在tools檔案夾中找到program.py腳本打開,找到class ArgsParser建構式

然后將圖中箭頭指向的那一行,游標處添加一句代碼
default = "D:\PO\configs\det\det_mv3_db_v1.1.yml",
修改為

注意檔案路徑根據自己的電腦填寫正確,
注意相對路徑填寫規則
“./ ”表示同級目錄,
“../”表示上級目錄,
“../../”表示上上級目錄,
(以運行的.py檔案為當前路徑)
② 在config/det檔案夾下找到det_db_icdar15_reader.yml檔案打開,(pycharm或者Typora之類的軟體都可以打開)

將這四行根據自己的電腦修改正確,
四行依次為 訓練圖片集的路徑、訓練圖片集配套的標注檔案路徑、測驗圖片集的路徑、測驗圖片集配套的標注檔案路徑,

修改完畢,
設定完成,開始訓練
到了緊張刺激的DEBUG環節才對
運行tools檔案夾中的train.py腳本,
Q1:無法附加測驗報告到測驗框架

A1:不使用pytest打開,使用普通方式打開
選擇右上角這個地方,點擊編輯配置 / Edit configurations…
點擊減號移除當前配置
然后點擊加號點擊Python
修改為檔案名和檔案所在路徑,確定保存計即可正常運行,
Q2:提示缺少檔案FileNotFoundError: [Errno 2] No such file or directory: ‘./configs/det/det_db_icdar15_reader.yml’
A2:是因為 ./ 是在同級檔案夾下尋找該檔案,索性直接把全部configs檔案夾復制到此腳本所在的tools檔案夾里一份,他們倆就是同級路徑了
類似問題同樣采取此方法,將缺少的檔案夾復制到tools檔案夾,
Q3:提示無gpu,ERROR: Config use_gpu cannot be set as true while you are using paddlepaddle cpu version ! 
A3:使用cpu訓練模型的話,則索性將tools/configs檔案夾中所有檔案有use_gpu: 這一行代碼的陳述句的,全部修改為false,根目錄中的configs檔案夾同樣操作,

Q4:提示訓練圖片集不存在 2021-01-23 14:10:54,107-INFO: D:\PO\train_data\ch4_training_imagesicdar_c4_train_imgs/img_999.jpg does not exist!
A5:很容易發現是因為存放圖片的檔案夾名不一致,修改一下即可,


Q6:突然cpu與記憶體占用比最近某圈的瓜還爆炸

運行結果是這個樣子

A6:學習煉丹基本成功,關掉程式換個好電腦跑,
如何制作自己的資料集?
使用PPOCRLabel檔案夾中的PPOCRLabel.py腳本(先確保安裝了pyqt5)
PPOCRLabel官網:https://gitee.com/computer-vision/PaddleOCR/blob/develop/PPOCRLabel/README.md
運行后彈出這個視窗
在選單欄點擊 “檔案file” - “打開目錄open dir” 選擇待標記圖片的檔案夾

選單欄中的PaddleOCR ,點擊 ”自動標注auto recognition“,使用PPOCR超輕量模型對圖片檔案名前圖片狀態為 “?” 的圖片進行自動標注,

等待標注完成,

然后點擊右下角的Check,圖片前面的 X 就會變成 √ (借助滑鼠宏或者連點器)

此時再點擊file,點擊save label,即可在彈出的提示的路徑中找到自己的標注檔案

模型評估與模型檢查
等等再更新…
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/251677.html
標籤:AI
上一篇:分享幾個趣味感爆棚的網站,快放進收藏夾里吃灰吧!(二)
下一篇:python第二節課筆記
