`tensorflow_graphics.shape.check_static(...)` throwing error in TF2
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 42/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- python, tensorflow
Línea de trabajo
Comienza reproduciendo el fallo de TensorFlow 2 en graph-mode con la capa RandomRot indicada y el uso de Dataset. Lee tensorflow_graphics/geometry/transformation/rotation_matrix_3d.py alrededor de from_euler y tensorflow_graphics/util/shape.py alrededor de check_static y _get_dim; se considera terminado cuando la misma ruta de compilación del grafo ya no provoque el AttributeError indicado.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I was writing a data augmentation layer for a PointNet implementation and ran into what appears to be a bug in tensorflow_graphics.shape.check_static(...), as seen on this line.
Offending layer:
class RandomRot(Layer):
def __init__(self):
super(RandomRot, self).__init__()
def build(self, input_shape):
self.s = tf.constant([input_shape[-1],])
def call(self, inputs, training=None):
if not training: return inputs
r = tf.random.uniform(
shape=self.s,
minval=0,
maxval=6.28,
)
return tf.linalg.matmul(inputs,from_euler(r))
Error message:
AttributeError: in user code:
<ipython-input-135-d11754641da6>:81 call *
self.x = self.r(self.x,training)
<ipython-input-130-07bfe7ac5ab9>:25 call *
return tf.linalg.matmul(inputs,from_euler(r))
/usr/local/lib/python3.6/dist-packages/tensorflow_graphics/geometry/transformation/rotation_matrix_3d.py:201 from_euler *
shape.check_static(
/usr/local/lib/python3.6/dist-packages/tensorflow_graphics/util/shape.py:206 check_static *
if _get_dim(tensor, axis) != value:
/usr/local/lib/python3.6/dist-packages/tensorflow_graphics/util/shape.py:135 _get_dim *
return tensor.shape[axis].value
AttributeError: 'int' object has no attribute 'value'
It appears that check_static is expecting each element from .shape to be a tensor, but in TF2 they're just ints. If I comment out check_static from from_euler, the function works fine. Strangely enough, it seems to work fine for tensors in eager execution, and only seems to throw errors when using Dataset objects with graph compilation.
- Lenguaje dominante
- Python
- Estrellas
- 2.8k
- Forks
- 374
- Merge medio
- 5 d 9 h
- PR fusionados (30 d)
- 1
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de tensorflow/graphics
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 62/100
tensorflow/graphics#468 ·
-
Missing TFRecord Generation Script/Instructions for projects/points_to_3Dobjects (CVPR 2021)Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
tensorflow/graphics#5337 ·
-
Attribute Error in the models.pyAbierto
Dificultad 3/5 1-2 días Aptitud para principiantes 25/100
tensorflow/graphics#730 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
tensorflow/graphics#729 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 10/100
tensorflow/graphics#724 ·
Todos los issues de tensorflow/graphics
Issues similares
-
bug drawing-tools
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
cofade/open-garden-planner#827 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
bug documentation good first issue help wanted testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 88/100
hololinked-dev/hololinked#213 ·
-
Show evidence time and supersede warnings in the memory inspectorPosiblemente ocupada @Sinchanak-212 la tomó hoy. Abiertoarea: ux good first issue priority: medium
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100