PaddleOCR icon indicating copy to clipboard operation
PaddleOCR copied to clipboard

paddlelite-v2.11 opt后的模型置信度很低

Open dzz10 opened this issue 2 years ago • 4 comments

请提供下述完整信息以便快速定位问题/Please provide the following information to quickly locate the problem

  • 系统环境/System Environment:
  • 版本号/Version:Paddle:lite v2.11 PaddleOCR:v3 问题相关组件/Related components:
  • 运行指令/Command Code:adb shell "cd /data/local/tmp/debug && ./ocr_db_crnn system ch_PP-OCRv3_det_slim_opt.nb ch_PP-OCRv3_rec_slim_opt.nb ch_ppocr_mobile_v2.0_cls_slim_opt.nb arm7 INT8 2 2 images config.txt ppocr_keys_v1.txt True"
  • 完整报错/Complete Error Message:

资源准备: 1、下载的paddle-lite v2.11库 地址:https://github.com/PaddlePaddle/Paddle-Lite/releases/download/v2.11/inference_lite_lib.android.armv7.gcc.c++_shared.with_extra.with_cv.tar.gz 2、模型也是下载的 地址: https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_det_slim_infer.tar https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_rec_slim_infer.tar https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_cls_slim_infer.tar 3、opt工具也是下载的 地址:https://github.com/PaddlePaddle/Paddle-Lite/releases/download/v2.11/opt_linux

模型转换 ./opt_linux --sparse_model=true --sparse_threshold=0.8 --quant_model=true quant_type=QUANT_INT8 --model_file=./ch_PP-OCRv3_det_slim_infer/inference.pdmodel --param_file=./ch_PP-OCRv3_det_slim_infer/inference.pdiparams --optimize_out=./out/ch_PP-OCRv3_det_slim_opt --valid_targets=arm --optimize_out_type=naive_buffer. ../opt_linux --sparse_model=true --sparse_threshold=0.8 --quant_model=true quant_type=QUANT_INT8 --model_file=./ch_PP-OCRv3_rec_slim_infer/inference.pdmodel --param_file=./ch_PP-OCRv3_rec_slim_infer/inference.pdiparams --optimize_out=./out/ch_PP-OCRv3_rec_slim_opt --valid_targets=arm --optimize_out_type=naive_buffer. ../opt_linux --sparse_model=true --sparse_threshold=0.8 --quant_model=true quant_type=QUANT_INT8 --model_file=./ch_ppocr_mobile_v2.0_cls_slim_infer/inference.pdmodel --param_file=./ch_ppocr_mobile_v2.0_cls_slim_infer/inference.pdiparams --optimize_out=./out/ch_ppocr_mobile_v2.0_cls_slim_opt --valid_targets=arm --optimize_out_type=naive_buffer. `

执行指令 adb shell "cd /data/local/tmp/debug && ./ocr_db_crnn system ch_PP-OCRv3_det_slim_opt.nb ch_PP-OCRv3_rec_slim_opt.nb ch_ppocr_mobile_v2.0_cls_slim_opt.nb arm7 INT8 2 2 images config.txt ppocr_keys_v1.txt True"

识别结果(可见置信度还不到0.7,基本都识别错误了,使用的是demo里面的图片)

The predict img: images/11.jpg The detection visualized image saved in ./vis.jpg 0 严·严乡 严≥严淼严誠严≥严称少≥严≥严该睿严 严 0.612844 1 严≥严≥睿严之≥≥饹爬≥严饹严爬 0.641696 2 ≥乡嗜严瑙7严启严≥严瑙≥严潢严≥严昇≥睿详之卡严严卡缸严≥瑙≥严潢严≥严丙毫睿≥严文之严 0.555126 3 严≥严e之瑙严乡瑙乡严乡瑙乡卡严启严≥严昇≥睿严之卡缸严吞之瑙≥睿严睿≥严睿之睿罩严≥严睿严 0.550279 4 ≥严≥睿吞严睿严≥严睿严卡严乡严况谋严≥严≥严睿之严≥严≥严之严严≥严 0.615377 5 ≥睿严≥严卡严≥严·严 略严淼严≥严称睿严睿严睿 严 0.590979 6 严之严严≥严之缸严≥严≥严 0.545849 7 ≥睿严≥·≥严严≥文严≥睿≥严≥严乡≥严严之严 0.60604 8 严≥严瑙之·严睿≥严睿睿严睿严文严乡瑙乡瑙乡啤严 0.489506 9 ≥严≥严≥≥严 卡严严睿严≥·≥睿待严卡≥睿文睿≥严 0.661281 10 严≥e严丙严≥严睿≥≥严绵况谋e荞丙严之丙严·≥卡誠吞乡≥严≥况严e严≥严淼况严e严 0.641312 11 严睿≥n吞严啤严≥严≥严嗜· 文谋荞瑙誠≥严瑙睿严≥严腕严乡漁严≥昇爬严≥严≥严谋文瑙e誠淼≥ 0.566527 12 ≥严≥严≥严睿严 0.670798 13 严≥严丙严瑙严·之文严严≥严≥严乡爬乡≥严≥睿≥严≥睿≥严≥严 严睿严之严≥严≥严≥严≥严严乡爬乡严 0.636588 14 严睿穿玩≥严吞睿严吞≥严·≥严丙乡≥严 严≥严≥之严≥严睿严毫·≥严≥严啤严≥严`≥严·≥严≥e≥严≥严毫≥严≥睿严 0.606821 15 睿≥严≥严≥行严≥汾毫·≥睿 严饹严 0.54594 ----------------------- Config info ----------------------- runtime_device: arm7 cpu_num_threads: 2 ----------------------- Data info ----------------------- batch_size: 2 input_shape: dynamic data_num: 2 ----------------------- Model info ----------------------- model_name: ch_PP-OCRv3_det_slim_opt.nb precision: INT8 ----------------------- Perf info ------------------------ Total time spent(ms): 298 preprocess_time(ms): 4.60215, inference_time(ms): 141.457, postprocess_time(ms): 3.81642

dzz10 avatar Sep 20 '22 09:09 dzz10

paddle-lite v2.11的版本就会出现这个问题,换成v2.10版本就可以解决,但是v2.10版本对ch_PP-OCRv2_rec_slim_opt.nb又有问题 https://github.com/PaddlePaddle/PaddleOCR/issues/5808

ljdang avatar Sep 21 '22 02:09 ljdang

paddle-lite v2.11的版本就会出现这个问题,换成v2.10版本就可以解决,但是v2.10版本对ch_PP-OCRv2_rec_slim_opt.nb又有问题 #5808

官版的slim opt文件好像没有OCRV3版本的,我也只找到V2版本。且我只有用v2.9.1+OCRV2版本是正常的,v2.10和v2.11都不正常。都给我整郁闷了。

dzz10 avatar Sep 21 '22 03:09 dzz10

模型list文档中有提供PP-OCRv3 nb模型,可以先下载检测、识别、分类模型,然后按照lite部署文档步骤进行预测

an1018 avatar Sep 21 '22 10:09 an1018

@an1018 就是按照文档步骤来的,复现的方法就是把paddlelite版本换成v2.11,你们可以测试一下,分类模型ch_PP-OCRv3_rec_slim_opt.nb会出现乱码。

ljdang avatar Sep 21 '22 11:09 ljdang