我有1000个RGB图像的Numpy列表(1000、96、96、3)。我已经使用openCV从这些图像中创建mp4视频。我的路是棕色的,汽车是红色的,但是在创建视频后,它们变成了蓝色。 您能告诉我如何避免这个问题吗?
我的代码是:
img_array = []
for img in brown_dataset:
img_array.append(img)
size = (96,96)
out = cv2.VideoWriter('project_brown.mp4',cv2.VideoWriter_fourcc(*'DIVX'),15, size)
for i in range(len(img_array)):
out.write(img_array[i])
out.release()
enter image description here 制作视频之前我的图像 后: enter image description here
答案 0 :(得分:0)
如评论中所述,OpenCV默认使用BGR格式,其中您的输入数据集为RGB。
这是一种解决方法
img_array = []
for img in brown_dataset:
img_array.append(img)
size = (96,96)
out = cv2.VideoWriter('project_brown.mp4',cv2.VideoWriter_fourcc(*'DIVX'),15, size)
for i in range(len(img_array)):
rgb_img = cv2.cvtColor(img_array[i], cv2.COLOR_RGB2BGR)
out.write(rgb_img)
out.release()