code: public void process( GrayS32 pixelToRegion ,
  						 GrowQueue_I32 regionMemberCount,
  						 FastQueue<float[]> regionColor ,
  						 FastQueue<Point2D_I32> modeLocation ) {
  		stopRequested = false;
  		initializeMerge(regionMemberCount.size);
  
  		markMergeRegions(regionColor,modeLocation,pixelToRegion);
  		if( stopRequested )
  			return;
  
  		performMerge(pixelToRegion, regionMemberCount);
  	}
docs: Merges together similar regions which are in close proximity to each other.  After merging
  most of the input data structures are modified to take in account the  changes.
  
  @param pixelToRegion (Input/output) Image that specifies the segmentation.  Modified.
  @param regionMemberCount (Input/output) Number of pixels in each region. Modified.
  @param regionColor (Input/output) Color of each region. Modified.
  @param modeLocation (Input) Location of each region's mode. Not modified.