public FastRetinaKeypointDescriptor GetDescriptor() {
    if (descriptor == null || pattern == null) {
      if (pattern == null) pattern = new FastRetinaKeypointPattern(octaves, scale);

      descriptor = new FastRetinaKeypointDescriptor(grayImage, integral, pattern);
      descriptor.setExtended(featureType == FastRetinaKeypointDescriptorType.Extended);
    }

    return descriptor;
  }