code: def get_visibility(vertices, triangles, h, w):
      triangles = triangles.T
      vertices_vis = vis_of_vertices(vertices.T, triangles, h, w)
      vertices_vis = vertices_vis.astype(bool)
      for k in range(2):
          tri_vis = (
              vertices_vis[triangles[0, :]]
              | vertices_vis[triangles[1, :]]
              | vertices_vis[triangles[2, :]]
          )
          ind = triangles[:, tri_vis]
          vertices_vis[ind] = True
      # for k in range(2):
      #     tri_vis = vertices_vis[triangles[0,:]] & vertices_vis[triangles[1,:]] & vertices_vis[triangles[2,:]]
      #     ind = triangles[:, tri_vis]
      #     vertices_vis[ind] = True
      vertices_vis = vertices_vis.astype(
          np.float32
      )  # 1 for visible and 0 for non-visible
      return vertices_vis
  
imports: import numpy
  from scipy import ndimage
  from utils.render import render_texture
  from utils.render import vis_of_vertices
label_desc: Use image node_id 1 for calling a global function with example usage: get_visibility(vertices, triangles, h, w) and returns: vertices_vis