findCirclesGridAsync function

Future<(bool, Mat)> findCirclesGridAsync(
  1. InputArray image,
  2. Size patternSize, {
  3. int flags = CALIB_CB_SYMMETRIC_GRID,
  4. OutputArray? centers,
})

Finds centers in the grid of circles.

bool cv::findCirclesGrid (InputArray image, Size patternSize, OutputArray centers, int flags=CALIB_CB_SYMMETRIC_GRID, const Ptr< FeatureDetector > &blobDetector=SimpleBlobDetector::create())

https://docs.opencv.org/4.11.0/d9/d0c/group__calib3d.html#ga7f02cd21c8352142890190227628fa80

Implementation

Future<(bool, Mat)> findCirclesGridAsync(
  InputArray image,
  Size patternSize, {
  int flags = CALIB_CB_SYMMETRIC_GRID,
  OutputArray? centers,
}) async {
  centers ??= Mat.empty();
  final prval = calloc<ffi.Bool>();
  return cvRunAsync0(
      (callback) => ccalib3d.cv_findCirclesGrid(
            image.ref,
            patternSize.ref,
            centers!.ref,
            flags,
            prval,
            callback,
          ), (c) {
    final rval = prval.value;
    calloc.free(prval);
    return c.complete((rval, centers!));
  });
}