def _clean_amira_header(header_list):
    """
    Strip the string list of all "empty" characters,including new line
    characters ('\n') and empty lines. Splits each header line (which
    originally is stored as a single string) into individual words, numbers or
    characters, using spaces between words as the separating operator. The
    output of this function is used to generate the metadata dictionary for
    the image data set.

    Parameters
    ----------
    header_list : list of strings
        This is the header output from the function _read_amira()

    Returns
    -------
    clean_header : list of strings
        This header list has been stripped and sorted and is now ready for
        populating the metadata dictionary for the image data set.
    """
    clean_header = []
    for row in header_list:
        split_header = filter(None, [word.translate(None, ',"')
                                     for word in row.strip('\n').split()])
        clean_header.append(split_header)
    return clean_header