summaryrefslogtreecommitdiffstats
path: root/matlab/tools/compute_rnmp.m
diff options
context:
space:
mode:
Diffstat (limited to 'matlab/tools/compute_rnmp.m')
-rw-r--r--matlab/tools/compute_rnmp.m29
1 files changed, 29 insertions, 0 deletions
diff --git a/matlab/tools/compute_rnmp.m b/matlab/tools/compute_rnmp.m
new file mode 100644
index 0000000..6c00a01
--- /dev/null
+++ b/matlab/tools/compute_rnmp.m
@@ -0,0 +1,29 @@
+function [rnmp, nmp] = compute_rnmp(phantom, S)
+
+ phantom = double(phantom == max(phantom(:)));
+ S = double(S == max(S(:)));
+
+ %u1 = sort(unique(phantom));
+ %u2 = sort(unique(S));
+ %for i = 1:numel(u1)
+ % phantom_(phantom == u1(i)) = i;
+ % S_(S == u2(i)) = i;
+ %end
+ %phantom = phantom_;
+ %S = S_;
+
+ if numel(size(phantom)) == 2
+ S = imresize(S, size(phantom), 'nearest');
+ elseif numel(size(phantom)) == 3
+ S2 = zeros(size(phantom));
+ for slice = 1:size(phantom,3)
+ S2(:,:,slice) = imresize(S(:,:,slice), [size(phantom,1) size(phantom,2)], 'nearest');
+ end
+ S = S2;
+ end
+
+ nmp = sum(abs(phantom(:) ~= S(:)));
+ rnmp = nmp / sum(phantom(:));
+
+end
+