【详解】文本检测OCR模型的评价指标

关于文本检测OCR模型的评价指标

前言:网上关于评价标准乱七八糟的,有关于单词的,有关于段落的,似乎没见过谁解释一下常见论文中常用的评价指标具体是怎么计算的,比如DBNet,比如RCNN,这似乎好像默认大家都知道咋算了。

好吧,我不知道,我刚搞懂,做个笔记。

目录

识别网络

识别网络是最简单的,只有一个指标,就是准确率

检测正确的图像占总图像的比例
a c c u r a c y = 检测正确的小图数量 数据集中所有的小图数量 accuracy = \frac{检测正确的小图数量}{数据集中所有的小图数量} accuracy=数据集中所有的小图数量检测正确的小图数量

这里的图像指的是"小图",如下所示:


识别结果就是文本,如果识别结果与标注一致,即为正样本。

检测网络

检测网络就是采用的二分类的最简单的混淆矩阵

有框没框,框的位置对不对,都需要设定阈值进行限定

Precision = T P T P + F P \text { Precision }=\frac{T P}{T P+F P} Precision =TP+FPTP
Recall = T P T P + F N \text { Recall }=\frac{T P}{T P+F N} Recall =TP+FNTP
F Score = ( 1 + β 2 ) Precision ⋅ Recall β 2 ⋅ Precision + Recall ( β 系数一般取 1 ) F_{\text {Score }}=\left(1+\beta^2\right) \frac{\text { Precision } \cdot \text { Recall }}{\beta^2 \cdot \text { Precision }+ \text { Recall }} (\beta系数一般取1) FScore =(1+β2)β2⋅ Precision + Recall Precision ⋅ Recall (β系数一般取1)

两者和在一起组成OCR系统,以paddleOCR为例

官方指标评估代码与方法

PaddleOCR计算三个OCR检测相关的指标,分别是:Precision、Recall、Hmean(F-Score)。

PS:这里,Hmean与F-Score在PaddleOCR-V1中是分开的,Hmean特指检测位置部分的指标,F-Score特指OCR系统的指标,V2V3就没区分了,全部都是OCR系统的指标。

区别在于:TP的计算,OCR系统的指标需要:真实有框的位置,预测为有框,且识别结果正确。

依据论文:

举个非常好的例子

如上图所示:

  • 真实有框的数量为10个
  • 真实有框和预测有框对上的数量有7个:TP=7(绿蓝)
  • 但其中只有5个识别正确,所以:TP=5(红绿蓝)
  • 真实没框和预测有框的数量为2个:FP=2(纯蓝)
  • 真实有框但没有预测出来的有3个:FN=3(纯绿)

计算如下:

检测算法指标计算:

Precision = T P T P + F P = 7 7 + 2 = 0.7778 \text { Precision }=\frac{T P}{T P+F P}=\frac{7}{7+2}=0.7778 Precision =TP+FPTP=7+27=0.7778
Recall = T P T P + F N = 7 7 + 3 = 0.7 \text { Recall }=\frac{T P}{T P+F N}=\frac{7}{7+3}=0.7 Recall =TP+FNTP=7+37=0.7
F Score = ( 1 + β 2 ) Precision ⋅ Recall β 2 ⋅ Precision + Recall = ( 2 ) 0.7778 ⋅ 0.7 1 ⋅ 0.7778 + 0.7 = 0.73685 F_{\text {Score }}=\left(1+\beta^2\right) \frac{\text { Precision } \cdot \text { Recall }}{\beta^2 \cdot \text { Precision }+ \text { Recall }}=\left(2\right) \frac{\text { 0.7778 } \cdot \text { 0.7 }}{1 \cdot \text { 0.7778 }+ \text {0.7 }}=0.73685 FScore =(1+β2)β2⋅ Precision + Recall Precision ⋅ Recall =(2)1⋅ 0.7778 +0.7 0.7778 ⋅ 0.7 =0.73685

整体OCR系统指标计算:

Precision = T P T P + F P = 5 5 + 2 = 0.714 \text { Precision }=\frac{T P}{T P+F P}=\frac{5}{5+2}=0.714 Precision =TP+FPTP=5+25=0.714
Recall = T P T P + F N = 5 5 + 3 = 0.625 \text { Recall }=\frac{T P}{T P+F N}=\frac{5}{5+3}=0.625 Recall =TP+FNTP=5+35=0.625
F Score = ( 1 + β 2 ) Precision ⋅ Recall β 2 ⋅ Precision + Recall = ( 2 ) 0.714 ⋅ 0.625 1 ⋅ 0.714 + 0.625 = 0.66654 F_{\text {Score }}=\left(1+\beta^2\right) \frac{\text { Precision } \cdot \text { Recall }}{\beta^2 \cdot \text { Precision }+ \text { Recall }}=\left(2\right) \frac{\text { 0.714 } \cdot \text { 0.625 }}{1 \cdot \text { 0.714 }+ \text { 0.625 }}=0.66654 FScore =(1+β2)β2⋅ Precision + Recall Precision ⋅ Recall =(2)1⋅ 0.714 + 0.625 0.714 ⋅ 0.625 =0.66654

相关推荐
无心水3 小时前
24、系统架构师论文写作专题 核心考点与学习笔记
笔记·学习·系统架构·架构师·安全架构·软考架构师·软考系统架构设计师
蒸蒸yyyyzwd4 小时前
邓明 Agent 系统面试-意图识别学习笔记
笔记·学习
Zhao-Jichao7 小时前
AI Prompting for Everyone 课程笔记 - P21 总结 Conclusion
人工智能·笔记
欢欢李7 小时前
【LTE L3 笔记 05】LTE同步信号
笔记·无线通信·物理层·lte·空口协议
La Pulga9 小时前
【FreeRTOS源码学习笔记】空闲任务与阻塞延时
笔记·mcu·学习·嵌入式·freertos·实时操作系统
蒸蒸yyyyzwd9 小时前
秋招学习笔记 day106
笔记·学习
小李不想当小白10 小时前
WDG看门狗(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
欢欢李10 小时前
【LTE L3 笔记 04】LTE帧结构
笔记·无线通信·物理层·lte·空口协议
Zhao-Jichao13 小时前
AI Prompting for Everyone 课程笔记 - P20 实验与期末项目 Lab and Final Project
前端·人工智能·笔记
Z21-X13 小时前
云原生运维实战笔记:企业网站综合上云部署与云运维服务全景解析
运维·笔记·学习·云原生