Class BlockSorter

java.lang.Object
net.preibisch.mvrecon.process.cuda.BlockSorter

public class BlockSorter extends Object
We need to sort blocks in a way so consecutive ones are not influenced by their predecessors
Author:
spreibi
  • Constructor Details

    • BlockSorter

      public BlockSorter()
  • Method Details

    • sortBlocksBySmallestFootprint

      public static List<List<Block>> sortBlocksBySmallestFootprint(List<Block> blocks, net.imglib2.Interval psi, int minRequiredBlocks)
      Here are some assumptions: - the first block is in the top/left/upper... corner - the effective size of this block was used to compute the number of blocks - all blocks have the same dimensions, tightly stacked next to each other - only the effective blocksize of the last blocks in each dimension can be smaller
      Parameters:
      blocks - - a list of blocks according to the assumptions above
      psi - - the size of the underlying, blocked image
      minRequiredBlocks - - the minimum number of blocks in a batch to iterate effectively (if 1, memory usage will be maximal)
      Returns:
      - a list of block-lists. The N'th one can be written back once the N+1's is processed