CV2 изображение на видео меняет значения RGB - PullRequest
0 голосов
/ 15 октября 2019

Я пытаюсь записать видео в формате jpg, используя cv2. Я определяю макет изображения следующим образом:

fake_image = np.array([[[122, 131, 140]] * 416] * 416).astype(np.uint8)

Далее я записываю это в видео, используя:

out = cv2.VideoWriter('mock_video.mp4',cv2.VideoWriter_fourcc(*'DIVX'), 1, (416, 416))
out.write(fake_image)
out.release()

Затем я пытаюсь прочитать кадры моего видео:

vid = cv2.VideoCapture('mock_video.mp4')
return_value, frame = vid.read()

А теперь значения RGB изменились! Вместо того, чтобы быть [122, 131, 140], они теперь [118, 129, 137]!

Почему это происходит и я могу остановить это?

Редактировать: да, я знаю, что cv2 использует BGR, это не такчто происходит (это не тот случай, когда порядок каналов меняется)

...