clc;clear all; close all;
image = imread('img.png');
level = graythresh(image);
imgBW = im2bw(image,level);
sz = size(imgBW);
[columnsInImage rowsInImage] = meshgrid(1:sz(1), 1:sz(2));
for i=3
for j=3
centerX = i;
centerY = j;
radius = 10;
X = columnsInImage - centerX;
Y = rowsInImage - centerY;
circlemask = (X).^2 + (Y).^2 <= (radius).^2;
circle_image = double(imgBW) .* circlemask;
angle = atan2(Y, X);
quadrant1 = circlemask & angle > -pi/2 & angle <= 0;
quadrant2 = circlemask & angle > -3*pi/2 & angle <= -pi/2;
quadrant3 = circlemask & angle > pi/2 & angle <= pi;
quadrant4 = circlemask & angle > 0 & angle <= pi/2;
quad1_image = double(imgBW) .* quadrant1;
quad2_image = double(imgBW) .* quadrant2;
quad3_image = double(imgBW) .* quadrant3;
quad4_image = double(imgBW) .* quadrant4;
ne = length(find(circle_image > 0))
*nw = length(find(circle_image == 0))
de = ne/nw;
n(1) = length(find(quad1_image > 0));
n(2) = length(find(quad2_image > 0));
n(3) = length(find(quad3_image > 0));
n(4) = length(find(quad4_image > 0));
ds = min(n)/mean(n);
matriz_I(i+1,j+1) = de*ds ;
end
end
subplot(2,4,1);imshow(image);title('Imagem original');
subplot(2,4,2);imshow(imgBW);title('Imagem binarizada');
subplot(2,4,3);imshow(circle_image, []);title('Máscara circular');
subplot(2,4,4);imshow(quad1_image, []);title('Primeiro quadrante');
subplot(2,4,5);imshow(quad2_image, []);title('Segundo quadrante');
subplot(2,4,6);imshow(quad3_image, []);title('Terceiro quadrante');
subplot(2,4,7);imshow(quad4_image, []);title('Quarto quadrante');