我有一个包含3,076,568个二进制值(1和0)的NumPy数组。我想将其转换为矩阵,然后在Python中转换为灰度图像。但是,当我尝试将数组reshape为1,538,284x1,538,284矩阵时,出现内存错误。如何减小矩阵的大小,使其变成适合屏幕的图像而不丢失唯一性/数据?此外,我如何将其转换为灰度图像?如有任何帮助或建议,我们将不胜感激。谢谢。 最佳答案 您的“二进制值”数组是字节数组吗?如果是这样,您可以在调整大小后执行(使用Pillow):fromPILimportImageim=Image.fromarray(ar
Image.fromarray()方法有两个参数:obj(numpy.ndarray):一个二维numpy数组,表示要转换为图像的数组。mode(str):一个字符串,表示输出图像的模式。常用的模式有“L”(灰度图),“RGB”(彩色图),“CMYK”(Cyan,Magenta,Yellow,blacK)。如:fromPILimportImageimportnumpyasnp#创建一个3*3的数组arr=np.array([[1,2,3],[4,5,6],[7,8,9]])#将数组转换为灰度图像img=Image.fromarray(arr,mode='L')img.show()常用的模式有“