'Create a minimal Info dictionary for epoching, averaging, etc.'

def _guess_measurement_info(self):

    if (self.info is None):
        warn('Info    dictionary    not    provided.    Trying    to    guess    it    from    FieldTrip    Header    object')
        info = _empty_info(self.ft_header.fSample)
        info['comps'] = list()
        info['projs'] = list()
        info['bads'] = list()
        info['chs'] = []
        chs_unknown = []
        for (idx, ch) in enumerate(self.ft_header.labels):
            this_info = dict()
            this_info['scanno'] = idx
            this_info['logno'] = int(re.findall('[^\\W\\d_]+|\\d+', ch)[(-1)])
            if ch.startswith('EEG'):
                this_info['kind'] = FIFF.FIFFV_EEG_CH
            elif ch.startswith('MEG'):
                this_info['kind'] = FIFF.FIFFV_MEG_CH
            elif ch.startswith('MCG'):
                this_info['kind'] = FIFF.FIFFV_MCG_CH
            elif ch.startswith('EOG'):
                this_info['kind'] = FIFF.FIFFV_EOG_CH
            elif ch.startswith('EMG'):
                this_info['kind'] = FIFF.FIFFV_EMG_CH
            elif ch.startswith('STI'):
                this_info['kind'] = FIFF.FIFFV_STIM_CH
            elif ch.startswith('ECG'):
                this_info['kind'] = FIFF.FIFFV_ECG_CH
            elif ch.startswith('MISC'):
                this_info['kind'] = FIFF.FIFFV_MISC_CH
            elif ch.startswith('SYS'):
                this_info['kind'] = FIFF.FIFFV_SYST_CH
            else:
                this_info['kind'] = FIFF.FIFFV_MISC_CH
                chs_unknown.append(ch)
            this_info['range'] = 1.0
            this_info['cal'] = 1.0
            this_info['ch_name'] = ch
            this_info['loc'] = np.zeros(12)
            if ch.startswith('EEG'):
                this_info['coord_frame'] = FIFF.FIFFV_COORD_HEAD
            elif ch.startswith('MEG'):
                this_info['coord_frame'] = FIFF.FIFFV_COORD_DEVICE
            else:
                this_info['coord_frame'] = FIFF.FIFFV_COORD_UNKNOWN
            if (ch.startswith('MEG') and ch.endswith('1')):
                this_info['unit'] = FIFF.FIFF_UNIT_T
            elif (ch.startswith('MEG') and (ch.endswith('2') or ch.endswith('3'))):
                this_info['unit'] = FIFF.FIFF_UNIT_T_M
            else:
                this_info['unit'] = FIFF.FIFF_UNIT_V
            this_info['unit_mul'] = 0
            info['chs'].append(this_info)
            info._update_redundant()
            info._check_consistency()
        if chs_unknown:
            msg = 'Following    channels    in    the    FieldTrip    header    were    unrecognized    and    marked    as    MISC:    '
            warn((msg + ',    '.join(chs_unknown)))
    else:
        self.info['projs'] = list()
        for this_info in self.info['chs']:
            this_info['range'] = 1.0
            this_info['cal'] = 1.0
            this_info['unit_mul'] = 0
        info = copy.deepcopy(self.info)
    return info
