Exemple #1
0
        public async Task <CameraImage> AcquireImageAsync(AcquireParams acquireParams,
                                                          CancellationToken ct, IProgress <CameraProgressEventArgs> progress = null)
        {
            var takeParams = new TakeParams(
                acquireParams.ExposureType,
                acquireParams.ExposureTime,
                acquireParams.AnalogGain,
                acquireParams.MinGain,
                acquireParams.MaxGain
                );
            var takeProgress = new Progress <TakeProgressEventArgs>();

            takeProgress.ProgressChanged += (s, e) =>
            {
                progress.Report(
                    new CameraProgressEventArgs(e.Percentage, e.Description)
                    );
            };

            return(new CameraImage()
            {
                Image = await _device.TakeImage(takeParams, ct, takeProgress),
                ImageWidth = ImageWidth, ImageHeight = ImageHeight
            });
        }
        ///////////////////////////////////////////////////////////////////////
        /// <summary>
        /// Captures an image from the camera.
        /// </summary>
        /// <param name="image">A reference to the CameraImage or DarkCameraImage that is to store the newly taken camera image.</param>
        public async Task <CameraImage> AcquireImageAsync(AcquireParams acquireParams,
                                                          CancellationToken ct, IProgress <CameraProgressEventArgs> progress = null)
        {
            await _device.SetExposure(acquireParams.ExposureTime, ct);

            if (acquireParams.ExposureType)
            {
                await _device.LaserTurnOn(ct);
            }

            var takeParams = new TakeParams(
                acquireParams.ExposureType,
                acquireParams.ExposureTime,
                acquireParams.AnalogGain,
                acquireParams.MinGain,
                acquireParams.MaxGain);
            var image = await _device.TakeImage(takeParams, ct);

            if (acquireParams.ExposureType)
            {
                await _device.LaserTurnOff(ct);
            }

            return(new CameraImage(image, _imageWidth, _imageHeight, acquireParams.ExposureType, 1, 35f, acquireParams.ExposureTime, false, false));
        }
Exemple #3
0
        ///////////////////////////////////////////////////////////////////////
        /// <summary>
        /// Captures an image from the camera.
        /// </summary>
        /// <param name="image">A reference to the CameraImage or DarkCameraImage that is to store the newly taken camera image.</param>
        public async Task <CameraImage> AcquireImageAsync(AcquireParams acquireParams,
                                                          CancellationToken ct, IProgress <CameraProgressEventArgs> progress = null)
        {
            await Task.Delay(0); // temporary for eliminating warning message.

            ushort[] image = await GetImageFromCamera(acquireParams.ExposureType, acquireParams.ExposureTime);

            return(new CameraImage(image, _imageWidth, _imageHeight, acquireParams.ExposureType, 1, _temperature, acquireParams.ExposureTime, false, false));
        }