コード例 #1
0
        public virtual ICognitiveImageAnalysis Create(ICognitiveImageSearchResult result)
        {
            var analysis = Create();

            if (result == null)
            {
                return(analysis);
            }

            analysis.EmotionAnalysis = result.EmotionAnalysis;
            analysis.FacialAnalysis  = result.FacialAnalysis;
            analysis.TextAnalysis    = result.TextAnalysis;
            analysis.VisionAnalysis  = result.VisionAnalysis;

            Item i = DataWrapper.GetItemByUri(result?.UniqueId ?? string.Empty);

            if (i == null)
            {
                return(analysis);
            }

            analysis.ImageHeight = GetNumber(i, "height", 0);
            analysis.ImageWidth  = GetNumber(i, "width", 0);
            analysis.ImageUrl    = $"/sitecore/shell/Applications/-/media/{i.ID.Guid:N}.ashx";

            return(analysis);
        }
コード例 #2
0
        public virtual IImageDescription GetImageDescription(MediaItem m, string language)
        {
            ICognitiveImageSearchResult csr = GetCognitiveSearchResult(m.ID.ToString(), language, m.Database.Name);

            Description d = csr
                            ?.VisionAnalysis
                            ?.Description;

            if (d == null)
            {
                return(null);
            }

            return(ImageDescriptionFactory.Create(d, m.Alt, m.ID.ToString(), m.Database.Name, language));
        }
コード例 #3
0
        public virtual ICognitiveImageAnalysis GetImageAnalysis(string id, string language, string db)
        {
            ICognitiveImageSearchResult csr = GetCognitiveSearchResult(id, language, db);

            return(ImageAnalysisFactory.Create(csr));
        }
コード例 #4
0
        public virtual ICognitiveImageSearchJsonResult CreateMediaSearchJsonResult(ISitecoreDataWrapper dataWrapper, ICognitiveImageSearchResult searchResult)
        {
            var obj = Provider.GetService <ICognitiveImageSearchJsonResult>();

            MediaItem m = dataWrapper.GetItemByUri(searchResult.UniqueId);

            try
            {
                obj.Url = $"/sitecore/shell/-/media/{m.ID.Guid:N}.ashx";
            }
            catch (Exception ex)
            {
                obj.Url = string.Empty;
            }
            try
            {
                obj.Alt = m.Alt;
            }
            catch (Exception ex)
            {
                obj.Alt = string.Empty;
            }

            return(obj);
        }
コード例 #5
0
        public ActionResult ImageAnalysis(string id, string language, string db)
        {
            ICognitiveImageSearchResult csr = SearchService.GetCognitiveSearchResult(id, language, db);

            return(View("ImageAnalysis", ImageAnalysisFactory.Create(csr)));
        }