|
根據(jù)本教程是可以成功的,可與paddle ocr 安裝部署與使用教程(解決出錯可參考)配合使用, 本教程演示 Anaconda 下 離線部署 Paddle OCR教程 人人可用
準(zhǔn)備工作 自行安裝 Anaconda 安裝 時候該勾選的全部勾選 python3.8記得勾選 如果已有其他版本的python 請自行測試
正式開始
1.官網(wǎng)https://www./install/quick?docurl=/documentation/docs/zh/install/conda/windows-conda.html
按照 自己配置 選擇安裝 pip 未安裝成功 各種報錯 docker未測試
需注意 cuda版本 必須和顯卡驅(qū)動對應(yīng) 可以向下兼容
需要確認(rèn)的步驟 官網(wǎng)寫的很清楚
2. 安裝完成后 安裝 paddleHub Anaconda命令下 pip install paddlehub -i https://mirror.baidu.com/pypi/simple --default-timeout=100 后面的鏈接是鏡像加速 不加鏈接 95%會各種失敗
3. pip install cython -i https://mirror.baidu.com/pypi/simple --default-timeout=100
4. 下載 PaddleOCR https:///paddlepaddle/PaddleOCR?_from=gitee_search 打開網(wǎng)址 點擊 克隆/下載 下載之后 解壓
5. cd 到 剛才下載的目錄下
6. 特別注意這一步 很容易在這一步 走不出來 安裝檢測識別串聯(lián)服務(wù)模塊 必須 先cd到 paddleOCR目錄
hub install deploy/hubserving/ocr_system/ hub install deploy/hubserving/ocr_cls/ hub install deploy/hubserving/ocr_det/ hub install deploy/hubserving/ocr_rec/ 這幾個命令 直接復(fù)制過去 enter 等待執(zhí)行
注意 此時會報錯 看報錯的最后一行 提示
缺少什么 就安裝什么 具體命令為 pip install shapely -i https://mirror.baidu.com/pypi/simple --default-timeout=100 其中 shapely 為缺少的庫 只做例子 會報錯幾個缺少庫 提示缺paddle時用下面的,版本看GITEE上的就行 python -m pip install --upgrade pip python -m pip install paddlepaddle==2.3.0 -i https://mirror.baidu.com/pypi/simple 記得看命令號 如果 安裝報錯 可以多安裝幾次
缺少dll就下載dll 自定百度 看命令行上 提示的路徑 下載dll復(fù)制進(jìn)bin目錄 再次運行命令
7. 下載 識別模型 https://hub./PaddlePaddle/PaddleOCR/blob/release/2.3/README_ch.md 自帶的是 mobile模型
如需更改 模型名稱 在 deploy\hubserving\.\ 的 params.py 中更改即可,根據(jù)下載的模型自已修改 { ① 將reference文件夾解壓,拷貝至 ~/ocr/PaddleOCR/ 目錄下 ② 配置模型路徑,修改params.py文件 cfg.det_model_dir="~/ocr/PaddleOCR/reference/ch_ppocr_mobile_v2.0_det_infer/" cfg.rec_model_dir="~/ocr/PaddleOCR/reference/ch_ppocr_mobile_v2.0_rec_infer/" cfg.cls_model_dir="~/ocr/PaddleOCR/reference/ch_ppocr_mobile_v2.0_cls_infer/" } 這里提供 百度云鏈接 已替換成 高精度 的識別模型 可直接下載 解壓的PaddleOCR的根目錄即可無需更改 也就是之前下載的PaddleOCR目錄
--來自百度網(wǎng)盤超級會員V6的分享
PaddleOCR下新建'inference’文件夾,準(zhǔn)備推理模型并放到'inference’文件夾里面,默認(rèn)使用的是v1.1版的超輕量模型, https://github.com/PaddlePaddle/PaddleOCR/blob/develop/doc/doc_ch/quickstart.md 
默認(rèn)模型路徑為: 檢測模型:./inference/ch_ppocr_mobile_v1.1_det_infer/ 識別模型:./inference/ch_ppocr_mobile_v1.1_rec_infer/ 方向分類器:./inference/ch_ppocr_mobile_v1.1_cls_infer/
模型路徑可在params.py中查看和修改。 更多模型可以從PaddleOCR提供的模型庫下載,也可以替換成自己訓(xùn)練轉(zhuǎn)換好的模型。 8. 再次 輸入(前提是 沒有報錯 ) hub install deploy/hubserving/ocr_system/ hub install deploy/hubserving/ocr_cls/ hub install deploy/hubserving/ocr_det/ hub install deploy/hubserving/ocr_rec/
此時會提示
[2021-09-28 13:16:00,232] [ INFO] - Successfully uninstalled ocr_system [2021-09-28 13:16:00,677] [ INFO] - Successfully installed ocr_system-1.0.0 類似這種 這就成功了 ?。。?!一定注意命令行 缺少什么就裝什么 無腦裝 如果都裝了還是不行 別慌 重復(fù)第二個步驟
9.最后 啟動 Hubseving
這里提供 用config的方式 啟動 其他方式 請看 官網(wǎng)的文檔命令
配置文件在 剛才下載的 paddleOCR 目錄下的 \deploy\hubserving\ocr_system\config.json 可自行修改 如果用CPU config中的use_gpu 改為false 注意 paddleOCR 在 windows下 是不支持多線程的 //GPU的識別速度是CPU的8-10倍左右 有條件的 建議GPU //實測 CPU 100次 在13秒左右 GPU只需要2-3秒
開始運行 hub serving start -c PaddleOCR目錄+"\deploy\hubserving\ocr_system\config.json" 用配置文檔 啟動 具體每個參數(shù)代表的什么意思 看官方文檔介紹
此時 如無意外 提示 * Serving Flask app "paddlehub.serving.app_compat" (lazy loading) * Environment: production WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. * Debug mode: off * Running on http://0.0.0.0:8868/ (Press CTRL+C to quit)
10 調(diào)用 最后附上 POST 提交識別代碼
? .版本 2 .支持庫 spec .局部變量 base64, 文本型 .局部變量 Str, 文本型 .局部變量 post, 文本型
base64 = 到文本 (編碼_BASE64編碼A (#圖片1, )) post = “{\'images\': [\'” + base64 + “\']}” post = 子文本替換 (post, “'”, #引號, , , 真) post = 子文本替換 (post, “\”, “”, , , 真) Str = 編碼_utf8到gb2312 (到文本 (網(wǎng)頁_訪問_對象 (“http://127.0.0.1:8868/predict/ocr_system”, 1, post, , , “Content-Type:application/json”, , , , , , , , , , , , , ))) 調(diào)試輸出 (Str)
這里的協(xié)議頭 是必須要帶上 勿忘 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 寫在最后 python版本不一樣 會出現(xiàn)各種報錯 也許也是我的問題 大家可以研究研究 //GPU的 安裝 也在 官網(wǎng) 自己對應(yīng)版本安裝 conda install paddlepaddle-gpu==2.1.3 cudatoolkit=10.2 --channel file:///C:/Users/Q/AppData/Roaming/Tencent/QQTempSys/%W@GJ$ACOF(TYDYECOKVDYB.pnghttps://mirrors.tuna./anaconda/cloud/Paddle/ cudnn需要根據(jù)cuda版本 自己選擇安裝一般 7.6 如果 有報錯 命令行 會有提示 仔細(xì)看看 就行 需要更改 config use_gpu:true 另外需要設(shè)置環(huán)境變量 set CUDA_VISIBLE_DEVICES=1 //具體 對應(yīng)的參數(shù) 是GPU的ID 這個我也不是太懂 一般就是 1 可以自行百度 研究下 另外 如果重啟過后 提示 找不到 ocr_serving 直接重復(fù)步驟8 再重新啟動 就可以了 GPU第一次運行識別 會檢測 cuda和cudnn版本 會慢一點 第二次識別好了 /////另外如果需要編譯好的EXE 可以找我 (付費) 一鍵啟動 無需任何設(shè)置
用模型V1.1時報正面的錯: not find model file path ./inference/ch_ppocr_mobile_v1.1_det_infer//inference.pdmodel
|