Разработчик проиндексировал 669 ГБ видео с помощью локальных моделей и настроил поиск по сценам на естественном языке
Инженер Ильяс Хаддад (Ilias Haddad) разработал утилиту Edit Mind, которая с помощью локальных нейросетей индексирует видео и генерирует слой данных для поиска поверх архива. Благодаря этому у каждой сцены появляется подробное текстовое описание, а нужные кадры можно искать на естественном языке и сразу переносить в программу для монтажа.
Изначально у Хаддада был архив из 2207 GoPro-видео с велопоездок. Среди них — несколько маршрутов на сотни километров, включая поездку из Касабланки в Имсуан на 470 км и маршрут из Кенитры в Танжер на 220 км. Главной проблемой архива было переиспользование кадров. Чтобы найти удачные, зрелищные или важные сцены, пришлось бы пересматривать десятки часов материала.
Чтобы упростить и ускорить процесс, Хаддад разработал Edit Mind — инструмент на базе локальных моделей машинного обучения, который анализирует видеоархив и помогает искать нужные кадры. Пайплайн Edit Mind состоит из нескольких этапов. Сначала приложение выбирает нужные ролики из папки и транскрибирует аудиодорожки с помощью Whisper. После этого в дело вступает система анализа кадров, которая разбивает ролики на сцены с частотой один кадр в секунду, а нейросеть определяет лица, объекты, текст на экране, тип кадра и генерирует текстовые описания сцен.
Полученные данные превращаются в эмбеддинги и сохраняются в локальную векторную базу. На выходе пользователь получает слой информации для поиска по всему архиву. Можно искать по людям, объектам, описанию сцены, фразам, метаданным камеры и другим признакам. При этом для поиска можно использовать естественный язык.
В тестах Хаддад индексировал 628 роликов общим объёмом 669 ГБ и длительностью более 15 часов. Обработка на MacBook с M1 Max заняла почти 68 часов, что в 4,4 раза медленнее
Читать на habr.com