コード例 #1
0
        public void Simple2GPUTest()
        {
            Cuda.GpuMat gpumat     = new Cuda.GpuMat();
            Cuda.GpuMat gpumat_des = new Cuda.GpuMat();
            Mat         src        = Image("lenna.png", ImreadModes.Grayscale);

            gpumat.Upload(src);

            Cuda.CannyEdgeDetector canny = Cuda.CannyEdgeDetector.create(100, 50);

            canny.detect(gpumat, gpumat_des);

            Mat des = new Mat();

            gpumat_des.Download(des);
            Cv2.ImWrite("test.png", des);
        }
コード例 #2
0
        public void SimplecannyTest()
        {
            Cuda.GpuMat gpumat   = new Cuda.GpuMat();
            Cuda.GpuMat gpumat_2 = new Cuda.GpuMat();
            Mat         src      = Image("lenna.png", ImreadModes.Grayscale);

            gpumat.Upload(src);

            Cuda.CannyEdgeDetector canny = Cuda.CannyEdgeDetector.create(100, 50);
            //bool aaaa = canny.Empty;
            //output.WriteLine(canny.ToString());
            output.WriteLine("out: {0}", canny.CvPtr);
            canny.detect(gpumat, gpumat_2);

            //canny.Dispose();

            Mat des = new Mat();

            gpumat_2.Download(des);
            Cv2.ImWrite("test.png", des);
        }
コード例 #3
0
        public void cuda_canny()
        {
            Mat  src  = Image("lenna.png", ImreadModes.Grayscale);
            Size size = src.Size();

            double low_thresh  = 50.0;
            double high_thresh = 100.0;

            using (GpuMat g_src = new GpuMat(size, src.Type()))
                using (GpuMat edges = new GpuMat()) {
                    g_src.Upload(src);

                    Cuda.CannyEdgeDetector canny = Cuda.CannyEdgeDetector.create(low_thresh, high_thresh);
                    canny.detect(g_src, edges);
                    //output.WriteLine("out: {0}", canny.LowThreshold);

                    Mat edges_gold = new Mat();
                    Cv2.Canny(src, edges_gold, low_thresh, high_thresh);

                    ImageEquals(edges_gold, edges, 2);
                    ShowImagesWhenDebugMode(edges_gold, edges);
                }
        }