123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508 |
- using OpenCVForUnity.CoreModule;
- using OpenCVForUnity.UtilsModule;
- using System;
- using System.Collections.Generic;
- using System.Runtime.InteropServices;
- namespace OpenCVForUnity.ObjdetectModule
- {
- // C++: class ArucoDetector
- /**
- * The main functionality of ArucoDetector class is detection of markers in an image with detectMarkers() method.
- *
- * After detecting some markers in the image, you can try to find undetected markers from this dictionary with
- * refineDetectedMarkers() method.
- *
- * SEE: DetectorParameters, RefineParameters
- */
- public class ArucoDetector : Algorithm
- {
- protected override void Dispose(bool disposing)
- {
- try
- {
- if (disposing)
- {
- }
- if (IsEnabledDispose)
- {
- if (nativeObj != IntPtr.Zero)
- objdetect_ArucoDetector_delete(nativeObj);
- nativeObj = IntPtr.Zero;
- }
- }
- finally
- {
- base.Dispose(disposing);
- }
- }
- protected internal ArucoDetector(IntPtr addr) : base(addr) { }
- // internal usage only
- public static new ArucoDetector __fromPtr__(IntPtr addr) { return new ArucoDetector(addr); }
- //
- // C++: cv::aruco::ArucoDetector::ArucoDetector(Dictionary dictionary = getPredefinedDictionary(cv::aruco::DICT_4X4_50), DetectorParameters detectorParams = DetectorParameters(), RefineParameters refineParams = RefineParameters())
- //
- /**
- * Basic ArucoDetector constructor
- *
- * param dictionary indicates the type of markers that will be searched
- * param detectorParams marker detection parameters
- * param refineParams marker refine detection parameters
- */
- public ArucoDetector(Dictionary dictionary, DetectorParameters detectorParams, RefineParameters refineParams) :
- base(DisposableObject.ThrowIfNullIntPtr(objdetect_ArucoDetector_ArucoDetector_10(dictionary.nativeObj, detectorParams.nativeObj, refineParams.nativeObj)))
- {
- }
- /**
- * Basic ArucoDetector constructor
- *
- * param dictionary indicates the type of markers that will be searched
- * param detectorParams marker detection parameters
- */
- public ArucoDetector(Dictionary dictionary, DetectorParameters detectorParams) :
- base(DisposableObject.ThrowIfNullIntPtr(objdetect_ArucoDetector_ArucoDetector_11(dictionary.nativeObj, detectorParams.nativeObj)))
- {
- }
- /**
- * Basic ArucoDetector constructor
- *
- * param dictionary indicates the type of markers that will be searched
- */
- public ArucoDetector(Dictionary dictionary) :
- base(DisposableObject.ThrowIfNullIntPtr(objdetect_ArucoDetector_ArucoDetector_12(dictionary.nativeObj)))
- {
- }
- /**
- * Basic ArucoDetector constructor
- *
- */
- public ArucoDetector() :
- base(DisposableObject.ThrowIfNullIntPtr(objdetect_ArucoDetector_ArucoDetector_13()))
- {
- }
- //
- // C++: void cv::aruco::ArucoDetector::detectMarkers(Mat image, vector_Mat& corners, Mat& ids, vector_Mat& rejectedImgPoints = vector_Mat())
- //
- /**
- * Basic marker detection
- *
- * param image input image
- * param corners vector of detected marker corners. For each marker, its four corners
- * are provided, (e.g std::vector<std::vector<cv::Point2f> > ). For N detected markers,
- * the dimensions of this array is Nx4. The order of the corners is clockwise.
- * param ids vector of identifiers of the detected markers. The identifier is of type int
- * (e.g. std::vector<int>). For N detected markers, the size of ids is also N.
- * The identifiers have the same order than the markers in the imgPoints array.
- * param rejectedImgPoints contains the imgPoints of those squares whose inner code has not a
- * correct codification. Useful for debugging purposes.
- *
- * Performs marker detection in the input image. Only markers included in the specific dictionary
- * are searched. For each detected marker, it returns the 2D position of its corner in the image
- * and its corresponding identifier.
- * Note that this function does not perform pose estimation.
- * <b>Note:</b> The function does not correct lens distortion or takes it into account. It's recommended to undistort
- * input image with corresponding camera model, if camera parameters are known
- * SEE: undistort, estimatePoseSingleMarkers, estimatePoseBoard
- */
- public void detectMarkers(Mat image, List<Mat> corners, Mat ids, List<Mat> rejectedImgPoints)
- {
- ThrowIfDisposed();
- if (image != null) image.ThrowIfDisposed();
- if (ids != null) ids.ThrowIfDisposed();
- Mat corners_mat = new Mat();
- Mat rejectedImgPoints_mat = new Mat();
- objdetect_ArucoDetector_detectMarkers_10(nativeObj, image.nativeObj, corners_mat.nativeObj, ids.nativeObj, rejectedImgPoints_mat.nativeObj);
- Converters.Mat_to_vector_Mat(corners_mat, corners);
- corners_mat.release();
- Converters.Mat_to_vector_Mat(rejectedImgPoints_mat, rejectedImgPoints);
- rejectedImgPoints_mat.release();
- }
- /**
- * Basic marker detection
- *
- * param image input image
- * param corners vector of detected marker corners. For each marker, its four corners
- * are provided, (e.g std::vector<std::vector<cv::Point2f> > ). For N detected markers,
- * the dimensions of this array is Nx4. The order of the corners is clockwise.
- * param ids vector of identifiers of the detected markers. The identifier is of type int
- * (e.g. std::vector<int>). For N detected markers, the size of ids is also N.
- * The identifiers have the same order than the markers in the imgPoints array.
- * correct codification. Useful for debugging purposes.
- *
- * Performs marker detection in the input image. Only markers included in the specific dictionary
- * are searched. For each detected marker, it returns the 2D position of its corner in the image
- * and its corresponding identifier.
- * Note that this function does not perform pose estimation.
- * <b>Note:</b> The function does not correct lens distortion or takes it into account. It's recommended to undistort
- * input image with corresponding camera model, if camera parameters are known
- * SEE: undistort, estimatePoseSingleMarkers, estimatePoseBoard
- */
- public void detectMarkers(Mat image, List<Mat> corners, Mat ids)
- {
- ThrowIfDisposed();
- if (image != null) image.ThrowIfDisposed();
- if (ids != null) ids.ThrowIfDisposed();
- Mat corners_mat = new Mat();
- objdetect_ArucoDetector_detectMarkers_11(nativeObj, image.nativeObj, corners_mat.nativeObj, ids.nativeObj);
- Converters.Mat_to_vector_Mat(corners_mat, corners);
- corners_mat.release();
- }
- //
- // C++: void cv::aruco::ArucoDetector::refineDetectedMarkers(Mat image, Board board, vector_Mat& detectedCorners, Mat& detectedIds, vector_Mat& rejectedCorners, Mat cameraMatrix = Mat(), Mat distCoeffs = Mat(), Mat& recoveredIdxs = Mat())
- //
- /**
- * Refine not detected markers based on the already detected and the board layout
- *
- * param image input image
- * param board layout of markers in the board.
- * param detectedCorners vector of already detected marker corners.
- * param detectedIds vector of already detected marker identifiers.
- * param rejectedCorners vector of rejected candidates during the marker detection process.
- * param cameraMatrix optional input 3x3 floating-point camera matrix
- * \(A = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\)
- * param distCoeffs optional vector of distortion coefficients
- * \((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6],[s_1, s_2, s_3, s_4]])\) of 4, 5, 8 or 12 elements
- * param recoveredIdxs Optional array to returns the indexes of the recovered candidates in the
- * original rejectedCorners array.
- *
- * This function tries to find markers that were not detected in the basic detecMarkers function.
- * First, based on the current detected marker and the board layout, the function interpolates
- * the position of the missing markers. Then it tries to find correspondence between the reprojected
- * markers and the rejected candidates based on the minRepDistance and errorCorrectionRate parameters.
- * If camera parameters and distortion coefficients are provided, missing markers are reprojected
- * using projectPoint function. If not, missing marker projections are interpolated using global
- * homography, and all the marker corners in the board must have the same Z coordinate.
- */
- public void refineDetectedMarkers(Mat image, Board board, List<Mat> detectedCorners, Mat detectedIds, List<Mat> rejectedCorners, Mat cameraMatrix, Mat distCoeffs, Mat recoveredIdxs)
- {
- ThrowIfDisposed();
- if (image != null) image.ThrowIfDisposed();
- if (board != null) board.ThrowIfDisposed();
- if (detectedIds != null) detectedIds.ThrowIfDisposed();
- if (cameraMatrix != null) cameraMatrix.ThrowIfDisposed();
- if (distCoeffs != null) distCoeffs.ThrowIfDisposed();
- if (recoveredIdxs != null) recoveredIdxs.ThrowIfDisposed();
- Mat detectedCorners_mat = Converters.vector_Mat_to_Mat(detectedCorners);
- Mat rejectedCorners_mat = Converters.vector_Mat_to_Mat(rejectedCorners);
- objdetect_ArucoDetector_refineDetectedMarkers_10(nativeObj, image.nativeObj, board.nativeObj, detectedCorners_mat.nativeObj, detectedIds.nativeObj, rejectedCorners_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj, recoveredIdxs.nativeObj);
- Converters.Mat_to_vector_Mat(detectedCorners_mat, detectedCorners);
- detectedCorners_mat.release();
- Converters.Mat_to_vector_Mat(rejectedCorners_mat, rejectedCorners);
- rejectedCorners_mat.release();
- }
- /**
- * Refine not detected markers based on the already detected and the board layout
- *
- * param image input image
- * param board layout of markers in the board.
- * param detectedCorners vector of already detected marker corners.
- * param detectedIds vector of already detected marker identifiers.
- * param rejectedCorners vector of rejected candidates during the marker detection process.
- * param cameraMatrix optional input 3x3 floating-point camera matrix
- * \(A = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\)
- * param distCoeffs optional vector of distortion coefficients
- * \((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6],[s_1, s_2, s_3, s_4]])\) of 4, 5, 8 or 12 elements
- * original rejectedCorners array.
- *
- * This function tries to find markers that were not detected in the basic detecMarkers function.
- * First, based on the current detected marker and the board layout, the function interpolates
- * the position of the missing markers. Then it tries to find correspondence between the reprojected
- * markers and the rejected candidates based on the minRepDistance and errorCorrectionRate parameters.
- * If camera parameters and distortion coefficients are provided, missing markers are reprojected
- * using projectPoint function. If not, missing marker projections are interpolated using global
- * homography, and all the marker corners in the board must have the same Z coordinate.
- */
- public void refineDetectedMarkers(Mat image, Board board, List<Mat> detectedCorners, Mat detectedIds, List<Mat> rejectedCorners, Mat cameraMatrix, Mat distCoeffs)
- {
- ThrowIfDisposed();
- if (image != null) image.ThrowIfDisposed();
- if (board != null) board.ThrowIfDisposed();
- if (detectedIds != null) detectedIds.ThrowIfDisposed();
- if (cameraMatrix != null) cameraMatrix.ThrowIfDisposed();
- if (distCoeffs != null) distCoeffs.ThrowIfDisposed();
- Mat detectedCorners_mat = Converters.vector_Mat_to_Mat(detectedCorners);
- Mat rejectedCorners_mat = Converters.vector_Mat_to_Mat(rejectedCorners);
- objdetect_ArucoDetector_refineDetectedMarkers_11(nativeObj, image.nativeObj, board.nativeObj, detectedCorners_mat.nativeObj, detectedIds.nativeObj, rejectedCorners_mat.nativeObj, cameraMatrix.nativeObj, distCoeffs.nativeObj);
- Converters.Mat_to_vector_Mat(detectedCorners_mat, detectedCorners);
- detectedCorners_mat.release();
- Converters.Mat_to_vector_Mat(rejectedCorners_mat, rejectedCorners);
- rejectedCorners_mat.release();
- }
- /**
- * Refine not detected markers based on the already detected and the board layout
- *
- * param image input image
- * param board layout of markers in the board.
- * param detectedCorners vector of already detected marker corners.
- * param detectedIds vector of already detected marker identifiers.
- * param rejectedCorners vector of rejected candidates during the marker detection process.
- * param cameraMatrix optional input 3x3 floating-point camera matrix
- * \(A = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\)
- * \((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6],[s_1, s_2, s_3, s_4]])\) of 4, 5, 8 or 12 elements
- * original rejectedCorners array.
- *
- * This function tries to find markers that were not detected in the basic detecMarkers function.
- * First, based on the current detected marker and the board layout, the function interpolates
- * the position of the missing markers. Then it tries to find correspondence between the reprojected
- * markers and the rejected candidates based on the minRepDistance and errorCorrectionRate parameters.
- * If camera parameters and distortion coefficients are provided, missing markers are reprojected
- * using projectPoint function. If not, missing marker projections are interpolated using global
- * homography, and all the marker corners in the board must have the same Z coordinate.
- */
- public void refineDetectedMarkers(Mat image, Board board, List<Mat> detectedCorners, Mat detectedIds, List<Mat> rejectedCorners, Mat cameraMatrix)
- {
- ThrowIfDisposed();
- if (image != null) image.ThrowIfDisposed();
- if (board != null) board.ThrowIfDisposed();
- if (detectedIds != null) detectedIds.ThrowIfDisposed();
- if (cameraMatrix != null) cameraMatrix.ThrowIfDisposed();
- Mat detectedCorners_mat = Converters.vector_Mat_to_Mat(detectedCorners);
- Mat rejectedCorners_mat = Converters.vector_Mat_to_Mat(rejectedCorners);
- objdetect_ArucoDetector_refineDetectedMarkers_12(nativeObj, image.nativeObj, board.nativeObj, detectedCorners_mat.nativeObj, detectedIds.nativeObj, rejectedCorners_mat.nativeObj, cameraMatrix.nativeObj);
- Converters.Mat_to_vector_Mat(detectedCorners_mat, detectedCorners);
- detectedCorners_mat.release();
- Converters.Mat_to_vector_Mat(rejectedCorners_mat, rejectedCorners);
- rejectedCorners_mat.release();
- }
- /**
- * Refine not detected markers based on the already detected and the board layout
- *
- * param image input image
- * param board layout of markers in the board.
- * param detectedCorners vector of already detected marker corners.
- * param detectedIds vector of already detected marker identifiers.
- * param rejectedCorners vector of rejected candidates during the marker detection process.
- * \(A = \vecthreethree{f_x}{0}{c_x}{0}{f_y}{c_y}{0}{0}{1}\)
- * \((k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6],[s_1, s_2, s_3, s_4]])\) of 4, 5, 8 or 12 elements
- * original rejectedCorners array.
- *
- * This function tries to find markers that were not detected in the basic detecMarkers function.
- * First, based on the current detected marker and the board layout, the function interpolates
- * the position of the missing markers. Then it tries to find correspondence between the reprojected
- * markers and the rejected candidates based on the minRepDistance and errorCorrectionRate parameters.
- * If camera parameters and distortion coefficients are provided, missing markers are reprojected
- * using projectPoint function. If not, missing marker projections are interpolated using global
- * homography, and all the marker corners in the board must have the same Z coordinate.
- */
- public void refineDetectedMarkers(Mat image, Board board, List<Mat> detectedCorners, Mat detectedIds, List<Mat> rejectedCorners)
- {
- ThrowIfDisposed();
- if (image != null) image.ThrowIfDisposed();
- if (board != null) board.ThrowIfDisposed();
- if (detectedIds != null) detectedIds.ThrowIfDisposed();
- Mat detectedCorners_mat = Converters.vector_Mat_to_Mat(detectedCorners);
- Mat rejectedCorners_mat = Converters.vector_Mat_to_Mat(rejectedCorners);
- objdetect_ArucoDetector_refineDetectedMarkers_13(nativeObj, image.nativeObj, board.nativeObj, detectedCorners_mat.nativeObj, detectedIds.nativeObj, rejectedCorners_mat.nativeObj);
- Converters.Mat_to_vector_Mat(detectedCorners_mat, detectedCorners);
- detectedCorners_mat.release();
- Converters.Mat_to_vector_Mat(rejectedCorners_mat, rejectedCorners);
- rejectedCorners_mat.release();
- }
- //
- // C++: Dictionary cv::aruco::ArucoDetector::getDictionary()
- //
- public Dictionary getDictionary()
- {
- ThrowIfDisposed();
- return new Dictionary(DisposableObject.ThrowIfNullIntPtr(objdetect_ArucoDetector_getDictionary_10(nativeObj)));
- }
- //
- // C++: void cv::aruco::ArucoDetector::setDictionary(Dictionary dictionary)
- //
- public void setDictionary(Dictionary dictionary)
- {
- ThrowIfDisposed();
- if (dictionary != null) dictionary.ThrowIfDisposed();
- objdetect_ArucoDetector_setDictionary_10(nativeObj, dictionary.nativeObj);
- }
- //
- // C++: DetectorParameters cv::aruco::ArucoDetector::getDetectorParameters()
- //
- public DetectorParameters getDetectorParameters()
- {
- ThrowIfDisposed();
- return new DetectorParameters(DisposableObject.ThrowIfNullIntPtr(objdetect_ArucoDetector_getDetectorParameters_10(nativeObj)));
- }
- //
- // C++: void cv::aruco::ArucoDetector::setDetectorParameters(DetectorParameters detectorParameters)
- //
- public void setDetectorParameters(DetectorParameters detectorParameters)
- {
- ThrowIfDisposed();
- if (detectorParameters != null) detectorParameters.ThrowIfDisposed();
- objdetect_ArucoDetector_setDetectorParameters_10(nativeObj, detectorParameters.nativeObj);
- }
- //
- // C++: RefineParameters cv::aruco::ArucoDetector::getRefineParameters()
- //
- public RefineParameters getRefineParameters()
- {
- ThrowIfDisposed();
- return new RefineParameters(DisposableObject.ThrowIfNullIntPtr(objdetect_ArucoDetector_getRefineParameters_10(nativeObj)));
- }
- //
- // C++: void cv::aruco::ArucoDetector::setRefineParameters(RefineParameters refineParameters)
- //
- public void setRefineParameters(RefineParameters refineParameters)
- {
- ThrowIfDisposed();
- if (refineParameters != null) refineParameters.ThrowIfDisposed();
- objdetect_ArucoDetector_setRefineParameters_10(nativeObj, refineParameters.nativeObj);
- }
- //
- // C++: void cv::aruco::ArucoDetector::write(FileStorage fs, String name)
- //
- // Unknown type 'FileStorage' (I), skipping the function
- //
- // C++: void cv::aruco::ArucoDetector::read(FileNode fn)
- //
- // Unknown type 'FileNode' (I), skipping the function
- #if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
- const string LIBNAME = "__Internal";
- #else
- const string LIBNAME = "opencvforunity";
- #endif
- // C++: cv::aruco::ArucoDetector::ArucoDetector(Dictionary dictionary = getPredefinedDictionary(cv::aruco::DICT_4X4_50), DetectorParameters detectorParams = DetectorParameters(), RefineParameters refineParams = RefineParameters())
- [DllImport(LIBNAME)]
- private static extern IntPtr objdetect_ArucoDetector_ArucoDetector_10(IntPtr dictionary_nativeObj, IntPtr detectorParams_nativeObj, IntPtr refineParams_nativeObj);
- [DllImport(LIBNAME)]
- private static extern IntPtr objdetect_ArucoDetector_ArucoDetector_11(IntPtr dictionary_nativeObj, IntPtr detectorParams_nativeObj);
- [DllImport(LIBNAME)]
- private static extern IntPtr objdetect_ArucoDetector_ArucoDetector_12(IntPtr dictionary_nativeObj);
- [DllImport(LIBNAME)]
- private static extern IntPtr objdetect_ArucoDetector_ArucoDetector_13();
- // C++: void cv::aruco::ArucoDetector::detectMarkers(Mat image, vector_Mat& corners, Mat& ids, vector_Mat& rejectedImgPoints = vector_Mat())
- [DllImport(LIBNAME)]
- private static extern void objdetect_ArucoDetector_detectMarkers_10(IntPtr nativeObj, IntPtr image_nativeObj, IntPtr corners_mat_nativeObj, IntPtr ids_nativeObj, IntPtr rejectedImgPoints_mat_nativeObj);
- [DllImport(LIBNAME)]
- private static extern void objdetect_ArucoDetector_detectMarkers_11(IntPtr nativeObj, IntPtr image_nativeObj, IntPtr corners_mat_nativeObj, IntPtr ids_nativeObj);
- // C++: void cv::aruco::ArucoDetector::refineDetectedMarkers(Mat image, Board board, vector_Mat& detectedCorners, Mat& detectedIds, vector_Mat& rejectedCorners, Mat cameraMatrix = Mat(), Mat distCoeffs = Mat(), Mat& recoveredIdxs = Mat())
- [DllImport(LIBNAME)]
- private static extern void objdetect_ArucoDetector_refineDetectedMarkers_10(IntPtr nativeObj, IntPtr image_nativeObj, IntPtr board_nativeObj, IntPtr detectedCorners_mat_nativeObj, IntPtr detectedIds_nativeObj, IntPtr rejectedCorners_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj, IntPtr recoveredIdxs_nativeObj);
- [DllImport(LIBNAME)]
- private static extern void objdetect_ArucoDetector_refineDetectedMarkers_11(IntPtr nativeObj, IntPtr image_nativeObj, IntPtr board_nativeObj, IntPtr detectedCorners_mat_nativeObj, IntPtr detectedIds_nativeObj, IntPtr rejectedCorners_mat_nativeObj, IntPtr cameraMatrix_nativeObj, IntPtr distCoeffs_nativeObj);
- [DllImport(LIBNAME)]
- private static extern void objdetect_ArucoDetector_refineDetectedMarkers_12(IntPtr nativeObj, IntPtr image_nativeObj, IntPtr board_nativeObj, IntPtr detectedCorners_mat_nativeObj, IntPtr detectedIds_nativeObj, IntPtr rejectedCorners_mat_nativeObj, IntPtr cameraMatrix_nativeObj);
- [DllImport(LIBNAME)]
- private static extern void objdetect_ArucoDetector_refineDetectedMarkers_13(IntPtr nativeObj, IntPtr image_nativeObj, IntPtr board_nativeObj, IntPtr detectedCorners_mat_nativeObj, IntPtr detectedIds_nativeObj, IntPtr rejectedCorners_mat_nativeObj);
- // C++: Dictionary cv::aruco::ArucoDetector::getDictionary()
- [DllImport(LIBNAME)]
- private static extern IntPtr objdetect_ArucoDetector_getDictionary_10(IntPtr nativeObj);
- // C++: void cv::aruco::ArucoDetector::setDictionary(Dictionary dictionary)
- [DllImport(LIBNAME)]
- private static extern void objdetect_ArucoDetector_setDictionary_10(IntPtr nativeObj, IntPtr dictionary_nativeObj);
- // C++: DetectorParameters cv::aruco::ArucoDetector::getDetectorParameters()
- [DllImport(LIBNAME)]
- private static extern IntPtr objdetect_ArucoDetector_getDetectorParameters_10(IntPtr nativeObj);
- // C++: void cv::aruco::ArucoDetector::setDetectorParameters(DetectorParameters detectorParameters)
- [DllImport(LIBNAME)]
- private static extern void objdetect_ArucoDetector_setDetectorParameters_10(IntPtr nativeObj, IntPtr detectorParameters_nativeObj);
- // C++: RefineParameters cv::aruco::ArucoDetector::getRefineParameters()
- [DllImport(LIBNAME)]
- private static extern IntPtr objdetect_ArucoDetector_getRefineParameters_10(IntPtr nativeObj);
- // C++: void cv::aruco::ArucoDetector::setRefineParameters(RefineParameters refineParameters)
- [DllImport(LIBNAME)]
- private static extern void objdetect_ArucoDetector_setRefineParameters_10(IntPtr nativeObj, IntPtr refineParameters_nativeObj);
- // native support for java finalize()
- [DllImport(LIBNAME)]
- private static extern void objdetect_ArucoDetector_delete(IntPtr nativeObj);
- }
- }
|