这个问题似乎经常遇到,但是我看其他的解释都没说出问题的本质,这里我作了测试,供大家参考
cv2.rectangle(img, pt1, pt2, color[, thickness[, lineType[, shift]]]) → None
参数img 类型为 < class numpy.ndarray >,参数pt1,pt2,color均为int类型组成的元组
在我的原来的代码中,color=np.random.randint(0, 255, 3), color 中每个元素的类型为<class ‘numpy.int64’>,而需要的类型为<class ‘int’>,因此要进行类型转换,改成以下即可
cv2.rectangle(imgOut, (int(x_p1), int(y_p1)), (int(x_p3), int(y_p3)), (int(color[0]),int(color[1]), int(color[2])), thickness)