ColorGlove.Manager.Manager C# (CSharp) Method

Manager() public method

public Manager ( MainWindow parent ) : System
parent MainWindow
return System
        public Manager(MainWindow parent)  // Construct function
        {
            if (ProcessorMode == ProcessorModeFormat.Michael)
                datafeed = new DataFeed(DataFeed.DataSource.Kinect, DataFeed.RangeModeFormat.Near);
            else
                datafeed = new DataFeed(DataFeed.DataSource.Kinect, DataFeed.RangeModeFormat.Default);
            
            #region Create and arrange Images
            int total_processors = 2;
            processors = new Processor[total_processors];
            for (int i = 0; i < total_processors; i++)
            {
                processors[i] = new Processor(this);
                processors[i].lower = 100;
                processors[i].upper = 1000;
                Image image = processors[i].getImage();
                parent.mainContainer.Children.Add(image);
            }
            #endregion

            #region Processor configurations
			
            
            if (ProcessorMode == ProcessorModeFormat.Michael)
            {
                processors[0].updatePipeline(
                    // Show the rgb image
                                            Filter.Step.CopyColor
                    // Show the depth image                                         
                    // Filter.Step.Depth    

                    // Show the Color Labelling                                         
                    // Filter.Step.PaintWhite,
                    // Filter.Step.MatchColors
                    );

                //processors[0].updatePipeline(Filter.Step.ColorMatch);
                //processors[1].SetTestModule(Processor.ShowExtractedFeatureFormat.PredictOnePixelCPU | Processor.ShowExtractedFeatureFormat.ShowTransformedForOnePixel); // 
                // one should call SetTestModule to active the FeatureExtractionLib

                //processors[1].SetTestModule(Processor.ShowExtractedFeatureFormat.PredictAllPixelsGPU); 
                processors[1].setFeatureExtraction(Processor.ShowExtractedFeatureFormat.ShowTransformedForOnePixel); 
                processors[1].updatePipeline(
                    // Show the rgb image
                    // Filter.Step.CopyColor
                    // Show the depth image 
                    Filter.Step.PaintWhite,
                 //   Filter.Step.Crop,
                    Filter.Step.PaintGreen,
                    Filter.Step.CopyDepth,
                //    Filter.Step.MatchColors,
                //    Filter.Step.FeatureExtractOnEnable,
                    Filter.Step.ShowOverlay


                    // Show Mapped Depth Using RGB
                    // Filter.Step.PaintWhite,
                    // Filter.Step.MappedDepth
                    // Show the Color Labelling
                    // Filter.Step.PaintWhite,
                    // Filter.Step.MatchColors
                    // Denoise
                    //                        Filter.Step.Denoise
                );
            }
            else if (ProcessorMode == ProcessorModeFormat.Arun) {
                processors[0].setFeatureExtraction(Processor.ShowExtractedFeatureFormat.ShowTransformedForOnePixel); 
                processors[0].updatePipeline(
                    Filter.Step.PaintWhite,
                    Filter.Step.Crop,
                    Filter.Step.PaintGreen,
                    //Filter.Step.CopyColor,
                    Filter.Step.MatchColors,
                    Filter.Step.FeatureExtractOnEnable,
                    Filter.Step.ShowOverlay
                );


                processors[1].setFeatureExtraction(Processor.ShowExtractedFeatureFormat.PredictAllPixelsGPU);
                processors[1].updatePipeline(
                    Filter.Step.PaintGreen,
                    Filter.Step.Crop,
                    Filter.Step.CopyDepth,
                    //Filter.Step.EnablePredict,
                    //Filter.Step.PredictOnEnable,
                    Filter.Step.ShowOverlay);
                
                 
                /*processors[1].SetTestModule(Processor.ShowExtractedFeatureFormat.ShowTransformedForOnePixel);
                processors[1].updatePipeline(
                   Processor.Step.PaintGreen,
                   Processor.Step.Depth,
                   Processor.Step.OverlayOffset
                );*/
                
            }
            #endregion

            poller = new Thread(new ThreadStart(this.poll));
        }