如何为多帧TIFF文件定义3D numpy阵列中的采样率?

2024-06-17 11:13:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个多帧TIF文件,它记录了神经元荧光强度随时间的变化。 TIF文件有80 x 60像素和2000帧。你知道吗

我想分析每个像素荧光强度变化的频率,为此我需要定义帧的采样率。 现在我有一个三维数组,它有每帧像素的(x,y)坐标和z轴投影的帧数。 我已经用下面的脚本转换了3D numpy数组中的多帧TIF文件。你知道吗

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轴),它对应于帧速率的频率,这样我就可以分析每个像素的荧光强度频率?你知道吗

非常感谢你的帮助。你知道吗


Tags: 文件inimgfornp时间slicerange