code: def plot_pose_predictions(
      result: Results,
      model_name: str,
      visualize_skeleton: bool,
      table: Optional[wandb.Table] = None,
  ):
      result = result.to("cpu")
      boxes, mean_confidence_map = get_boxes(result)
      prediction_image = wandb.Image(
          annotate_keypoint_results(result, visualize_skeleton),
          boxes=boxes,
      )
      table_row = [
          model_name,
          prediction_image,
          len(boxes["predictions"]["box_data"]),
          mean_confidence_map,
          result.speed,
      ]
      if table is not None:
          table.add_data(*table_row)
          return table
      return table_row
  
file_path: wandb/wandb/integration/ultralytics/pose_utils.py
imports: from typing import Any, Optional
  import numpy
  from PIL import Image
  from ultralytics.engine.results import Results
  from ultralytics.models.yolo.pose import PosePredictor
  from ultralytics.utils.plotting import Annotator
  import wandb
  from .bbox_utils import get_boxes, get_ground_truth_bbox_annotations
label_desc: Use image node_id 3 for calling a global function with example usage: plot_pose_predictions(result, model_name, visualize_skeleton, table) and returns: table_row, table