@staticmethod
def load_image(filename_or_data):
    """
        Given a filename, load an image. If the data is already loaded, return it.

        :param filename_or_data: The input filename (or data)
        :return: The image or None

        """
    import six.moves.cPickle as pickle
    if not filename_or_data:
        return None
    if isinstance(filename_or_data, tuple):
        return filename_or_data
    with open(filename_or_data, 'rb') as fh:
        image = pickle.load(fh)
    if not isinstance(image, tuple):
        image = image,
    return image
