Exemplo n.º 1
0
        public async Task <bool> UpsertFaceListAndCheckIfContainsFaceAsync()
        {
            try
            {
                var faceListIdIn = faceListId.ToString();
                var faceLists    = await _faceServiceClient.ListFaceListsAsync();

                var faceList = faceLists.FirstOrDefault(_ => _.FaceListId == faceListIdIn);

                if (faceList == null)
                {
                    await _faceServiceClient.CreateFaceListAsync(faceListIdIn, "GeekBurgerFaces", null);

                    return(false);
                }

                var faceListJustCreated = await _faceServiceClient.GetFaceListAsync(faceListIdIn);

                return(faceListJustCreated.PersistedFaces.Any());
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
        private static async Task <bool> UpsertFaceListAndCheckIfContainsFaceAsync()
        {
            try
            {
                faceServiceClient = new FaceServiceClient(Configuration["FaceAPIKey"], "https://eastus.api.cognitive.microsoft.com/face/v1.0");
                var faceListId = Guid.Parse(Configuration["FaceListId"]).ToString();
                var faceLists  = await faceServiceClient.ListFaceListsAsync();

                var faceList = faceLists.FirstOrDefault(_ => _.FaceListId == FaceListId.ToString());

                if (faceList == null)
                {
                    await faceServiceClient.CreateFaceListAsync(faceListId, "GeekBurgerFaces", null);

                    return(false);
                }

                var faceListJustCreated = await faceServiceClient.GetFaceListAsync(faceListId);

                return(faceListJustCreated.PersistedFaces.Any());
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        private async Task <bool> UpsertFaceListAndCheckIfContainsFaceAsync()
        {
            var faceLists = await _faceServiceClient.ListFaceListsAsync();

            var faceList = faceLists.FirstOrDefault(_ => _.FaceListId == _faceListId);

            if (faceList == null)
            {
                await _faceServiceClient.CreateFaceListAsync(_faceListId, "geekburger-users-face", null);

                return(false);
            }

            var faceListJustCreated = await _faceServiceClient.GetFaceListAsync(_faceListId);

            return(faceListJustCreated.PersistedFaces.Any());
        }
Exemplo n.º 4
0
        private static async Task <bool> UpsertFaceListAndCheckIfContainsFaceAsync()
        {
            var faceListId = FaceListId.ToString();
            var faceLists  = await faceServiceClient.ListFaceListsAsync();

            var faceList = faceLists.FirstOrDefault(_ => _.FaceListId == FaceListId.ToString());

            if (faceList == null)
            {
                await faceServiceClient.CreateFaceListAsync(faceListId, "GeekBurgerFaces", null);

                return(false);
            }

            var faceListJustCreated = await faceServiceClient.GetFaceListAsync(faceListId);

            return(faceListJustCreated.PersistedFaces.Any());
        }
Exemplo n.º 5
0
        /// <summary>
        /// Function to check if a given face list exist or not.
        /// </summary>
        /// <returns></returns>
        private async Task DoesFaceListExistAsync()
        {
            FaceListMetadata[] faceLists = await _faceServiceClient.ListFaceListsAsync();

            if (faceLists == null)
            {
                return;
            }

            _faceListExists = false;

            foreach (FaceListMetadata faceList in faceLists)
            {
                if (faceList.Name.Equals(FaceListName))
                {
                    _faceListExists = true;
                    break;
                }
            }
        }
Exemplo n.º 6
0
 public async Task <IEnumerable <FaceListMetadata> > GetFaceListsAsync(string userDataFilter = null)
 {
     return((await RunTaskWithAutoRetryOnQuotaLimitExceededError <FaceListMetadata[]>(() => faceClient.ListFaceListsAsync())).Where(list => string.IsNullOrEmpty(userDataFilter) || string.Equals(list.UserData, userDataFilter)));
 }
Exemplo n.º 7
0
        /// <summary>
        /// 获取当ServiceKey下所有FaceList
        /// </summary>
        public async Task <FaceListMetadata[]> GetFaceLists()
        {
            var list = await faceServiceClient.ListFaceListsAsync();

            return(list);
        }
Exemplo n.º 8
0
        private async void FaceBox_Click(object sender, RoutedEventArgs e)
        {
            var faceButton = (Button)sender;
            var faceServiceClient = new FaceServiceClient(_subscriptionKey);
            var faceLists = await faceServiceClient.ListFaceListsAsync();
            var faceList = faceLists.First(fl => fl.Name.StartsWith(_faceListNameRoot));
            var fl2 = await faceServiceClient.GetFaceListAsync(faceList.FaceListId);
            var similarFaces = await faceServiceClient.FindSimilarAsync(new Guid(faceButton.Tag.ToString()), faceList.FaceListId);

            SimilarFaces.ItemsSource = from pf in fl2.PersistedFaces
                                       join sf in similarFaces
                                       on pf.PersistedFaceId equals sf.PersistedFaceId
                                       orderby sf.Confidence descending
                                       select new SimilarFaceResult(pf.UserData)
                                       {
                                           Confidence = (int)(sf.Confidence * 100)
                                       };

        }
Exemplo n.º 9
0
 private async void ClearFaceLists(object sender, RoutedEventArgs e)
 {
     var faceServiceClient = new FaceServiceClient(_subscriptionKey);
     var faceLists = await faceServiceClient.ListFaceListsAsync();
     foreach (var faceList in faceLists)
     {
         if (faceList.FaceListId.StartsWith(_faceListNameRoot))
         {
             await faceServiceClient.DeleteFaceListAsync(faceList.FaceListId);
         }
     }
     _faceLists.Clear();
 }
Exemplo n.º 10
0
 private async void RefreshFaceLists(object sender, RoutedEventArgs e)
 {
     var faceServiceClient = new FaceServiceClient(_subscriptionKey);
     var facelists = await faceServiceClient.ListFaceListsAsync();
     foreach (var facelist in facelists)
     {
         if (facelist.FaceListId.StartsWith(_faceListNameRoot))
         {
             var faceListData = new FaceListData { FaceListId = facelist.FaceListId };
             var fl = await faceServiceClient.GetFaceListAsync(facelist.FaceListId);
             faceListData.PersistedFaces = fl.PersistedFaces.Count();
             _faceLists.Add(faceListData);
         }
     }
 }