コード例 #1
0
        //javadoc: detectRegions(image, er_filter1, er_filter2, groups_rects)
        public static void detectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects)
        {
            if (image != null)
            {
                image.ThrowIfDisposed();
            }
            if (er_filter1 != null)
            {
                er_filter1.ThrowIfDisposed();
            }
            if (er_filter2 != null)
            {
                er_filter2.ThrowIfDisposed();
            }
            if (groups_rects != null)
            {
                groups_rects.ThrowIfDisposed();
            }
#if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
            Mat groups_rects_mat = groups_rects;
            text_Text_detectRegions_13(image.nativeObj, er_filter1.getNativeObjAddr(), er_filter2.getNativeObjAddr(), groups_rects_mat.nativeObj);

            return;
#else
            return;
#endif
        }
コード例 #2
0
ファイル: Text.cs プロジェクト: Bersaelor/FaceMaskUnity
        //
        // C++:  void cv::text::detectRegions(Mat image, Ptr_ERFilter er_filter1, Ptr_ERFilter er_filter2, vector_vector_Point& regions)
        //

        /**
         * Converts MSER contours (vector<Point>) to ERStat regions.
         *
         * param image Source image CV_8UC1 from which the MSERs where extracted.
         *
         *
         * param regions Output where the ERStat regions are stored.
         *
         * It takes as input the contours provided by the OpenCV MSER feature detector and returns as output
         * two vectors of ERStats. This is because MSER() output contains both MSER+ and MSER- regions in a
         * single vector<Point>, the function separates them in two different vectors (this is as if the
         * ERStats where extracted from two different channels).
         *
         * An example of MSERsToERStats in use can be found in the text detection webcam_demo:
         * <https://github.com/opencv/opencv_contrib/blob/master/modules/text/samples/webcam_demo.cpp>
         * param er_filter1 automatically generated
         * param er_filter2 automatically generated
         */
        public static void detectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, List <MatOfPoint> regions)
        {
            if (image != null)
            {
                image.ThrowIfDisposed();
            }
            if (er_filter1 != null)
            {
                er_filter1.ThrowIfDisposed();
            }
            if (er_filter2 != null)
            {
                er_filter2.ThrowIfDisposed();
            }
            Mat regions_mat = new Mat();

            text_Text_detectRegions_14(image.nativeObj, er_filter1.getNativeObjAddr(), er_filter2.getNativeObjAddr(), regions_mat.nativeObj);
            Converters.Mat_to_vector_vector_Point(regions_mat, regions);
            regions_mat.release();
        }
コード例 #3
0
ファイル: Text.cs プロジェクト: Bersaelor/FaceMaskUnity
        /**
         * Extracts text regions from image.
         *
         * param image Source image where text blocks needs to be extracted from.  Should be CV_8UC3 (color).
         * param er_filter1 Extremal Region Filter for the 1st stage classifier of N&amp;M algorithm CITE: Neumann12
         * param er_filter2 Extremal Region Filter for the 2nd stage classifier of N&amp;M algorithm CITE: Neumann12
         * param groups_rects Output list of rectangle blocks with text
         */
        public static void detectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects)
        {
            if (image != null)
            {
                image.ThrowIfDisposed();
            }
            if (er_filter1 != null)
            {
                er_filter1.ThrowIfDisposed();
            }
            if (er_filter2 != null)
            {
                er_filter2.ThrowIfDisposed();
            }
            if (groups_rects != null)
            {
                groups_rects.ThrowIfDisposed();
            }
            Mat groups_rects_mat = groups_rects;

            text_Text_detectRegions_13(image.nativeObj, er_filter1.getNativeObjAddr(), er_filter2.getNativeObjAddr(), groups_rects_mat.nativeObj);
        }
コード例 #4
0
ファイル: Text.cs プロジェクト: Bersaelor/FaceMaskUnity
        //
        // C++:  void cv::text::detectRegions(Mat image, Ptr_ERFilter er_filter1, Ptr_ERFilter er_filter2, vector_Rect& groups_rects, int method = ERGROUPING_ORIENTATION_HORIZ, String filename = String(), float minProbability = (float)0.5)
        //

        /**
         * Extracts text regions from image.
         *
         * param image Source image where text blocks needs to be extracted from.  Should be CV_8UC3 (color).
         * param er_filter1 Extremal Region Filter for the 1st stage classifier of N&amp;M algorithm CITE: Neumann12
         * param er_filter2 Extremal Region Filter for the 2nd stage classifier of N&amp;M algorithm CITE: Neumann12
         * param groups_rects Output list of rectangle blocks with text
         * param method Grouping method (see text::erGrouping_Modes). Can be one of ERGROUPING_ORIENTATION_HORIZ, ERGROUPING_ORIENTATION_ANY.
         * param filename The XML or YAML file with the classifier model (e.g. samples/trained_classifier_erGrouping.xml). Only to use when grouping method is ERGROUPING_ORIENTATION_ANY.
         * param minProbability The minimum probability for accepting a group. Only to use when grouping method is ERGROUPING_ORIENTATION_ANY.
         */
        public static void detectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects, int method, string filename, float minProbability)
        {
            if (image != null)
            {
                image.ThrowIfDisposed();
            }
            if (er_filter1 != null)
            {
                er_filter1.ThrowIfDisposed();
            }
            if (er_filter2 != null)
            {
                er_filter2.ThrowIfDisposed();
            }
            if (groups_rects != null)
            {
                groups_rects.ThrowIfDisposed();
            }
            Mat groups_rects_mat = groups_rects;

            text_Text_detectRegions_10(image.nativeObj, er_filter1.getNativeObjAddr(), er_filter2.getNativeObjAddr(), groups_rects_mat.nativeObj, method, filename, minProbability);
        }
コード例 #5
0
        //
        // C++:  void cv::text::detectRegions(Mat image, Ptr_ERFilter er_filter1, Ptr_ERFilter er_filter2, vector_vector_Point& regions)
        //

        //javadoc: detectRegions(image, er_filter1, er_filter2, regions)
        public static void detectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, List <MatOfPoint> regions)
        {
            if (image != null)
            {
                image.ThrowIfDisposed();
            }
            if (er_filter1 != null)
            {
                er_filter1.ThrowIfDisposed();
            }
            if (er_filter2 != null)
            {
                er_filter2.ThrowIfDisposed();
            }
#if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
            Mat regions_mat = new Mat();
            text_Text_detectRegions_14(image.nativeObj, er_filter1.getNativeObjAddr(), er_filter2.getNativeObjAddr(), regions_mat.nativeObj);
            Converters.Mat_to_vector_vector_Point(regions_mat, regions);
            regions_mat.release();
            return;
#else
            return;
#endif
        }