样例:语义分割指标计算:GA,OA,mAcc,mIoU,IoU

举个例子,假设得到混淆矩阵如下:
[ 真 实 标 签 真 实 标 签 真 实 标 签 真 实 标 签 真 实 标 签 0 1 2 3 4 预 测 标 签 0 16 0 1 1 4 预 测 标 签 1 3 22 0 0 2 预 测 标 签 2 0 5 18 0 1 预 测 标 签 3 0 0 0 15 1 预 测 标 签 4 1 0 1 1 31 ] \begin{bmatrix} &&&真实标签&真实标签&真实标签&真实标签&真实标签 \\&&&0&1&2&3&4 \\ \\ 预测标签&0&&16&0&1&1&4 \\ 预测标签&1&&3&22&0&0&2 \\ 预测标签&2&&0&5&18&0&1\\ 预测标签&3&&0&0&0&15&1\\ 预测标签&4&&1&0&1&1&31 \end{bmatrix} 0123401630011022500210180131001514421131

Global Accuracy (Overall Accuracy, OA) = 16 + 22 + 18 + 15 + 31 ( 16 + 0 + 1 + 1 + 4 ) + ( 3 + 22 + 0 + 0 + 2 ) + ( 0 + 5 + 18 + 0 + 1 ) + ( 0 + 0 + 0 + 15 + 1 ) + ( 1 + 0 + 1 + 1 + 31 ) {16+22+18+15+31 \over (16+0+1+1+4)+(3+22+0+0+2)+(0+5+18+0+1)+(0+0+0+15+1)+(1+0+1+1+31)} (16+0+1+1+4)+(3+22+0+0+2)+(0+5+18+0+1)+(0+0+0+15+1)+(1+0+1+1+31)16+22+18+15+31,即:对角元素和 除 所有元素和。

Class 0 Accuracy = 16 16 + 3 + 0 + 0 + 1 { 16 \over 16+3+0+0+1 } 16+3+0+0+116,即:每一类预测正确的数量 除 此类本有的样本总数量

Class 1 Accuracy = 22 0 + 22 + 5 + 0 + 0 { 22 \over 0+22+5+0+0 } 0+22+5+0+022

Class 2 Accuracy = 18 1 + 0 + 18 + 0 + 1 { 18 \over 1+0+18+0+1 } 1+0+18+0+118

Class 3 Accuracy = 15 1 + 0 + 0 + 15 + 1 { 15 \over 1+0+0+15+1 } 1+0+0+15+115

Class 4 Accuracy = 31 4 + 2 + 1 + 1 + 31 { 31 \over 4+2+1+1+31 } 4+2+1+1+3131

Mean Accuracy (mAcc) = 1 5 { 1 \over 5 } 51*(Class 0 Accuracy+Class 1 Accuracy+Class 2 Accuracy+Class 3 Accuracy+Class 4 Accuracy),即:所有类的Acc的平均值。

Class 0 IoU = 16 ( 16 + 0 + 1 + 1 + 4 ) + ( 16 + 3 + 0 + 0 + 1 ) − 16 { 16 \over (16+0+1+1+4)+(16+3+0+0+1)-16 } (16+0+1+1+4)+(16+3+0+0+1)1616,即:每一类预测正确的数量 除 (预测属于此类的样本数量+此类本有的样本总数量-此类预测正确的数量)。ps:因为多加了一次预测正确的数量

Class 1 IoU = 22 ( 3 + 22 + 0 + 0 + 2 ) + ( 0 + 22 + 5 + 0 + 0 ) − 22 { 22 \over (3+22+0+0+2)+(0+22+5+0+0)-22 } (3+22+0+0+2)+(0+22+5+0+0)2222

Class 2 IoU = 18 ( 0 + 5 + 18 + 0 + 1 ) + ( 1 + 0 + 18 + 0 + 1 ) − 18 { 18 \over (0+5+18+0+1)+(1+0+18+0+1)-18 } (0+5+18+0+1)+(1+0+18+0+1)1818

Class 3 IoU = 15 ( 0 + 0 + 0 + 15 + 1 ) + ( 1 + 0 + 0 + 15 + 1 ) − 15 { 15 \over (0+0+0+15+1)+(1+0+0+15+1)-15 } (0+0+0+15+1)+(1+0+0+15+1)1515

Class 4 IoU = 31 ( 1 + 0 + 1 + 1 + 31 ) + ( 4 + 2 + 1 + 1 + 31 ) − 31 { 31 \over (1+0+1+1+31)+(4+2+1+1+31)-31 } (1+0+1+1+31)+(4+2+1+1+31)3131

Mean IoU (mIoU) = 1 5 { 1 \over 5 } 51*(Class 0 IoU+Class 1 IoU+Class 2 IoU+Class 3 IoU+Class 4 IoU),即:所有类的IoU的平均值

这篇写的更详细:【语义分割】评价指标:PA、CPA、MPA、IoU、MIoU详细总结和代码实现

如有错误,欢迎交流。

你可能感兴趣的:(笔记,神经网络,实验)