code: public static Estimate1ofPnP pnp_1(EnumPNP which, int numIterations , int numTest) {
  
  		if( which == EnumPNP.EPNP ) {
  			PnPLepetitEPnP alg = new PnPLepetitEPnP(0.1);
  			alg.setNumIterations(numIterations);
  			return new WrapPnPLepetitEPnP(alg);
  		} else if( which == EnumPNP.IPPE ) {
  			Estimate1ofEpipolar H = FactoryMultiView.homographyTLS();
  			return new IPPE_to_EstimatePnP(H);
  		}
  
  		FastQueue<Se3_F64> solutions = new FastQueue<>(4, Se3_F64.class, true);
  
  		return new EstimateNto1ofPnP(pnp_N(which,-1),solutions,numTest);
  	}
docs: Created an estimator for the P3P problem that selects a single solution by considering additional
  observations.
  
  <p>NOTE: Observations are in normalized image coordinates NOT pixels.</p>
  
  <p>
  NOTE: EPnP has several tuning parameters and the defaults here might not be the best for your situation.
  Use {@link #computePnPwithEPnP} if you wish to have access to all parameters.
  </p>
  
  @param which The algorithm which is to be returned.
  @param numIterations Number of iterations. Only used by some algorithms and recommended number varies
  significantly by algorithm.
  @param numTest How many additional sample points are used to remove ambiguity in the solutions.  Not used
  if only a single solution is found.
  @return An estimator which returns a single estimate.