Может кто-нибудь сказать мне, как использовать функцию tenorflow iou? - PullRequest
0 голосов
/ 21 июня 2019

Я хочу использовать функцию tenorsflow mean_iou и написать пример кода как следующий;но это выдает мне сообщение об ошибке

Попытка использовать неинициализированное значение mean_iou_5 / total_confusion_matrix [[{{node mean_iou_5 / total_confusion_matrix / read}}]]

Может кто-нибудь сказать мне, как использовать функцию mean_ioutensorflow?

Спасибо.

labels1 = tf.convert_to_tensor([[3,1,2],[2,3,1]],tf.int32)
pred = tf.convert_to_tensor ([[3,1,2],[2,3,1]],tf.int32)

test,conf_mat = tf.metrics.mean_iou(labels = labels1, predictions = pred, num_classes = 3)
init_op = tf.global_variables_initializer()

with tf.Session() as sess:
    init_op.run()
    print('test',sess.run(test))

1 Ответ

1 голос
/ 21 июня 2019

Взято из ответа StackOverflow здесь: https://stackoverflow.com/a/49326455/9820369

# y_pred and y_true are np.arrays of shape [1, size, channels]
with tf.Session() as sess:
    ypredT = tf.constant(np.argmax(y_pred, axis=-1))
    ytrueT = tf.constant(np.argmax(y_true, axis=-1))
    iou,conf_mat = tf.metrics.mean_iou(ytrueT, ypredT, num_classes=3)
    sess.run(tf.local_variables_initializer())
    sess.run([conf_mat])
    miou = sess.run([iou])
    print(miou)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...