示例#1
0
            public static void DetectCharucoDiamond(Cv.Core.Mat image, Std.VectorVectorPoint2f markerCorners, Std.VectorInt markerIds, float squareMarkerLengthRate,
                                                    out Std.VectorVectorPoint2f diamondCorners, out Std.VectorVec4i diamondIds)
            {
                Cv.Core.Exception exception = new Cv.Core.Exception();
                System.IntPtr     diamondCornersPtr, diamondIdsPtr;

                au_detectCharucoDiamond3(image.cppPtr, markerCorners.cppPtr, markerIds.cppPtr, squareMarkerLengthRate, out diamondCornersPtr,
                                         out diamondIdsPtr, exception.cppPtr);
                diamondCorners = new Std.VectorVectorPoint2f(diamondCornersPtr);
                diamondIds     = new Std.VectorVec4i(diamondIdsPtr);

                exception.Check();
            }
示例#2
0
        public static void DetectCharucoDiamond(Cv.Mat image, Std.VectorVectorPoint2f markerCorners, Std.VectorInt markerIds,
                                                float squareMarkerLengthRate, out Std.VectorVectorPoint2f diamondCorners, out Std.VectorVec4i diamondIds, Cv.Mat cameraMatrix,
                                                Cv.Mat distCoeffs)
        {
            Cv.Exception exception = new Cv.Exception();
            IntPtr       diamondCornersPtr, diamondIdsPtr;

            au_detectCharucoDiamond(image.CppPtr, markerCorners.CppPtr, markerIds.CppPtr, squareMarkerLengthRate, out diamondCornersPtr,
                                    out diamondIdsPtr, cameraMatrix.CppPtr, distCoeffs.CppPtr, exception.CppPtr);
            diamondCorners = new Std.VectorVectorPoint2f(diamondCornersPtr);
            diamondIds     = new Std.VectorVec4i(diamondIdsPtr);

            exception.Check();
        }
示例#3
0
 public static void DrawDetectedDiamonds(Cv.Core.Mat image, Std.VectorVectorPoint2f diamondCorners, Std.VectorVec4i diamondIds)
 {
     Cv.Core.Exception exception = new Cv.Core.Exception();
     au_drawDetectedDiamonds2(image.cppPtr, diamondCorners.cppPtr, diamondIds.cppPtr, exception.cppPtr);
     exception.Check();
 }
示例#4
0
 public static void DrawDetectedDiamonds(Cv.Mat image, Std.VectorVectorPoint2f diamondCorners)
 {
     Std.VectorVec4i diamondIds = new Std.VectorVec4i();
     DrawDetectedDiamonds(image, diamondCorners, diamondIds);
 }
示例#5
0
 public static void DrawDetectedDiamonds(Cv.Mat image, Std.VectorVectorPoint2f diamondCorners, Std.VectorVec4i diamondIds)
 {
     Cv.Scalar borderColor = new Cv.Scalar(0, 0, 255);
     DrawDetectedDiamonds(image, diamondCorners, diamondIds, borderColor);
 }
示例#6
0
 public static void DrawDetectedDiamonds(Cv.Mat image, Std.VectorVectorPoint2f diamondCorners, Std.VectorVec4i diamondIds,
                                         Cv.Scalar borderColor)
 {
     Cv.Exception exception = new Cv.Exception();
     au_drawDetectedDiamonds(image.CppPtr, diamondCorners.CppPtr, diamondIds.CppPtr, borderColor.CppPtr, exception.CppPtr);
     exception.Check();
 }
示例#7
0
 public static void DetectCharucoDiamond(Cv.Mat image, Std.VectorVectorPoint2f markerCorners, Std.VectorInt markerIds,
                                         float squareMarkerLengthRate, out Std.VectorVectorPoint2f diamondCorners, out Std.VectorVec4i diamondIds)
 {
     Cv.Mat cameraMatrix = new Cv.Mat();
     DetectCharucoDiamond(image, markerCorners, markerIds, squareMarkerLengthRate, out diamondCorners, out diamondIds, cameraMatrix);
 }