在做肺结节检测的时候,遇到dicom文件reshape之后尺寸大小不一。因为大下不一,numpy.reshape又无法重塑成指定大小的。最后还是在一个大牛的代码中找到了解决方法。

VL = np.load(r'D:\pycharm\TEAMWORK\Preprocess_3D\imageOR.npy')
# 我的imageOR中,每一个文件除了3维的ndarray之外,还保存了标签lab,所以下面写成isometric_volume[0],所以如果你只有数组信息,直接将后面的[0]去掉即可
votal = []
for isometric_volume in VL:
print(isometric_volume[0],'第一个')
mean = np.mean(isometric_volume[0]).astype(np.float32)
std = np.std(isometric_volume[0]).astype(np.float32)
volume_resized = scipy.ndimage.interpolation.zoom(isometric_volume[0],
np.divide(64, isometric_volume[0].shape),
mode='nearest')
volume_resized = (volume_resized.astype(np.float32) - mean) / (std + 1e-7)
z0, z1 = volume_resized.shape[0]//2, volume_resized.shape[0]
y0, y1 = 0, volume_resized.shape[1]//2
volume_resized = volume_resized[z0:z1, y0:y1, :]
votal.append([volume_resized , isometric_volume[1]])
print(volume_resized,'volume_resized')
print(volume_resized.shape)
print(votal , 'votal') np.save('newimage.npy',votal)

numpy的ndarray数组如何reshape成固定大小的更多相关文章

  1. Numpy的ndarray数组基础

    NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引. ndarray 对象是用于存放同类型元素的多维数组. 1.数组的 ...

  2. Python开发:NumPy学习(一)ndarray数组

    一.数据维度 一个数据表达一个含义,一组数据表达一个或多个含义. 数据维度概念:一组数据的组织形式,其中有一维数据.二维数据.多维数据.高维数据. 1.  一维数据 一维数据由对等关系的有序或无序数据 ...

  3. Java生产环境JVM设置成固定堆大小深层原理

    可能很多人都知道Java程序上生产后,运维人员都会设定好JVM的堆大小,而且还是把最大最小设置成一样的值.那究竟是为什么呢?一般而言,Java程序如果你不显示设定该值得话,会自动进行初始化设定. -X ...

  4. NumPy之:ndarray多维数组操作

    NumPy之:ndarray多维数组操作 目录 简介 创建ndarray ndarray的属性 ndarray中元素的类型转换 ndarray的数学运算 index和切片 基本使用 index wit ...

  5. Numpy学习一:ndarray数组对象

    NumPy是Python的一个高性能科学计算和数据分析基础库,提供了功能强大的多维数组对象ndarray.jupyter notebook快速执行代码的快捷键:鼠标点击选中要指定的代码框,Shift ...

  6. numpy中三维数组转变成二维数组

    numpy中reshape()函数对三维数组进行转换成二维数组,见下面例子: >>>a=np.reshape(np.arange(18),(3,3,2)) >>> ...

  7. 3.2Python数据处理篇之Numpy系列(二)--- ndarray数组的创建与变换

    目录 (一)ndarray数组的创建 1.从列表以元组中创建: 2.使用函数创建: (二)ndarray数组的变换 1.维度的变换: 2.类型的变换: 目录: 1.ndarray数组的创建 2.nda ...

  8. python数据分析---第04章 NumPy基础:数组和矢量计算

    NumPy(Numerical Python的简称)是Python数值计算最重要的基础包.大多数提供科学计算的包都是用NumPy的数组作为构建基础. NumPy的部分功能如下: ndarray,一个具 ...

  9. 《利用python进行数据分析》读书笔记--第四章 numpy基础:数组和矢量计算

    http://www.cnblogs.com/batteryhp/p/5000104.html 第四章 Numpy基础:数组和矢量计算 第一部分:numpy的ndarray:一种多维数组对象 实话说, ...

随机推荐

  1. cxLookupComboBox控件的应用

    1.Properties-DropDownListStyle:下拉列表的模式, 里面有三个值:lsEditList:     lsEditFixedList    lsFixedList 2.Head ...

  2. Oracle导入/导出某个用户下的数据库

    导出 exp用户名/密码@数据库实例owner=用户名file=文件存储路径 例如:exp MM/123456@ORCL owner=MM file=F\abcd.dmp 导入 imp用户名/密码@数 ...

  3. Spring4学习回顾之路02—IOC&DI

    IOC&DI介绍 ●IOC:(Inversion of Control) :控制反转(反向获取资源) 其思想是反转资源获取的方向.传统的资源上查找方式要求组件向容器发起请求查找资源,作为回应, ...

  4. 2 - sat 模板(自用)

    2-sat一个变量两种状态符合条件的状态建边找强连通,两两成立1 - n 为第一状态(n + 1) - (n + n) 为第二状态 例题模板 链接一  POJ 3207 Ikki's Story IV ...

  5. web框架链接

    django系列教程(优):https://www.cnblogs.com/feixuelove1009/p/5823135.html

  6. 【已解决】Field injection is not recommended和Could not autowired. No beans of 'xxx' type found.

    目录 问题 解决办法 备注 问题 在项目中,我们使用Spring的@Autowired注解去引入其他类时有时候阿里的编码规约插件就会提示:"Field injection is not re ...

  7. PMP - 控制图(质量控制工具)

    这里用一个具体例子来解释什么是控制图. 假设现在工厂需要生成直径为1000mm (允许偏差为振幅4个标准差,即:±4mm)的螺丝钉.我们要如何保证生成过程的质量呢? 这时候我们应该对生成出来的产品进行 ...

  8. O040、Migrate Instance 操作详解

    参考https://www.cnblogs.com/CloudMan6/p/5538599.html   Migrate 操作的作用是将instance 从当前的计算节点迁移到其他的计算节点上.   ...

  9. PS 中混合模式

    1.正常模式 2. 溶解 3. 变暗    :  把两幅图中较暗的区域显示出来 4.正片叠底   总体变暗,把图层中较浅的颜色由下一图层较深的颜色显现(和滤色相反) 7. 深色  取较小的颜色 8. ...

  10. centos 配置mysql主从复制

    mysql+centos7+主从复制   MYSQL(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公 ...