Произошло исключение: TypeError Ожидается cv :: UMat для аргумента 'sr c' при передаче MoviePy colourClip в OpenCV - PullRequest
0 голосов
/ 15 апреля 2020

Когда я передаю цветной клип MoviePy в OpenCV, я получаю следующее сообщение об ошибке

Исключение: TypeError Ожидается cv :: UMat для аргумента 'sr c'

import moviepy.editor as mped
import moviepy as mpie
import numpy as np
import sys
import cv2

print('MoviePy version', mpie.__version__) # = version 1.0.2
print("Python Version", sys.version) # = version 3.7.3

colour_clip = mped.ColorClip(size=[50, 75], color=np.array([125, 190, 50]).astype(np.uint8), duration=3)
bgr_col_clip = cv2.cvtColor(colour_clip, cv2.COLOR_RGB2BGR)

Мне было интересно, не могли бы вы помочь мне понять, что такое ColorClip, с которым OpenCV не согласен?

1 Ответ

0 голосов
/ 15 апреля 2020

Существует две причины этой ошибки.

  1. изображение равно нулю
  2. изображение повреждено

Предложение print(image) или дамп cv2.utils.dumpInputArray(image) может вам помочь.

---- add --- вы получаете все видео как объект, и оно не может быть преобразовано в массив np. Вы net чтобы захватить кадр, например:

import moviepy.editor as mpe
video = mpe.VideoFileClip('some_video.mp4')
while True:
    np_frame = video.get_frame()
...