PIL Error, TypeError: Cannot handle this data type:(1, 1), <i8


欢迎访问个人网络日志知行空间


文章目录

    • 1.问题描述
    • 2.解决方式
    • 参考资料

1.问题描述

PIL的Image.fromarray使用numpy array生成数组时报错,

Traceback (most recent call last):
  File "/media/lx/data/code/test_python/pil_test.py", line 8, in 
    print(Image.fromarray(img_array))
  File "/home/lx/anaconda3/envs/Python36/lib/python3.6/site-packages/PIL/Image.py", line 2766, in fromarray
    raise TypeError("Cannot handle this data type: %s, %s" % typekey) from e
TypeError: Cannot handle this data type: (1, 1), 

2.解决方式

# 将numpy array转成np.uint8类型
img_array = img_array.astype(np.uint8)
img_array = np.random.randint(0, 34, (5, 4), dtype=np.uint8)
Image.fromarray(img_array)

参考资料

  • 1.https://stackoverflow.com/questions/55319949/pil-typeerror-cannot-handle-this-data-type

欢迎访问个人网络日志知行空间


你可能感兴趣的:(Python,视觉检测,计算机视觉,python)