Exemplo n.º 1
0
 public FaceListDeleted(
     IIntelligentMediaSettings settings,
     IPersonGroupService personGroupService)
 {
     Settings           = settings;
     PersonGroupService = personGroupService;
 }
        public async Task <IVisionResponse> MakeRequest(IIntelligentMediaSettings settings, byte[] image)
        {
            var s = settings.Settings <AzureVisionSettings>();

            if (s.IsConfigured)
            {
                var subscriptionKey = s.SubscriptionKey;
                var region          = s.Region;
                var client          = new HttpClient();
                var queryString     = HttpUtility.ParseQueryString(string.Empty);

                client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", subscriptionKey);

                queryString["visualFeatures"] = "Tags,Description,Categories,Faces,Color";
                queryString["language"]       = "en";

                var uri = $"https://{region}.api.cognitive.microsoft.com/vision/v1.0/analyze?{queryString}";

                using (var content = new ByteArrayContent(image))
                {
                    content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
                    return(await client.PostAsync(uri, content).ContinueWith(ConvertResponse).Result);
                }
            }

            return(null);
        }
Exemplo n.º 3
0
 public BaseIntelligentMediaCommand()
 {
     Settings           = DependencyResolver.Current.GetService <IIntelligentMediaSettings>();
     SearchService      = DependencyResolver.Current.GetService <IIntelligentMediaSearchService>();
     MediaWrapper       = DependencyResolver.Current.GetService <IMediaWrapper>();
     PersonGroupService = DependencyResolver.Current.GetService <IPersonGroupService>();
 }
 public PersonFaceSaved(
     ISitecoreDataWrapper dataWrapper,
     IPersonGroupService personGroupService,
     IIntelligentMediaSettings settings)
 {
     DataWrapper        = dataWrapper;
     PersonGroupService = personGroupService;
     Settings           = settings;
 }
 public PersonGroupService(
     IIntelligentMediaSettings settings,
     ISitecoreDataWrapper dataWrapper,
     IFaceService faceService,
     IIntelligentMediaSearchService searchService)
 {
     Settings      = settings;
     DataWrapper   = dataWrapper;
     FaceService   = faceService;
     SearchService = searchService;
 }
 public MediaItemSaved(
     IIntelligentMediaSettings settings,
     IImageAnalysisService analysisService,
     ISitecoreDataWrapper dataWrapper,
     IIntelligentMediaSearchService searchService,
     IContextItemsWrapper contextItems,
     IMediaWrapper mediaWrapper)
 {
     Settings        = settings;
     AnalysisService = analysisService;
     DataWrapper     = dataWrapper;
     SearchService   = searchService;
     ContextItems    = contextItems;
     MediaWrapper    = mediaWrapper;
 }
 public IntelligentMediaSearchService(
     IContentSearchWrapper contentSearch,
     ISitecoreDataWrapper dataWrapper,
     IIntelligentMediaSettings settings,
     IImageDescriptionFactory imageDescriptionFactory,
     IImageAnalysisFactory imageAnalysisFactory,
     IMediaWrapper mediaWrapper)
 {
     ContentSearch           = contentSearch;
     DataWrapper             = dataWrapper;
     Settings                = settings;
     ImageDescriptionFactory = imageDescriptionFactory;
     ImageAnalysisFactory    = imageAnalysisFactory;
     MediaWrapper            = mediaWrapper;
 }
Exemplo n.º 8
0
        public void UpdateUmbracoMedia(IMedia mediaItem, IMediaService mediaService, IIntelligentMediaSettings settings)
        {
            if (settings.Settings <GlobalSettings>().OverwriteName)
            {
                mediaItem.Name = Name;
            }

            new TagsProperty(mediaItem).SetValueIfExists(string.Join(",", Tags.OrderByDescending(t => t.Confidence).Select(t => t.Tag).Distinct()));
            new DescriptionProperty(mediaItem).SetValueIfExists(Descriptions.OrderByDescending(d => d.Confidence).First().Tag);
            new CategoriesProperty(mediaItem).SetValueIfExists(string.Join(",", Categories.OrderByDescending(t => t.Confidence).Select(t => t.Tag.Replace("_", " ").TrimEnd())));
            new NumberOfFacesProperty(mediaItem).SetValueIfExists(NumberOfFaces);
            new PrimaryColourProperty(mediaItem).SetValueIfExists(PrimaryColour);
            new BackgroundColourProperty(mediaItem).SetValueIfExists(BackgroundColour);
            new PopulatedProperty(mediaItem).SetValueIfExists(true);
            mediaService.Save(mediaItem);
        }
 public ImageAnalysisService(
     IIntelligentMediaSettings settings,
     IIntelligentMediaSearchService searchService,
     ISitecoreDataWrapper dataWrapper,
     IFaceService faceService,
     IComputerVisionService visionService,
     IImageAnalysisFactory imageAnalysisFactory,
     IPersonGroupService personService)
 {
     Settings             = settings;
     SearchService        = searchService;
     DataWrapper          = dataWrapper;
     FaceService          = faceService;
     VisionService        = visionService;
     ImageAnalysisFactory = imageAnalysisFactory;
     PersonService        = personService;
 }
Exemplo n.º 10
0
        public IntelligentMediaController(
            IIntelligentMediaSearchService searchService,
            ISitecoreDataWrapper dataWrapper,
            IWebUtilWrapper webUtil,
            IImageSearchFactory msFactory,
            ISetAltTagsAllFactory satarFactory,
            IImageAnalysisService analysisService,
            IJobResultFactory jobResultFactory,
            ISetupInformationFactory setupFactory,
            ISetupService setupService,
            IIntelligentMediaSettings searchSettings,
            IFaceService faceService,
            IPersonGroupService personGroupService,
            IComputerVisionService computerVisionService,
            IMediaWrapper mediaWrapper)
        {
            Assert.IsNotNull(searchService, typeof(IIntelligentMediaSearchService));
            Assert.IsNotNull(dataWrapper, typeof(ISitecoreDataWrapper));
            Assert.IsNotNull(webUtil, typeof(IWebUtilWrapper));
            Assert.IsNotNull(msFactory, typeof(IImageSearchFactory));
            Assert.IsNotNull(satarFactory, typeof(ISetAltTagsAllFactory));
            Assert.IsNotNull(analysisService, typeof(IImageAnalysisService));
            Assert.IsNotNull(jobResultFactory, typeof(IJobResultFactory));
            Assert.IsNotNull(setupFactory, typeof(ISetupInformationFactory));
            Assert.IsNotNull(setupService, typeof(ISetupService));
            Assert.IsNotNull(searchSettings, typeof(IIntelligentMediaSettings));
            Assert.IsNotNull(faceService, typeof(IFaceService));
            Assert.IsNotNull(personGroupService, typeof(IPersonGroupService));
            Assert.IsNotNull(computerVisionService, typeof(IComputerVisionService));
            Assert.IsNotNull(mediaWrapper, typeof(IMediaWrapper));

            SearchService         = searchService;
            DataWrapper           = dataWrapper;
            WebUtil               = webUtil;
            MediaSearchFactory    = msFactory;
            SetAltTagsAllFactory  = satarFactory;
            AnalysisService       = analysisService;
            JobResultFactory      = jobResultFactory;
            SetupFactory          = setupFactory;
            SetupService          = setupService;
            SearchSettings        = searchSettings;
            FaceService           = faceService;
            PersonGroupService    = personGroupService;
            ComputerVisionService = computerVisionService;
            MediaWrapper          = mediaWrapper;
        }
        public void Setup()
        {
            SearchService           = Substitute.For <IIntelligentMediaSearchService>();
            DataWrapper             = Substitute.For <ISitecoreDataWrapper>();
            WebUtil                 = Substitute.For <IWebUtilWrapper>();
            MediaSearchFactory      = Substitute.For <IImageSearchFactory>();
            SetAltTagsAllFactory    = Substitute.For <ISetAltTagsAllFactory>();
            ImageAnalysisFactory    = Substitute.For <IImageAnalysisFactory>();
            ImageAnalysisService    = Substitute.For <IImageAnalysisService>();
            JobResultFactory        = Substitute.For <IJobResultFactory>();
            SetupInformationFactory = Substitute.For <ISetupInformationFactory>();
            Settings                = Substitute.For <IIntelligentMediaSettings>();
            SetupService            = Substitute.For <ISetupService>();

            User u = User.FromName("sitecore\\name", true);

            DataWrapper.ContextUser.Returns(u);
        }
 public SetupService(
     ISitecoreDataWrapper dataWrapper,
     IMicrosoftCognitiveServicesApiKeys mscsApiKeys,
     IIntelligentMediaSettings searchSettings,
     IImageAnalysisService analysisService,
     IIntelligentMediaSearchService searchService,
     IPublishWrapper publishWrapper,
     HttpContextBase context,
     ISCSDKSettings scsdkSettings,
     ILogWrapper logger)
 {
     DataWrapper     = dataWrapper;
     MSCSApiKeys     = mscsApiKeys;
     SearchSettings  = searchSettings;
     AnalysisService = analysisService;
     SearchService   = searchService;
     Context         = context;
     PublishWrapper  = publishWrapper;
     SCSDKSettings   = scsdkSettings;
     Logger          = logger;
 }
Exemplo n.º 13
0
        public async Task <IVisionResponse> MakeRequest(IIntelligentMediaSettings settings, byte[] image)
        {
            var s = settings.Settings <AzureCustomVisionSettings>();

            if (s.IsConfigured)
            {
                var predictionKey = s.PredictionKey;
                var region        = s.Region;
                var projectId     = s.ProjectId;
                var client        = new HttpClient();

                client.DefaultRequestHeaders.Add("Prediction-Key", predictionKey);

                var uri = $"https://{region}.api.cognitive.microsoft.com/customvision/v2.0/Prediction/{projectId}/image";

                using (var content = new ByteArrayContent(image))
                {
                    content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
                    return(await client.PostAsync(uri, content).ContinueWith(c => ConvertResponse(c, s.MinimumProbability)).Result);
                }
            }
            return(null);
        }
        public async Task <IVisionResponse> MakeRequest(IIntelligentMediaSettings settings, byte[] image)
        {
            var apiKey = settings.Settings <GoogleVisionSettings>().ApiKey;
            var client = new HttpClient();
            var uri    = $"https://vision.googleapis.com/v1/images:annotate?key={apiKey}";

            var imageData = Convert.ToBase64String(image);

            var request = new AnnotateImageRequests
            {
                Requests = new List <AnnotateImageRequest>
                {
                    new AnnotateImageRequest
                    {
                        Image = new ImageRequest {
                            Content = imageData
                        },
                        Features = new List <FeatureRequest>
                        {
                            new FeatureRequest {
                                Type = "LABEL_DETECTION"
                            },
                            new FeatureRequest {
                                Type = "FACE_DETECTION"
                            }
                        }
                    }
                }
            };
            var content = new StringContent(JsonConvert.SerializeObject(request, new JsonSerializerSettings
            {
                ContractResolver = new CamelCasePropertyNamesContractResolver()
            }), Encoding.UTF8, "application/json");

            return(await client.PostAsync(uri, content).ContinueWith(ConvertResponse).Result);
        }
 public IntelligentMediaService(IFileSystem fileSystem, IIntelligentMediaSettings settings)
 {
     _fileSystem = fileSystem;
     _intelligentMediaSettings = settings;
 }