Example #1
0
def run_test():
    print 'starting ....'
    Y = read_image_data('data/observations.arff')    
    print 'image reading is finished...'
    print len(Y)

    #Allocate an n-by-k matrix, X, to hold intrinsic vectors
    X , K = list(), 2
    for _ in xrange(len(Y)):                        
        X.append([0.0*x for x in xrange(K)])
    
    w,h= 64,48
    us_mlp = UnsupervisedMLP([4, 12, 12, 3])
    us_mlp.set_image_dim(w, h)    
    us_mlp.train(Y, X, K)
    
    print 'USMLP training is finished'
    plot_intrinsic(X, w, h)
    
    print 'intrinsic plotting is done'
    #2nd MLP
    normalize(X)
    print 'reading action file'    
    A = read_action_data('data/actions.arff')
    
    print len(A), len(X)
    for i in xrange(len(A)-1):
        row = A[i]
        row.extend(X[i])
        row.extend(X[i+1])
    del A[-1]
    print 'training mlp with action '
    mlp = MLP([6,6,2])
    mlp.train1(A, K)
    print 'training done'

    #operate the crane now!
    #'a':[1.0,0.0,0.0,0.0],'c': [0.0,0.0,1.0,0.0]
    s = [1.0,0.0,0.0,0.0]             
    s.extend(X[0])    
    for i in range(5):
        predict=mlp.predict(s)
        s[4] = predict[0]
        s[5] = predict[1]                
#        image_generation(us_mlp, s, w, h, 'frame'+str(i))
    
    #up
    s[0]=0 ; s[2]=1.0        
    for i in range(5,10):
        predict=mlp.predict(s)
        s[4] = predict[0]
        s[5] = predict[1]                
    image_generation(us_mlp, s, w, h, 'frame'+str(i+1))