// Feature2DAsync
//
+/** @brief Abstract base class for CUDA asynchronous 2D image feature detectors and descriptor extractors.
+ */
class CV_EXPORTS Feature2DAsync
{
public:
virtual ~Feature2DAsync();
+ /** @brief Detects keypoints in an image.
+
+ @param image Image.
+ @param keypoints The detected keypoints.
+ @param mask Mask specifying where to look for keypoints (optional). It must be a 8-bit integer
+ matrix with non-zero values in the region of interest.
+ @param stream CUDA stream.
+ */
virtual void detectAsync(InputArray image,
OutputArray keypoints,
InputArray mask = noArray(),
Stream& stream = Stream::Null());
+ /** @brief Computes the descriptors for a set of keypoints detected in an image.
+
+ @param image Image.
+ @param keypoints Input collection of keypoints.
+ @param descriptors Computed descriptors. Row j is the descriptor for j-th keypoint.
+ @param stream CUDA stream.
+ */
virtual void computeAsync(InputArray image,
OutputArray keypoints,
OutputArray descriptors,
Stream& stream = Stream::Null());
+ /** Detects keypoints and computes the descriptors. */
virtual void detectAndComputeAsync(InputArray image,
InputArray mask,
OutputArray keypoints,
OutputArray descriptors,
- bool useProvidedKeypoints=false,
+ bool useProvidedKeypoints = false,
Stream& stream = Stream::Null());
+ /** Converts keypoints array from internal representation to standard vector. */
virtual void convert(InputArray gpu_keypoints,
std::vector<KeyPoint>& keypoints) = 0;
};
// FastFeatureDetector
//
+/** @brief Wrapping class for feature detection using the FAST method.
+ */
class CV_EXPORTS FastFeatureDetector : public cv::FastFeatureDetector, public Feature2DAsync
{
public:
// ORB
//
+/** @brief Class implementing the ORB (*oriented BRIEF*) keypoint detector and descriptor extractor
+ *
+ * @sa cv::ORB
+ */
class CV_EXPORTS ORB : public cv::ORB, public Feature2DAsync
{
public: