Switch to unified view

a b/combinedDeepLearningActiveContour/functions/eval_metrics.m
1
% compute metrics
2
3
function [dm1,dm2,PD1,PD2,HD1,HD2]=eval_metrics(I,m_cnt,auto_seg,manualPoints,para)
4
5
    % resize mask in the original image size   
6
    auto_seg_r=remap_mask(auto_seg,m_cnt,I);
7
    
8
    % convex hull of resized mask
9
    c_auto_seg_r=bwconvhull(auto_seg_r);
10
    
11
    % convert mask to contour
12
    autoPoints1=contourc(double(auto_seg_r), [0 0]); autoPoints1=autoPoints1(:,2:end)';
13
    autoPoints2=contourc(double(c_auto_seg_r), [0 0]);autoPoints2=autoPoints2(:,2:end)';
14
    
15
if ~isempty(autoPoints1) && ~isempty(autoPoints2)
16
% Dice Metric
17
dm1 = calc_dm(autoPoints1,manualPoints,para);
18
dm2 = calc_dm(autoPoints2,manualPoints,para);
19
20
% Perpendicular Distance
21
PD1 = calc_dist(autoPoints1,manualPoints,para);
22
PD2 = calc_dist(autoPoints2,manualPoints,para);
23
24
% Hausdorff distance
25
HD1 = hausdorff( manualPoints, autoPoints1); 
26
HD2 = hausdorff( manualPoints, autoPoints2); 
27
else
28
dm1=0;
29
dm2=0;
30
PD1=100;
31
PD2=100;
32
HD1=100;
33
HD2=100;
34
end
35
36
end