docs: private void associateL2R( T left , T right ) {
  		// make the previous new observations into the new old ones
  		ImageInfo<TD> tmp = featsLeft1;
  		featsLeft1 = featsLeft0; featsLeft0 = tmp;
  		tmp = featsRight1;
  		featsRight1 = featsRight0; featsRight0 = tmp;
  
  		// detect and associate features in the two images
  		featsLeft1.reset();
  		featsRight1.reset();
  
  //		long time0 = System.currentTimeMillis();
  		describeImage(left,featsLeft1);
  		describeImage(right,featsRight1);
  //		long time1 = System.currentTimeMillis();
  
  		// detect and associate features in the current stereo pair
  		for( int i = 0; i < detector.getNumberOfSets(); i++ ) {
  			SetMatches matches = setMatches[i];
  			matches.swap();
  			matches.match2to3.reset();
  
  			FastQueue<Point2D_F64> leftLoc = featsLeft1.location[i];
  			FastQueue<Point2D_F64> rightLoc = featsRight1.location[i];
  
  			assocL2R.setSource(leftLoc,featsLeft1.description[i]);
  			assocL2R.setDestination(rightLoc, featsRight1.description[i]);
  			assocL2R.associate();
  
  			FastQueue<AssociatedIndex> found = assocL2R.getMatches();
  
  //			removeUnassociated(leftLoc,featsLeft1.description[i],rightLoc,featsRight1.description[i],found);
  			setMatches(matches.match2to3, found, leftLoc.size);
  		}
  //		long time2 = System.currentTimeMillis();
  //		System.out.println("  desc "+(time1-time0)+" assoc "+(time2-time1));
  	}