我想用 cv2 opencv 包装器在 python 中创建一个多通道 mat 对象。
我在网上找到了将 c++ Mat::zeros 替换为 numpy.zeros 的示例,这看起来不错。但似乎没有多通道类型适合..
看代码:
import cv2
import numpy as np
size = 200, 200
m = np.zeros(size, dtype=np.uint8) # ?
m = cv2.cvtColor(m, cv2.COLOR_GRAY2BGR)
p1 = (0,0)
p2 = (200, 200)
cv2.line(m, p1, p2, (0, 0, 255), 10)
cv2.namedWindow("draw", cv2.CV_WINDOW_AUTOSIZE)
while True:
cv2.imshow("draw", m)
ch = 0xFF & cv2.waitKey(1)
if ch == 27:
break
cv2.destroyAllWindows()
我想避免m = cv2.cvtColor(m, cv2.COLOR_GRAY2BGR)
,但都cv2.CV_8UC3
np.uin32
不起作用。
一些提示?