PaddlePaddle飞桨OCR文本检测——识别图片文字结果并保存为txt(五)

此部分只考虑rec识别部分,不考虑检测和方向分类。

举个栗子,要识别的图片如下所示:在这里插入图片描述
打码了,第一次发布的时候csdn说我打广告……

这是paddle自带的图片,也是det检测后的框出来的图片,可以看到,rec识别部分的输入图片,是仅有一行文字,没有其它乱七八糟的东西,也没有多余的空白,非常精炼。

在PaddleOCR-dygraph根目录下启动cmd,输入识别图片代码如下:

python tools/infer_rec.py -c configs/rec/ch_ppocr_v2.0/rec_chinese_common_train_v2.0.yml -o Global.load_static_weights=false Global.infer_img=doc/imgs_words/ch/

其中-c 参数是配置文件,里面包含了识别要用的模型(由Global.checkpoints的路径指定,可以是自己训练的模型)和要识别的图片(由Global.infer_img的路径指定,可以是文件或者文件夹,示例是文件夹)
-o后面的参数可以省去,当有该参数时,配置文件里的相应项将以-o参数为准。

在这里插入图片描述
识别结果如下图:
在这里插入图片描述

看来识别模型效果还不错。

现在任务要求,需要批量输出识别结果,于是打开tools/infer_rec.py查看代码:
在这里插入图片描述
如果之前没有别的修改的话,这段代码应该在80行左右。

经调试发现,路径存在file变量中,rec_reuslt(可能是开发人员手误,应该是rec_result)是一个元组(tuple)变量,rec_reuslt[0]存的是识别结果文字,rec_reuslt[1]存的是识别准确率。

于是用一波简单的文件操作,将结果保存为txt

#大for循环前加
resulttxtpath=open(".\\rec_result.txt",'w+')

#输出result的小for循环里加
print("{}\t{}\t{}".format(file,rec_reuslt[0],rec_reuslt[1]),file=resulttxtpath)

#大for循环success后加
resulttxtpath.close()

打开一看,符合要求。(这真的是\t)
在这里插入图片描述

  • 13
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值