yiranran/Audio-driven-TalkingFace-HeadPose

module has no attribute 'rasterize_triangles'

DaddyWesker opened this issue · 3 comments

Hello and thanks for your code.

I've successfully installed and fine-tuned this model on my own data. Unfortunately, i've met some problems trying to run
python test_personalized.py [audio] [person_id] [gpu_id]
On the line
os.system('CUDA_VISIBLE_DEVICES=%d python render_for_view2.py %s %s %s %d %d %s'%(gpu_id,coeff_dir,coef_path1,save_dir, relativeframe,pingyi,tex2_path))
I've got error
AttributeError: module '012ff3e36e3c24aefc4a3a7b68a03fedd1e7a7e1' has no attribute 'rasterize_triangles'

at the line

barycentric_coords, triangle_ids, _ = (
        rasterize_triangles_module.rasterize_triangles(
            clip_space_vertices[b, :, :], triangles, image_width,
            image_height))

In the Audio/code/mesh_renderer/rasterize_triangles.py file. So, apparently, rasterize_triangles_module doesn't have attribute rasterize_triangles for some reason, though I've changed loading line to

rasterize_triangles_module = tf.load_op_library(
    os.path.join('/home/daddywesker/DeepFake/Audio-driven-TalkingFace-HeadPose/Deep3DFaceReconstruction/'
                 'tf_mesh_renderer/mesh_renderer/kernels/rasterize_triangles_kernel.so'))

Any advises?

I have re-checked if cuda kernel was built successfully and haven't been able to do this due to error while running runtests.sh

ERROR: testFullRenderGradientComputation (__main__.RenderTest)
RenderTest.testFullRenderGradientComputation
Verifies the Jacobian matrix for the entire renderer.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/daddywesker/.cache/bazel/_bazel_daddywesker/c7028fafbefccfd9c25e6a85c8d38b6f/sandbox/linux-sandbox/34/execroot/tf_mesh_renderer/bazel-out/k8-fastbuild/bin/mesh_renderer/mesh_renderer_test.runfiles/tf_mesh_renderer/mesh_renderer/mesh_renderer_test.py", line 222, in testFullRenderGradientComputation
    rendered = mesh_renderer.mesh_renderer(
  File "/home/daddywesker/DeepFake/Audio-driven-TalkingFace-HeadPose/Deep3DFaceReconstruction/tf_mesh_renderer/mesh_renderer/mesh_renderer.py", line 281, in mesh_renderer
    batch_size = vertices.shape[0].value
AttributeError: 'int' object has no attribute 'value

Maybe problem is hidden somewhere here...

WEll, no, unfortunately problem seems to be the same since while running runtests.sh now i'm facing exact same problem

ERROR: testRendersSimpleTriangle (__main__.RenderTest)
RenderTest.testRendersSimpleTriangle
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/daddywesker/.cache/bazel/_bazel_daddywesker/c7028fafbefccfd9c25e6a85c8d38b6f/sandbox/linux-sandbox/38/execroot/tf_mesh_renderer/bazel-out/k8-fastbuild/bin/mesh_renderer/rasterize_triangles_test.runfiles/tf_mesh_renderer/mesh_renderer/rasterize_triangles_test.py", line 86, in testRendersSimpleTriangle
    self.runTriangleTest((1.0, 1.0, 1.0), 'Simple_Triangle.png')
  File "/home/daddywesker/.cache/bazel/_bazel_daddywesker/c7028fafbefccfd9c25e6a85c8d38b6f/sandbox/linux-sandbox/38/execroot/tf_mesh_renderer/bazel-out/k8-fastbuild/bin/mesh_renderer/rasterize_triangles_test.runfiles/tf_mesh_renderer/mesh_renderer/rasterize_triangles_test.py", line 73, in runTriangleTest
    rasterize_triangles.rasterize_triangles_module.rasterize_triangles(
AttributeError: module '012ff3e36e3c24aefc4a3a7b68a03fedd1e7a7e1' has no attribute 'rasterize_triangles'

WEll, no, unfortunately problem seems to be the same since while running runtests.sh now i'm facing exact same problem

ERROR: testRendersSimpleTriangle (__main__.RenderTest)
RenderTest.testRendersSimpleTriangle
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/daddywesker/.cache/bazel/_bazel_daddywesker/c7028fafbefccfd9c25e6a85c8d38b6f/sandbox/linux-sandbox/38/execroot/tf_mesh_renderer/bazel-out/k8-fastbuild/bin/mesh_renderer/rasterize_triangles_test.runfiles/tf_mesh_renderer/mesh_renderer/rasterize_triangles_test.py", line 86, in testRendersSimpleTriangle
    self.runTriangleTest((1.0, 1.0, 1.0), 'Simple_Triangle.png')
  File "/home/daddywesker/.cache/bazel/_bazel_daddywesker/c7028fafbefccfd9c25e6a85c8d38b6f/sandbox/linux-sandbox/38/execroot/tf_mesh_renderer/bazel-out/k8-fastbuild/bin/mesh_renderer/rasterize_triangles_test.runfiles/tf_mesh_renderer/mesh_renderer/rasterize_triangles_test.py", line 73, in runTriangleTest
    rasterize_triangles.rasterize_triangles_module.rasterize_triangles(
AttributeError: module '012ff3e36e3c24aefc4a3a7b68a03fedd1e7a7e1' has no attribute 'rasterize_triangles'

Hi, have you fix this problem?