private async Task <PredictionResponse> GetFramePrediction(VideoFrame request, Guid projectId, string publishedModelName)
        {
            var predictionResponse = new PredictionResponse {
                Timestamp = DateTime.Now, Millisecond = request.Millisecond
            };

            using (var stream = File.OpenRead(request.FilePath))
            {
                var response = await _predictionApi.DetectImageWithHttpMessagesAsync(
                    projectId,
                    publishedModelName,
                    stream
                    );

                var objects = new List <PredictionObjectResponse>();
                foreach (var prediction in response.Body.Predictions)
                {
                    var predictionObjectResponse = new PredictionObjectResponse
                    {
                        Label       = prediction.TagName,
                        Confidence  = prediction.Probability,
                        BoundingBox = new BoundingBox
                        {
                            Height = prediction.BoundingBox.Height,
                            Width  = prediction.BoundingBox.Width,
                            Top    = prediction.BoundingBox.Top,
                            Left   = prediction.BoundingBox.Left
                        }
                    };

                    if (predictionObjectResponse.Confidence > 0.7)
                    {
                        objects.Add(predictionObjectResponse);
                    }
                }

                predictionResponse.PredictionObjects = objects;
            }

            return(predictionResponse);
        }