将任意方向的二维图像粘贴到三维体积中

2024-04-25 09:13:38 发布

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

我正在阅读一系列在空间中具有特定位置和方向的二维图像,并将它们放入一个三维卷(三维的itkImage)。我用ITK来做这件事,到目前为止,它是有效的,但它相当慢。在

下面是我的代码,其中img_data是一个2D图像(itkImage),它是源,vol iu img是一个3D卷,它是目的地。两者都有原点和方向。在

for i in range(0, width):
    for j in range(0, height):
        pixel_val = img_data.GetPixel(0, i, j)
        phys_point = img_data.TransformIndexToPhysicalPoint((0, i, j))
        img_point_vol = vol_img.TransformPhysicalPointToIndex(phys_point)

        vol_img.SetPixel(img_point_vol[0], img_point_vol[1], img_point_vol[2], pixel_val)

此方法生成三维体积,但速度相当慢。我还看了看锡克。糊方法,但它不允许以任意方向粘贴图像。我将python与SimpleITK一起使用

有没有比迭代源图像中所有像素更有效的方法呢?在


Tags: 方法in图像imgfordata空间range