code: def make_print_objective_func(print_objectives, T):
      print_objectives = print_objectives or []
      po_descriptions = [obj.description for obj in print_objectives]
      pos = [obj(T) for obj in print_objectives]
  
      def print_objective_func(sess):
          pos_results = sess.run(pos)
          for k, v, i in zip(
              po_descriptions, pos_results, range(len(pos_results))
          ):
              print("{:02d}: {}: {:7.2f}".format(i + 1, k, v))
  
      return print_objective_func
  
file_path: lucid/lucid/optvis/render.py
imports: from __future__ import absolute_import, division, print_function
  from future.standard_library import install_aliases
  from builtins import range
  import numpy
  import tensorflow
  import logging
  from lucid.optvis import objectives, param, transform
  from lucid.misc.io import show
  from lucid.misc.redirected_relu_grad import redirected_relu_grad, redirected_relu6_grad
  from lucid.misc.gradient_override import gradient_override_map
label_desc: Use image node_id 3 for calling a global function with example usage: make_print_objective_func(print_objectives, T) and returns: print_objective_func