code: def project(self, points):
          
          rvec = tvec = np.zeros(3)
          image_points, jac = cv2.projectPoints(points.T.reshape(-1,1,3), rvec, tvec, self.camera_matrix, self.dist_coefs)
          return image_points.reshape(-1,2).T
docs: Project 3D points to image coordinates.
  
          This projects 3D points expressed in the camera coordinate system to image points.
  
          Parameters
          --------------------
          points : (3, N) ndarray
              3D points
  
          Returns
          --------------------
          image_points : (2, N) ndarray
              The world points projected to the image plane