Example #1
0
        public void LiveStreamFaceDetectingThreadConstructorTest()
        {
            Size frame_size = new Size(10, 10);

            Nkujukira.Demo.Singletons.Singleton.HAARCASCADE_FILE_PATH = Singleton.HAARCASCADE_FILE_PATH;
            LiveStreamFaceDetectingThread thread = new LiveStreamFaceDetectingThread(frame_size);

            Assert.IsNotNull(thread);
        }
Example #2
0
        public void LiveStreamFaceDetectingThreadDoWorkTest()
        {
            Size frame_size = new Size(10, 10);

            Nkujukira.Demo.Singletons.Singleton.HAARCASCADE_FILE_PATH = Singleton.HAARCASCADE_FILE_PATH;
            LiveStreamFaceDetectingThread thread = new LiveStreamFaceDetectingThread(frame_size);

            thread.StartWorking();
            Assert.IsTrue(thread.IsRunning());
        }
Example #3
0
        public void LiveStreamFaceDetectingThreadDetectFacesInFrameTest()
        {
            Size frame_size = new Size(200, 200);

            Nkujukira.Demo.Singletons.Singleton.HAARCASCADE_FILE_PATH = Singleton.HAARCASCADE_FILE_PATH;
            LiveStreamFaceDetectingThread thread = new LiveStreamFaceDetectingThread(frame_size);

            Nkujukira.Demo.Singletons.Singleton.LIVE_FRAMES_TO_BE_PROCESSED.Enqueue(Singleton.FACE_PIC);
            bool sucess = thread.DetectFacesInFrame();

            Assert.IsTrue(sucess);
        }
Example #4
0
        //STARTS THREAD TO DETECT FACES IN FRAME OFF THE MAIN THREAD
        private static LiveStreamFaceDetectingThread CreateLiveStreamFaceDetectorThread()
        {
            var  controls_name = MainWindow.MainWindowControls.live_stream_image_box1;
            int  width         = Singleton.MAIN_WINDOW.GetControl(controls_name).Width;
            int  height        = Singleton.MAIN_WINDOW.GetControl(controls_name).Width;
            Size frame_size    = new Size(width, height);

            live_face_detector = new LiveStreamFaceDetectingThread(frame_size);
            live_face_detector.StartWorking();

            return(live_face_detector);
        }
Example #5
0
        //THIS RELEASES ALL RESOURCES CONSUMED BY A THREAD GIVEN ITS ID
        public static bool ReleaseThreadResources(String thread_id)
        {
            switch (thread_id)
            {
            case ThreadFactory.PERP_ALERT_THREAD:

                perp_alert_thread = null;
                break;

            case ThreadFactory.STUDENT_ALERT_THREAD:
                student_alert_thread = null;
                break;

            case ThreadFactory.CAMERA_THREAD:
                cam_output = null;
                break;

            case ThreadFactory.CAMERA_THREAD_USING_VIDEO:
                cam_output_using_video = null;
                break;

            case ThreadFactory.LIVE_DISPLAY_UPDATER:
                live_display_updater = null;
                break;

            case ThreadFactory.REVIEW_DISPLAY_UPDATER:
                review_display_updater = null;
                break;

            case ThreadFactory.REVIEW_FACE_DETECTOR:
                review_face_detector = null;
                break;

            case ThreadFactory.LIVE_FACE_DETECTOR:
                live_face_detector = null;
                break;

            case ThreadFactory.PERP_RECOGNIZER:
                perp_recognizer = null;
                break;

            case ThreadFactory.PROGRESS_THREAD:
                face_recog_progress   = null;
                face_recog_progress_2 = null;
                break;

            case ThreadFactory.FACE_DRAWER:
                face_drawer = null;
                break;

            case ThreadFactory.FOOTAGE_SAVER:
                footage_saver = null;
                break;

            case ThreadFactory.VIDEO_THREAD:
                video_from_file_grabber = null;
                break;

            case ThreadFactory.VIDEO_THREAD_USING_CAMERA:
                video_from_camera = null;
                break;
            }
            return(true);
        }