def add_Training(clumpsFile, input_training, config):

    print('input_training', input_training)
    classesDict = dict()
    classesDict['landslide'] = [1, input_training]

    classesDict['no_landslide'] = [
        0, config['k_means_segmentation']['input']['training_labels']
    ]

    tmpPath = config['k_means_segmentation']['temps']['shapes']
    trainCol = 'class'
    trainColName = 'class_name'
    ratutils.populateClumpsWithClassTraining(clumpsFile, classesDict, tmpPath,
                                             trainCol, trainColName)
    return (clumpsFile)
Esempio n. 2
0
    # imageutils.popImageStats(outputMeanImg,True,0.,True)

    # populate clumps with training data
    print('Populating clumps with stats...')
    classesDict = dict()
    classesDict['Water'] = [1, waterMask]
    classesDict['Other'] = [2, otherMask]
    classesDict['VegWater'] = [3, vegwaterMask]

    tmpPath = './temp'

    classesIntCol = 'ClassInt'
    classesNameCol = 'ClassStr'

    ratutils.populateClumpsWithClassTraining(outputClumps, classesDict,
                                             tmpPath, classesIntCol,
                                             classesNameCol)

    # balance the training data
    rsgislib.classification.classratutils.balanceSampleTrainingRandom(
        outputClumps, classesIntCol, 'classesIntColBal', 50, 5000)
    classesIntCol = 'classesIntColBal'

    # classify the image ---------------------------

    # define the classifier
    classifier = ExtraTreesClassifier(n_estimators=500, n_jobs=-1)
    # classifier = RandomForestClassifier(n_estimators=100, max_features=3, oob_score=True, n_jobs=-1, verbose=0)
    # classifier = svm.SVC(kernel='rbf')

    # define the output colours