code: def tia_distort(src, segment=4):
      img_h, img_w = src.shape[:2]
  
      cut = img_w // segment
      thresh = cut // 3
  
      src_pts = list()
      dst_pts = list()
  
      src_pts.append([0, 0])
      src_pts.append([img_w, 0])
      src_pts.append([img_w, img_h])
      src_pts.append([0, img_h])
  
      dst_pts.append(
          [np.random.randint(thresh), np.random.randint(thresh)]
      )
      dst_pts.append(
          [img_w - np.random.randint(thresh), np.random.randint(thresh)]
      )
      dst_pts.append(
          [
              img_w - np.random.randint(thresh),
              img_h - np.random.randint(thresh),
          ]
      )
      dst_pts.append(
          [np.random.randint(thresh), img_h - np.random.randint(thresh)]
      )
  
      half_thresh = thresh * 0.5
  
      for cut_idx in np.arange(1, segment, 1):
          src_pts.append([cut * cut_idx, 0])
          src_pts.append([cut * cut_idx, img_h])
          dst_pts.append(
              [
                  cut * cut_idx
                  + np.random.randint(thresh)
                  - half_thresh,
                  np.random.randint(thresh) - half_thresh,
              ]
          )
          dst_pts.append(
              [
                  cut * cut_idx
                  + np.random.randint(thresh)
                  - half_thresh,
                  img_h + np.random.randint(thresh) - half_thresh,
              ]
          )
  
      trans = WarpMLS(src, src_pts, dst_pts, img_w, img_h)
      dst = trans.generate()
  
      return dst
  
imports: import numpy
  from .warp_mls import WarpMLS
label_desc: Use image node_id 1 for calling a global function with example usage: tia_distort(src, segment) and returns: dst