灵活的NRRD格式包含了一个单独的头文件和若干个可以被结合在一起或者分开的图像文件。NRRD头文件为科学可视化和图像处理准确地表征了N维光栅信息。
NRRD格式表征扩散加权图像(DWI)体积和扩散张量图像(DTI)。
为了目视确认张量的方向和期望的神经解剖学的结构一致,NRRD DWI 和 NRRD DTI 数据能够被读取为 3D 切片。
Ø Magic
NRRD0001: 初始和最基本的版本
NRRD 0002 : 增加key/value 对(键值对)
NRRD 0003: 增加“kinds”:field
NRRD 0004 : 加入“thicknesses”和“sample units”,added "thicknesses:" and "sample units" fields,general space and orientation information ("space:", "spacedimension:", "space directions:", "space origin:", and"space units:" fields) , and the ability for the "datafile:" field to identify multiple data files.
NRRD 0005: 加入“measurement frame”
Ø 句尾的符号“\r\n”表示windows创建的文件 “\n”表示用户创建的文件;
Ø "<field>: <desc>" 指定关于某个字段的信息,每一行称为“field specification”或简称“field”
Ø "<key>:=<value>" 键值对
Key的长度必须多于一个字符,value可以为空
Ø 注释行以#开头
NRRD 文件头包括magic,字段信息,键值对和注释。文件头后面紧跟一空行,分割文件头
Ø dimension: <int> 维度信息表示
每个轴上的样本数是每个轴的必需信息
sizes: <size[0]> <size[1]> ...<size[dim-1]>
size[i]表示对应轴i上的样本数目,轴排序从最快到最慢(from fastest to slowest)
Ø type:
type标记包括int,float,unchar,block
Ø encoding:
说明数据写入的格式,ascii,raw,hex
Ø Space:
指定数组所在的特定空间,
Space dimension:
Space origin :
数组中第一个样本的中心位置,该值在数据文件中首先给出,或者占据最低内存地址
Space directions:
给出每个轴的方向和间距
获得的nrrd文件内容如下,和用ImageJ打开看到的内容一致
以二进制文件的格式打开nrrd文件,能读取到和binary viewer一样的数据
gzopen打开文件进行读取,不能读取nrrd文件格式,可以用于gzip文件
Ø 结果:Gzopen只读出了头文件的内容,没有解压数据
先读取nrrd文件的二进制数据(压缩后的),然后用uncompress函数进行解压缩
输出的err是-3,表示Z_DATA_ERROR, 数据被破坏,
(2) Teem 编译产生unu命令行,调用读取nrrd文件,C++程序调用exe程序
Ø WinExec(“unu.exe head –o CL_Merge.nrrd”, SW_SHOW),得到nrrd文件头
在C++程序中调用并且将解压缩后的数据输出至指定文件
5. RAW 文件读取
https://bbs.csdn.net/topics/390768002
基于WEBGL的医学图像三维重建 http://www.doc88.com/p-7714009579151.html