Как программно записать время изменений в видео? - PullRequest
0 голосов
/ 11 марта 2019

Например, представьте видео с синим квадратом и красным квадратом в верхнем правом углу видео.Внутри каждого квадрата есть буква.Меня интересуют только времена, когда буква синего квадрата меняется, и одно предостережение в том, что квадраты будут немного сдвигаться (слева направо) в зависимости от других квадратов, которые могут присутствовать.

Некоторые идеи, которые у меня естьПридумайте следующее:

  • используйте ffmpeg, чтобы обрезать видео, чтобы отображать только ряд квадратов (я думаю, что тогда видео гораздо меньше для обработки и, следовательно, намного быстрее)
  • обработайте эти обрезанные изображения чем-то вроде https://pyscenedetect.readthedocs.io/en/latest/examples/usage/#detection-methods, чтобы выполнить обнаружение на основе пороговых значений и записать временные коды изменений

У кого-нибудь есть какие-либо идеи о том, как к этому подойти?Я хорошо разбираюсь в JavaScript и являюсь опытным разработчиком Python, но также рад слышать о любых других языках, которые могут предложить нужные функции.Я предпочитаю open source, но также желаю услышать о платных решениях.

1 Ответ

0 голосов
/ 11 марта 2019

Если вы можете скомпилировать пример (заглушки) плагина для некоторого программного обеспечения для обработки, такого как VirtualDub и т. Д., Вы, вероятно, можете получить кадры RGB.Их можно быстро обработать на простом C или C ++.

Текущее содержимое синего квадрата можно описать как

struct {
  char Area[MaxY][MaxX][3];  //This is the actual square contents
  int CurWidth;  //Current width of the square (may vary if it reflects the character width)
} MyArea;

Текущее положение можно описать как простое int CurX;.как я понимаю, значительные изменения в MyArea должны запускать детектор, а изменения CurX не должны.

Если у вас все в порядке с созданием крошечного плагина для этого, я приведу где-нибудь пример кодакак Pastebin.

UPD: написано как упражнение для мозга. Здесь пример , также добавил CurHeight в структуру.

...