Как определить частоту дискретизации в массиве 3D numpy для файла TIFF с несколькими кадрами?

У меня есть многокадровый TIF-файл, который регистрирует интенсивность флуоресценции нейронов со временем. Файл TIF имеет 80 x 60 пикселей и 2000 кадров.

Я хотел бы проанализировать частоту изменений интенсивности флуоресценции для каждого пикселя, и для этого мне нужно будет определить частоту дискретизации кадров. Прямо сейчас у меня есть 3D-массив с координатами (x, y) пикселей для каждого кадра и количеством кадров в проекции оси z. Я преобразовал многокадровый TIF-файл в массив 3D numpy со следующим скриптом.

from PIL import Image

import numpy as np

img = Image.open('C:/Users/Desktop/demoMovie.tif')

images = []

for i in range(2000):
    try:
        img.seek(i)
        slice_ = np.zeros((80, 60))
        for j in range(slice_.shape[0]):
            for k in range(slice_.shape[1]):
                slice_[j,k] = img.getpixel((j, k))
        images.append(slice_)
    except EOFError:
        # Not enough frames in img
        break
return np.array(images)

Есть ли способ преобразования числа кадров (ось z) во времени, которые соответствуют частоте частоты кадров, чтобы я мог анализировать частоту интенсивности флуоресценции для каждого пикселя?

Большое спасибо за Вашу помощь.

python,tiff,frames,frequency-analysis,numpy-ndarray,

1

Ответов: 0

Как определить частоту дискретизации в массиве 3D numpy для файла TIFF с несколькими кадрами?

У меня есть многокадровый TIF-файл, который регистрирует интенсивность флуоресценции нейронов со временем. Файл TIF имеет 80 x 60 пикселей и 2000 кадров.

Я хотел бы проанализировать частоту изменений интенсивности флуоресценции для каждого пикселя, и для этого мне нужно будет определить частоту дискретизации кадров. Прямо сейчас у меня есть 3D-массив с координатами (x, y) пикселей для каждого кадра и количеством кадров в проекции оси z. Я преобразовал многокадровый TIF-файл в массив 3D numpy со следующим скриптом.

from PIL import Image

import numpy as np

img = Image.open('C:/Users/Desktop/demoMovie.tif')

images = []

for i in range(2000):
    try:
        img.seek(i)
        slice_ = np.zeros((80, 60))
        for j in range(slice_.shape[0]):
            for k in range(slice_.shape[1]):
                slice_[j,k] = img.getpixel((j, k))
        images.append(slice_)
    except EOFError:
        # Not enough frames in img
        break
return np.array(images)

Есть ли способ преобразования числа кадров (ось z) во времени, которые соответствуют частоте частоты кадров, чтобы я мог анализировать частоту интенсивности флуоресценции для каждого пикселя?

Большое спасибо за Вашу помощь.

01Python, TIFF, кадры, частотно-анализ, NumPy-ndarray,
Похожие вопросы
Яндекс.Метрика