示例#1
0
        public PointSelect(IImageD_Provider image_provider, IPointsProvider points_provider)
        {
            IImageD_Provider provider = new ImageD_Providers.PlotPoints(image_provider, points_provider);

            image_provider.ImageDChanged  += img => { provider.ResetSelf(); provider.GetImageD(); };
            points_provider.PointsChanged += ps => { this.points = ps; provider.ResetSelf(); provider.GetImageD(); };
            provider.ImageDChanged        += img => { image_width = img.width; image_height = img.height; image.Source = img.ToImage().ToBitmapSource(); };
            InitializeViews();
            RegisterEvents();
        }
示例#2
0
        public HarrisCornerDetector(IImageD_Provider image_provider)
        {
            IMatrixProvider mp_hr     = new MatrixProviders.HarrisDetectorResponse(MatrixProviders.Filter.Red(image_provider));
            IMatrixProvider mp_hg     = new MatrixProviders.HarrisDetectorResponse(MatrixProviders.Filter.Green(image_provider));
            IMatrixProvider mp_hb     = new MatrixProviders.HarrisDetectorResponse(MatrixProviders.Filter.Blue(image_provider));
            IMatrixProvider mp_harris = new MatrixProviders.Add(mp_hr, mp_hg, mp_hb);
            IPointsProvider
                pp_harris_filtered = new PointsProviders.LocalMaximum(mp_harris, 10 * 3.0 / (255.0 * 255.0)),
                pp_harris_refined  = new PointsProviders.SubpixelRefinement(pp_harris_filtered, mp_harris);

            //pp_harris_eliminated = new PointsProviders.AdaptiveNonmaximalSuppression(pp_harris_refined, 500);
            this.points_provider = pp_harris_refined;
        }
 public AdaptiveNonmaximalSuppression(IPointsProvider provider, int max_points_to_keep)
 {
     this.provider           = provider;
     this.max_points_to_keep = max_points_to_keep;
 }
 public SubpixelRefinement(IPointsProvider points_provider, IMatrixProvider mat_provider)
 {
     this.points_provider = points_provider;
     this.mat_provider = mat_provider;
 }
示例#5
0
 public PlotPoints(IImageD_Provider imgd_provider, IPointsProvider points_provider, double exp = 1)
 {
     this.imgd_provider   = imgd_provider;
     this.points_provider = points_provider;
     this.exp             = exp;
 }