From ee5e3a086a5dc145e7f5df3de32e0e072c183949 Mon Sep 17 00:00:00 2001
From: z8018 <1282578289@qq.com>
Date: 星期五, 06 六月 2025 15:19:40 +0800
Subject: [PATCH] 1

---
 project/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/FaceAI/FaceLiveness.cs |  970 ++++++++++++++++++++++++++++----------------------------
 1 files changed, 485 insertions(+), 485 deletions(-)

diff --git a/project/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/FaceAI/FaceLiveness.cs b/project/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/FaceAI/FaceLiveness.cs
index 0e83584..acc403b 100644
--- a/project/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/FaceAI/FaceLiveness.cs
+++ b/project/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/FaceAI/FaceLiveness.cs
@@ -1,548 +1,548 @@
-锘縰sing System;
-using System.IO;
-using System.Threading;
-using System.Collections;
-using System.Runtime.InteropServices;
-using System.Collections.Generic;
-using OpenCvSharp;
+锘�//using System;
+//using System.IO;
+//using System.Threading;
+//using System.Collections;
+//using System.Runtime.InteropServices;
+//using System.Collections.Generic;
+//using OpenCvSharp;
 
-namespace FaceAI
-{
-    [StructLayout(LayoutKind.Sequential, Pack = 1)]
-    // 娲讳綋鍒嗗��
-    struct BDLivenessScore
-    {
-        public float score; //鍒嗗��
-    };
-    // 娲讳綋妫�娴�
-    class FaceLiveness
-    {
-        // 鍗曠洰RGB闈欓粯娲讳綋妫�娴�
-        [DllImport("BaiduFaceApi.dll", EntryPoint = "rgb_liveness", CharSet = CharSet.Ansi
-           , CallingConvention = CallingConvention.Cdecl)]
-        public static extern int rgb_liveness(IntPtr ptr_boxinfo, IntPtr ptr_score, IntPtr mat);
+//namespace FaceAI
+//{
+//    [StructLayout(LayoutKind.Sequential, Pack = 1)]
+//    // 娲讳綋鍒嗗��
+//    struct BDLivenessScore
+//    {
+//        public float score; //鍒嗗��
+//    };
+//    // 娲讳綋妫�娴�
+//    class FaceLiveness
+//    {
+//        // 鍗曠洰RGB闈欓粯娲讳綋妫�娴�
+//        [DllImport("BaiduFaceApi.dll", EntryPoint = "rgb_liveness", CharSet = CharSet.Ansi
+//           , CallingConvention = CallingConvention.Cdecl)]
+//        public static extern int rgb_liveness(IntPtr ptr_boxinfo, IntPtr ptr_score, IntPtr mat);
 
-        // 鍗曠洰杩戠孩澶栭潤榛樻椿浣撴娴�
-        [DllImport("BaiduFaceApi.dll", EntryPoint = "nir_liveness", CharSet = CharSet.Ansi
-           , CallingConvention = CallingConvention.Cdecl)]
-        public static extern int nir_liveness(IntPtr ptr_boxinfo, IntPtr ptr_score, IntPtr mat);
+//        // 鍗曠洰杩戠孩澶栭潤榛樻椿浣撴娴�
+//        [DllImport("BaiduFaceApi.dll", EntryPoint = "nir_liveness", CharSet = CharSet.Ansi
+//           , CallingConvention = CallingConvention.Cdecl)]
+//        public static extern int nir_liveness(IntPtr ptr_boxinfo, IntPtr ptr_score, IntPtr mat);
 
-        // 鍙岀洰娣卞害闈欓粯娲讳綋妫�娴�
-        [DllImport("BaiduFaceApi.dll", EntryPoint = "rgb_depth_liveness", CharSet = CharSet.Ansi
-           , CallingConvention = CallingConvention.Cdecl)]
-        public static extern int rgb_depth_liveness(IntPtr ptr_boxinfo, IntPtr ptr_rgbscore, IntPtr ptr_depthcore, IntPtr rgb_mat, IntPtr depth_mat);
+//        // 鍙岀洰娣卞害闈欓粯娲讳綋妫�娴�
+//        [DllImport("BaiduFaceApi.dll", EntryPoint = "rgb_depth_liveness", CharSet = CharSet.Ansi
+//           , CallingConvention = CallingConvention.Cdecl)]
+//        public static extern int rgb_depth_liveness(IntPtr ptr_boxinfo, IntPtr ptr_rgbscore, IntPtr ptr_depthcore, IntPtr rgb_mat, IntPtr depth_mat);
               
 
-        public void test_liveness_by_image()
-        {
-            // rgb 娲讳綋妫�娴�
-            string img_rgb = "../images/rgb.png";
-            liveness_check(img_rgb, 0);
-            // nir 娲讳綋妫�娴�
-            string img_nir = "../images/nir.png";
-           // liveness_check(img_nir, 1);
+//        public void test_liveness_by_image()
+//        {
+//            // rgb 娲讳綋妫�娴�
+//            string img_rgb = "../images/rgb.png";
+//            liveness_check(img_rgb, 0);
+//            // nir 娲讳綋妫�娴�
+//            string img_nir = "../images/nir.png";
+//           // liveness_check(img_nir, 1);
            
-        }
+//        }
 
-        // 娴嬭瘯鍗曠洰RGB闈欓粯娲讳綋妫�娴嬶紙浼犲叆鍥剧墖鏂囦欢璺緞锛屾椿浣撶被鍨�)
-        public void liveness_check(string img_path, int live_type)
-        {
-            Mat mat = Cv2.ImRead(img_path);
-            int max_face_num = 1; // 娲讳綋浠呰繑鍥炰竴涓汉鑴革紝澶氫汉鍙栨渶澶т汉鑴�
+//        // 娴嬭瘯鍗曠洰RGB闈欓粯娲讳綋妫�娴嬶紙浼犲叆鍥剧墖鏂囦欢璺緞锛屾椿浣撶被鍨�)
+//        public void liveness_check(string img_path, int live_type)
+//        {
+//            Mat mat = Cv2.ImRead(img_path);
+//            int max_face_num = 1; // 娲讳綋浠呰繑鍥炰竴涓汉鑴革紝澶氫汉鍙栨渶澶т汉鑴�
 
-            BDFaceBBox[] box_info = new BDFaceBBox[max_face_num];
+//            BDFaceBBox[] box_info = new BDFaceBBox[max_face_num];
             
-            int sizeBox = Marshal.SizeOf(typeof(BDFaceBBox));
-            IntPtr ptT = Marshal.AllocHGlobal(sizeBox * max_face_num);
+//            int sizeBox = Marshal.SizeOf(typeof(BDFaceBBox));
+//            IntPtr ptT = Marshal.AllocHGlobal(sizeBox * max_face_num);
            
 
-            BDLivenessScore[] score_info = new BDLivenessScore[max_face_num];
-            int sizeScore = Marshal.SizeOf(typeof(BDLivenessScore));
-            IntPtr ptS = Marshal.AllocHGlobal(sizeScore * max_face_num);
-            // faceNum涓鸿繑鍥炵殑妫�娴嬪埌鐨勪汉鑴镐釜鏁�
-            int faceNum = 0;
-            if (live_type == 0)
-            {
-                faceNum = rgb_liveness(ptT, ptS, mat.CvPtr);
-            }
-            else if (live_type == 1)
-            {
-                faceNum = nir_liveness(ptT, ptS, mat.CvPtr);
-            }
-            mat.Release();
+//            BDLivenessScore[] score_info = new BDLivenessScore[max_face_num];
+//            int sizeScore = Marshal.SizeOf(typeof(BDLivenessScore));
+//            IntPtr ptS = Marshal.AllocHGlobal(sizeScore * max_face_num);
+//            // faceNum涓鸿繑鍥炵殑妫�娴嬪埌鐨勪汉鑴镐釜鏁�
+//            int faceNum = 0;
+//            if (live_type == 0)
+//            {
+//                faceNum = rgb_liveness(ptT, ptS, mat.CvPtr);
+//            }
+//            else if (live_type == 1)
+//            {
+//                faceNum = nir_liveness(ptT, ptS, mat.CvPtr);
+//            }
+//            mat.Release();
 
 
-            Console.WriteLine("faceSize is:" + faceNum);
-            for (int index = 0; index < faceNum; index++)
-            {
+//            Console.WriteLine("faceSize is:" + faceNum);
+//            for (int index = 0; index < faceNum; index++)
+//            {
 
-                IntPtr ptr = new IntPtr();
-                IntPtr ptrScore = new IntPtr();
-                if (8 == IntPtr.Size)
-                {
-                    ptr = (IntPtr)(ptT.ToInt64() + sizeBox * index);
-                    ptrScore = (IntPtr)(ptS.ToInt64() + sizeScore * index);
-                }
-                else if (4 == IntPtr.Size)
-                {
-                    ptr = (IntPtr)(ptT.ToInt32() + sizeBox * index);
-                    ptrScore = (IntPtr)(ptS.ToInt32() + sizeScore * index);
-                }
+//                IntPtr ptr = new IntPtr();
+//                IntPtr ptrScore = new IntPtr();
+//                if (8 == IntPtr.Size)
+//                {
+//                    ptr = (IntPtr)(ptT.ToInt64() + sizeBox * index);
+//                    ptrScore = (IntPtr)(ptS.ToInt64() + sizeScore * index);
+//                }
+//                else if (4 == IntPtr.Size)
+//                {
+//                    ptr = (IntPtr)(ptT.ToInt32() + sizeBox * index);
+//                    ptrScore = (IntPtr)(ptS.ToInt32() + sizeScore * index);
+//                }
 
-                box_info[index] = (BDFaceBBox)Marshal.PtrToStructure(ptr, typeof(BDFaceBBox));
+//                box_info[index] = (BDFaceBBox)Marshal.PtrToStructure(ptr, typeof(BDFaceBBox));
 
-                score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrScore, typeof(BDLivenessScore));
+//                score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrScore, typeof(BDLivenessScore));
               
-                // 绱㈠紩鍊�
-                Console.WriteLine("track index is:{0}", box_info[index].index);
-                // 缃俊搴�
-                Console.WriteLine("track score is:{0}", box_info[index].score);              
-                // 浜鸿劯瀹藉害
-                Console.WriteLine("track mWidth is:{0}", box_info[index].width);
-                // 涓績鐐筙,Y鍧愭爣
-                Console.WriteLine("track mCenter_x is:{0}", box_info[index].center_x);
-                Console.WriteLine("track mCenter_y is:{0}", box_info[index].center_y);
-                // rgb 娲讳綋鍒嗗��
-                Console.WriteLine("liveness score is:{0}", score_info[index].score);
+//                // 绱㈠紩鍊�
+//                Console.WriteLine("track index is:{0}", box_info[index].index);
+//                // 缃俊搴�
+//                Console.WriteLine("track score is:{0}", box_info[index].score);              
+//                // 浜鸿劯瀹藉害
+//                Console.WriteLine("track mWidth is:{0}", box_info[index].width);
+//                // 涓績鐐筙,Y鍧愭爣
+//                Console.WriteLine("track mCenter_x is:{0}", box_info[index].center_x);
+//                Console.WriteLine("track mCenter_y is:{0}", box_info[index].center_y);
+//                // rgb 娲讳綋鍒嗗��
+//                Console.WriteLine("liveness score is:{0}", score_info[index].score);
 
-            }
-            Marshal.FreeHGlobal(ptT);
-        }
+//            }
+//            Marshal.FreeHGlobal(ptT);
+//        }
 
-        // 閫夋嫨usb瑙嗛鎽勫儚澶磇d,鏂规硶閲岄潰鏈夎幏鍙栬繛鎺ョ殑鎽勫儚澶村垪琛紝鍖呮嫭id锛屽悕绉板拰璺緞绛�
-        public int select_usb_device_id()
-        {
-            ArrayList capDevs = new ArrayList();
-            int device_id = 0;
-            try
-            {
-                if (!File.Exists(Path.Combine(Environment.SystemDirectory, @"dpnhpast.dll")))
-                {
-                    Console.WriteLine("DirectX NOT installed!");
-                    return - 1;
-                }
-                if (!DevEnum.GetDevicesOfCat(FilterCategory.VideoInputDevice, out capDevs))
-                {
-                    Console.WriteLine("No video capture devices found!");
-                    return -1;
-                }
-                if (capDevs.Count < 2)
-                {
-                    Console.WriteLine("ir and rgb camera devices needed");
-                    return -1;
-                }
-                foreach (DsDevice d in capDevs) {
-                    Console.WriteLine("== VIDEO DEVICE (id:{0}) ==", d.id);
-                    Console.WriteLine("Name: {0}", d.Name);
-                    Console.WriteLine("Path: {0}", d.Path);
-                }
+//        // 閫夋嫨usb瑙嗛鎽勫儚澶磇d,鏂规硶閲岄潰鏈夎幏鍙栬繛鎺ョ殑鎽勫儚澶村垪琛紝鍖呮嫭id锛屽悕绉板拰璺緞绛�
+//        public int select_usb_device_id()
+//        {
+//            ArrayList capDevs = new ArrayList();
+//            int device_id = 0;
+//            try
+//            {
+//                if (!File.Exists(Path.Combine(Environment.SystemDirectory, @"dpnhpast.dll")))
+//                {
+//                    Console.WriteLine("DirectX NOT installed!");
+//                    return - 1;
+//                }
+//                if (!DevEnum.GetDevicesOfCat(FilterCategory.VideoInputDevice, out capDevs))
+//                {
+//                    Console.WriteLine("No video capture devices found!");
+//                    return -1;
+//                }
+//                if (capDevs.Count < 2)
+//                {
+//                    Console.WriteLine("ir and rgb camera devices needed");
+//                    return -1;
+//                }
+//                foreach (DsDevice d in capDevs) {
+//                    Console.WriteLine("== VIDEO DEVICE (id:{0}) ==", d.id);
+//                    Console.WriteLine("Name: {0}", d.Name);
+//                    Console.WriteLine("Path: {0}", d.Path);
+//                }
 
-                if (capDevs.Count > 0)
-                {
-                    device_id = ((DsDevice)capDevs[0]).id;
-                    Console.WriteLine("select device id is:{0}", device_id);
-                }
-            }
-            catch(Exception)
-            {
-                if (capDevs != null)
-                {
-                    foreach (DsDevice d in capDevs)
-                        d.Dispose();
-                    capDevs = null;
-                }
-                return -1;
-            }
-            return device_id;
-        }
+//                if (capDevs.Count > 0)
+//                {
+//                    device_id = ((DsDevice)capDevs[0]).id;
+//                    Console.WriteLine("select device id is:{0}", device_id);
+//                }
+//            }
+//            catch(Exception)
+//            {
+//                if (capDevs != null)
+//                {
+//                    foreach (DsDevice d in capDevs)
+//                        d.Dispose();
+//                    capDevs = null;
+//                }
+//                return -1;
+//            }
+//            return device_id;
+//        }
 
-        // 鍙岀洰RGB鍜孖R闈欓粯娲讳綋妫�娴嬶紙鍙娇鐢ㄨ开濞佹嘲鎴栬娲惧皵绛塺gb+nir鍙岀洰鎽勫儚澶�),rgb鍜宯ir鐨勫垎鍊奸兘閫氳繃濡�0.8鎵嶇畻娲讳綋閫氳繃
-        public bool rgb_ir_liveness_check_mat()
-        {
-            int max_face_num = 1;//鍙栨渶澶т汉鑴哥殑娲讳綋
-            BDLivenessScore[] rgb_score_info = new BDLivenessScore[max_face_num];
-            BDLivenessScore[] nir_score_info = new BDLivenessScore[max_face_num];
-            int sizeScore = Marshal.SizeOf(typeof(BDLivenessScore));
-            IntPtr ptSRGB = Marshal.AllocHGlobal(sizeScore * max_face_num);
-            IntPtr ptSNIR = Marshal.AllocHGlobal(sizeScore * max_face_num);
+//        // 鍙岀洰RGB鍜孖R闈欓粯娲讳綋妫�娴嬶紙鍙娇鐢ㄨ开濞佹嘲鎴栬娲惧皵绛塺gb+nir鍙岀洰鎽勫儚澶�),rgb鍜宯ir鐨勫垎鍊奸兘閫氳繃濡�0.8鎵嶇畻娲讳綋閫氳繃
+//        public bool rgb_ir_liveness_check_mat()
+//        {
+//            int max_face_num = 1;//鍙栨渶澶т汉鑴哥殑娲讳綋
+//            BDLivenessScore[] rgb_score_info = new BDLivenessScore[max_face_num];
+//            BDLivenessScore[] nir_score_info = new BDLivenessScore[max_face_num];
+//            int sizeScore = Marshal.SizeOf(typeof(BDLivenessScore));
+//            IntPtr ptSRGB = Marshal.AllocHGlobal(sizeScore * max_face_num);
+//            IntPtr ptSNIR = Marshal.AllocHGlobal(sizeScore * max_face_num);
 
-            // 鍒濆鍖杛gb 杩斿洖鐨勪汉鑴告暟鎹�
-            BDFaceBBox[] rgb_box_info = new BDFaceBBox[max_face_num];
+//            // 鍒濆鍖杛gb 杩斿洖鐨勪汉鑴告暟鎹�
+//            BDFaceBBox[] rgb_box_info = new BDFaceBBox[max_face_num];
             
-            int sizeBox = Marshal.SizeOf(typeof(BDFaceBBox));
-            IntPtr ptTRGB = Marshal.AllocHGlobal(sizeBox * max_face_num);
+//            int sizeBox = Marshal.SizeOf(typeof(BDFaceBBox));
+//            IntPtr ptTRGB = Marshal.AllocHGlobal(sizeBox * max_face_num);
 
-            // 鍒濆鍖杗ir 杩斿洖鐨勪汉鑴告暟鎹�
-            BDFaceBBox[] nir_box_info = new BDFaceBBox[max_face_num];
+//            // 鍒濆鍖杗ir 杩斿洖鐨勪汉鑴告暟鎹�
+//            BDFaceBBox[] nir_box_info = new BDFaceBBox[max_face_num];
             
-            sizeBox = Marshal.SizeOf(typeof(BDFaceBBox));
-            IntPtr ptTNIR = Marshal.AllocHGlobal(sizeBox * max_face_num);
+//            sizeBox = Marshal.SizeOf(typeof(BDFaceBBox));
+//            IntPtr ptTNIR = Marshal.AllocHGlobal(sizeBox * max_face_num);
 
-            // 搴忓彿0涓虹數鑴戣瘑鍒殑usb鎽勫儚澶寸紪鍙凤紝鏈琩emo涓�0涓篿r绾㈠鎽勫儚澶�
-            // 涓嶅悓鎽勫儚澶村拰鐢佃剳璇嗗埆鍙兘鏈夊尯鍒�
-            // 缂栧彿涓�鑸粠0-10   */            
-            int device = select_usb_device_id();
-            VideoCapture camera1 = VideoCapture.FromCamera(device);
-            if(!camera1.IsOpened())
-            {
-                Console.WriteLine("camera1 open error");
-                return false;
-            }
+//            // 搴忓彿0涓虹數鑴戣瘑鍒殑usb鎽勫儚澶寸紪鍙凤紝鏈琩emo涓�0涓篿r绾㈠鎽勫儚澶�
+//            // 涓嶅悓鎽勫儚澶村拰鐢佃剳璇嗗埆鍙兘鏈夊尯鍒�
+//            // 缂栧彿涓�鑸粠0-10   */            
+//            int device = select_usb_device_id();
+//            VideoCapture camera1 = VideoCapture.FromCamera(device);
+//            if(!camera1.IsOpened())
+//            {
+//                Console.WriteLine("camera1 open error");
+//                return false;
+//            }
 
-            VideoCapture camera2 = VideoCapture.FromCamera(device+1);
-            if (!camera2.IsOpened())
-            {
-                Console.WriteLine("camera2 open error");
-                return false;
-            }
+//            VideoCapture camera2 = VideoCapture.FromCamera(device+1);
+//            if (!camera2.IsOpened())
+//            {
+//                Console.WriteLine("camera2 open error");
+//                return false;
+//            }
 
-            Mat frame1 = new Mat();
-            Mat frame2 = new Mat();
-            Mat rgb_mat = new Mat();
-            Mat ir_mat = new Mat();
-            var window_ir = new Window("ir_face");
-            var window_rgb = new Window("rgb_face");
-            while (true)
-            {               
-                camera1.Read(frame1);
-                camera2.Read(frame2);
-                if(!frame1.Empty() && !frame2.Empty())
-                {                   
-                    if (frame1.Channels() == 3)
-                    {
-                        rgb_mat = frame1;
-                        ir_mat = frame2;
-                    }
-                    else
-                    {
-                        rgb_mat = frame2;
-                        ir_mat = frame1;
-                    }
-                    float rgb_score = 0;
-                    float ir_score = 0;
+//            Mat frame1 = new Mat();
+//            Mat frame2 = new Mat();
+//            Mat rgb_mat = new Mat();
+//            Mat ir_mat = new Mat();
+//            var window_ir = new Window("ir_face");
+//            var window_rgb = new Window("rgb_face");
+//            while (true)
+//            {               
+//                camera1.Read(frame1);
+//                camera2.Read(frame2);
+//                if(!frame1.Empty() && !frame2.Empty())
+//                {                   
+//                    if (frame1.Channels() == 3)
+//                    {
+//                        rgb_mat = frame1;
+//                        ir_mat = frame2;
+//                    }
+//                    else
+//                    {
+//                        rgb_mat = frame2;
+//                        ir_mat = frame1;
+//                    }
+//                    float rgb_score = 0;
+//                    float ir_score = 0;
 
-                    int face_size = 0;
-                    int nir_size = nir_liveness(ptTNIR, ptSNIR, ir_mat.CvPtr);
-                    int rgb_size = rgb_liveness(ptTRGB, ptSRGB, rgb_mat.CvPtr);
+//                    int face_size = 0;
+//                    int nir_size = nir_liveness(ptTNIR, ptSNIR, ir_mat.CvPtr);
+//                    int rgb_size = rgb_liveness(ptTRGB, ptSRGB, rgb_mat.CvPtr);
                     
-                    face_size = nir_size <= rgb_size?nir_size:rgb_size;                
-                    // 鑾峰彇鐨勪汉鑴告暟
-                    Console.WriteLine("faceNum is:{0}", face_size);
-                    for (int index = 0; index < face_size; index++)
-                    {
+//                    face_size = nir_size <= rgb_size?nir_size:rgb_size;                
+//                    // 鑾峰彇鐨勪汉鑴告暟
+//                    Console.WriteLine("faceNum is:{0}", face_size);
+//                    for (int index = 0; index < face_size; index++)
+//                    {
                         
-                        IntPtr ptrBox = new IntPtr();
-                        IntPtr ptrRGBScore = new IntPtr();
-                        IntPtr ptrNIRScore = new IntPtr();
-                        if (8 == IntPtr.Size)
-                        {
-                            ptrBox = (IntPtr)(ptTRGB.ToInt64() + sizeBox * index);
-                            ptrRGBScore = (IntPtr)(ptSRGB.ToInt64() + sizeScore * index);
-                            ptrNIRScore = (IntPtr)(ptSNIR.ToInt64() + sizeScore * index);
-                        }
-                        else if (4 == IntPtr.Size)
-                        {
-                            ptrBox = (IntPtr)(ptTRGB.ToInt32() + sizeBox * index);
-                            ptrRGBScore = (IntPtr)(ptSRGB.ToInt32() + sizeScore * index);
-                            ptrNIRScore = (IntPtr)(ptSNIR.ToInt32() + sizeScore * index);
-                        }
+//                        IntPtr ptrBox = new IntPtr();
+//                        IntPtr ptrRGBScore = new IntPtr();
+//                        IntPtr ptrNIRScore = new IntPtr();
+//                        if (8 == IntPtr.Size)
+//                        {
+//                            ptrBox = (IntPtr)(ptTRGB.ToInt64() + sizeBox * index);
+//                            ptrRGBScore = (IntPtr)(ptSRGB.ToInt64() + sizeScore * index);
+//                            ptrNIRScore = (IntPtr)(ptSNIR.ToInt64() + sizeScore * index);
+//                        }
+//                        else if (4 == IntPtr.Size)
+//                        {
+//                            ptrBox = (IntPtr)(ptTRGB.ToInt32() + sizeBox * index);
+//                            ptrRGBScore = (IntPtr)(ptSRGB.ToInt32() + sizeScore * index);
+//                            ptrNIRScore = (IntPtr)(ptSNIR.ToInt32() + sizeScore * index);
+//                        }
                         
-                        rgb_box_info[index] = (BDFaceBBox)Marshal.PtrToStructure(ptrBox, typeof(BDFaceBBox));
+//                        rgb_box_info[index] = (BDFaceBBox)Marshal.PtrToStructure(ptrBox, typeof(BDFaceBBox));
                         
-                        rgb_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrRGBScore, typeof(BDLivenessScore));
-                        nir_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrNIRScore, typeof(BDLivenessScore));
-                        rgb_score = rgb_score_info[index].score;
-                        ir_score = nir_score_info[index].score;
-                        if (rgb_score <= 0.1f)
-                        {
-                            rgb_score = 0;
-                        }
-                        if (ir_score <= 0.1f)
-                        {
-                            ir_score = 0;
-                        }
-                        Console.WriteLine("demo ccccc");                     
-                        // 浜鸿劯瀹藉害
-                        Console.WriteLine("mWidth is:{0:f}", rgb_box_info[index].width);
-                        // 涓績鐐筙,Y鍧愭爣
-                        Console.WriteLine("mCenter_x is:{0:f}", rgb_box_info[index].center_x);
-                        Console.WriteLine("mCenter_y is:{0:f}", rgb_box_info[index].center_y);
+//                        rgb_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrRGBScore, typeof(BDLivenessScore));
+//                        nir_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrNIRScore, typeof(BDLivenessScore));
+//                        rgb_score = rgb_score_info[index].score;
+//                        ir_score = nir_score_info[index].score;
+//                        if (rgb_score <= 0.1f)
+//                        {
+//                            rgb_score = 0;
+//                        }
+//                        if (ir_score <= 0.1f)
+//                        {
+//                            ir_score = 0;
+//                        }
+//                        Console.WriteLine("demo ccccc");                     
+//                        // 浜鸿劯瀹藉害
+//                        Console.WriteLine("mWidth is:{0:f}", rgb_box_info[index].width);
+//                        // 涓績鐐筙,Y鍧愭爣
+//                        Console.WriteLine("mCenter_x is:{0:f}", rgb_box_info[index].center_x);
+//                        Console.WriteLine("mCenter_y is:{0:f}", rgb_box_info[index].center_y);
                                           
-                    }
+//                    }
                     
-                    string msg_depth = "ir score is:" + ir_score.ToString();
+//                    string msg_depth = "ir score is:" + ir_score.ToString();
                    
-                    Cv2.PutText(ir_mat, msg_depth, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
+//                    Cv2.PutText(ir_mat, msg_depth, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
                    
-                    string msg_rgb = "rgb score is:" + rgb_score.ToString();
-                    Cv2.PutText(rgb_mat, msg_rgb, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
-                    if (face_size > 0)
-                    {
-                        // 鐢讳汉鑴告
-                        FaceDraw.draw_rects(ref rgb_mat, face_size, rgb_box_info);
-                        // 鐢诲叧閿偣
-                        // FaceDraw.draw_shape(ref rgb_mat, face_size, rgb_track_info);
-                    }                   
-                    window_rgb.ShowImage(rgb_mat);
-                    window_ir.ShowImage(ir_mat);
-                    Cv2.WaitKey(1);                   
-                }
-            }
-            Marshal.FreeHGlobal(ptTRGB);
-            Marshal.FreeHGlobal(ptTNIR);
-            rgb_mat.Release();
-            ir_mat.Release();
-            frame1.Release();
-            frame2.Release();
-            Cv2.DestroyWindow("ir_face");
-            Cv2.DestroyWindow("rgb_face");
-            return true;
-        }
-        // 鍙岀洰鎽勫儚澶磋繘琛宺gb,depth娲讳綋妫�娴�(姝ゅ閫傞厤浜嗗崕鏉拌壘绫崇殑鍙岀洰鎽勫儚澶�)rgb鍜宒epth鐨勫垎鍊奸兘閫氳繃濡�0.8鎵嶇畻娲讳綋閫氳繃
-        public bool rgb_depth_liveness_check_hjimi()
-        {
-            int max_face_num = 1;//鍙栨渶澶т汉鑴哥殑娲讳綋
+//                    string msg_rgb = "rgb score is:" + rgb_score.ToString();
+//                    Cv2.PutText(rgb_mat, msg_rgb, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
+//                    if (face_size > 0)
+//                    {
+//                        // 鐢讳汉鑴告
+//                        FaceDraw.draw_rects(ref rgb_mat, face_size, rgb_box_info);
+//                        // 鐢诲叧閿偣
+//                        // FaceDraw.draw_shape(ref rgb_mat, face_size, rgb_track_info);
+//                    }                   
+//                    window_rgb.ShowImage(rgb_mat);
+//                    window_ir.ShowImage(ir_mat);
+//                    Cv2.WaitKey(1);                   
+//                }
+//            }
+//            Marshal.FreeHGlobal(ptTRGB);
+//            Marshal.FreeHGlobal(ptTNIR);
+//            rgb_mat.Release();
+//            ir_mat.Release();
+//            frame1.Release();
+//            frame2.Release();
+//            Cv2.DestroyWindow("ir_face");
+//            Cv2.DestroyWindow("rgb_face");
+//            return true;
+//        }
+//        // 鍙岀洰鎽勫儚澶磋繘琛宺gb,depth娲讳綋妫�娴�(姝ゅ閫傞厤浜嗗崕鏉拌壘绫崇殑鍙岀洰鎽勫儚澶�)rgb鍜宒epth鐨勫垎鍊奸兘閫氳繃濡�0.8鎵嶇畻娲讳綋閫氳繃
+//        public bool rgb_depth_liveness_check_hjimi()
+//        {
+//            int max_face_num = 1;//鍙栨渶澶т汉鑴哥殑娲讳綋
           
-            BDLivenessScore[] rgb_score_info = new BDLivenessScore[max_face_num];
-            BDLivenessScore[] depth_score_info = new BDLivenessScore[max_face_num];
-            int sizeScore = Marshal.SizeOf(typeof(BDLivenessScore));
-            IntPtr ptRGBS = Marshal.AllocHGlobal(sizeScore * max_face_num);
-            IntPtr ptDepthS = Marshal.AllocHGlobal(sizeScore * max_face_num);
+//            BDLivenessScore[] rgb_score_info = new BDLivenessScore[max_face_num];
+//            BDLivenessScore[] depth_score_info = new BDLivenessScore[max_face_num];
+//            int sizeScore = Marshal.SizeOf(typeof(BDLivenessScore));
+//            IntPtr ptRGBS = Marshal.AllocHGlobal(sizeScore * max_face_num);
+//            IntPtr ptDepthS = Marshal.AllocHGlobal(sizeScore * max_face_num);
 
-            BDFaceBBox[] box_info = new BDFaceBBox[max_face_num];
+//            BDFaceBBox[] box_info = new BDFaceBBox[max_face_num];
            
-            int sizeBox = Marshal.SizeOf(typeof(BDFaceBBox));
-            IntPtr ptT = Marshal.AllocHGlobal(sizeBox * max_face_num);
-            IntPtr phjimi = HjimiCamera.new_hjimi();
-            var rgb_win = new Window("rgb", WindowMode.AutoSize);
-            var depth_win = new Window("depth", WindowMode.Normal);
-            float rgb_score = 0;
-            float depth_score = 0;
-            Mat cv_depth = new Mat();
-            Mat cv_rgb = new Mat();
-            while (true)
-            {
-                bool ok = HjimiCamera.open_hjimimat(phjimi, cv_rgb.CvPtr, cv_depth.CvPtr);
-                if (!ok)
-                {
-                    depth_score = 0;
-                    rgb_score = depth_score; 
-                    Console.WriteLine("open camera faile");
-                    continue;
-                }
-                if(cv_rgb.Empty())
-                {
-                    continue;
-                }
-                if (cv_depth.Empty())
-                {
-                    continue;
-                }
-                // 杩斿洖浜鸿劯涓暟
-                int face_size = rgb_depth_liveness(ptT, ptRGBS, ptDepthS, cv_rgb.CvPtr, cv_depth.CvPtr);
+//            int sizeBox = Marshal.SizeOf(typeof(BDFaceBBox));
+//            IntPtr ptT = Marshal.AllocHGlobal(sizeBox * max_face_num);
+//            IntPtr phjimi = HjimiCamera.new_hjimi();
+//            var rgb_win = new Window("rgb", WindowMode.AutoSize);
+//            var depth_win = new Window("depth", WindowMode.Normal);
+//            float rgb_score = 0;
+//            float depth_score = 0;
+//            Mat cv_depth = new Mat();
+//            Mat cv_rgb = new Mat();
+//            while (true)
+//            {
+//                bool ok = HjimiCamera.open_hjimimat(phjimi, cv_rgb.CvPtr, cv_depth.CvPtr);
+//                if (!ok)
+//                {
+//                    depth_score = 0;
+//                    rgb_score = depth_score; 
+//                    Console.WriteLine("open camera faile");
+//                    continue;
+//                }
+//                if(cv_rgb.Empty())
+//                {
+//                    continue;
+//                }
+//                if (cv_depth.Empty())
+//                {
+//                    continue;
+//                }
+//                // 杩斿洖浜鸿劯涓暟
+//                int face_size = rgb_depth_liveness(ptT, ptRGBS, ptDepthS, cv_rgb.CvPtr, cv_depth.CvPtr);
                 
-                Console.WriteLine("res is:{0}", face_size);                             
-                depth_score = 0;
-                rgb_score = depth_score;                           
-                for (int index = 0; index < face_size; index++)
-                {
-                    IntPtr ptrBox = new IntPtr();
-                    IntPtr ptrRGBScore = new IntPtr();
-                    IntPtr ptrDepthScore = new IntPtr();
-                    if (8 == IntPtr.Size)
-                    {
-                        ptrBox = (IntPtr)(ptT.ToInt64() + sizeBox * index);
-                        ptrRGBScore = (IntPtr)(ptRGBS.ToInt64() + sizeScore * index);
-                        ptrDepthScore = (IntPtr)(ptDepthS.ToInt64() + sizeScore * index);
-                    }
-                    else if (4 == IntPtr.Size)
-                    {
-                        ptrBox = (IntPtr)(ptT.ToInt32() + sizeBox * index);
-                        ptrRGBScore = (IntPtr)(ptRGBS.ToInt32() + sizeScore * index);
-                        ptrDepthScore = (IntPtr)(ptDepthS.ToInt32() + sizeScore * index);
-                    }
+//                Console.WriteLine("res is:{0}", face_size);                             
+//                depth_score = 0;
+//                rgb_score = depth_score;                           
+//                for (int index = 0; index < face_size; index++)
+//                {
+//                    IntPtr ptrBox = new IntPtr();
+//                    IntPtr ptrRGBScore = new IntPtr();
+//                    IntPtr ptrDepthScore = new IntPtr();
+//                    if (8 == IntPtr.Size)
+//                    {
+//                        ptrBox = (IntPtr)(ptT.ToInt64() + sizeBox * index);
+//                        ptrRGBScore = (IntPtr)(ptRGBS.ToInt64() + sizeScore * index);
+//                        ptrDepthScore = (IntPtr)(ptDepthS.ToInt64() + sizeScore * index);
+//                    }
+//                    else if (4 == IntPtr.Size)
+//                    {
+//                        ptrBox = (IntPtr)(ptT.ToInt32() + sizeBox * index);
+//                        ptrRGBScore = (IntPtr)(ptRGBS.ToInt32() + sizeScore * index);
+//                        ptrDepthScore = (IntPtr)(ptDepthS.ToInt32() + sizeScore * index);
+//                    }
                     
-                    box_info[index] = (BDFaceBBox)Marshal.PtrToStructure(ptrBox, typeof(BDFaceBBox));
+//                    box_info[index] = (BDFaceBBox)Marshal.PtrToStructure(ptrBox, typeof(BDFaceBBox));
                     
-                    rgb_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrRGBScore, typeof(BDLivenessScore));
-                    rgb_score = rgb_score_info[index].score;
-                    depth_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrDepthScore, typeof(BDLivenessScore));
-                    depth_score = depth_score_info[index].score;
-                    // 鍒嗗�煎お浣庯紝浼氭樉绀哄皬鏁扮偣澶暱锛岀洿鎺ヨ祴鍊�0
-                    if (depth_score <= 0.1f)
-                    {
-                        depth_score = 0;
-                    }
-                    if (rgb_score <= 0.1f)
-                    {
-                        rgb_score = 0;
-                    }                   
-                    // 浜鸿劯瀹藉害
-                    Console.WriteLine("mWidth is:{0:f}", box_info[index].width);
-                    // 涓績鐐筙,Y鍧愭爣
-                    Console.WriteLine("mCenter_x is:{0:f}", box_info[index].center_x);
-                    Console.WriteLine("mCenter_y is:{0:f}", box_info[index].center_y);
+//                    rgb_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrRGBScore, typeof(BDLivenessScore));
+//                    rgb_score = rgb_score_info[index].score;
+//                    depth_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrDepthScore, typeof(BDLivenessScore));
+//                    depth_score = depth_score_info[index].score;
+//                    // 鍒嗗�煎お浣庯紝浼氭樉绀哄皬鏁扮偣澶暱锛岀洿鎺ヨ祴鍊�0
+//                    if (depth_score <= 0.1f)
+//                    {
+//                        depth_score = 0;
+//                    }
+//                    if (rgb_score <= 0.1f)
+//                    {
+//                        rgb_score = 0;
+//                    }                   
+//                    // 浜鸿劯瀹藉害
+//                    Console.WriteLine("mWidth is:{0:f}", box_info[index].width);
+//                    // 涓績鐐筙,Y鍧愭爣
+//                    Console.WriteLine("mCenter_x is:{0:f}", box_info[index].center_x);
+//                    Console.WriteLine("mCenter_y is:{0:f}", box_info[index].center_y);
                    
-                } 
+//                } 
               
 
-                Mat depth_img = new Mat();
-                cv_depth.ConvertTo(depth_img, MatType.CV_8UC1, 255.0 / 4500);
-                string msg_depth = "depth score is:" + depth_score.ToString();
-                Cv2.PutText(depth_img, msg_depth, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
+//                Mat depth_img = new Mat();
+//                cv_depth.ConvertTo(depth_img, MatType.CV_8UC1, 255.0 / 4500);
+//                string msg_depth = "depth score is:" + depth_score.ToString();
+//                Cv2.PutText(depth_img, msg_depth, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
 
-                string msg_rgb = "rgb score is:" + rgb_score.ToString();
-                Cv2.PutText(cv_rgb, msg_rgb, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
-                if (face_size > 0)
-                {
-                    // 鐢讳汉鑴告
-                    FaceDraw.draw_rects(ref cv_rgb, face_size, box_info);
+//                string msg_rgb = "rgb score is:" + rgb_score.ToString();
+//                Cv2.PutText(cv_rgb, msg_rgb, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
+//                if (face_size > 0)
+//                {
+//                    // 鐢讳汉鑴告
+//                    FaceDraw.draw_rects(ref cv_rgb, face_size, box_info);
                     
-                }
+//                }
                 
-                rgb_win.ShowImage(cv_rgb);
-                depth_win.ShowImage(depth_img);
-                Cv2.WaitKey(1);
-                depth_img.Release();
-            }
-            Marshal.FreeHGlobal(ptT);
-            cv_rgb.Release();
-            cv_depth.Release();
-            Cv2.DestroyWindow("rgb");
-            Cv2.DestroyWindow("depth");
-            HjimiCamera.hjimi_release(phjimi);
-            return true;
-        }
-        //鍙岀洰RGB鍜孌EPTH闈欓粯娲讳綋妫�娴嬶紙浼犲叆opencv瑙嗛甯�)閫傞厤濂ユ瘮涓厜娴风嚂绛夊弻鐩憚鍍忓ご
-        public bool rgb_depth_liveness_check_orbe()
-        {
-            int max_face_num = 1;//鍙栨渶澶т汉鑴哥殑娲讳綋
+//                rgb_win.ShowImage(cv_rgb);
+//                depth_win.ShowImage(depth_img);
+//                Cv2.WaitKey(1);
+//                depth_img.Release();
+//            }
+//            Marshal.FreeHGlobal(ptT);
+//            cv_rgb.Release();
+//            cv_depth.Release();
+//            Cv2.DestroyWindow("rgb");
+//            Cv2.DestroyWindow("depth");
+//            HjimiCamera.hjimi_release(phjimi);
+//            return true;
+//        }
+//        //鍙岀洰RGB鍜孌EPTH闈欓粯娲讳綋妫�娴嬶紙浼犲叆opencv瑙嗛甯�)閫傞厤濂ユ瘮涓厜娴风嚂绛夊弻鐩憚鍍忓ご
+//        public bool rgb_depth_liveness_check_orbe()
+//        {
+//            int max_face_num = 1;//鍙栨渶澶т汉鑴哥殑娲讳綋
 
-            BDLivenessScore[] rgb_score_info = new BDLivenessScore[max_face_num];
-            BDLivenessScore[] depth_score_info = new BDLivenessScore[max_face_num];
-            int sizeScore = Marshal.SizeOf(typeof(BDLivenessScore));
-            IntPtr ptRGBS = Marshal.AllocHGlobal(sizeScore * max_face_num);
-            IntPtr ptDepthS = Marshal.AllocHGlobal(sizeScore * max_face_num);
+//            BDLivenessScore[] rgb_score_info = new BDLivenessScore[max_face_num];
+//            BDLivenessScore[] depth_score_info = new BDLivenessScore[max_face_num];
+//            int sizeScore = Marshal.SizeOf(typeof(BDLivenessScore));
+//            IntPtr ptRGBS = Marshal.AllocHGlobal(sizeScore * max_face_num);
+//            IntPtr ptDepthS = Marshal.AllocHGlobal(sizeScore * max_face_num);
 
-            BDFaceBBox[] box_info = new BDFaceBBox[max_face_num];
+//            BDFaceBBox[] box_info = new BDFaceBBox[max_face_num];
             
-            int sizeBox = Marshal.SizeOf(typeof(BDFaceTrackInfo));
-            IntPtr ptT = Marshal.AllocHGlobal(sizeBox * max_face_num);
+//            int sizeBox = Marshal.SizeOf(typeof(BDFaceTrackInfo));
+//            IntPtr ptT = Marshal.AllocHGlobal(sizeBox * max_face_num);
 
-            IntPtr porbe = OrbeCamera.new_orbe();
-            var rgb_win = new Window("rgb", WindowMode.AutoSize);
-            var depth_win = new Window("depth", WindowMode.Normal);
-            float rgb_score = 0;
-            float depth_score = 0;
-            Mat cv_depth = new Mat();
-            Mat cv_rgb = new Mat();
-            while (true)
-            {
-                int res_ok = OrbeCamera.open_orbe(porbe, cv_rgb.CvPtr, cv_depth.CvPtr);
-                if (res_ok != 0)
-                {
-                    depth_score = 0;
-                    rgb_score = depth_score;
-                    Console.WriteLine("open camera faile");
-                    continue;
-                }
-                if (cv_rgb.Empty())
-                {
-                    continue;
-                }
-                if (cv_depth.Empty())
-                {
-                    continue;
-                }
-                // 杩斿洖浜鸿劯涓暟
-                int face_size = rgb_depth_liveness(ptT, ptRGBS, ptDepthS, cv_rgb.CvPtr, cv_depth.CvPtr);
+//            IntPtr porbe = OrbeCamera.new_orbe();
+//            var rgb_win = new Window("rgb", WindowMode.AutoSize);
+//            var depth_win = new Window("depth", WindowMode.Normal);
+//            float rgb_score = 0;
+//            float depth_score = 0;
+//            Mat cv_depth = new Mat();
+//            Mat cv_rgb = new Mat();
+//            while (true)
+//            {
+//                int res_ok = OrbeCamera.open_orbe(porbe, cv_rgb.CvPtr, cv_depth.CvPtr);
+//                if (res_ok != 0)
+//                {
+//                    depth_score = 0;
+//                    rgb_score = depth_score;
+//                    Console.WriteLine("open camera faile");
+//                    continue;
+//                }
+//                if (cv_rgb.Empty())
+//                {
+//                    continue;
+//                }
+//                if (cv_depth.Empty())
+//                {
+//                    continue;
+//                }
+//                // 杩斿洖浜鸿劯涓暟
+//                int face_size = rgb_depth_liveness(ptT, ptRGBS, ptDepthS, cv_rgb.CvPtr, cv_depth.CvPtr);
 
-                Console.WriteLine("res is:{0}", face_size);
-                depth_score = 0;
-                rgb_score = depth_score;
-                for (int index = 0; index < face_size; index++)
-                {
-                    IntPtr ptrBox = new IntPtr();
-                    IntPtr ptrRGBScore = new IntPtr();
-                    IntPtr ptrDepthScore = new IntPtr();
-                    if (8 == IntPtr.Size)
-                    {
-                        ptrBox = (IntPtr)(ptT.ToInt64() + sizeBox * index);
-                        ptrRGBScore = (IntPtr)(ptRGBS.ToInt64() + sizeScore * index);
-                        ptrDepthScore = (IntPtr)(ptDepthS.ToInt64() + sizeScore * index);
-                    }
-                    else if (4 == IntPtr.Size)
-                    {
-                        ptrBox = (IntPtr)(ptT.ToInt32() + sizeBox * index);
-                        ptrRGBScore = (IntPtr)(ptRGBS.ToInt32() + sizeScore * index);
-                        ptrDepthScore = (IntPtr)(ptDepthS.ToInt32() + sizeScore * index);
-                    }
+//                Console.WriteLine("res is:{0}", face_size);
+//                depth_score = 0;
+//                rgb_score = depth_score;
+//                for (int index = 0; index < face_size; index++)
+//                {
+//                    IntPtr ptrBox = new IntPtr();
+//                    IntPtr ptrRGBScore = new IntPtr();
+//                    IntPtr ptrDepthScore = new IntPtr();
+//                    if (8 == IntPtr.Size)
+//                    {
+//                        ptrBox = (IntPtr)(ptT.ToInt64() + sizeBox * index);
+//                        ptrRGBScore = (IntPtr)(ptRGBS.ToInt64() + sizeScore * index);
+//                        ptrDepthScore = (IntPtr)(ptDepthS.ToInt64() + sizeScore * index);
+//                    }
+//                    else if (4 == IntPtr.Size)
+//                    {
+//                        ptrBox = (IntPtr)(ptT.ToInt32() + sizeBox * index);
+//                        ptrRGBScore = (IntPtr)(ptRGBS.ToInt32() + sizeScore * index);
+//                        ptrDepthScore = (IntPtr)(ptDepthS.ToInt32() + sizeScore * index);
+//                    }
 
-                    box_info[index] = (BDFaceBBox)Marshal.PtrToStructure(ptrBox, typeof(BDFaceBBox));  
+//                    box_info[index] = (BDFaceBBox)Marshal.PtrToStructure(ptrBox, typeof(BDFaceBBox));  
 
-                    rgb_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrRGBScore, typeof(BDLivenessScore));
-                    rgb_score = rgb_score_info[index].score;
-                    depth_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrDepthScore, typeof(BDLivenessScore));
-                    depth_score = depth_score_info[index].score;
-                    // 鍒嗗�煎お浣庯紝浼氭樉绀哄皬鏁扮偣澶暱锛岀洿鎺ヨ祴鍊�0
-                    if (depth_score <= 0.1f)
-                    {
-                        depth_score = 0;
-                    }
-                    if (rgb_score <= 0.1f)
-                    {
-                        rgb_score = 0;
-                    }                    
-                    // 浜鸿劯瀹藉害
-                    Console.WriteLine("mWidth is:{0:f}", box_info[index].width);
-                    // 涓績鐐筙,Y鍧愭爣
-                    Console.WriteLine("mCenter_x is:{0:f}", box_info[index].center_x);
-                    Console.WriteLine("mCenter_y is:{0:f}", box_info[index].center_y);
+//                    rgb_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrRGBScore, typeof(BDLivenessScore));
+//                    rgb_score = rgb_score_info[index].score;
+//                    depth_score_info[index] = (BDLivenessScore)Marshal.PtrToStructure(ptrDepthScore, typeof(BDLivenessScore));
+//                    depth_score = depth_score_info[index].score;
+//                    // 鍒嗗�煎お浣庯紝浼氭樉绀哄皬鏁扮偣澶暱锛岀洿鎺ヨ祴鍊�0
+//                    if (depth_score <= 0.1f)
+//                    {
+//                        depth_score = 0;
+//                    }
+//                    if (rgb_score <= 0.1f)
+//                    {
+//                        rgb_score = 0;
+//                    }                    
+//                    // 浜鸿劯瀹藉害
+//                    Console.WriteLine("mWidth is:{0:f}", box_info[index].width);
+//                    // 涓績鐐筙,Y鍧愭爣
+//                    Console.WriteLine("mCenter_x is:{0:f}", box_info[index].center_x);
+//                    Console.WriteLine("mCenter_y is:{0:f}", box_info[index].center_y);
 
-                }
+//                }
 
 
-                Mat depth_img = new Mat();
-                cv_depth.ConvertTo(depth_img, MatType.CV_8UC1, 255.0 / 4500);
-                string msg_depth = "depth score is:" + depth_score.ToString();
-                Cv2.PutText(depth_img, msg_depth, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
+//                Mat depth_img = new Mat();
+//                cv_depth.ConvertTo(depth_img, MatType.CV_8UC1, 255.0 / 4500);
+//                string msg_depth = "depth score is:" + depth_score.ToString();
+//                Cv2.PutText(depth_img, msg_depth, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
 
-                string msg_rgb = "rgb score is:" + rgb_score.ToString();
-                Cv2.PutText(cv_rgb, msg_rgb, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
-                if (face_size > 0)
-                {
-                    // 鐢讳汉鑴告
-                    FaceDraw.draw_rects(ref cv_rgb, face_size, box_info);
-                }
-                rgb_win.ShowImage(cv_rgb);
-                depth_win.ShowImage(depth_img);
-                Cv2.WaitKey(1);
-                depth_img.Release();
-            }
-            Marshal.FreeHGlobal(ptT);
-            cv_rgb.Release();
-            cv_depth.Release();
-            Cv2.DestroyWindow("rgb");
-            Cv2.DestroyWindow("depth");
-            OrbeCamera.orbe_release(porbe);
-            return true;
-        }
+//                string msg_rgb = "rgb score is:" + rgb_score.ToString();
+//                Cv2.PutText(cv_rgb, msg_rgb, new Point(20, 50), HersheyFonts.HersheyComplex, 1, new Scalar(255, 100, 0));
+//                if (face_size > 0)
+//                {
+//                    // 鐢讳汉鑴告
+//                    FaceDraw.draw_rects(ref cv_rgb, face_size, box_info);
+//                }
+//                rgb_win.ShowImage(cv_rgb);
+//                depth_win.ShowImage(depth_img);
+//                Cv2.WaitKey(1);
+//                depth_img.Release();
+//            }
+//            Marshal.FreeHGlobal(ptT);
+//            cv_rgb.Release();
+//            cv_depth.Release();
+//            Cv2.DestroyWindow("rgb");
+//            Cv2.DestroyWindow("depth");
+//            OrbeCamera.orbe_release(porbe);
+//            return true;
+//        }
              
-        public void test_rgb_ir_liveness_check_by_opencv()
-        {
-            rgb_ir_liveness_check_mat();
-        }
+//        public void test_rgb_ir_liveness_check_by_opencv()
+//        {
+//            rgb_ir_liveness_check_mat();
+//        }
 
-        // 鍙岀洰RGB鍜孌EPTH闈欓粯娲讳綋妫�娴�,閫傞厤濂ユ瘮涓厜娴风嚂绛夊弻鐩憚鍍忓ご
-        public void test_rgb_depth_liveness_check_by_orbe()
-        {
-            rgb_depth_liveness_check_orbe();
-        }
+//        // 鍙岀洰RGB鍜孌EPTH闈欓粯娲讳綋妫�娴�,閫傞厤濂ユ瘮涓厜娴风嚂绛夊弻鐩憚鍍忓ご
+//        public void test_rgb_depth_liveness_check_by_orbe()
+//        {
+//            rgb_depth_liveness_check_orbe();
+//        }
       
-        // 鍙岀洰鎽勫儚澶磋繘琛宺gb,depth娲讳綋妫�娴�(姝ゅ閫傞厤浜嗗崕鏉拌壘绫崇殑鍙岀洰鎽勫儚澶�)
-        public void test_rgb_depth_liveness_check_by_hjimi()
-        {
-            rgb_depth_liveness_check_hjimi();
-        }
-    }
-}
+//        // 鍙岀洰鎽勫儚澶磋繘琛宺gb,depth娲讳綋妫�娴�(姝ゅ閫傞厤浜嗗崕鏉拌壘绫崇殑鍙岀洰鎽勫儚澶�)
+//        public void test_rgb_depth_liveness_check_by_hjimi()
+//        {
+//            rgb_depth_liveness_check_hjimi();
+//        }
+//    }
+//}

--
Gitblit v1.9.3