예제 #1
0
            /// <summary>
            /// 检测通过图片路径
            /// </summary>
            /// <param name="filename"></param>
            /// <param name="bbox_T_Container"></param>
            /// <param name="thresh"></param>
            /// <returns></returns>
            public int Detect(string filename, ref bbox_t_container bbox_T_Container, float thresh = (float)0.01)
            {
                lock (this)
                {
                    switch (AiId)
                    {
                    case 1: return(AiSdk1.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 2: return(AiSdk2.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 3: return(AiSdk3.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 4: return(AiSdk4.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 5: return(AiSdk5.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 6: return(AiSdk6.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 7: return(AiSdk7.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 8: return(AiSdk8.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 9: return(AiSdk9.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 10: return(AiSdk10.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 11: return(AiSdk11.detect_image_path(filename, ref bbox_T_Container, thresh));

                    case 12: return(AiSdk12.detect_image_path(filename, ref bbox_T_Container, thresh));

                    default: return(-1);
                    }
                }
            }
예제 #2
0
            /// <summary>
            /// 检测函数,通过bitmap
            /// </summary>
            /// <param name="data"></param>
            /// <param name="data_length"></param>
            /// <param name="bbox_T_Container"></param>
            /// <param name="thresh"></param>
            /// <returns></returns>
            public int Detect(byte[] data, long data_length, ref bbox_t_container bbox_T_Container, float thresh = (float)0.01)
            {
                lock (this)
                {
                    switch (AiId)
                    {
                    case 1: return(AiSdk1.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 2: return(AiSdk2.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 3: return(AiSdk3.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 4: return(AiSdk4.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 5: return(AiSdk5.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 6: return(AiSdk6.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 7: return(AiSdk7.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 8: return(AiSdk8.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 9: return(AiSdk9.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 10: return(AiSdk10.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 11: return(AiSdk11.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    case 12: return(AiSdk12.detect_opencv_mat(data, data_length, ref bbox_T_Container, thresh));

                    default: return(-1);
                    }
                }
            }
예제 #3
0
        static void Main(string[] args)
        {
            var prefix = "E:\\VSProjects\\darknet\\build\\darknet\\x64\\";

            init(prefix + "cfg\\yolov3-tiny.cfg", prefix + "yolov3-tiny.weights", 0);

            var btc = new bbox_t_container();

            detect_image("E:\\Pictures\\dog.jpg", ref btc);
            foreach (var box in btc.candidates)
            {
                Console.Write(box.ToString());
            }
            dispose();
        }
예제 #4
0
 public static extern int detect_mat(IntPtr data, UIntPtr data_length, ref bbox_t_container container);
예제 #5
0
 public static extern int detect_image(string filename, ref bbox_t_container container);