作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在做一些工作,我必须以一种名为 Analyze 7.5 file format 的格式加载一个可操作的 CT 图像。 .
这种操作的一部分 - 对于大图像来说绝对需要很长时间 - 是将原始二进制数据加载到一个 numpy 数组并将其 reshape 为正确的尺寸。这是一个例子:
headshape = (512,512,245) # The shape the image should be
headdata = np.fromfile("Analyze_CT_Head.img", dtype=np.int16) # loads the image as a flat array, 64225280 long. For testing, a large array of random numbers would do
head_shaped = np.zeros(shape=headshape) # Array to hold the reshaped data
# This set of loops is the problem
for ux in range(0, headshape[0]):
for uy in range(0, headshape[1]):
for uz in range(0, headshape[2]):
head_shaped[ux][uy][uz] = headdata[ux + headshape[0]*uy + (headshape[0]*headshape[1])*uz] # Note the weird indexing of the flat array - this is the pixel ordering I have to work with
我知道 numpy 可以快速 reshape 数组,但我无法找出复制嵌套循环效果所需的正确转换组合。
有没有办法通过 numpy.reshape/numpy.ravel 等的某种组合来复制这种奇怪的索引?
最佳答案
看看 nibabel ,一个 python 库,它实现了“分析”格式的读者/作者。它可能已经为您解决了这个问题。
关于python - 在 python 中加载 Analyze 7.5 格式图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27507928/
我正在开发一个需要能够平均三个数字的 Facebook 应用程序。但是,它总是返回 0 作为答案。这是我的代码: $y = 100; $n = 250; $m = 300; $number = ($y
我只是无法弄清楚这一点,也找不到任何对我来说有意义的类似问题。我的问题:我从数据库中提取记录,并在我的网页上以每个面板 12 条的倍数显示它们。因此,我需要知道有多少个面板可以使用 JavaScrip
我是一名优秀的程序员,十分优秀!