コード例 #1
0
ファイル: KMeansClusterFactory.cs プロジェクト: gnavvy/ParaIF
 public KMeansClusterFactory(ClusterDataSourceSettings settings, IClusterMergeStrategy mergeStrategy, IntSize size)
 {
     this.settings      = settings;
     this.mergeStrategy = mergeStrategy;
     this.algorithm     = new KMeans(this.settings.ClusterCount, settings.DepthRange, size);
     this.value         = new ClusterCollection();
 }
コード例 #2
0
ファイル: KMeansClusterFactory.cs プロジェクト: gnavvy/ParaIF
 public KMeansClusterFactory(ClusterDataSourceSettings settings, IClusterMergeStrategy mergeStrategy, IntSize size)
 {
     this.settings = settings;
     this.mergeStrategy = mergeStrategy;
     this.algorithm = new KMeans(this.settings.ClusterCount, settings.DepthRange, size);
     this.value = new ClusterCollection();
 }
コード例 #3
0
ファイル: SDKDataSourceFactory.cs プロジェクト: gnavvy/ParaIF
 public IClusterDataSource CreateClusterDataSource(ClusterDataSourceSettings clusterDataSourceSettings)
 {
     var size = new IntSize(this.Adapter.DepthStreamWidth, this.Adapter.DepthStreamHeight);
     var clusterFactory = new KMeansClusterFactory(clusterDataSourceSettings, size);
     var filter = new ImageFrameDepthPointFilter(this.Adapter, size, clusterDataSourceSettings.MinimumDepthThreshold, clusterDataSourceSettings.MaximumDepthThreshold, clusterDataSourceSettings.LowerBorder);
     return new SDKClusterDataSource(this.Adapter, clusterFactory, filter);
 }
コード例 #4
0
        public static void SetToDefault(ClusterDataSourceSettings settings)
        {
            settings.MinimalPointsForClustering   = 50;
            settings.MinimalPointsForValidCluster = 10;
            settings.MaximalPointsForValidCluster = 1000;
            settings.PointModulo           = 5;
            settings.LowerBorder           = 75;
            settings.MinimumDepthThreshold = 500;
            settings.MaximumDepthThreshold = 800;
            settings.ClusterCount          = 2;

            settings.MergeMinimumDistanceToCluster        = 50;
            settings.MergeMaximumClusterCenterDistances   = 120;
            settings.MergeMaximumClusterCenterDistances2D = 100;

            settings.MaximumClusterDepth = 150;
        }
コード例 #5
0
ファイル: KMeansClusterFactory.cs プロジェクト: gnavvy/ParaIF
 public KMeansClusterFactory(ClusterDataSourceSettings settings, IntSize size)
     : this(settings, new DefaultMergeStrategy(settings), size)
 {
 }
コード例 #6
0
ファイル: KMeansClusterFactory.cs プロジェクト: gnavvy/ParaIF
 public KMeansClusterFactory(ClusterDataSourceSettings settings, IntSize size)
     : this(settings, new DefaultMergeStrategy(settings), size)
 {
 }
コード例 #7
0
ファイル: DefaultMergeStrategy.cs プロジェクト: gnavvy/ParaIF
 public DefaultMergeStrategy(ClusterDataSourceSettings settings)
 {
     this.settings = settings;
 }
コード例 #8
0
ファイル: SDKDataSourceFactory.cs プロジェクト: gnavvy/ParaIF
 public IShapeDataSource CreateShapeDataSource(ClusterDataSourceSettings clusterDataSourceSettings, ShapeDataSourceSettings shapeDataSourceSettings)
 {
     return new ClusterShapeDataSource(this.CreateClusterDataSource(clusterDataSourceSettings), shapeDataSourceSettings);
 }
コード例 #9
0
ファイル: DefaultMergeStrategy.cs プロジェクト: gnavvy/ParaIF
 public DefaultMergeStrategy(ClusterDataSourceSettings settings)
 {
     this.settings = settings;
 }
コード例 #10
0
        public static void SetToDefault(ClusterDataSourceSettings settings)
        {
            settings.MinimalPointsForClustering = 50;
            settings.MinimalPointsForValidCluster = 10;
            settings.MaximalPointsForValidCluster = 1000;
            settings.PointModulo = 5;
            settings.LowerBorder = 75;
            settings.MinimumDepthThreshold = 500;
            settings.MaximumDepthThreshold = 800;
            settings.ClusterCount = 2;

            settings.MergeMinimumDistanceToCluster = 50;
            settings.MergeMaximumClusterCenterDistances = 120;
            settings.MergeMaximumClusterCenterDistances2D = 100;

            settings.MaximumClusterDepth = 150;
        }