clear all;
band1 = imread ( 'ori\band1.gif' );
band2 = imread ( 'ori\band2.gif' );
band3 = imread ( 'ori\band3.gif' );
band4 = imread ( 'ori\band4.gif' );
min1 = min(min(band1));
min2 = min(min(band2));
min3 = min(min(band3));
min4 = min(min(band4));
max1 = max(max(band1));
max2 = max(max(band2));
max3 = max(max(band3));
max4 = max(max(band4));
img1 = uint8 ( ( double(band1) - double(min1) ) * 255 / ( double(max1) - double(min1) ) );
img2 = uint8 ( ( double(band2) - double(min2) ) * 255 / ( double(max2) - double(min2) ) );
img3 = uint8 ( ( double(band3) - double(min3) ) * 255 / ( double(max3) - double(min3) ) );
img4 = uint8 ( ( double(band4) - double(min4) ) * 240 / ( double(max4) - double(min4) ) );
clear band1; clear band2; clear band3; clear band4;
clear min1; clear min2; clear min3; clear min4;
clear max1; clear max2; clear max3; clear max4;
clear new;
l1 = imread ( 'training\l1.gif' );
land = zeros ( 300, 4 );
w1 = imread ( 'training\w4.gif' );
water = zeros ( 300, 4 );
lc = 1;
wc = 1;
for x = 1 : 512
for y = 1 : 512
if ( l1(x,y) == 255 )
land( lc, 1 ) = img1(x,y);
land( lc, 2 ) = img2(x,y);
land( lc, 3 ) = img3(x,y);
land( lc, 4 ) = img4(x,y);
lc = lc + 1;
end
if ( w1(x,y) == 255 )
water( wc, 1 ) = img1(x,y);
water( wc, 2 ) = img2(x,y);
water( wc, 3 ) = img3(x,y);
water( wc, 4 ) = img4(x,y);
wc = wc + 1;
end
end
end
clear l1; clear w1;
clear x; clear y;
lc = lc - 1
wc = wc - 1
tc = lc + wc
% distance = zeros ( tc, 2 );
% oimg1 = uint8( zeros( 512, 512 ) );
% oimg3 = uint8( zeros( 512, 512 ) );
% oimg5 = uint8( zeros( 512, 512 ) );
% oimg7 = uint8( zeros( 512, 512 ) );
% oimg9 = uint8( zeros( 512, 512 ) );
% oimg11 = uint8( zeros( 512, 512 ) );
%
% for x = 1 : 512
% for y = 1 : 512
% dc = 1;
% for c = 1 : lc
% distance(dc,1) = sqrt ( (double(img1(x,y)) - land(c,1))^2 + (double(img2(x,y)) - land(c,2))^2 + (double(img3(x,y)) - land(c,3))^2 + (double(img4(x,y)) - land(c,4))^2 );
% distance(dc,2) = 1;
% dc = dc + 1;
% end
% for c = 1 : wc
% distance(dc,1) = sqrt ( (double(img1(x,y)) - water(c,1))^2 + (double(img2(x,y)) - water(c,2))^2 + (double(img3(x,y)) - water(c,3))^2 + (double(img4(x,y)) - water(c,4))^2 );
% distance(dc,2) = 2;
% dc = dc + 1;
% end
% [ mind, loc ] = min ( distance ( 1:tc, 1 ) );
% temp = distance(loc,:);
% distance(loc,:) = distance(1,:);
% distance(1,:) = temp;
% [ mind, loc ] = min ( distance ( 2:tc, 1 ) );
% temp = distance(loc+1,:);
% distance(loc+1,:) = distance(2,:);
% distance(2,:) = temp;
% [ mind, loc ] = min ( distance ( 3:tc, 1 ) );
% temp = distance(loc+2,:);
% distance(loc+2,:) = distance(3,:);
% distance(3,:) = temp;
% [ mind, loc ] = min ( distance ( 4:tc, 1 ) );
% temp = distance(loc+3,:);
% distance(loc+3,:) = distance(4,:);
% distance(4,:) = temp;
% [ mind, loc ] = min ( distance ( 5:tc, 1 ) );
% temp = distance(loc+4,:);
% distance(loc+4,:) = distance(5,:);
% distance(5,:) = temp;
% [ mind, loc ] = min ( distance ( 6:tc, 1 ) );
% temp = distance(loc+5,:);
% distance(loc+5,:) = distance(6,:);
% distance(6,:) = temp;
% [ mind, loc ] = min ( distance ( 7:tc, 1 ) );
% temp = distance(loc+6,:);
% distance(loc+6,:) = distance(7,:);
% distance(7,:) = temp;
% [ mind, loc ] = min ( distance ( 8:tc, 1 ) );
% temp = distance(loc+7,:);
% distance(loc+7,:) = distance(8,:);
% distance(8,:) = temp;
% [ mind, loc ] = min ( distance ( 9:tc, 1 ) );
% temp = distance(loc+8,:);
% distance(loc+8,:) = distance(9,:);
% distance(9,:) = temp;
% [ mind, loc ] = min ( distance ( 10:tc, 1 ) );
% temp = distance(loc+9,:);
% distance(loc+9,:) = distance(10,:);
% distance(10,:) = temp;
% [ mind, loc ] = min ( distance ( 11:tc, 1 ) );
% temp = distance(loc+10,:);
% distance(loc+10,:) = distance(11,:);
% distance(11,:) = temp;
% if ( distance(1,2) == 1 ) % for k == 1
% oimg1(x,y) = 255;
% tlc = 1;
% twc = 0;
% else
% oimg1(x,y) = 1;
% tlc = 0;
% twc = 1;
% end
% for c = 2 : 3
% if ( distance(c,2) == 1 )
% tlc = tlc + 1;
% else
% twc = twc + 1;
% end
% end
% if ( tlc > twc )
% oimg3(x,y) = 255;
% else
% oimg3(x,y) = 1;
% end
% for c = 4 : 5
% if ( distance(c,2) == 1 )
% tlc = tlc + 1;
% else
% twc = twc + 1;
% end
% end
% if ( tlc > twc )
% oimg5(x,y) = 255;
% else
% oimg5(x,y) = 1;
% end
% for c = 6 : 7
% if ( distance(c,2) == 1 )
% tlc = tlc + 1;
% else
% twc = twc + 1;
% end
% end
% if ( tlc > twc )
% oimg7(x,y) = 255;
% else
% oimg7(x,y) = 1;
% end
% for c = 8 : 9
% if ( distance(c,2) == 1 )
% tlc = tlc + 1;
% else
% twc = twc + 1;
% end
% end
% if ( tlc > twc )
% oimg9(x,y) = 255;
% else
% oimg9(x,y) = 1;
% end
% for c = 10 : 11
% if ( distance(c,2) == 1 )
% tlc = tlc + 1;
% else
% twc = twc + 1;
% end
% end
% if ( tlc > twc )
% oimg11(x,y) = 255;
% else
% oimg11(x,y) = 1;
% end
% end
% end
%
% imshow ( oimg11 );
%
% imwrite ( oimg1, 'knnout\k1.gif', 'bmp' );
% imwrite ( oimg3, 'knnout\k3.gif', 'bmp' );
% imwrite ( oimg5, 'knnout\k5.gif', 'bmp' );
% imwrite ( oimg7, 'knnout\k7.gif', 'bmp' );
% imwrite ( oimg9, 'knnout\k9.gif', 'bmp' );
% imwrite ( oimg11, 'knnout\k11.gif', 'bmp' );