public static async Task AddTrainingImageAsync()

in FamilyNotes/UserDetection/FacialSimilarity.cs [160:189]


        public static async Task<bool> AddTrainingImageAsync(string Name, Uri Image)
        {
            await _semaphore.WaitAsync();

            if (_listKey != String.Empty && InitialTrainingPerformed)
            {
                try
                {
                    StorageFile UserImage = await StorageFile.GetFileFromApplicationUriAsync(Image);
                    var UserImageFilestream = File.OpenRead(UserImage.Path);
                    await WaitOnTransactionCapAsync();
                    var DetectedFaceID = await _faceClient.FaceList.AddFaceFromStreamAsync(_listKey, UserImageFilestream, Name);
                    _transactionCount++;
                    _userFacialIDs.Add(Name, DetectedFaceID.PersistedFaceId);
                    _userNames.Add(DetectedFaceID.PersistedFaceId, Name);
                    _semaphore.Release();
                    return true;
                }
                catch (Exception)
                {
                    _semaphore.Release();
                    return false;
                }
            }
            else
            {
                _semaphore.Release();
                return (await TrainDetectionAsync() > 0 ? true : false);
            }
        }