%Disk Image %{ %Imaging ToolBox method r=14; A=zeros(70,70); %(fIntsc(refPtR:(refPtRExt),refPtC:(refPtCExt))) m= {40,40}; A(m{:})=1; B= imdilate(A,strel('disk',r,0) ); imshow(B) area=pi*r^2 clear all %} %without Image Proc. Toolbox %r=14; %A=zeros(70,70); %A=zeros(r,r); %P=[40,40]; %center= [refPtR+ round(.5*width), refPtC+ round(.5*width)]; %A=zeros(70,70); %--------------------------------------------------------------------- %radius=14; diaExt=2*(radius+1); circBoxA=zeros(diaExt,diaExt); center= [radius+2, radius+2]; [m n ]=size(circBoxA); X = bsxfun(@plus,(1:m)', zeros(1,n)); Y = bsxfun(@plus,(1:n), zeros(m,1)); cirMask= sqrt(sum(bsxfun(@minus,cat(3,X,Y),reshape(center,1,1,[])) .^2,3))<=radius; area=pi*radius^2; cirPixA= nnz(cirMask); optCirMask= double(cirMask); optCirMask(optCirMask==0)= 0.8; %+++++++++++Foto Circle Fram(e)+++++++++++++++++++++ expansion=2; radExpan= radius+expansion; FdiaExt=2*(radExpan); circBoxA=zeros(FdiaExt,FdiaExt); center= [radExpan+1, radExpan+1]; [m n ]=size(circBoxA); X = bsxfun(@plus,(1:m)', zeros(1,n)); Y = bsxfun(@plus,(1:n), zeros(m,1)); FcirMask= sqrt(sum(bsxfun(@minus,cat(3,X,Y),reshape(center,1,1,[])) .^2,3))<=radExpan; %FcirPixA= nnz(cirMask); FoptCirMask= double(FcirMask); FoptCirMask(FoptCirMask==1)= 2; %FoptCirMask(FoptCirMask==0)= 1; %********Combine Masks to create circular boundry************ padOptCirMask= padarray(optCirMask,[expansion-1 expansion-1],0.8); FoptCirMask= FoptCirMask .* padOptCirMask; FoptCirMask(FoptCirMask==1.6)= 0.8; FoptCirMask(FoptCirMask==0)= 1; FoptCirMask(FoptCirMask==2)= 1; %--------------------------------------------------- %imagesc(cirMask)