带有spacing保存数据

这段代码演示了如何使用numpy从二进制文件读取数据,然后进行切片并保存到新的二进制文件中。接着,将数据转换为SimpleITK图像,设置间距,并最终保存为.nii.gz格式的医学影像文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# P = np.fromfile(r'C:\Users\320133514\Desktop\2-16\softmax\48-nnunet.bin', dtype=np.float32)
# P.shape = 48, 320, 320
# img = P[24:48, 0:320,0:320]
# img.tofile(r'C:\Users\320133514\Desktop\2-16\softmax\1\24-nnunet-result.bin')
# print(C)
# print(C.shape)
# print(type(C))
# print(C.ndim)
# out = sitk.GetImageFromArray(img)
# spacing = [0.69531298,         0.69531298, 1]
# out.SetSpacing(spacing) # 设置spacing,这一步别忘了
# sitk.WriteImage(out,r'C:\Users\320133514\Desktop\C-0-24.nii.gz')

### 如何在 ArcGIS 中导入或读取 MATLAB 数据文件 #### 使用 ASCII 文件作为中介 一种常见的方式是在 ArcGIS 和 MATLAB 之间通过 ASCII 文本文件交换数据。MATLAB 可以方便地将矩阵或其他变量保存为文本文件,而 ArcGIS 支持多种文本格式的输入。 ```matlab % 将 MATLAB 矩阵写入 CSV 文件 data = rand(10); % 创建随机数矩阵为例 filename = 'output.csv'; csvwrite(filename, data); ``` ArcGIS 能够直接读取这种 `.csv` 或其他分隔符分割的纯文本文件,并将其转换成栅格或者其他空间数据结构[^4]。 #### 利用 TIFF 图像格式传输地理信息 当涉及到带有地理位置属性的数据集时,可以考虑使用 GeoTIFF 这样的标准图像格式来进行传递。MATLAB 提供了 `geotiffwrite()` 函数用于写出带地理坐标的 TIFF 文件,在此过程中还可以指定 NoData 值等参数[^1]: ```matlab R = georefpostings([size(Z), spacing], [minX minY]); geotiffwrite('myGeoTiffFile.tif', Z, R, ... 'WriteMode','overwrite',... 'Compression','none',... 'GeoKeyDirectoryTag',{... 'ModelTypeGeoKey',[1],'Projected';... 'ProjLinearUnitsGeoKey',[9001]}); ``` 上述代码片段展示了如何设置投影坐标系统以及线性单位等内容。之后可以在 ArcGIS 中无缝加载这些由 MATLAB 生产出来的 GeoTIFF 文件[^2]。 #### 导出 Shapefile 格式的矢量数据 对于矢量类型的地理特征(比如点、线或多边形),可以通过导出 shapefiles 来实现互通。虽然 MATLAB 自身并不内置支持创建完整的 shapefile 组合包的功能,但是借助 File Exchange 上的一些工具箱是可以做到这一点的。一旦有了 .shp 文件及其配套文件 (.dbf,.shx),就可以很容易被 ArcGIS 打开并进一步分析处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fly*Boy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值