-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathimg_qi.m
31 lines (25 loc) · 997 Bytes
/
img_qi.m
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
% Main paper:
% Segmentation of Brain MRI using an Altruistic Harris Hawks' Optimization algorithm
% Rajarshi Bandopadhyay, Rohit Kundu, Diego Oliva, Ram Sarkar
% _____________________________________________________
function quality = img_qi(img1, img2, kernelsize)
N = kernelsize.^2;
sum2_filter = ones(kernelsize);
img1 = double(img1);
img2 = double(img2);
img1_sq = img1.*img1;
img2_sq = img2.*img2;
img12 = img1.*img2;
img1_sum = filter2(sum2_filter, img1, 'valid');
img2_sum = filter2(sum2_filter, img2, 'valid');
img1_sq_sum = filter2(sum2_filter, img1_sq, 'valid');
img2_sq_sum = filter2(sum2_filter, img2_sq, 'valid');
img12_sum = filter2(sum2_filter, img12, 'valid');
img12_sum_mul = img1_sum.*img2_sum;
img12_sq_sum_mul = img1_sum.*img1_sum + img2_sum.*img2_sum;
top = 4*(N*img12_sum - img12_sum_mul).*img12_sum_mul;
bot = (N*(img1_sq_sum + img2_sq_sum) - img12_sq_sum_mul).*img12_sq_sum_mul;
divx=top./bot;
% A = [1 NaN 2];
BB = divx(~isnan(divx));
quality = mean(mean(BB));