EAST 算法超详细源码解析(五)、评估验证

Date: 2020-06-01

Author: CW

前言:

今天儿童节呢,本来想着请一天假小快乐一把,但还是忍住了这波任性,看来是长大了一点哈哈哈!既然如此,就更一篇文吧,这部分比较简单,仅仅是实现一个评价指标。本文解析的是评价指标 F1-Score 的源码实现,当然你也可以用其它的评价指标,萝卜青菜,各有所爱,顺便科普下 F1-Score,计算公式如下:

F_{1} =\frac{2\ast precision\ast recall}{precision + recall}

实质是精确率与召回率的调和平均数: \frac{2}{\frac{1}{precision} + \frac{1}{recall} } ,它认为精确率与召回率同等重要,并且具有“短板效应”,两者之中值更低的那一项会占主导地位。

相关概念的理解可参考以下文章:

F1 score的意义

机器学习中的 F1-score

为什么要用 f1-score而不是平均值


F1-Score的计算


evaluate_method(i)


接着来看看该方法里面具体的操作。

evaluate_method(ii)


接下来主要是计算每个gt与预测多边形的IoU,若IoU大于预设的阀值,那么则将两者标记为已匹配,需要注意的是,已被匹配的多边形不会被二次匹配。

evaluate_method(iii)


evaluate_method(iv)


最后将所有图片的统计结果返回。

evaluate_method(v)

细心又帅气/美丽的你/妳应该会发现在计算IoU进行匹配的过程中貌似有不妥——一个gt/预测结果被匹配后就不会再被匹配,那么就有可能导致好的预测结果会被差的给抑制掉了!是的,因此在使用该方法前需要对预测结果基于score进行排序,将置信度搞的预测结果排在前面,这样就会优先对好的预测结果和gt进行匹配。


多边形生成与IoU计算

多边形生成主要使用了shapely的几何库。

polygon_from_points


IoU的计算如下:

IoU计算

最后,祝大家儿童节快乐,谁还不是个宝宝呢!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

友情链接更多精彩内容