Ejemplo n.º 1
0
        public async Task <RecognizedObject[]> GetRecognitionResultsAsync(RecognitionRequest request)
        {
            _logger.Log(LogType.NORMAL, "Recognition started");
            List <RecognizedObject>         plateResponse;
            List <RecognizedObject>         personResponse;
            Task <List <RecognizedObject> > getPlateResponseTask  = Task.FromResult(new List <RecognizedObject>());
            Task <List <RecognizedObject> > getPersonResponseTask = Task.FromResult(new List <RecognizedObject>());

            try
            {
                if (request.FindPlate)
                {
                    getPlateResponseTask = _plateService.RecognizeAsync(request.ImageBase64, request.Latitude, request.Longitude);
                }
                if (request.FindFace)
                {
                    getPersonResponseTask = _faceService.RecognizeAsync(request.ImageBase64, request.Latitude, request.Longitude);
                }

                plateResponse  = await getPlateResponseTask;
                personResponse = await getPersonResponseTask;
            }
            catch (Exception ex)
            {
                _logger.Log(LogType.ERROR, $"Recognition failed: {ex.Message}");
                throw;
            }
            RecognizedObject[] responses = plateResponse
                                           .Concat(personResponse)
                                           .ToArray();
            _logger.Log(LogType.NORMAL, MessageBuilder.BuildResponseMessage(responses));
            _logger.Log(LogType.NORMAL, "Recognition finished successfully");
            return(responses);
        }
Ejemplo n.º 2
0
        public async Task <JsonResult> LogFaceIn(string base64String)
        {
            try
            {
                if (!string.IsNullOrEmpty(base64String))
                {
                    var    imageParts = base64String.Split(',').ToList <string>();
                    byte[] imgdata    = Convert.FromBase64String(imageParts[1]);

                    var detected = await FaceService.RecognizeAsync(imgdata);

                    return(Json("Success", JsonRequestBehavior.AllowGet));
                }
                else
                {
                    return(Json(false, JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception ex)
            {
                return(Json(ex, JsonRequestBehavior.AllowGet));
            }
        }