public void ScannerConnect() { _sensor = KinectSensor.GetDefault(); if (_sensor != null) { _sensor.Open(); _reader = _sensor.OpenMultiSourceFrameReader(FrameSourceTypes.Color | FrameSourceTypes.Depth | FrameSourceTypes.BodyIndex); //_reader = _sensor.OpenMultiSourceFrameReader(FrameSourceTypes.Color | FrameSourceTypes.Depth); _reader.MultiSourceFrameArrived += Reader_MultiSourceFrameArrived; this.ImageScreenshot = new WriteableBitmap(this._sensor.DepthFrameSource.FrameDescription.Width, this._sensor.DepthFrameSource.FrameDescription.Height, 96.0, 96.0, PixelFormats.Gray8, null); this.coordinateMapper = this._sensor.CoordinateMapper; backgroundRemovalTool = new PointCloudUtils.BackgroundRemoval(_sensor.CoordinateMapper); } bStopAfterFrameInterpolation = false; }
public override bool StartScanner() { InitScanner(); isScanning = true; scannerSensor = KinectSensor.GetDefault(); //scannerSensor.DepthFrameSource if (scannerSensor != null) { if (PointCloudScannerSettings.ShowSkeleton) { this.bodyFrameReader = this.scannerSensor.BodyFrameSource.OpenReader(); this.bodyFrameReader.FrameArrived += this.BodyReader_FrameArrived; } // 2) Initialize the face source with the desired features //if (PointCloudScannerSettings.ShowFace) //{ // //_faceSource = new HighDefinitionFaceFrameSource(_sensor); // //_faceReader = _faceSource.OpenReader(); // //_faceReader.FrameArrived += FaceReader_FrameArrived; // //_facePointCloud = new FaceModel(); // //_faceAlignment = new FaceAlignment(); // _faceSource = new HighDefinitionFaceFrameSource(scannerSensor); // //_faceSource = new FaceFrameSource(scannerSensor, 0, FaceFrameFeatures.BoundingBoxInColorSpace | // // FaceFrameFeatures.FaceEngagement | // // FaceFrameFeatures.Glasses | // // FaceFrameFeatures.Happy | // // FaceFrameFeatures.LeftEyeClosed | // // FaceFrameFeatures.MouthOpen | // // FaceFrameFeatures.PointsInColorSpace | // // FaceFrameFeatures.RightEyeClosed); // _faceReader = _faceSource.OpenReader(); // _faceReader.FrameArrived += FaceReader_FrameArrived; // _facePointCloud = new FaceModel(); // _faceAlignment = new FaceAlignment(); //} scannerReader = scannerSensor.OpenMultiSourceFrameReader(FrameSourceTypes.Color | FrameSourceTypes.Depth | FrameSourceTypes.BodyIndex | FrameSourceTypes.Infrared); scannerReader.MultiSourceFrameArrived += Scanner_MultiSourceFrameArrived; this.ImageScreenshot = new Bitmap(this.scannerSensor.DepthFrameSource.FrameDescription.Width, this.scannerSensor.DepthFrameSource.FrameDescription.Height, System.Drawing.Imaging.PixelFormat.Format16bppGrayScale); this.coordinateMapper = this.scannerSensor.CoordinateMapper; backgroundRemovalTool = new PointCloudUtils.BackgroundRemoval(scannerSensor.CoordinateMapper); bStopAfterFrameInterpolation = false; InitPictureBoxesForUI(); scannerSensor.Open(); } else { return(false); } return(true); }