def pose(img_channels=1, img_rows=64, img_cols=64): input_img = Input(shape=(img_channels, img_rows, img_cols)) x = Convolution2D(32, 5, 5, init='normal', subsample=(1,1), activation='tanh')(input_img) x = MaxPooling2D((2,2))(x) x = Convolution2D(32, 5, 5, init='normal', subsample=(1,1), activation='tanh')(x) x = MaxPooling2D((2,2))(x) x = Convolution2D(32, 4, 4, init='normal', subsample=(1,1), activation='tanh')(x) x = MaxPooling2D((2,2))(x) x = Convolution2D(32, 3, 3, init='normal', subsample=(1,1), activation='tanh')(x) x = Convolution2D(128, 3, 3, init='normal', subsample=(1,1), activation='tanh')(x) x = Flatten()(x) x = Dense(128, init='normal', activation='tanh')(x) x = Dropout(0.5)(x) x = Dense(84, init='normal', activation='tanh')(x) x = Dropout(0.5)(x) x = Dense(3, activation='tanh')(x) model = Model(input=input_img, output=x) return model