public void OnSetCompareImageInfo(CompareImageInfo info)
        {
            if (info.Image != null)
            {
                Image          = info.Image;
                RegionImage    = info.RegionImage;
                ImageRectangle = info.ImageRectangle;
            }

            if (info != null)
            {
                if (info.ImageType == ImageType.Face)
                {
                    NPattern = 2;
                }
                else
                {
                    if (m_Pattern != CompareSearchPattern.Blob && m_Pattern != CompareSearchPattern.Texture)
                    {
                        NPattern = 0;
                    }
                }
                RaisePropertyChangedEvent("NPattern");
            }
        }
Example #2
0
        public void GoToCompareSearch()
        {
            Framework.Container.Instance.EvtAggregator.GetEvent <BOCOM.IVX.Framework.GotoCompareSearchEvent>().Publish("");
            CompareImageInfo info = new CompareImageInfo
            {
                Image          = null,
                RegionImage    = null,
                ImageRectangle = new Rectangle(),
                ImageType      = ImageType.Face,
            };

            Framework.Container.Instance.EvtAggregator.GetEvent <BOCOM.IVX.Framework.SetCompareImageInfoEvent>().Publish(info);
        }
        public bool Commit()
        {
            if (!Validate())
            {
                return(false);
            }

            // WinFormAppUtil.AppContainer.Instance.EvtAggregator.GetEvent<NavigateEvent>().Publish(UIFuncItemInfo.SEARCH);

            // WinFormAppUtil.AppContainer.Instance.EvtAggregator.GetEvent<GotoCompareSearchEvent>().Publish("");
            m_CompareImageInfo                = new CompareImageInfo();
            m_CompareImageInfo.Image          = CurrImage;
            m_CompareImageInfo.RegionImage    = GetCutImage();
            m_CompareImageInfo.ImageRectangle = ImageRectangle;
            m_CompareImageInfo.ImageType      = CurrImageType;
            // WinFormAppUtil.AppContainer.Instance.EvtAggregator.GetEvent<SetCompareImageInfoEvent>().Publish(info);

            return(true);
        }
        public bool Commit()
        {
            if (!Validate())
            {
                return(false);
            }

            Framework.Container.Instance.EvtAggregator.GetEvent <NavigateEvent>().Publish(UIFuncItemInfo.SEARCH);

            Framework.Container.Instance.EvtAggregator.GetEvent <GotoCompareSearchEvent>().Publish("");
            CompareImageInfo info = new CompareImageInfo();

            info.Image          = CurrImage;
            info.RegionImage    = GetRagionImage();
            info.ImageRectangle = ImageRectangle;
            info.ImageType      = CurrImageType;
            Framework.Container.Instance.EvtAggregator.GetEvent <SetCompareImageInfoEvent>().Publish(info);

            return(true);
        }
Example #5
0
        public void GotoCompareSearch()
        {
            bool isselected = Framework.Container.Instance.BriefVideoPlayService.IsSelectBriefMoveObj(m_player.HWnd);

            if (isselected)
            {
                VideoStatusInfo e = Framework.Container.Instance.BriefVideoPlayService.GetPlayStatus(m_player.HWnd);
                if (e.PlayState != VideoStatusType.E_PAUSE)
                {
                    PauseBriefVideo();
                }

                Image img = Framework.Container.Instance.BriefVideoPlayService.GetObjectPicture(m_player.HWnd);
                if (img == null)
                {
                    Framework.Container.Instance.InteractionService.ShowMessageBox("抓图失败", Framework.Environment.PROGRAM_NAME);
                    return;
                }

                else
                {
                    //FormLoadImage image = new FormLoadImage(img, new System.Drawing.Rectangle());
                    //image.ShowDialog();

                    // 需要复制一份Image
                    img = new Bitmap(img);
                    Framework.Container.Instance.EvtAggregator.GetEvent <GotoCompareSearchEvent>().Publish("");
                    CompareImageInfo info = new CompareImageInfo
                    {
                        Image          = img,
                        RegionImage    = img,
                        ImageRectangle = new Rectangle(new Point(), img.Size),
                        ImageType      = ImageType.Object,
                    };
                    Framework.Container.Instance.EvtAggregator.GetEvent <SetCompareImageInfoEvent>().Publish(info);
                }
            }
        }
        public void GoToCompareSearch()
        {
            SearchResultRecord record = SelectedSingleViewModel.SelectedResultRecord;
            Image     image           = record.ThumbNailPic;
            Image     fullimage       = record.OriginalPic;
            Rectangle rect            = record.ObjectRect;

            if (image == null)
            {
                try
                {
                    image = Framework.Container.Instance.VideoSearchService.RequestImage(m_searchSession.SearchId, record, false);
                    record.ThumbNailPic = image;
                }
                catch (SDKCallException ex)
                {
                    Common.SDKCallExceptionHandler.Handle(ex, "获取缩略图");
                }
            }

            if (fullimage == null)
            {
                try
                {
                    fullimage          = Framework.Container.Instance.VideoSearchService.RequestImage(m_searchSession.SearchId, record, true);
                    record.OriginalPic = fullimage;
                }
                catch (SDKCallException ex)
                {
                    Common.SDKCallExceptionHandler.Handle(ex, "获取原始图");
                }
                if (fullimage == null)
                {
                    MyLog4Net.Container.Instance.Log.Warn("GoToCompareSearch: No original image retrieved, cannot go to compare search");
                    return;
                }
            }

            DataModel.ImageType it = ImageType.Common;
            if (record.ObjectType == SearchResultObjectType.CAR)
            {
                it = ImageType.Car;
            }
            else if (record.ObjectType == SearchResultObjectType.FACE)
            {
                it = ImageType.Face;
            }
            else
            {
                it = ImageType.Object;
            }

            if (image != null)
            {
                // 需要复制一份Image
                image     = new Bitmap(image);
                fullimage = new Bitmap(fullimage);
                Framework.Container.Instance.EvtAggregator.GetEvent <GotoCompareSearchEvent>().Publish("");
                CompareImageInfo info = new CompareImageInfo
                {
                    Image          = fullimage,
                    RegionImage    = image,
                    ImageRectangle = rect,
                    ImageType      = it,
                };
                if (!Framework.Container.Instance.CacheMgr.HasItem(record))
                {
                    record.Clear();
                }
                Framework.Container.Instance.EvtAggregator.GetEvent <SetCompareImageInfoEvent>().Publish(info);
            }
        }