async Task ExecuteFindSimilarFaces(FindSimilarMatchMode matchMode, int gridViewResourceId) { List <SimilarFaceResult> results = null; try { AddLog($"Request: Find {matchMode.ToString ()} similar faces to {targetFaceListAdapter.SelectedFace.Id} in {faceListAdapter.Count} face(s)"); progressDialog.Show(); progressDialog.SetMessage("Finding Similar Faces..."); SetInfo("Finding Similar Faces..."); results = await FaceClient.Shared.FindSimilar(targetFaceListAdapter.SelectedFace, faceListAdapter.Faces, 4 /*max candidates*/, matchMode); var resultString = $"Found {results?.Count ?? 0} {matchMode} similar face{(results?.Count != 1 ? "s" : "")}"; AddLog("Response: Success. " + resultString); AppendInfo(resultString); } catch (Exception e) { AddLog(e.Message); } progressDialog.Dismiss(); // Show the result of face finding similar faces. var similarFaces = FindViewById <GridView> (gridViewResourceId); similarFaceListAdapter = new SimilarFaceListAdapter(results, faceListAdapter); similarFaces.Adapter = similarFaceListAdapter; }
private void SetUiAfterFindFacialSimilarFaces(SimilarFace[] result) { mProgressDialog.Dismiss(); SetAllButtonsEnabledStatus(true); // Show the result of face finding similar faces. GridView similarFaces = (GridView)FindViewById(Resource.Id.facial_similar_faces); mSimilarFaceListAdapter = new SimilarFaceListAdapter(result, this); similarFaces.Adapter = mSimilarFaceListAdapter; }
public void OnItemClick(AdapterView parent, View view, int position, long id) { if (targetFaceListAdapter.SelectedFace != targetFaceListAdapter [position]) { targetFaceListAdapter.SetSelectedIndex(position); var imageView = FindViewById <ImageView> (Resource.Id.image); imageView.SetImageBitmap(targetFaceListAdapter.GetThumbnailForPosition(position)); // Clear the result of finding similar faces. var similarFaces = FindViewById <GridView> (Resource.Id.similar_faces); similarFaceListAdapter = new SimilarFaceListAdapter(null, null); similarFaces.Adapter = similarFaceListAdapter; similarFaces = FindViewById <GridView> (Resource.Id.facial_similar_faces); similarFaceListAdapter = new SimilarFaceListAdapter(null, null); similarFaces.Adapter = similarFaceListAdapter; SetInfo(""); } }