def loss(bbox_widths, preds, points, batch_size=100):
"""loss function based on paper, returns a tensor of batch_size.
"""
diff = tf.squared_difference(preds, points)
dist = []
for i in range(5):
dist.append(tf.reshape(tf.reduce_sum(diff[:,2*i:2*i+2], 1), [batch_size, 1]))
dist = tf.reduce_sum(tf.sqrt(tf.concat(1, dist)), 1)
error = tf.div(dist, bbox_widths)
return error
评论列表
文章目录