@staticmethod
def _extract_slice(image, start, rows):
    """
        Returns the first `rows` rows of pixels from `image`, starting at the
        `start`th row.
        The full width of the image is used.

        :param image: The image to extract a slice from.
        :param start: The first row to extract, 0-based (i.e. to start at the
                      first row, pass 0).
        :param rows: The number of rows of pixels to extract.
        :return: The first `rows` rows of pixels from the image, starting at
                 the `start`th row.
        """
    return image.crop((0, start, image.width, start + rows))
