numpy python中有uint4标准(4位)数组吗?

von4xj4u  于 2023-01-09  发布在  Python
关注(0)|答案(1)|浏览(193)

我不是python的Maven。我想通过将uint 8类型的图像(数组)转换为uint 4(4位数组)来查看量化(位深度减少)的效果。
在python中有可能是uint 4类型的数组吗?
我将数据缩放到0-15,并使用im 4 = np.bitwise_and(im_scaled,0x 0 f)这一行,但类型仍然是uint 8,如下图所示:输入[173]:im4.dtype输出[173]:数据类型('uint 8')
我需要dtype('uint 4')

ax6ht2ek

ax6ht2ek1#

这里是list of numpy's data types,所以没有uint4
对于uint,您具有以下内容:

In [1]: numpy_dtypes = (
   ...:     (np.uint8, np.ubyte),
   ...:     (np.uint16, np.ushort),
   ...:     (np.uint32, np.uintc),
   ...:     (np.uint64, np.uintp, np.ulonglong),
   ...: )
   ...: for dtypes in numpy_dtypes:
   ...:     print([dt().itemsize for dt in dtypes])
[1, 1]
[2, 2]
[4, 4]
[8, 8, 8]

相关问题