code: def vis_pose(self, img, points, im_id):
      # 根据结果绘制关键点到原图像上
      for pair in self.point_pairs:
          partA = pair[0]
          partB = pair[1]
  
          if points[partA] and points[partB]:
              cv2.line(
                  img,
                  tuple(points[partA]),
                  tuple(points[partB]),
                  (0, 255, 255),
                  3,
              )
              cv2.circle(
                  img,
                  tuple(points[partA]),
                  8,
                  (0, 0, 255),
                  thickness=-1,
                  lineType=cv2.FILLED,
              )
  
      # 可视化图像保存
      cv2.imwrite(
          os.path.join(
              self.output_dir, "%d_%d.jpg" % (im_id, time.time())
          ),
          img,
      )
  
file_path: PaddleHub/modules/image/keypoint_detection/hand_pose_localization/processor.py
imports: import os
  import cv2
  import time
  import base64
  import numpy
label_desc: Use image node_id 5 for calling the Processor obj's underlying member method code with example usage: obj.vis_pose(img, points, im_id) without return types