/// <summary>Constructor</summary>
        /// <param name="mAss">MatchingAssistant that created this instance</param>
        /// <param name="mPars">Current set of matching parameters</param>
        public MatchingOptStatistics(MatchingAssistant mAss, MatchingParam mPars)
        {
            mAssistant = mAss;
            mParams = mPars;
            NotifyStatisticsObserver = new StatisticsDelegate(dummy);

            reset();
            tImageCount = mAssistant.TestImages.Count;
        }
        /// <summary>Constructor</summary>
        /// <param name="mAss">MatchingAssistant that created this instance</param>
        /// <param name="mPars">Current set of matching parameters</param>
        public MatchingOptStatistics(MatchingAssistant mAss, MatchingParam mPars)
        {
            mAssistant = mAss;
            mParams    = mPars;
            NotifyStatisticsObserver = new StatisticsDelegate(dummy);

            reset();
            tImageCount = mAssistant.TestImages.Count;
        }
예제 #3
0
        /// <summary>Constructor</summary>
        /// <param name="mAss">MatchingAssistant that created this instance</param>
        /// <param name="mPars">Current set of matching parameters</param>
        public MatchingOptSpeed(MatchingAssistant mAss, MatchingParam mPars)
        {
            mAssistant = mAss;
            mParams    = mPars;
            NotifyStatisticsObserver = new StatisticsDelegate(dummy);

            mScoreMinStep   = -10;
            mGreedinessStep = 10;
            reset();

            tImageCount = mAssistant.TestImages.Count;
        }
        /// <summary>Constructor</summary>
        /// <param name="mAss">MatchingAssistant that created this instance</param>
        /// <param name="mPars">Current set of matching parameters</param>
        public MatchingOptSpeed(MatchingAssistant mAss, MatchingParam mPars)
        {
            mAssistant	= mAss;
            mParams		= mPars;
            NotifyStatisticsObserver = new StatisticsDelegate(dummy);

            mScoreMinStep	= -10;
            mGreedinessStep	= 10;
            reset();

            tImageCount		= mAssistant.TestImages.Count;
        }
예제 #5
0
        /// <summary>
        /// In the beginning, some initialization tasks are performed. 
        /// The control instances, like ROIController and WindowController,
        /// are initialized and registered with each other. Also, the
        /// delegates of the models are linked to update methods
        /// to get notified about changes.
        /// </summary>
        public MatchingForm()
        {
            InitializeComponent();

            mView = new HWndCtrl(viewPort);

            createModelWindowMode = Color.RoyalBlue;
            trainModelWindowMode  = Color.Chartreuse;

            roiController = new ROIController();
            mView.useROIController(roiController);

            roiController.setROISign(ROIController.MODE_ROI_POS);

            mView.NotifyIconObserver = new IconicDelegate(UpdateViewData);
            roiController.NotifyRCObserver = new IconicDelegate(UpdateViewData);

            mView.setViewState(HWndCtrl.MODE_VIEW_NONE);

            locked = true;
            parameterSet = new MatchingParam();
            Init(parameterSet);
            locked = false;

            mAssistant = new MatchingAssistant(parameterSet);
            mAssistant.NotifyIconObserver  = new MatchingDelegate(UpdateMatching);
            mAssistant.NotifyParamObserver = new AutoParamDelegate(UpdateButton);

            speedOptHandler		= new MatchingOptSpeed(mAssistant, parameterSet);
            speedOptHandler.NotifyStatisticsObserver = new  StatisticsDelegate(UpdateStatisticsData);

            inspectOptHandler	= new MatchingOptStatistics(mAssistant, parameterSet);
            inspectOptHandler.NotifyStatisticsObserver = new  StatisticsDelegate(UpdateStatisticsData);
        }