示例#1
0
        private void provider_ImageProcessed(object sender, OnImageReceivedBitmapEventArgs e)
        {
            //Handle the image data
            if (e.SensorID == 0)
            {
                pictureBox1.Image = ProcessingWrapper.pr[0].CreateProcessedBitmap(e.GetImageData);

                /*if (imgCapBool)
                 * {
                 *  //ProcessingWrapper.pr[0].TakeSnapshost().processedImage.Save("image" + (++imgI).ToString() + ".png");
                 *  pictureBox1.Image.Save("output" + imgI.ToString() + ".bmp");
                 * }*/
            }
            else if (e.SensorID == 1)
            {
                pictureBox2.Image = ProcessingWrapper.pr[1].CreateProcessedBitmap(e.GetImageData);
            }
            else if (e.SensorID == 2)
            {
                pictureBox3.Image = ProcessingWrapper.pr[2].CreateProcessedBitmap(e.GetImageData);
            }
            else if (e.SensorID == 3)
            {
                pictureBox4.Image = ProcessingWrapper.pr[3].CreateProcessedBitmap(e.GetImageData);
            }
        }
示例#2
0
 private void provider_ImageProcessed(object sender, OnImageReceivedBitmapEventArgs e)
 {
     //Handle the image data
     if (e.SensorID == 0)
     {
         pictureBox1.Image = ProcessingWrapper.pr[0].CreateProcessedBitmap(e.GetImageData);
     }
     else if (e.SensorID == 1)
     {
         pictureBox2.Image = ProcessingWrapper.pr[1].CreateProcessedBitmap(e.GetImageData);
     }
 }
示例#3
0
        private void SaveVideoFrame(object sender, OnImageReceivedBitmapEventArgs e)
        {
            if (locker)
            {
                return;
            }

            locker = true;

#if (SaveAviVideo)
            video.AddFrame(ProcessingWrapper.pr[e.SensorID].CreateProcessedBitmap(e.GetImageData));
#endif

#if (SaveAwVideo)
            Awaiba.Imaging.PGMImage pgm1 = Awaiba.Imaging.PGMImage.FromFile("all.pgm");
            //Awaiba.Imaging.PGMImage pgm2 = Awaiba.Imaging.PGMImage.FromFile("red.pgm");
            video.AddFrame(pgm1);
            // video.AddFrame(pgm2);
#endif

            locker = false;
        }
示例#4
0
        /// <summary>
        /// Called every time a new frame shows up from the camera
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void provider_ImageProcessed(object sender, OnImageReceivedBitmapEventArgs e)
        {
            if (stopping || e == null || e.PixelData == null)
            {
                return;
            }

            if (Monitor.TryEnter(this))
            {
                try
                {
                    Awaiba.Imaging.PPMImage ppm = new Awaiba.Imaging.PPMImage(e.Width, e.Height, e.BitsPerPixel, e.PixelData);
                    Bitmap bmp = ppm.ConvertToBitmap();
                    //Bitmap bmp = ArrayToBitmap(e.PixelData, e.Width, e.Height, PixelFormat.Format24bppRgb);

                    // trigger a new frame event
                    OnFrameAvailable(bmp);
                }
                catch (Exception ex) { Debug.WriteLine("Error receiving image from camera: " + ex.ToString()); }

                Monitor.Exit(this);
            }
        }