code: public static <T extends ImageGray<T>>
  	void gradient(T ii, double tl_x, double tl_y, double samplePeriod ,
  				  int regionSize, double kernelWidth,
  				  boolean useHaar, double[] derivX, double derivY[])
  	{
  		ImplSurfDescribeOps.naiveGradient(ii, tl_x, tl_y, samplePeriod , regionSize, kernelWidth, useHaar, derivX, derivY);
  	}
docs: <p>
  Computes the of a square region.  The region considered has a radius
  of ceil(radius*s) pixels.  The derivative is computed every 's' pixels.
  </p>
  
  <p>
  Deviation from paper:<br>
  <ul>
  <li>An symmetric box derivative is used instead of the Haar wavelet.</li>
  </ul>
  </p>
  
  @param tl_x Top left corner.
  @param tl_y Top left corner.
  @param samplePeriod Distance between sample points (in pixels)
  @param regionSize Width of region being considered in samples points (not pixels).
  @param kernelWidth Size of the kernel's width (in pixels) .
  @param useHaar
  @param derivX Derivative x wavelet output. length = radiusRegions*radiusRegions
  @param derivY Derivative y wavelet output. length = radiusRegions*radiusRegions