Пример #1
0
    if not os.path.exists(imageDir):
        continue
    numfiles = len([name for name in os.listdir(imageDir)])
    if numfiles >= 2:
        fftOutputMosaic = "{0}/{1}.mosaic".format(testRoot, outputStem)
        print("Calling fast fourier transform...")
        print("   {0}".format(fftOutputMosaic))

        try:
            seg3d2.fftfilter(
                layerid=layerid,
                shrink_factor=shrinkFactor,
                overlap_min=overlapMin,
                overlap_max=overlapMax,
                tile_strategy=tileStrategy,
                pixel_spacing=pixelSpacing,
                directory=imageDir,
                min_peak=minPeak,
                peak_threshold=peakThreshold,
                output_mosaic=fftOutputMosaic,
                iterations_per_level=pyramidIterations,
                pyramid_levels=pyramidLevels,
            )

            # refineGridMosaic="{0}/{1}g.mosaic".format(testRoot, outputStem)
            # print("Calling refine grid filter...")
            # print("   {0}".format(refineGridMosaic))
            # print(refineGridMosaic)
            # seg3d2.refinegridfilter(layerid=layerid, shrink_factor=shrinkFactor,
            #    pixel_spacing=pixelSpacing, iterations=refineGridIterations,
            #    input_mosaic=fftOutputMosaic, output_mosaic=refineGridMosaic,
            #    directory=imageDir, cell_size=cellSize)
Пример #2
0
for index in range(first, last + 1):  # python loops over range first, last-1
    outputName = "{0}_{1}".format(datasetName, index)

    # build file names in order
    files = []
    for suffix in fileSuffixList:
        filename = "%s%03d%s" % (filePrefix, index, suffix)
        files.append(filename)

    print("Tiling {0}".format(files))

    fftMosaic = "{0}/{1}{2}".format(fftDir, outputName, mosaicExtension)
    seg3d2.fftfilter(layerid=layerid,
                     shrink_factor=shrinkFactor,
                     overlap_min=overlapMin,
                     overlap_max=overlapMax,
                     images=files,
                     directory=tilesDir,
                     output_mosaic=fftMosaic)

    files = []

for index in range(first, last):
    nextIndex = index + 1
    print('slice to slice registration: index={0}, nextIndex={1}'.format(
        index, nextIndex))
    outputName = "{0}_{1}".format(datasetName, index)
    nextOutputName = "{0}_{1}".format(datasetName, nextIndex)

    mosaicFixed = "{0}/{1}{2}".format(fftDir, outputName, mosaicExtension)
    if not os.path.isfile(mosaicFixed):
Пример #3
0
testRoot2 = '{0}/test_vol'.format(testRoot)
outputVolumeDir = '{0}/vol'.format(testRoot2)
imageDirList = []
outputMosaicList = []

for index in range(firstIndex, mosaicLastIndex):
    outputStem = 'mv{0}'.format(index)
    imageDir = '{0}/{1}'.format(testRoot, index)
    imageDirList.append(imageDir)
    testOutputRoot = '{0}/test'.format(imageDir)
    fftOutputMosaic = '{0}/fft/{1}.mosaic'.format(testOutputRoot, outputStem)
    print(fftOutputMosaic)
    outputMosaicList.append(fftOutputMosaic)

    seg3d2.fftfilter(layerid=layerid,
                     directory=imageDir,
                     output_mosaic=fftOutputMosaic,
                     shrink_factor=shrinkFactor)

    assembleOutputImage = '{0}/results/{1}{2}'.format(testOutputRoot,
                                                      outputStem,
                                                      outputImageExtension)
    print(assembleOutputImage)

    seg3d2.assemblefilter(layerid=layerid,
                          input_mosaic=fftOutputMosaic,
                          output_image=assembleOutputImage,
                          directory=imageDir,
                          shrink_factor=shrinkFactor,
                          feathering="blend")

fixedIndex = 1
Пример #4
0
    outputName = "{0}_{1}".format(datasetName, index)

    files = []
    for suffix in fileSuffixList:
        filename = "%s%03d%s" % (filePrefix, index, suffix)
        files.append(filename)

    print(files)

    fftMosaic = "{0}/{1}{2}".format(fftDir, outputName, mosaicExtension)
    seg3d2.fftfilter(layerid=layerid,
                     tile_strategy='top_left_book',
                     min_peak=minPeak,
                     peak_threshold=peakThreshold,
                     shrink_factor=shrinkFactor,
                     overlap_min=overlapMin,
                     overlap_max=overlapMax,
                     pixel_spacing=pixelSpacing,
                     images=files,
                     directory=testRoot,
                     output_mosaic=fftMosaic)
    #iterations_per_level=pyramidIterations, pyramid_levels=pyramidLevels

    #refineGridMosaic="{0}/{1}{2}".format(refineGridDir, outputName, mosaicExtension)
    #seg3d2.refinegridfilter(layerid=layerid, shrink_factor=shrinkFactor, pixel_spacing=pixelSpacing, iterations=refineGridIterations, input_mosaic=fftMosaic, output_mosaic=refineGridMosaic, directory=testRoot, cell_size=cellSize)

    # in case refine grid failed:
    #if os.path.getsize(refineGridMosaic) == 0:
    #  print("Refine grid failed for {0}. Using fft mosaic {1} instead.".format(refineGridMosaic, fftMosaic))
    refineGridMosaic = fftMosaic
Пример #5
0
        outputImage = "{0}/{1}".format(enhancedDir, f)
        seg3d2.clahefilter(layerid=layerid,
                           shrink_factor=claheShrinkFactor,
                           input_image=inputImage,
                           output_image=outputImage,
                           window_x=window[0],
                           window_y=window[1])

    outputName = "{0}_{1}".format(datasetName, index)

    fftMosaic = "{0}/{1}{2}".format(fftDir, outputName, mosaicExtension)
    seg3d2.fftfilter(layerid=layerid,
                     shrink_factor=shrinkFactor,
                     overlap_min=overlapMin,
                     overlap_max=overlapMax,
                     pixel_spacing=pixelSpacing,
                     images=files,
                     directory=enhancedDir,
                     output_mosaic=fftMosaic,
                     iterations_per_level=pyramidIterations,
                     pyramid_levels=pyramidLevels)

    imageOutputFile = "{0}/{1}{2}".format(resultsDir, outputName,
                                          outputImageExtension)
    seg3d2.assemblefilter(layerid=layerid,
                          shrink_factor=shrinkFactor,
                          pixel_spacing=pixelSpacing,
                          input_mosaic=fftMosaic,
                          output_image=imageOutputFile,
                          directory=testRoot)

    files = []
Пример #6
0
layerid = "<none>"
testRoot2 = "{0}/test_vol".format(testRoot)
outputVolumeDir = "{0}/vol".format(testRoot2)
imageDirList = []
outputMosaicList = []

for index in range(firstIndex, mosaicLastIndex):
    outputStem = "mv{0}".format(index)
    imageDir = "{0}/{1}".format(testRoot, index)
    imageDirList.append(imageDir)
    testOutputRoot = "{0}/test".format(imageDir)
    fftOutputMosaic = "{0}/fft/{1}.mosaic".format(testOutputRoot, outputStem)
    print(fftOutputMosaic)
    outputMosaicList.append(fftOutputMosaic)

    seg3d2.fftfilter(layerid=layerid, directory=imageDir, output_mosaic=fftOutputMosaic, shrink_factor=shrinkFactor)

    assembleOutputImage = "{0}/results/{1}{2}".format(testOutputRoot, outputStem, outputImageExtension)
    print(assembleOutputImage)

    seg3d2.assemblefilter(
        layerid=layerid,
        input_mosaic=fftOutputMosaic,
        output_image=assembleOutputImage,
        directory=imageDir,
        shrink_factor=shrinkFactor,
        feathering="blend",
    )

fixedIndex = 1
inputFixed = outputMosaicList[0]
Пример #7
0
for index in range(rangeMin, mosaicRangeMax):
  for suffix in fileSuffixList:
    filename = "%s%03d%s" % (filePrefix, index, suffix)
    files.append(filename)

  print(files)

  for f in files:
    inputImage = "{0}/{1}".format(testRoot, f)
    outputImage = "{0}/{1}".format(enhancedDir, f)
    seg3d2.clahefilter(layerid=layerid, shrink_factor=claheShrinkFactor, input_image=inputImage, output_image=outputImage, window_x=window[0], window_y=window[1])

  outputName = "{0}_{1}".format(datasetName, index)

  fftMosaic = "{0}/{1}{2}".format(fftDir, outputName, mosaicExtension)
  seg3d2.fftfilter(layerid=layerid, shrink_factor=shrinkFactor, overlap_min=overlapMin, overlap_max=overlapMax, pixel_spacing=pixelSpacing, images=files, directory=enhancedDir, output_mosaic=fftMosaic, iterations_per_level=pyramidIterations, pyramid_levels=pyramidLevels)

  imageOutputFile = "{0}/{1}{2}".format(resultsDir, outputName, outputImageExtension)
  seg3d2.assemblefilter(layerid=layerid, shrink_factor=shrinkFactor, pixel_spacing=pixelSpacing, input_mosaic=fftMosaic, output_image=imageOutputFile, directory=testRoot) 

  files = []

for index in range(rangeMin, stosRangeMax):
  next_index = index + 1
  print('index={0}, next_index={1}'.format(index, next_index))
  outputName = "{0}_{1}".format(datasetName, index)
  nextOutputName = "{0}_{1}".format(datasetName, next_index)

  mosaicFixed = "{0}/{1}{2}".format(fftDir, outputName, mosaicExtension)
  if not os.path.isfile(mosaicFixed):
      break
Пример #8
0
    ############################################
    if not os.path.exists(imageDir):
        continue
    numfiles = len([name for name in os.listdir(imageDir)])
    if numfiles >= 2:
        fftOutputMosaic = '{0}/{1}.mosaic'.format(testRoot, outputStem)
        print("Calling fast fourier transform...")
        print("   {0}".format(fftOutputMosaic))

        try:
            seg3d2.fftfilter(layerid=layerid,
                             shrink_factor=shrinkFactor,
                             overlap_min=overlapMin,
                             overlap_max=overlapMax,
                             tile_strategy=tileStrategy,
                             pixel_spacing=pixelSpacing,
                             directory=imageDir,
                             min_peak=minPeak,
                             peak_threshold=peakThreshold,
                             output_mosaic=fftOutputMosaic,
                             iterations_per_level=pyramidIterations,
                             pyramid_levels=pyramidLevels)

            #refineGridMosaic="{0}/{1}g.mosaic".format(testRoot, outputStem)
            #print("Calling refine grid filter...")
            #print("   {0}".format(refineGridMosaic))
            #print(refineGridMosaic)
            #seg3d2.refinegridfilter(layerid=layerid, shrink_factor=shrinkFactor,
            #    pixel_spacing=pixelSpacing, iterations=refineGridIterations,
            #    input_mosaic=fftOutputMosaic, output_mosaic=refineGridMosaic,
            #    directory=imageDir, cell_size=cellSize)
Пример #9
0
  outputName = "{0}_{1}".format(datasetName, index)

  files = []
  for suffix in fileSuffixList:
    filename = "%s%03d%s" % (filePrefix, index, suffix)
    files.append(filename)

  print(files)

  fftMosaic="{0}/{1}{2}".format(fftDir, outputName, mosaicExtension)
  seg3d2.fftfilter(layerid=layerid,
                   tile_strategy='top_left_book',
                   min_peak=minPeak,
                   peak_threshold=peakThreshold,
                   shrink_factor=shrinkFactor,
                   overlap_min=overlapMin,
                   overlap_max=overlapMax,
                   pixel_spacing=pixelSpacing,
                   images=files,
                   directory=testRoot,
                   output_mosaic=fftMosaic)
  #iterations_per_level=pyramidIterations, pyramid_levels=pyramidLevels

  #refineGridMosaic="{0}/{1}{2}".format(refineGridDir, outputName, mosaicExtension)
  #seg3d2.refinegridfilter(layerid=layerid, shrink_factor=shrinkFactor, pixel_spacing=pixelSpacing, iterations=refineGridIterations, input_mosaic=fftMosaic, output_mosaic=refineGridMosaic, directory=testRoot, cell_size=cellSize)


  # in case refine grid failed:
  #if os.path.getsize(refineGridMosaic) == 0:
  #  print("Refine grid failed for {0}. Using fft mosaic {1} instead.".format(refineGridMosaic, fftMosaic))
  refineGridMosaic = fftMosaic
Пример #10
0
first = 39
last = 247 

for index in range(first, last+1): # python loops over range first, last-1
  outputName = "{0}_{1}".format(datasetName, index)

  # build file names in order
  files = []
  for suffix in fileSuffixList:
    filename = "%s%03d%s" % (filePrefix, index, suffix)
    files.append(filename)

  print("Tiling {0}".format(files))

  fftMosaic="{0}/{1}{2}".format(fftDir, outputName, mosaicExtension)
  seg3d2.fftfilter(layerid=layerid, shrink_factor=shrinkFactor, overlap_min=overlapMin, overlap_max=overlapMax, images=files, directory=tilesDir, output_mosaic=fftMosaic)

  files = []

for index in range(first, last):
  nextIndex = index + 1
  print('slice to slice registration: index={0}, nextIndex={1}'.format(index, nextIndex))
  outputName = "{0}_{1}".format(datasetName, index)
  nextOutputName = "{0}_{1}".format(datasetName, nextIndex)

  mosaicFixed="{0}/{1}{2}".format(fftDir, outputName, mosaicExtension)
  if not os.path.isfile(mosaicFixed):
      break
  mosaicMoving="{0}/{1}{2}".format(fftDir, nextOutputName, mosaicExtension)
  if not os.path.isfile(mosaicMoving):
      break