function [xInliers,yInliers]=ransacCirc2( xPixelsCont,yPixelsCont, numMinInliers )
% RANSAC Circ que finaliza cuando alcanza un num.  superior a numMinInliers
% xPixelsCont,yPixelsCont contiene las x % (columnas)y las y (filas) de los
% pix de cont
% numMinInliers: Itera hasta que encuentre al menos numInliers
% xInliers son las columnas!
% yInliers son las filas!
% xInliers e yInliers hay que pasarlos LMS para calcular circunferencia
% con mejor precisión
% -------------------------- EJECUCION---------------------------------
% Cont=edge(I);
% [X,Y] = coordPixelsCont(Cont);   %coord punt.contorno a vectores X e Y
% [xInliers,yInliers] = ransacCirc2( X,Y, 900);    %900 inliers
% [A,B,C]=LMSCirc(xInliers,yInliers);   %ajuste de los inliers por min.cuadrados
% dibujaCircABC(A,B,C, 'r');
% ---------------------------------------------------------------------

numInliers=0;
numIteraciones=0;
tolerancia=2;


while(numInliers<numMinInliers)
    %imshow(C);
    %hold on;
    [xSample,ySample]=eligePuntosRand(xPixelsCont,yPixelsCont,3);
    %plot(xSample,ySample,'r+');
    %circunf que pasa por estos tres puntos
    [A, B, C] = LMSCirc(xSample,ySample);
    radio= sqrt(A^2+B^2-4*C)/2;
    centro= [-A/2,-B/2];
    
    [xInliers,yInliers] = InliersCirc( xPixelsCont,yPixelsCont,centro,radio, tolerancia);
    
    numInliers=length(xInliers);
    %plot(xInliers,yInliers,'g.');
    numIteraciones=numIteraciones+1;
end
%circunf que pasa por los inliers
% [A, B, C] = LMSCirc(xInliers,yInliers);
% radio= sqrt(A^2+B^2-4*C)/2;
% centro= [-A/2,-B/2];
% hold on
% dibujaCirc(centro,radio,'r');
end

