В Tensorflow 2.2, как мне взять вывод из tf.encode_jpeg()
(который является тензором строки типа) и преобразовать его в байты, которые будут приняты в качестве ввода tf.train.BytesList(value=[xxx])
? В конце концов, я хочу добавить это в TFRecord. Когда я пытаюсь запустить какой-нибудь код basi c (показанный ниже в ошибке), я получаю следующую ошибку:
--------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-25-0a8dec1885d5> in <module>
4 x = np.array([[[1],[2]],[[3],[4]]], dtype=np.uint8)
5 x = tf.io.encode_jpeg(x)
----> 6 x = tf.train.BytesList(value=[x])
7
TypeError: <tf.Tensor: shape=(), dtype=string,
numpy=b'\xff\xd8\xff\xe0\x00\x10JFIF\x00\x01\x01\x01\x01,\x01,\x
has type tensorflow.python.framework.ops.EagerTensor, but expected one of: bytes
Я уже пробовал использовать tf.compat.as_bytes
для преобразования тензора в байты, но это просто создает другую ошибку. PS Разве глупо sh комбинировать tf.encode_jpeg () и tf.train.BytesList ()?