이 이미지에서 원의 분할로 인해 Matlab에 몇 가지 문제가 있습니다. 콘트라스트의 차이는 정말 작고 이미지 자체는 정말로 시끄 럽습니다. 나는 이미지에서 약간의 프로세싱을하고 대비의 차이를 증가 시켰지 만 여전히 어떻게 해야할지 모릅니다.원의 대비가 낮습니다.
나는 this paper을 찾았지만 DCT를 사용하여 백그라운드 재구성을 진행하는 방법을 모른다. 나는 이전의 단계를했다. 조정 전의
이미지 :
각 스포크 3 원으로 구성하고있다 : 조정합니다 (innercircle이 imfindcircles를 사용하여 전체 그림에서 절단) 후
이미지 10 스포크 그래서 총 30 서클 있습니다. 내가 지금까지 시도했습니다 무엇
:
clc
clear
im = imread('f8.jpg');
im = mat2gray(im);
im = 1 - im;
s = size(im);
%contrast enhancement method suggested in paper
for x = 1:s(1);
for y=1:s(2);
a = max(im(x, :))/mean(im(x, :));
a;
b = max(im(:, y))/mean(im(:, y));
b;
ab = (a+b)/2;
im(x, y) = im(x, y) * ab;
im(x, y);
end
end
imshow(im);
%bluring
h = fspecial('average', [2,2]);
im= filter2(h, im);
%find circles
[c, r] = imfindcircles(im, [35 50], 'Sensitivity', 0.92, 'Edge', 0.01);
% figure(1)
% imshow(im)
% hold on
% viscircles(c, r, 'EdgeColor', 'b');
% hold off
% making mask that cuts out the inenr circles
mask = bsxfun(@plus, ((1:256) - c(1,1)).^2, (transpose(1:256) - c(1,2)).^2) < r(1)^2;
mask = im2double(mask);
mask_al
for x=1:256
for y=1:256
if mask(x, y) == 1;
mask(x, y) = im(x, y);
end
end
end
는을 요약하면 :
나는 이미지에 볼 수 있습니다 얼마나 많은 원 계산해야합니다.
내 코드는 여기에 있습니다. -http : //paste.org/71029 – jasheq