code: public static <T extends ImageGray<T>>
  	DescribeRegionPoint<T,TupleDesc_B> brief( @Nullable ConfigBrief config , Class<T> imageType)
  	{
  		if( config == null )
  			config = new ConfigBrief();
  		config.checkValidity();
  
  		BlurFilter<T> filter = FactoryBlurFilter.gaussian(ImageType.single(imageType),config.blurSigma,config.blurRadius);
  		BinaryCompareDefinition_I32 definition =
  				FactoryBriefDefinition.gaussian2(new Random(123), config.radius, config.numPoints);
  
  		if( config.fixed) {
  			return new WrapDescribeBrief<>(FactoryDescribePointAlgs.brief(definition, filter), imageType);
  		} else {
  			return new WrapDescribeBriefSo<>(FactoryDescribePointAlgs.briefso(definition, filter), imageType);
  		}
  	}
docs: <p>
  Creates a BRIEF descriptor.
  </p>
  
  @see boofcv.alg.feature.describe.DescribePointBrief
  @see boofcv.alg.feature.describe.DescribePointBriefSO
  
  @param config Configuration for BRIEF descriptor.  If null then default is used.
  @param imageType Type of gray scale image it processes.
  @return BRIEF descriptor