code: public void performLearning(T image) {
  		// use the update track location
  		get_subwindow(image, templateNew);
  
  		// Kernel Regularized Least-Squares, calculate alphas (in Fourier domain)
  		//	k = dense_gauss_kernel(sigma, x);
  		dense_gauss_kernel(sigma, templateNew, templateNew, k);
  		fft.forward(k,kf);
  
  		// new_alphaf = yf ./ (fft2(k) + lambda);   %(Eq. 7)
  		computeAlphas(gaussianWeightDFT, kf, lambda, newAlphaf);
  
  		// subsequent frames, interpolate model
  		// alphaf = (1 - interp_factor) * alphaf + interp_factor * new_alphaf;
  		int N = alphaf.width*alphaf.height*2;
  		for( int i = 0; i < N; i++ ) {
  			alphaf.data[i] = (1-interp_factor)*alphaf.data[i] + interp_factor*newAlphaf.data[i];
  		}
  
  		// Set the previous image to be an interpolated version
  		//		z = (1 - interp_factor) * z + interp_factor * new_z;
  		N = templateNew.width* templateNew.height;
  		for( int i = 0; i < N; i++ ) {
  			template.data[i] = (1-interp_factor)* template.data[i] + interp_factor*templateNew.data[i];
  		}
  	}
docs: Update the alphas and the track's appearance