def calc_3d_bbox(xs, ys, zs):
    """Calculates 3D bounding box of the given set of 3D points.

    :param xs: 1D ndarray with x-coordinates of 3D points.
    :param ys: 1D ndarray with y-coordinates of 3D points.
    :param zs: 1D ndarray with z-coordinates of 3D points.
    :return: 3D bounding box (x, y, z, w, h, d), where (x, y, z) is the top-left
      corner and (w, h, d) is width, height and depth of the bounding box.
    """
    bb_min = [xs.min(), ys.min(), zs.min()]
    bb_max = [xs.max(), ys.max(), zs.max()]
    # NOTE: this need to +1, do not use this !!!!!!!!!!!!!!!
    return [
        bb_min[0],
        bb_min[1],
        bb_min[2],
        bb_max[0] - bb_min[0],
        bb_max[1] - bb_min[1],
        bb_max[2] - bb_min[2],
    ]