在Python中将一个大整数截断为uint8类型

时间:2016-05-30 23:05:37

标签: python arrays types casting

我将一个使用带符号的32位整数填充的数组转换为只包含uint8值(从0到255)的数组。 现在,我的代码看起来像这样:

newArray = Image.fromarray(oldArray.astype(numpy.uint8))

问题是:我希望低于零的数字变为零,并且高于255的数字变为255,并且此代码显然不会像这样运行。

有没有一种简单的方法可以在不迭代整个数组的情况下完成它?

1 个答案:

答案 0 :(得分:4)

对于就地阈值处理,我会在将数组转换为新数据类型之前使用numpy.clip(myArray,0,255)。