code: public static ModelMatcherMultiview<Se3_F64, Point2D3D> pnpRansac( @Nullable ConfigPnP pnp,
  																	   @Nonnull ConfigRansac ransac )
  	{
  		if( pnp == null )
  			pnp = new ConfigPnP();
  		pnp.checkValidity();
  		ransac.checkValidity();
  
  		Estimate1ofPnP estimatorPnP = FactoryMultiView.pnp_1(pnp.which, pnp.epnpIterations, pnp.numResolve);
  		DistanceFromModelMultiView<Se3_F64,Point2D3D> distance = new PnPDistanceReprojectionSq();
  		ModelManagerSe3_F64 manager = new ModelManagerSe3_F64();
  		EstimatorToGenerator<Se3_F64,Point2D3D> generator =
  				new EstimatorToGenerator<>(estimatorPnP);
  
  		// convert from pixels to pixels squared
  		double threshold = ransac.inlierThreshold*ransac.inlierThreshold;
  
  		return new RansacMultiView<>(ransac.randSeed, manager, generator, distance, ransac.maxIterations, threshold);
  	}
docs: Robust solution to PnP problem using {@link Ransac}.  Input observations are in normalized
  image coordinates. Found transform is from world to camera.
  
  <p>NOTE: Observations are in normalized image coordinates NOT pixels.</p>
  
  <p>See code for all the details.</p>
  
  @see Estimate1ofPnP
  
  @param pnp PnP parameters.  Can't be null.
  @param ransac Parameters for RANSAC.  Can't be null.
  @return Robust Se3_F64 estimator