def get_bbox_scene(cziobject, sceneindex=0):
    """Get the min / max extend of a given scene from a CZI mosaic image
    at pyramid level = 0 (full resolution)

    :param czi: CZI object for from aicspylibczi
    :type czi: Zeiss CZI file object
    :param sceneindex: index of the scene, defaults to 0
    :type sceneindex: int, optional
    :return: tuple with (XSTART, YSTART, WIDTH, HEIGHT) extend in pixels
    :rtype: tuple
    """

    # get all bounding boxes
    bboxes = cziobject.mosaic_scene_bounding_boxes(index=sceneindex)

    # initialize lists for required values
    xstart = []
    ystart = []
    tilewidth = []
    tileheight = []

    # loop over all tiles for the specified scene
    for box in bboxes:

        # get xstart, ystart amd tile widths and heights
        xstart.append(box[0])
        ystart.append(box[1])
        tilewidth.append(box[2])
        tileheight.append(box[3])

    # get bounding box for the current scene
    XSTART = min(xstart)
    YSTART = min(ystart)

    # do not forget to add the width and height of the last tile :-)
    WIDTH = max(xstart) - XSTART + tilewidth[-1]
    HEIGHT = max(ystart) - YSTART + tileheight[-1]

    return XSTART, YSTART, WIDTH, HEIGHT