TypeError:不支持img data type = 17

Iva*_*rew 6 opencv numpy python-2.7

我创建红色图像并尝试通过cv2.imwrite保存它

    import numpy as np
    import cv2

    RED = [0, 0, 255]
    IMAGE_SIZE = 100

    image = np.empty([IMAGE_SIZE, IMAGE_SIZE], dtype=type(RED))
    for i in range(IMAGE_SIZE):
        for j in range(IMAGE_SIZE):
           image[i, j] = RED

    cv2.imwrite("red.png", image)
Run Code Online (Sandbox Code Playgroud)

但我得到错误

     File "C:/Users/Andrew/Desktop/Programms/image-processing-cource/Tracks.py", line 11, in save_image
cv2.imwrite(name, image)
    TypeError: img data type = 17 is not supported
Run Code Online (Sandbox Code Playgroud)

怎么解决?

谢谢!

小智 2

dtype = type(RED)给你 typelist而不是 type int

你需要:

image = np.empty([IMAGE_SIZE, IMAGE_SIZE, 3], dtype=type(RED[0]))
Run Code Online (Sandbox Code Playgroud)