OpenCV - генерировать адаптивный фон для видео - PullRequest
0 голосов
/ 16 апреля 2019

Я хочу добиться чего-то вроде этого -

Справочное видео

Скажем, у меня есть видео, которое представляет собой вертикальное видео (Dimension- 720x1280).Я хочу создать горизонтальное видео с адаптивным фоном, как видео, которое я показал.Я написал некоторый код для чтения и записи в файл.

video_index = 0
cap = cv2.VideoCapture(videofiles[0])

# video resolution: 1920x1080 px
out = cv2.VideoWriter("video.mp4v",
                      cv2.VideoWriter_fourcc(*'MP4V'),
                      30, (1920, 1080), 1)

Какое влияние имеет фон на видео, которое смазывается по сторонам, вызываемым в opencv / ffmpeg или иным образом?Как мне добиться этого эффекта с помощью кода или инструментов (я открыт для использования инструментов рабочего стола OSS)?

Ответы [ 2 ]

2 голосов
/ 16 апреля 2019

Этот эффект просто реализуется путем масштабирования исходного видео до нужного размера, размывания его и наложения исходного видео сверху в центре.

Для размытия я предлагаю начать с размытия по Гауссу, доступного в OpenCV.

0 голосов
/ 17 апреля 2019

Как предположил Гьян, я использовал следующий фрагмент кода -

ffmpeg -i video720x1280.mp4
  -filter_complex
      "[0]scale=hd1080,setsar=1,boxblur=20:20[b];
       [0]scale=-1:1080[v];[b][v]overlay=(W-w)/2"   video1920x1080.mp4

Это сработало как шарм!

Ссылка на оригинальный ответ .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...