示例#1
0
def main():
    seq_length = 20
    class_limit = None
    image_shape = (80, 80, 3)
    data = DataSet(
        seq_length=seq_length,
        class_limit=class_limit,
        image_shape=image_shape
    )
    batch_size = 20
    concat = False


    path = 'D:\kerc\CODE_challenge'

    f = open('test_predict.csv' ,'w' ,newline='')
    writer = csv.writer(f)
    writer.writerow(['id' ,'label'])

    data_type = 'images'
    #data_type = 'features'

    N, X_test = data.get_all_sequences_in_memory_with_name('test', data_type)

    #X_test, y_test = data.get_all_sequences_in_memory('test', data_type)

    #y_test1 = np.argmax(y_test, axis=1)


    md = load_model('./data/checkpoints/weights.hdf5')

    optimizer = Adam(lr=1e-6)  # aggressively small learning rate
    crits = ['accuracy']
    md.compile(loss='categorical_crossentropy', optimizer=optimizer, metrics=crits)

    score =  md.predict(X_test)

    for i ,a in enumerate(N):
        print (a)
        print (score[i])
        print (np.argmax(score[i]))

        la = np.argmax(score[i])

        if la == 0:
            label = 'Angry'
        if la == 1:
            label = 'Disgust'
        if la == 2:
            label = 'Fear'
        if la == 3:
            label = 'Happy'
        if la == 4:
            label = 'Neutral'
        if la == 5:
            label = 'Sad'
        if la == 6:
            label = 'Surprise'


        writer = csv.writer(f)
        writer.writerow([a+'.mp4' ,label])
    f.close()