def load_mib(filename, scan_size, sum_length=10): """Load a medipix hdr/mib file. Parameters ---------- filename : string File path and name to .hdr file. scan_size : int Scan size in pixels, allows the function to reshape the array into the right shape. sum_length : int Number of lines to sum over to determine scan fly back location. """ dpt = load_with_reader(filename=filename, reader=mib_reader) dpt = ElectronDiffraction( dpt.data.reshape((scan_size, scan_size, 256, 256))) trace = dpt.inav[:, 0:sum_length].sum((1, 2, 3)) edge = np.where(trace == max(trace.data))[0][0] if edge == scan_size - 1: dp = ElectronDiffraction(dpt.inav[0:edge, 1:]) else: dp = ElectronDiffraction( np.concatenate((dpt.inav[edge + 1:, 1:], dpt.inav[0:edge, 1:]), axis=1)) return dp
def _load_fpd_sum_im(filename): s = load_with_reader(filename, reader=emd, dataset_name="/fpd_expt/fpd_sum_im") if len(s.axes_manager.shape) == 3: s = s.isig[0, :, :] return s
def _load_fpd_emd_file(filename, lazy=False): s = load_with_reader(filename, reader=emd, lazy=lazy, dataset_name="/fpd_expt/fpd_data") if len(s.axes_manager.shape) == 5: s = s.isig[:, :, 0, :, :] s = s.transpose(signal_axes=(0, 1)) s._lazy = lazy s_new = signal_to_pixelated_stem(s) return s_new
def load_single_file(filename, signal_type=None, **kwds): """ Load any supported file into an HyperSpy structure Supported formats: netCDF, msa, Gatan dm3, Ripple (rpl+raw), Bruker bcf, FEI ser and emi, EDAX spc and spd, hspy (HDF5), and SEMPER unf. Parameters ---------- filename : string File name (including the extension) """ extension = os.path.splitext(filename)[1][1:] i = 0 while extension.lower() not in io_plugins[i].file_extensions and \ i < len(io_plugins) - 1: i += 1 if i == len(io_plugins): # Try to load it with the python imaging library try: from hyperspy.io_plugins import image reader = image return load_with_reader(filename, reader, signal_type=signal_type, **kwds) except BaseException: raise IOError('If the file format is supported' ' please report this error') else: reader = io_plugins[i] return load_with_reader(filename=filename, reader=reader, signal_type=signal_type, **kwds)
def load_mib(filename, scan_size): """ Load medipix file. Paramters: filename : string File path and name scan_size : int Scan size in pixels, allows the function to reshape the array into the right shape. """ dpt = load_with_reader(filename=filename, reader=mib_reader) dpt = ElectronDiffraction(dpt.data.reshape((scan_size, scan_size, 256, 256))) trace = dpt.inav[:,0:5].sum((1,2,3)) edge = np.where(trace==max(trace.data))[0][0] if edge==scan_size - 1: dp = ElectronDiffraction(dpt.inav[0:edge, 1:]) else: dp = ElectronDiffraction(np.concatenate((dpt.inav[edge + 1:, 1:], dpt.inav[0:edge, 1:]), axis=1)) return dp