/// <summary>
        /// Compute the descriptor given the image and the point location
        /// </summary>
        /// <param name="image">The image where the descriptor will be computed from</param>
        /// <param name="mask">The optional mask, can be null if not needed</param>
        /// <param name="keyPoints">The keypoint where the descriptor will be computed from. The order of the keypoints might be changed unless the GPU_SURF detector is UP-RIGHT.</param>
        /// <returns>The image features founded on the keypoint location</returns>
        public OclMat <float> ComputeDescriptorsRaw(OclImage <Gray, Byte> image, OclImage <Gray, byte> mask, OclMat <float> keyPoints)
        {
            OclMat <float> descriptors = new OclMat <float>(keyPoints.Size.Height, DescriptorSize, 1);

            OclInvoke.oclSURFDetectorCompute(_ptr, image, mask, keyPoints, descriptors, true);
            return(descriptors);
        }