Как стать автором
Обновить

Комментарии 29

Развитие идеи: программа, реагирующая на резкую смену кадра. Когда-то в Windows Movie Maker была такая возможность — делить на отдельные клипы файл при резкой смене сцены, сейчас ее очень не хватает.

Далее: поиск (с определенным процентом схожести) заданного изображения в видео. Очень удобно, если в видеоролике есть известная вам заставка, с которой начинается нужный вам фрагмент.

Далее: поиск лиц (face detection) и вывод их отдельно (можно сделать средствами OpenCV), в т.ч. и с автоматическим распознаванием лиц (face recognition)
FFprobe из пакета FFmpeg умеет искать склейки в видео, а потом выдавать инфу (json какой-нибудь или просто текст)
Там встроенный детектор резкой смены сцен

ffprobe -show_frames -of csv -v quiet -f lavfi "movie='file.mp4',select=gt(scene\\,.2)"


Коэффициент .2 менять по желанию
Кстати, давно мучает вопрос, на который я не смог найти ответа — может ли ffprobe искать склейки не на всём видео, а на конкретном куске?
Я думаю, -ss и -t здесь тоже поддерживаются
Развитие идеи: программа, реагирующая на резкую смену кадра. Когда-то в Windows Movie Maker была такая возможность — делить на отдельные клипы файл при резкой смене сцены, сейчас ее очень не хватает.

Я думаю это сделать сравнительно легко, только в чем профит?
Далее: поиск (с определенным процентом схожести) заданного изображения в видео. Очень удобно, если в видеоролике есть известная вам заставка, с которой начинается нужный вам фрагмент.

Ну вот, предположим, родители хотят посмотреть вместе с детьми некий фильм. А перед этим хотят убедиться, что там отсутствуют постельные сцены. Как это сделать, с учётом того, что названные мною постельные сцены в реальности могут быть сняты на природе или, скажем, в подъезде? Или, наоборот, нашли у сына (дочери) коллекцию видео и желают убедиться, что там нет ничего криминального. Как это сделать, желательно ничего не пропустив, что будет 100% при быстрой перемотке за ограниченное время?
Далее: поиск лиц (face detection) и вывод их отдельно (можно сделать средствами OpenCV), в т.ч. и с автоматическим распознаванием лиц (face recognition)

Дельное предложение, но я, к сожалению, не обладают опытом в плане автоматического распознавания лиц (или номеров авто), что безусловно было бы очень круто. Может быть Вы поделитесь опытом в этой сфере?
> Я думаю это сделать сравнительно легко, только в чем профит?
Пропустить сцену в фильме, например. Или если на камеру наснимал много фрагментов, перейти к следующему.
А зачем её пропускать? Вот новая сцена: комната. Появляются новые персонажи и начинается секс. Поскольку камера установлена таким образом, чтобы охватывает большую часть помещения, то появление новых персонажей не вызывает создание новой сцены (процент новизны низок). Но в информационном плане меняется очень многое. Если стоит задача поиска эротики (для того чтобы посмотреть самому или не дать посмотреть детям, например) то разбивка на сцены даст здесь нулевой результат. А вот просмотр оператором легко решит все вопросы.
для поиска эротики можно воспользоваться технологиями от microsoft например (adult score). Это тоже может быть дополнительной полезной функцией.

Далее: поиск (с определенным процентом схожести) заданного изображения в видео. Очень удобно, если в видеоролике есть известная вам заставка, с которой начинается нужный вам фрагмент.
Поясню мысль: здесь речь идет о «сериале», в котором начало каждой новой рубрики предваряется известной заставкой. Задача: имея 1000 серий, вырезать все вхождения данной рубрики в отдельное видео/набор видео. Рутинная задача и очень нудная, так и просится на автоматизацию.

face detection можно сделать либо через ms технологии, либо opencv — с учетом того, что вы его уже используете. Распознавание сделать чуть сложнее. Опыта лично имею не так много, на Хабре есть намного более опытные люди.
бесит захламленный рабочий стол
Несколько советов от человека, который никогда не снимал обзоры ПО и сам не писал ПО для распространения =)
— для видео можно было бы создать отдельный виртуальный рабочий стол без ярлыков (кроме ярлыка программы)
— сильный перепад между громкостью речи и музыки
— немного сбил с толку заголовок, думал ПО само ищет как то по сложному алгоритму.
— использования личного видео для обзора выглядит не очень «в тему». Хоть они и иллюстрируют хорошо работу программы — но все же чувствуется какой то дискомфорт, как будь то подсматриваешь за чужой личной жизнью.
По ПО:
— почему бы не перейти с Pinnacle Studio на другое ПО. Привычка не аргумент =). Думаю Вам под силу изучить After Effects, Premiere или др. подобные программы
— не увидел причин выпуска лайт версии. Если ваш знакомый не смог разобраться с обычной версией то и с лайт у него возникнут вопросы ведь принцип работы не поменялся, достаточно просто русской версии.
— делить на отдельные клипы файл при резкой смене сцены — годная идея коментатора выше.

Программа вышла хорошая, справляется со своей задачей. Желаю Вам развивать ее и дальше.
Спасибо за комментарии! Да, видео готовил на скорую руку, ничего более интересного в голову не пришло. Что касается Pinnacle — у меня лицуха, а покупать более качественные продукты втридорога пока не позволяет бюджет. Но, я упомянул про него исключительно как демонстрационный пример из реальной жизни. Другие видео редакторы тоже могут страдать разными артефактами при кодировании. Лично против Pinnacle Studio ничего не имею — смонтировал в нём десятки фильмов.
Ускорение воспроизведения видео. Уже сейчас видео в разрешении VGA на современном компьютере можно смотреть в таблице 10x10 с частотой 20-30 FPS. Однако видео c современных фото и видео камер, экшен-камер и видео регистраторов имеет разрешение Full HD или даже выше и не за горами 4K. Поэтому без использования GPU не обойтись.
Можете декодировать H.264 с отключенным loop-фильтром (деблокинг-фильтром) — получится гораздо быстрее, а на маленькой превьюшке артефакты не будут видны.
Жалко, что всё на английском. И цена $45 слишком дорого для студента или школьника
Версия с русскоязычным интерфейсом будет чуть позже. Что касается цены, то у Вас есть отличная возможность получить любой из продуктов Soft4other совершенно бесплатно. Если Вы пользуетесь любым продуктом нашей компании, достаточно просто прислать на наш E-mail видео отзыв о понравившейся Вам программе (смотрите такую возможность на сайте) и получите выбранный Вами продукт (это может быть не тот о котором Вы написали видео отзыв) совершенно бесплатно!
всё проще и забавнее
можно сделать простой ИИ для поиска сцен.
эффективность будет много больше человека
в настоящее время для сжатого видео применяют сжатие с ключевым кадром
но лучше видео в два прохода
алгоритму поиска сцен достаточно указать какую то область, цвет и связанные объекты
или просто выбрать ключевые кадры
для реального времени можно просто записывать некоторое время и сжимать в два прохода
и уже после этого искать
программы же для обработки видео много и не надо покупать дорогие комбайны, вывод же делать в отдельном фрейме или графических файлах.
автор статьи не понимает ограничений зрительного восприятия, что одновременно воспринимается лишь небольшая часть и поэтому диагональ монитора и разрешение никак не ускорят визуальную «обработку»
всё проще и забавнее
можно сделать простой ИИ для поиска сцен.
эффективность будет много больше человека


Простой вряд ли получится.

в настоящее время для сжатого видео применяют сжатие с ключевым кадром
но лучше видео в два прохода

Это так, но к чему апелляция к извесным фактам?
алгоритму поиска сцен достаточно указать какую то область, цвет и связанные объекты
или просто выбрать ключевые кадры
для реального времени можно просто записывать некоторое время и сжимать в два прохода
и уже после этого искать

Проблема заключается в том, что обычный пользователь не знает заранее, что он хочет найти. Его интересует криминал. Что является этим криминалом: угон автомобиля, драка или убийство заранее неизвестно. Если Вы сможете формализовать любой запрос пользователя и алгоритмизировать поиск, то Вам, возможно, при жизни памятник поставят. Но пока таких систем нет, приходится обходится более простыми средствами.
программы же для обработки видео много и не надо покупать дорогие комбайны, вывод же делать в отдельном фрейме или графических файлах.

Программ для обработки видео действительно много, но вот для анализа видео ситуация совершенно иная.
автор статьи не понимает ограничений зрительного восприятия, что одновременно воспринимается лишь небольшая часть и поэтому диагональ монитора и разрешение никак не ускорят визуальную «обработку»

Отлично понимаю, о чём неоднократно заявляю в самой статье (см. «Слабые стороны»). Но, в то же время (и это подтверждено сриншотами) есть задачи, где табличное воспроизведение может за считанные минуты (иногда секунды) найти искомую сцену или объект.

Напишите по статье про эту технологию в секс-разделы двача и форчана. Они вам там не просто карму плюсанут, а еще и биткоинами скинутся ;)

Не скинутся: искать-то надо всё равно глазками, а с сотнями файлов это нереально. По сути, это тот же контрольный лист кадров, которому динамика добавляет полезности в поиске кратковременных сигналов. В некоторых случаях (постоянный фон, например) быстрее бывает пропрыгать по видео вручную, чем пытаться что-то найти на миниатюрах (если бы в вашем примере с кухней конфеты лежали бы не так заметно, а на столе, среди готовящейся на всеми участниками пищи, то демонстрируемый метод мало чем мог бы помочь).

Идея утилиты для автоматической видеодактилоскопии витает в умах с того момента, как интернет стал достаточно быстр для обмена большими объёмами мультимедиа-данных, но что-то реальной практики вне академических кругов и специальных применений в медиаиндустрии не видать.
Имхо для решения именно задачи визуального поиска чего-то на видео, я бы воспользовался VLC
Точность конечно поменьше, но определить позицию можно достаточно быстро, а затем уже просмотреть видео в найденном месте более подробно.
Если честно, думал автор предложил решение автоматического поиска…
В принципе, да. Но!
Для выполнения всех этих манипуляций необходимо использовать командную строку, запускать просмотровщик изображений, потом запускать видео плеер и перематывать на нужную позицию. Здесь это всё уже сделано! Добавили один или несколько файлов в список, щёлкнули по любому (можно настроить в опциях автоматический переход на следующий трек), смотрим-любуемся, заметили что-то подозрительное — щёлкаем мышкой по кадру. Открывается новое окно (или другая вкладка в Lite версии) и смотрим это видео в обычном режиме. Нашли то, что нужно — берём на карандаш, ошиблись в ожиданиях — едем дальше. На словах это тяжело объяснить, но если Вы попробуете скачать приложение и поискать с его помощью что то, Вы удивитесь насколько быстро и просто это можно сделать.
Хорошая у них идея (решение). Недостатком я бы назвал то, что решение не универсальное. Т.е. найти что-то в видео с регистратора (если машина всё время не стоит на месте) нельзя. Но большой плюс, что решение законченное и работает (по-видимому) из коробки.
А можно сюда еще прикрутить что-то типа neuraltalk2? Тогда можно будет сделать поиск по автоматически сгенерированному описанию картинки в таблице.
Хитрец, а! Мы-то знаем, что конфетки тырил папа. Это видно на чёрных кадрах
Чесно-чесно, не я!
Русскоязычная версия программы доступна здесь.
О, годится!
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории