-# -*- coding:utf-8 -*-
-
-from __future__ import absolute_import, print_function, division
-
-import tensorflow as tf
-
-'''
-all of these ops are derived from tenosrflow Object Detection API
-'''
-def indices_to_dense_vector(indices,
- size,
- indices_value=1.,
- default_value=0,
- dtype=tf.float32):
- """Creates dense vector with indices set to specific (the para "indices_value" ) and rest to zeros.
-
- This function exists because it is unclear if it is safe to use
- tf.sparse_to_dense(indices, [size], 1, validate_indices=False)
- with indices which are not ordered.
- This function accepts a dynamic size (e.g. tf.shape(tensor)[0])
-
- Args:
- indices: 1d Tensor with integer indices which are to be set to
- indices_values.
- size: scalar with size (integer) of output Tensor.
- indices_value: values of elements specified by indices in the output vector
- default_value: values of other elements in the output vector.
- dtype: data type.
-
- Returns:
- dense 1D Tensor of shape [size] with indices set to indices_values and the
- rest set to default_value.
- """
- size = tf.to_int32(size)
- zeros = tf.ones([size], dtype=dtype) * default_value
- values = tf.ones_like(indices, dtype=dtype) * indices_value
-
- return tf.dynamic_stitch([tf.range(size), tf.to_int32(indices)],
- [zeros, values])
-
-
-
-
-def test_plt():
- from PIL import Image
- import matplotlib.pyplot as plt
- import numpy as np
-
- a = np.random.rand(20, 30)
- print (a.shape)
- # plt.subplot()
- b = plt.imshow(a)
- plt.show()
-
-
-if __name__ == '__main__':
- test_plt()