Ejemplo n.º 1
0
        protected override void worker_DoWork(object sender, DoWorkEventArgs e)
        {
            try
            {
                setGreenLed(false);
                setRedLed(true);

                var localImage = e.Argument as Image;
                var fps        = new List <Fingerprint>();

                int count = _twoprint.Segmentation(localImage);
                Console.WriteLine("GetSegmentationCount: " + count);
                for (int i = 0; i < count; i++)
                {
                    var segment = _twoprint.GetSegmentedImageEx(i);

                    Fingerprint fp = new Fingerprint();
                    fp.Image    = segment.Image;
                    fp.Template = base.Encoder.Encode(segment.Image);
                    fp.NFIQ     = DermalogNistQualityCheck.Check(segment.Image);

                    fps.Add(fp);
                }

                setGreenLed(true);
                setRedLed(false);

                base.InvokeFingerprintsDetected(fps);
            }
            catch (Exception ex)
            {
                InvokeScannerError(sender, new ScannerErrorEventArgs("Processing error: " + ex.Message, ex));
            }
        }
Ejemplo n.º 2
0
        protected override void worker_DoWork(object sender, DoWorkEventArgs e)
        {
            try
            {
                setGreenLed(false);
                setRedLed(true);

                var localImage = e.Argument as System.Drawing.Image;

                Template t1 = base.Encoder.Encode(localImage);

                int nQC = DermalogNistQualityCheck.Check(localImage);

                Fingerprint fp = new Fingerprint();
                fp.Image    = localImage;
                fp.Template = t1;
                fp.NFIQ     = nQC;

                List <Fingerprint> fps = new List <Fingerprint>()
                {
                    fp
                };

                base.InvokeFingerprintsDetected(fps);

                setGreenLed(true);
                setRedLed(false);
            }catch (Exception ex)
            {
                InvokeScannerError(sender, new ScannerErrorEventArgs("Processing error: " + ex.Message, ex));
            }
        }
Ejemplo n.º 3
0
        protected override void worker_DoWork(object sender, DoWorkEventArgs e)
        {
            try
            {
                var localImage = e.Argument as Image;

                var fps = new List <Fingerprint>();

                uint count = _fourprint.GetSegmentationCount(localImage);
                for (uint i = 0; i < count; i++)
                {
                    SegmentedFingerprint finger = _fourprint.GetSegmentedFingerprint(i);
                    if (finger == null)
                    {
                        continue;
                    }

                    localImage = finger.Image.Clone() as Image;

                    Template template = base.Encoder.Encode(localImage);

                    int nQC = DermalogNistQualityCheck.Check(localImage);

                    Fingerprint fp = new Fingerprint();
                    fp.Image    = localImage;
                    fp.Template = template;

                    string templateFormat = Properties.Settings.Default.TemplateFORMAT;
                    fp.Template.Format = Utils.Generate_Template_Encoder(templateFormat);

                    fp.NFIQ     = nQC;
                    fp.Hand     = finger.Hand;
                    fp.Position = finger.Position;

                    if (template != null)
                    {
                        fps.Add(fp);
                    }
                }

                SetAllFingerLeds(ZF10LedColor.OFF);

                uint[] positions = new uint[fps.Count];
                for (int i = 0; i < positions.Length; i++)
                {
                    positions[i] = fps[i].Position;
                }
                SetLeds(fps[0].Hand, positions, ZF10LedColor.GREEN);

                base.InvokeFingerprintsDetected(fps);
            }
            catch (Exception ex)
            {
                InvokeScannerError(sender, new ScannerErrorEventArgs("Processing error: " + ex.Message, ex));
            }
        }
        protected Fingerprint ProcessImage(System.Drawing.Image img, RawImage rawImg, uint fingerPosition = 0, Dermalog.AFIS.FourprintSegmentation.HandPositions hand = Dermalog.AFIS.FourprintSegmentation.HandPositions.Unknown)
        {
            Fingerprint fp = new Fingerprint();

            fp.Image    = img;
            fp.Template = Encoder.Encode(rawImg);
            fp.NFIQ2    = DermalogNistQualityCheck.CheckNfiq2(rawImg);
            fp.Hand     = hand;
            fp.Position = fingerPosition;
            return(fp);
        }
Ejemplo n.º 5
0
        protected override void worker_DoWork(object sender, DoWorkEventArgs e)
        {
            try
            {
                var fps = new List <Fingerprint>();

                uint count = _fourprint.GetSegmentationCount(e.Argument as Image);
                for (uint i = 0; i < count; i++)
                {
                    SegmentedFingerprint finger = _fourprint.GetSegmentedFingerprint(i);
                    var localImage = finger.Image;

                    Template template = base.Encoder.Encode(localImage);

                    int         nQC = DermalogNistQualityCheck.Check(localImage);
                    Fingerprint fp  = new Fingerprint();
                    fp.Image    = localImage;
                    fp.Template = template;
                    fp.NFIQ     = nQC;
                    fp.Hand     = finger.Hand;
                    fp.Position = finger.Position;

                    fps.Add(fp);
                }

                SetAllFingerLeds(LF10LedColor.OFF);

                uint[] positions = new uint[fps.Count];
                for (int i = 0; i < positions.Length; i++)
                {
                    positions[i] = fps[i].Position;
                }
                SetLeds(fps[0].Hand, positions, LF10LedColor.GREEN);

                base.InvokeFingerprintsDetected(fps);
            }
            catch (Exception ex)
            {
                InvokeScannerError(sender, new ScannerErrorEventArgs("Processing error: " + ex.Message, ex));
            }
        }