def METHOD_NAME(self):
    # Setup lines from samples
    line_array = np.array(
        [(np.array(p[0][0:2]), np.array(p[1][0:2])) for p in self.vec_samples],
    )
    # Calculate least squares intersection
    where = self.ls_line_intersection2d(line_array)
    # If no point could be determined, don't publish
    if where is None:
        rospy.logwarn_throttle(
            10.0,
            "Could not determine point; likely because too many lobs were filtered out due to intersections close to their origins",
        )
        return
    # Publish point
    ps = PointStamped()
    ps.header.frame_id = self.global_frame
    ps.header.stamp = rospy.Time.now()
    ps.point = numpy_to_point(where)
    self.position_pub.publish(ps)