NRRD文件多切片体绘制加载问题排查
NRRD文件加载多切片失败的问题分析
原文件内容
NRRD0004 # Complete NRRD file format specification at: # http://teem.sourceforge.net/nrrd/format.html type: short dimension: 3 space: left-posterior-superior sizes: 272 272 9 space directions: (0.59, 0.0, 0.0) (0.0, 0.59, 0.0) (0.0, 0.0, 2.5) kinds: domain domain domain endian: little encoding: raw space origin: (0.0, 0.0, 0.0) byte skip: 1609 data file: I0023679.M01 I0023679.M02 I0023679.M03 I0023679.M04 I0023679.M05 I0023679.M06 I0023679.M07 I0023679.M08 I0023679.M09
核心问题
- 多数据文件的格式违反NRRD规范:NRRD要求多个数据文件必须在
data file:这一行内用空格(或逗号)分隔,而非每行单独列出。当前写法会让加载器无法识别后续行属于数据文件列表,仅尝试加载第一个文件,无法组合成9切片的3D体数据。 - byte skip的作用无法正常生效:虽然全局
byte skip: 1609设置本身如果对应每个切片文件开头的冗余字节是合理的,但由于第一个问题导致加载器无法识别所有数据文件,该设置在多切片加载场景下无法发挥作用。
修复方案
- 将所有数据文件名合并到
data file:所在行,用空格分隔:
data file: I0023679.M01 I0023679.M02 I0023679.M03 I0023679.M04 I0023679.M05 I0023679.M06 I0023679.M07 I0023679.M08 I0023679.M09
- 确认每个切片文件开头确实都有1609字节需要跳过,若不同文件的跳过字节数有差异,需改用per-file byte skip格式,即按文件顺序列出对应跳过字节数:
byte skip: 1609 1609 ...(共9个数值)。
内容的提问来源于stack exchange,提问作者Ricardo Capozza
相关产品推荐
相关产品推荐

