Example #1
0
    def run(self):
        Hname = utils.getFilename("Select affine transformation matrix",
                                  [('npy files', '.npy')])
        H = np.load(Hname)

        text = "Select files for affine transformation"
        filenames = utils.getFilenames(text,
                                       types=[],
                                       initialdir=os.path.split(Hname)[0])
        for filename in filenames:
            print(
                time.strftime("%Y-%m-%d %H:%M:%S") + ' Transforming stack ' +
                os.path.split(filename)[1])
            ext = os.path.splitext(filename)[1]
            filename2 = utils.insertSuffix(filename, '_corrected')

            if ext == '.hdf5':
                with hdf.File(filename, 'r') as f0, \
                        hdf.File(filename2, 'w') as f1:

                    dat0 = f0['data']
                    xlim, ylim, cropShape = get_affine_shapes(dat0.shape, H)
                    print(dat0.shape)
                    dat1 = self.mpStack(dat0, xlim, ylim, H)

                    # Store
                    f1.create_dataset(name='data', data=dat1)


#                    f1['data'][:, -cropShape[0]:, :] = im1c

            elif ext in ['.tiff', '.tif']:
                with tiff.TiffFile(filename) as tt:

                    dat0 = tt.asarray()
                    if len(dat0.shape) > 2:
                        results = get_affine_shapes(dat0.shape, H)
                        xlim, ylim, cropShape = results
                        dat1 = self.mpStack(dat0, xlim, ylim, H)
                        tiff.imsave(filename2, dat1)

                    else:
                        sh0 = np.array(
                            [0.5 * dat0.shape[0] - 5, dat0.shape[1]])
                        sh0 = sh0.astype(np.int)
                        tiff.imsave(utils.insertSuffix(filename, '_ch0'),
                                    dat0[:sh0[0], :])
                        tiff.imsave(utils.insertSuffix(filename, '_ch1'),
                                    h_affine_transform(dat0[-sh0[0]:, :], H))

            print(time.strftime("%Y-%m-%d %H:%M:%S") + ' done')

        self.finished.emit()
Example #2
0
def tiff2png(main, filenames=None):

    if filenames is None:
        filenames = utils.getFilenames('Load TIFF files',
                                       [('Tiff files', '.tiff'),
                                        ('Tif files', '.tif')],
                                       main.recWidget.folderEdit.text())

    for filename in filenames:
        with tiff.TiffFile(filename) as tt:
            arr = tt.asarray()
            cmin, cmax = bestLimits(arr)
            arr[arr > cmax] = cmax
            arr[arr < cmin] = cmin
            arr -= arr.min()
            arr = arr/arr.max()

            arr = imresize(arr, (1000, 1000), 'nearest')
            im = Image.fromarray(cm.cubehelix(arr, bytes=True))
            im.save(os.path.splitext(filename)[0] + '.png')
Example #3
0
def tiff2png(main, filenames=None):

    if filenames is None:
        filenames = utils.getFilenames('Load TIFF files',
                                       [('Tiff files', '.tiff'),
                                        ('Tif files', '.tif')],
                                       main.recWidget.folderEdit.text())

    for filename in filenames:
        with tiff.TiffFile(filename) as tt:
            arr = tt.asarray()
            cmin, cmax = bestLimits(arr)
            arr[arr > cmax] = cmax
            arr[arr < cmin] = cmin
            arr -= arr.min()
            arr = arr / arr.max()

            arr = imresize(arr, (1000, 1000), 'nearest')
            im = Image.fromarray(cm.cubehelix(arr, bytes=True))
            im.save(os.path.splitext(filename)[0] + '.png')
Example #4
0
    def run(self):

        txt = "Select files for background sustraction"
        initialdir = self.main.recWidget.folderEdit.text()
        filenames = utils.getFilenames(txt, types=[], initialdir=initialdir)
        print(
            time.strftime("%Y-%m-%d %H:%M:%S") +
            ' Background subtraction started')
        for filename in filenames:
            print(
                time.strftime("%Y-%m-%d %H:%M:%S") + ' Processing stack ' +
                os.path.split(filename)[1])
            ext = os.path.splitext(filename)[1]
            filename2 = utils.insertSuffix(filename, '_subtracted')
            if ext == '.hdf5':
                with hdf.File(filename, 'r') as f0, \
                        hdf.File(filename2, 'w') as f1:

                    self.data = f0['data'].value
                    if len(self.data) > self.window:
                        dataSub = self.mpSubtract()
                        f1.create_dataset(name='data', data=dataSub)
                    else:
                        print('Stack shorter than filter window --> ignore')

            elif ext in ['.tiff', '.tif']:
                with tiff.TiffFile(filename) as tt:

                    self.data = tt.asarray()
                    if len(self.data) > self.window:
                        dataSub = self.mpSubtract()
                        tiff.imsave(filename2, dataSub)

                    else:
                        print('Stack shorter than filter window --> ignore')
        print(
            time.strftime("%Y-%m-%d %H:%M:%S") +
            ' Background subtraction finished')
        self.finished.emit()
Example #5
0
    def run(self):

        txt = "Select files for background sustraction"
        initialdir = self.main.recWidget.folderEdit.text()
        filenames = utils.getFilenames(txt, types=[], initialdir=initialdir)
        print(time.strftime("%Y-%m-%d %H:%M:%S") +
              ' Background subtraction started')
        for filename in filenames:
            print(time.strftime("%Y-%m-%d %H:%M:%S") +
                  ' Processing stack ' + os.path.split(filename)[1])
            ext = os.path.splitext(filename)[1]
            filename2 = utils.insertSuffix(filename, '_subtracted')
            if ext == '.hdf5':
                with hdf.File(filename, 'r') as f0, \
                        hdf.File(filename2, 'w') as f1:

                    self.data = f0['data'].value
                    if len(self.data) > self.window:
                        dataSub = self.mpSubtract()
                        f1.create_dataset(name='data', data=dataSub)
                    else:
                        print('Stack shorter than filter window --> ignore')

            elif ext in ['.tiff', '.tif']:
                with tiff.TiffFile(filename) as tt:

                    self.data = tt.asarray()
                    if len(self.data) > self.window:
                        dataSub = self.mpSubtract()
                        tiff.imsave(filename2, dataSub)

                    else:
                        print('Stack shorter than filter window --> ignore')
        print(time.strftime("%Y-%m-%d %H:%M:%S") +
              ' Background subtraction finished')
        self.finished.emit()