class_docstr: Class for image processing. Methods for detecting lines in an image and clustering them. Helper methods for
  drawing.
docstr: Draw detected clusters of lines in direction <direction> using <clusters_w_vals>.
docstr_tok: ["Draw","detected","clusters","of","lines","in","direction","<","direction",">","using","<","clusters_w_vals",">","."]
code: def draw_line_clusters(
      self, direction, clusters_w_vals, orig_img_as_background=True
  ):
      """
      Draw detected clusters of lines in direction <direction> using <clusters_w_vals>.
      """
      if direction not in (DIRECTION_HORIZONTAL, DIRECTION_VERTICAL):
          raise ValueError(
              "invalid value for 'direction': '%s'" % direction
          )
  
      baseimg = self._baseimg_for_drawing(orig_img_as_background)
  
      n_colors = len(clusters_w_vals)
      color_incr = max(1, round(255 / n_colors))
  
      for i, (_, vals) in enumerate(clusters_w_vals):
          i += 2
  
          line_color = (
              (color_incr * i) % 256,
              (color_incr * i * i) % 256,
              (color_incr * i * i * i) % 256,
          )
  
          self.draw_lines_in_dir(baseimg, direction, vals, line_color)
  
      return baseimg
  
imports: from logging import warning
  from math import degrees
  import numpy
  import cv2
  from pdftabextract.common import ROTATION, SKEW_X, SKEW_Y, DIRECTION_HORIZONTAL, DIRECTION_VERTICAL
  from pdftabextract.geom import normalize_angle, project_polarcoord_lines
  from pdftabextract.clustering import zip_clusters_and_values, find_clusters_1d_break_dist, calc_cluster_centers_1d
label_desc: Use image node_id 10 for calling the ImageProc obj's underlying member method code with example usage: obj.draw_line_clusters(direction, clusters_w_vals, orig_img_as_background) and returns: baseimg