- PVSM.RU - https://www.pvsm.ru -
Когда то я поспорил с моим приятелем по поводу одного фильма. Он утверждал, что главный герой говорит одно, я же считал, что он говорит совершенно обратное. В результате мы поспорили на N-ое количество алкогольно-прохладительных напитков и направились к общему другу, который являлся счастливым обладателем VHS-видеоплеера и у которого должен был быть этот самый фильм. Спор этот я проиграл, но, хорошо помню, что мы потратили много времени на поиск именно этой сцены.Годы спустя, уже в наши дни, другой мой приятель переписал мне видео с регистратора на флэшку со словами, что там мол, после какого то поворота налево в объектив устройства должен был попасть наш общий знакомый (неприятный тип), который находился в чуднОм состоянии и, предлагал мне, приколоться по этому поводу.Искать чью-то физиономию на видео длиной в пару часов, это, конечно, не то чтобы искать иголку в стогу сена, но, тоже, удовольствие на любителя. Похоже, что именно тогда в моей голове начала зреть идея и я задался вопросом: как просмотреть несколько часов видеозаписей, чтобы найти там что тебе надо и при этом не сильно ограничить себя во сне?
В результате размышлений я пришёл к выводу, что проще всего для поиска использовать табличное представление видео: в каждой ячейке свой временной интервал.
Candies [1]
Parking [2]
Road [3]
Candies [4]
Parking [5]
Road [6]
После некоторых мучений мной была написана программа Table View Video Player.
Программа написана на C++, использовался MS Visual Studio 2015. В качестве видео библиотек можно было ограничиться FFMPEG, но я юзал OpenCV (планирую использовать другие возможности этой библиотеки).
Попробую показать всё на примере. Я поставил видео камеру на кухне, а конфеты спрятал на кухонный навесной шкаф. Продолжительность видео 2 часа. А теперь посмотрите на картинку и скажите кто их съел: папа, мама или кто-то из детей? Даже если бы не было выделения нужных областей, всем всё стало бы ясно через 2 минуты просмотра, а может и раньше. Если кто-то хочет провести эксперимент, то вот ссылка на исходное видео [7], а вот ссылка на видео в табличном виде [1]. Итак, основное предназначение программы — узнать кто стырил конфеты визуальный анализ видео.
По праздникам я снимаю видео в детском саду, а также семейные юбилеи, свадьбы друзей и родственников. Pinnacle Studio — отличная программа для видеомонтажа! Говорят даже, что в ней с лёгкостью разбираются домохозяйки! Не понимаю правда, откуда у домохозяек столько упорства и свободного времени, чтобы тратить часы на многократные попытки проэкспортировать смонтированное видео в файл или на DVD-диск? Сам я пользуюсь этой программой начиная с 8-ой версии (сейчас использую лицензионную 17, а последняя выпущенная это 19 версия), но, несмотря на мой опыт, редко получается, чтобы в процессе редактирования или экспорта приложение не повисло. Но даже если экспорт завершился удачно (по мнению Pinnacle Studio), то при просмотре видео в VLC-плеере или проигрывателе Windows-Media иногда встречаются артефакты, вид которых смущает пользователей моей продукции.Что ж! Table View Video Player можно использовать и здесь! Запускаем программу, открываем наш файл и не концентрируясь на каком-либо фрагменте конкретно просто пытаемся почувствовать, где вдруг появляется фриз или какая то бяка.Типа этого.Пять минут на поиск артефактов видео — это не так уж и много!В таком случае заново открываем проект и пытаемся исправить проблему. И немного радуемся тому, что обнаружили это сами, а не «счастливые родители» во время семейного просмотра.
Некоторое время назад я похвастался своей программой перед знакомым, на что получил замечание, что программа слишком сложна и лично он бы в ней никогда не разобрался. Мдя, а я то думал… Учтя конструктивную критику, я осознал, что, возможно, он прав. Так возникла необходимость создания более простой (Lite) версии.
По сравнению со стандартной версией убраны многие фичи, но зато программа стала простая как 2 копейки!
Существующие автоматические решения для поиска по видео архиву ресурсоёмки, кроме того не всегда можно чётко сформулировать что же Вы ищете. В этом случае использование ручного поиска (я имею в виду с помощью оператора), если ускорить его с помощью табличного воспроизведения, может оказаться весьма эффективным.
Прямых конкурентов я назвать не могу, но есть несколько программ, которые делают нечто похожее.
Список далеко не полон, часть ссылок никак не могу найти. Но был бы благодарен, за дополнение…
Автор: alekseev_ap
Источник [11]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/rabota-s-video/117892
Ссылки в тексте:
[1] Candies: https://drive.google.com/open?id=0B91L6xgfhFbRRjBVcVdwVlVId3M
[2] Parking: https://drive.google.com/open?id=0B91L6xgfhFbRUGhDWE9rZWVFSWM
[3] Road: https://drive.google.com/open?id=0B91L6xgfhFbRRkdnUVhvdTZSa0E
[4] Candies: https://drive.google.com/open?id=0B91L6xgfhFbRNGswa0RZS2ZxU0E
[5] Parking: https://drive.google.com/open?id=0B91L6xgfhFbRWXhoOXZXVVY4Z0E
[6] Road: https://drive.google.com/open?id=0B91L6xgfhFbRdmF1ck9Nbk9xeTQ
[7] ссылка на исходное видео: https://drive.google.com/open?id=0B91L6xgfhFbRTVJOakkxcHhZNlE
[8] Fast Video Indexer: http://www.fastvideoindexer.com
[9] Vindex : http://www.infinadyne.com/vindex.html
[10] Video Cataloger: http://videocataloger.com
[11] Источник: https://habrahabr.ru/post/281537/
Нажмите здесь для печати.