def performStage3SubsetsSegmentation(self, subsetImgsMaskedDIR, subsetSegsDIR, tmpDIR, subImgBaseName, segStatsInfo, minPxlsVal, distThresVal, bandsVal): imgTiles = glob.glob( os.path.join(subsetImgsMaskedDIR, subImgBaseName + "*_masked.kea")) for imgTile in imgTiles: baseName = os.path.splitext(os.path.basename(imgTile))[0] clumpsFile = os.path.join(subsetSegsDIR, baseName + '_segs.kea') kMeansCentres, imgStretchStats = self.findSegStatsFiles( imgTile, segStatsInfo) segutils.runShepherdSegmentationPreCalcdStats( imgTile, clumpsFile, kMeansCentres, imgStretchStats, outputMeanImg=None, tmpath=os.path.join(tmpDIR, baseName + '_segstemp'), gdalformat='KEA', noStats=False, noStretch=False, noDelete=False, minPxls=minPxlsVal, distThres=distThresVal, bands=bandsVal, processInMem=False)
def performStage2TilesSegmentation(self, tilesImgDIR, tilesMaskedDIR, tilesSegsDIR, tilesSegBordersDIR, tmpDIR, tilesBase, s1BordersImage, segStatsInfo, minPxlsVal, distThresVal, bandsVal): rsgisUtils = rsgislib.RSGISPyUtils() imgTiles = glob.glob(os.path.join(tilesImgDIR, tilesBase + "*.kea")) for imgTile in imgTiles: baseName = os.path.splitext(os.path.basename(imgTile))[0] maskedFile = os.path.join(tilesMaskedDIR, baseName + '_masked.kea') dataType = rsgisUtils.getRSGISLibDataTypeFromImg(imgTile) imageutils.maskImage(imgTile, s1BordersImage, maskedFile, 'KEA', dataType, 0, 0) imgTiles = glob.glob( os.path.join(tilesMaskedDIR, tilesBase + "*_masked.kea")) for imgTile in imgTiles: baseName = os.path.splitext(os.path.basename(imgTile))[0] clumpsFile = os.path.join(tilesSegsDIR, baseName + '_segs.kea') kMeansCentres, imgStretchStats = self.findSegStatsFiles( imgTile, segStatsInfo) segutils.runShepherdSegmentationPreCalcdStats( imgTile, clumpsFile, kMeansCentres, imgStretchStats, outputMeanImg=None, tmpath=os.path.join(tmpDIR, baseName + '_segstemp'), gdalformat='KEA', noStats=False, noStretch=False, noDelete=False, minPxls=minPxlsVal, distThres=distThresVal, bands=bandsVal, processInMem=False) segTiles = glob.glob( os.path.join(tilesSegsDIR, tilesBase + "*_segs.kea")) for segTile in segTiles: baseName = os.path.splitext(os.path.basename(segTile))[0] borderMaskFile = os.path.join(tilesSegBordersDIR, baseName + '_segsborder.kea') rastergis.defineBorderClumps(segTile, 'BoundaryClumps') rastergis.exportCol2GDALImage(segTile, borderMaskFile, 'KEA', rsgislib.TYPE_8UINT, 'BoundaryClumps')
def stage3threadedTiledImgSeg(imgTile): baseName = os.path.splitext(os.path.basename(imgTile))[0] clumpsFile = os.path.join(subsetSegsDIR, baseName + '_segs.kea') kMeansCentres, imgStretchStats = self.findSegStatsFiles( imgTile, segStatsInfo) segutils.runShepherdSegmentationPreCalcdStats( imgTile, clumpsFile, kMeansCentres, imgStretchStats, outputMeanImg=None, tmpath=os.path.join(tmpDIR, baseName + '_segstemp'), gdalformat='KEA', noStats=False, noStretch=False, noDelete=False, minPxls=minPxlsVal, distThres=distThresVal, bands=bandsVal, processInMem=False)