infomat.algorithms.labeling
Class SizeReducer

java.lang.Object
  extended by infomat.algorithms.labeling.SizeReducer

public class SizeReducer
extends java.lang.Object

Reduces IObjectGroups and IObjectGroupings compared to an other. The class can reduce both in order of the IObject:s in each IObjectGroup or in random order.


Constructor Summary
SizeReducer()
           
 
Method Summary
static IObjectGrouping reduceGroupingToSizeOfOtherGroupingInOrder(IObjectGrouping ioging, IObjectGrouping redIOGING, IMatrix matrix)
          Note: does not handle missing zero-sized groups!!!
static IObjectGrouping reduceGroupingToSizeOfOtherGroupingRandomly(IObjectGrouping ioging, IObjectGrouping redIOGING, IMatrix matrix)
          Note: does not handle missing zero-sized groups!!!
static IObjectGroup reduceGroupToSizeOfOtherGroupInOrder(IObjectGroup iog, IObjectGroup redIOG)
          Makes a new IObjectGroup that consists of the top IObject:s of "iog".
static IObjectGroup reduceGroupToSizeOfOtherGroupRandomly(IObjectGroup iog, IObjectGroup redIOG)
          Makes a new IObjectGroup that consists of the top IObject:s of "iog".
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SizeReducer

public SizeReducer()
Method Detail

reduceGroupingToSizeOfOtherGroupingInOrder

public static IObjectGrouping reduceGroupingToSizeOfOtherGroupingInOrder(IObjectGrouping ioging,
                                                                         IObjectGrouping redIOGING,
                                                                         IMatrix matrix)
Note: does not handle missing zero-sized groups!!!


reduceGroupToSizeOfOtherGroupInOrder

public static IObjectGroup reduceGroupToSizeOfOtherGroupInOrder(IObjectGroup iog,
                                                                IObjectGroup redIOG)
Makes a new IObjectGroup that consists of the top IObject:s of "iog". As many as there are in the "redIOG". Currently produces error if the group to reduce is smaller than the group with the proposed size.


reduceGroupingToSizeOfOtherGroupingRandomly

public static IObjectGrouping reduceGroupingToSizeOfOtherGroupingRandomly(IObjectGrouping ioging,
                                                                          IObjectGrouping redIOGING,
                                                                          IMatrix matrix)
Note: does not handle missing zero-sized groups!!!


reduceGroupToSizeOfOtherGroupRandomly

public static IObjectGroup reduceGroupToSizeOfOtherGroupRandomly(IObjectGroup iog,
                                                                 IObjectGroup redIOG)
Makes a new IObjectGroup that consists of the top IObject:s of "iog". As many as there are in the "redIOG". Currently produces error if the group to reduce is smaller than the group with the proposed size.