Пример #1
0
        void _recognizeBW_DoWork(object sender, DoWorkEventArgs e)
        {
            if (e == null)
            {
                return;
            }

            var image = e.Argument as Bitmap;

            var imgName = Guid.NewGuid() + "kin.jpg";

            var recResult = _faceRest.faces_recognize(null, _users, null, "", imgName, null, null, image);



            if (!recResult.status.Equals("success"))
            {
                e.Cancel = true;
                return;
            }

            var users = new Dictionary <string, float>();

            if (recResult.photos.Count == 0 || recResult.photos[0].tags.Count == 0)
            {
                e.Cancel = true;
                return;
            }

            foreach (var uid in recResult.photos[0].tags[0].uids)
            {
                users.Add(uid.uid, uid.confidence);
                if (uid.confidence > 90)
                {
                    _faceRest.tags_save(new List <string> {
                        recResult.photos[0].tags[0].tid
                    }, uid.uid, "", "kinectHome");
                }
            }

            e.Result = users;
        }