版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m_buddy/article/details/78807478
1. 分割指标
在完成图像分割任务之后需要对分割结果进行性能评估,一般采用的指标是IOU和假阳性率。例如看下面这幅分割对照图像
上面第三幅图中红色的是分割结果,绿色的是标记图像,黄色的是重叠区域。那么具体的评判是这样的
IOU:
假阳性率:
2. Matlab实现代码
% 函数功能:计算两张图像的IOU
% lable_img:输入的图像A,只包含0和255像素值的图像
% res_img:输入的图像B,也同样只包含0和255像素值的图像
% 返回值:iou两张图像的iou;yl假阳性率
function [iou,yl] = Calc_IOU(lable_img, res_img)
[rows, cols] = size(lable_img);
% 计算总面积
%total_area = rows * cols;
% 统计lable_img、res_img中255像素值的个数
lable_area = 0; % 标记出来的面积
res_area = 0; % 分割出来结果的面积
intersection_area = 0; % 相交区域的面积
combine_area = 0; % 两个区域联合的面积
% 开始计算各部分的面积
for i = 1: 1: rows
for j = 1: 1: cols
if lable_img(i, j)==255 && res_img(i, j)==255
intersection_area = intersection_area + 1;
lable_area = lable_area + 1;
res_area = res_area + 1;
elseif lable_img(i, j)==255 && res_img(i, j)~=255
lable_area = lable_area + 1;
elseif lable_img(i, j)~=255 && res_img(i, j)==255
res_area = res_area + 1;
end
end
end
combine_area = combine_area + lable_area + res_area - intersection_area;
% 得到IOU
iou = double(intersection_area) / double(combine_area);
fprintf('IOU: %f\n', iou);
% 得到假阳性率
yl = double(res_area - intersection_area) / double(combine_area);
fprintf('假阳性率为:%f\n', yl);
end
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
<link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-7f770a53f2.css" rel="stylesheet">
</div>
<script>
(function(){
function setArticleH(btnReadmore,posi){
var winH = $(window).height();
var articleBox = $("div.article_content");
var artH = articleBox.height();
if(artH > winH*posi){
articleBox.css({
'height':winH*posi+'px',
'overflow':'hidden'
})
btnReadmore.click(function(){
articleBox.removeAttr("style");
$(this).parent().remove();
})
}else{
btnReadmore.parent().remove();
}
}
var btnReadmore = $("#btn-readmore");
if(btnReadmore.length>0){
if(currentUserName){
setArticleH(btnReadmore,3);
}else{
setArticleH(btnReadmore,1.2);
}
}
})()
</script>
</article>