Подводка ведущего

А я хочу представить следующего спикера. Но сначала небольшая преамбула. Иногда мы встречаем различные цифровые, и не только, в принципе, различные медиафайлы. Так будет сказать правильнее, зная, о чём будет следующий доклад. Но они бывают совершенно разного качества. И вот как со всем этим работать, сегодня нам расскажет наш дорогой друг Дмитрий Борощук. Встречайте.

Начало: чем зал чистит фото, видео и звук

Всем привет.

Реально. Давайте для начала поговорим. Как часто вам встречается какое-то видео или аудиофайл, в котором всё плохо? Поднимите руки. Раз. О, классно. А чем чистите? Коллега, понимаю боль. А чем чистите? Можно прямо с места, в общем-то.

— Ну, дай микрофон. Да, давайте я побегаю. Мне бы ещё второго человека. Ну, обычно мы применяем модель, которая улучшает качество. Это там минимально, забыл, как у неё название. Она увеличивает разрешение. И часто мы используем соседние кадры на видео, чтобы понять, что видно на одной части, что видно на другой. И так, с помощью естественного интеллекта, доходишь до, например, искомого номера автомобиля. А вот про ИИшку вы сказали, а в дело так же подшиваете? Ну, типа, ИИ сказала: вот номер такой-то. Ну конечно, нет.

— Хорошо. Так, а со звуком? Вот, ещё у коллеги. Я видел там, подожди. Рука была. Дмитрий Владимирович, я видел там ещё руку по фото. Давай. Она очень высоко тянулась. На самом деле этот вопрос родился из тех обычных разговоров, которые собираются на кухне и которые начинаются так. Ну, мы там сняли картинку с видеокамер, посмотрели, ничего нет, ну и пошли дальше. Да, коллега. Ну, изначально по фото хотел сказать, что... Amped FIVE'ом и прочими программными решениями, но что касается звука... А какими? Ну, различными алгоритмами, например, Ричардсон — Люси там... Фотоэксперт, да, классная штука.

— Что касается звука, то улучшал исключительно нейросетью. Ну, в данном случае ещё там, что касается улучшения непосредственно звука, не ИИ-методами, там компрессор... Реверберация и так далее. Ну, это именно для вокальных, так сказать, материалов. Вокально-инструментальных практически. Ну, что-то да.

— Хорошо, так, у кого ещё какие проблемы? А какая вот проблема, да, коллега? Ну, по звуку это Audition, iZotope по паттерну шума, если у нас имеется очень много шумов. Ну, естественно, вытягиваем, либо дальше уже там слушаемся. ИИшку не применяю, потому что она очень сильно искажает и абсолютно даже транскрибация это полная лажа. Ну да, согласен. А вот какая самая большая проблема возникает? Не видно, темно, светло наоборот, шумно, мало... Плохая видимость, да?

Смотрите, сегодня я предлагаю поговорить... Я почему спрашивал за софт? Потому что чаще всего в нужный момент необходимого... Лицензированного программного обеспечения нам не хватает. Ну, или под рукой не оказывается в нужный момент, да? Или мы просто не имеем к нему доступ. И в основном опера заканчивают все исследования, из серии такой... Ну, не видно.

Только бесплатные инструменты и без ИИ

И сегодня я предлагаю поговорить про те программные продукты, которые будут у вас в свободном доступе, в открытом доступе. Вы можете их свободно скачать, не взламывая. Мы будем говорить только о бесплатных и только о широкодоступных. Ну и, собственно говоря, чтобы все наши действия были, как нужно и правильно в криминалистике, воспроизводимы дальше. Почему мы не можем использовать ИИ? Да, ИИшка классная. И, скорее всего, использование ИИ выглядит примерно, как в этом сериале.

Делает волшебную кнопку. Но, к сожалению, такой волшебной кнопки нет. И чаще всего нам приходится побыть немножечко и фоторедакторами, и видеомонтажёрами, и немного специалистами по звуку, чтобы вычистить нужный момент на фоточке, на видео или на записи, например, с диктофона. Будем говорить исключительно про алгоритмы. На слайдах будут пошаговые инструкции, что вам нужно сделать для очистки. И эта часть пойдёт у нас, исходя из тех вопросов, с которыми обычно приходят опера.

Видео: подобрать кодек, проверить метаданные, вытянуть тёмную запись

Первый вопрос: получили видео, а стандартным плеером не читается. Часто так бывает. Сняли с какого-нибудь видеорегистратора или с какой-то специфической железяки, которая снимает, и обычный видеоплеер не читает. Что здесь можно использовать? Конечно же, нам нужно подобрать кодек. Я сейчас немного поиграю в Капитана Очевидность, но без этой основы нам дальше не понять. Два прекрасных, давно известных набора видеокодеков. K-Lite Codec Pack для Windows и универсальный плеер, который жрет практически 95% всего медиаконтента, который называется VLC Media Player.

Если вдруг у нас не получилось воспроизвести. Соответственно, нам надо перекодировать. Потому что файл может быть какой-то специфический, со специфическим расширением. И напрямую сигнатуры не будут показывать, чем его воспроизводить. Прекрасное решение, которое называется Shutter Encoder. Оно абсолютно бесплатное, оно очень удобное. И основная его особенность заключается в том, что оно позволяет перекодировать любое видео в любое видео. Без потери качества. Вы же наверняка знаете, что при перекодировании множество данных могут теряться. И вот как раз Shutter Encoder позволит вам, как минимум, перекодировать без потери качества. Как максимум увидеть какие-то метаданные, связанные с этим файлом, которые мы можем уже в дальнейшей работе использовать.

MediaInfo — еще одна программа. Которая как раз, как вы поняли из названия, позволяет нам вытащить все возможные метаданные. Посмотреть, например, а не изменялся ли наш файлик в процессе путешествия от источника к нам. Когда он был сделан, чем он был сделан. И визуально это все разложить. Следующий момент, который возникает — нужно сделать видео читаемым. Но нельзя применять сжатие с потерями. Чтобы не уничтожить мелкие детали. Возвращаемся к Shutter Encoder, о котором мы говорили ранее. Следующее. Сторона защиты предоставляет видео с телефона. Нужно проверить, с какого именно телефона это было сделано. Еще один просмотрщик и экстрактор метаданных — Metadata++.

Такое же бесплатное приложение. Наверняка вы о нем слышали. Которое позволяет вытащить метаданные практически из любого файла. И вытащить максимально большое количество. И благодаря нему вы можете не только вытаскивать метаданные из медиафайлов. Но и в принципе из всего остального. Ну и это еще неплохой каталогизатор.

Следующая проблема — запись регистратора сделана ночью. Изображение очень темное. Практически ничего не видно. Как осветлить сцену без потери качества? Вот здесь может быть множество шагов. Первое, что приходит в голову — это яркость, контрастность, подергать. И как-то попытаться высветлить. В 99% случаев это вас ни к чему не приведет. Здесь нужно понимать, как формируется картинка. В первую очередь любое фото-видеоизображение — это набор пикселей. Если в пикселях нет никаких данных, то, соответственно, вы ничего не вытащите. Поэтому здесь мы будем уже работать с цветами. С теми цветами, которые могут быть слишком пересвечены или, наоборот, слишком затемнены.

Еще одна бесплатная программа. Кто занимается видеомонтажом? Молодежь. Я видел много молодых коллег. Которая называется DaVinci Resolve. Прекрасный видеоредактор. Видосики для TikTok делаются только так. Но, помимо всего прочего, это еще и прекрасный инструмент для того, чтобы поработать с картинкой. Дальше у нас будет алгоритм. Я не буду на нем особо сильно акцентироваться. Вы можете попробовать, в конце концов, это сами. Чтобы нам как-то ужаться в тайминг.

Следующий момент — с номерами. Ох, как взметнулись телефоны. Коллеги, я дам потом ссылочку. Эта презентация вам будет гораздо легче, чем потом смотреть эти слайды с моей рожей на сцене. Так вот, узнать номер. Каким образом? На самом деле здесь есть множество дополнительных факторов, которые мы должны учитывать при том, как этот номер попал на изображение и что происходило в этот момент на Земле. Самое чаще всего, что встречается — это размытие. Шевеленка из-за того, что двигалась камера. Кто-то снимал трясущимися руками или на бегу. Или машина двигалась. Вот здесь нам нужно будет засинхронизироваться с картинкой. Взять соседние кадры и, собственно говоря, этот номер попытаться восстановить, убирая размытие.

На экране, для примера, есть программа VideoCleaner. Достаточно старый, старый программный продукт, криминалистический, бесплатный программный продукт, которому уже, наверное, лет 7. Но он до сих пор позволяет проводить какие-то простые операции. Также это можно сделать при помощи того же самого DaVinci Resolve. И ребята из Мобильного Криминалиста завтра должны, по-моему, выпустить e-zine, такой электронный журнал в виде сайтика, где как раз будет моя статья на тему того, как разбираться с подобными вещами более подробно.

Так вот, VideoCleaner — прекрасное подспорье. DaVinci Resolve — прекрасная штука. Идем дальше.

Пиксельное лицо, номер машины, отражение в стекле

На записи из камеры наблюдения лицо злоумышленника представляет собой пиксельное пятно. Можно ли сделать его узнаваемым для опознания? Можно?

Да, я не буду здесь вам рассказывать про искусственный интеллект, потому что чаще всего, когда у нас изображение 64 на 64 пикселя, в лучшем случае искусственный интеллект начинает так фантазировать. Там такие разные вещи бывают интересные, но они, к сожалению, с реальностью никак не соприкасаются. Соответственно, нам нужно попытаться вытащить какие-то дополнительные данные из соседних пикселей. Не всегда это работает, но, используя такой, опять же, достаточно старый метод суперразрешения, можно попытаться провести интерполяцию и хоть как-то выявить конкретные области, которые нам помогут в идентификации человека. Идем дальше. В кадре есть блик на стекле.

Чувствуете сериал «След», да? Который, возможно, содержит отраженное лицо преступника или содержит какое-то отражение, которое позволит нам идентифицировать, ну, хотя бы место того, где это происходит. На самом деле, да, отражение содержит массу информации, которую, к сожалению, почему-то коллеги не замечают. И здесь, в первую очередь, мы выступаем в роли… фоторедакторов, где наша главная задача не улучшить картинку, а, наоборот, ухудшить ее таким способом, чтобы вытащить это самое отражение из того, где его, казалось бы, может не быть. Поэтому обращайте внимание на те отражающие поверхности, которые, гипотетически, могут содержать эти файлы.

Такой же бесплатный и прекрасный GIMP. Наверняка вы о нем слышали. Прекрасный аналог Photoshop. Бесплатный аналог Photoshop. И тот же самый DaVinci Resolve, чтобы нам набрать, как минимум, кадры с удобным, вернее, с более ясным отражением. Следующий момент. Несколько свидетелей сняли драку на телефон с разных точек, и нам нужно как-то реконструировать события. Есть множество маленьких программных продуктов, бесплатных, опенсорсных продуктов, которые позволяют нам синхронно запустить несколько видеофайлов и привязать это к местности. Но, опять же, чтобы их особо долго не искать, воспользуйтесь тем же самым DaVinci Resolve и разместите все на дорожках монтажа, на монтажных дорожках, чтобы впоследствии вы могли засинхрониться на каком-то событии, вспышка света или какой-то яркий звук, и в процессе воспроизведения попереключаться по этим дорожкам, чтобы посмотреть, что там с другой камерой можно собрать.

Звук: что вытащить можно, а что нет; фильтры в Audacity

Ну и перейдем к аудио. С аудио какие у нас обычно проблемы, коллеги? Ни у кого нет проблем?

— Не было.

— Шум? Так, очень тихо, говорят много, слишком все сразу. И, опять же, что-то с этим нужно делать. И здесь давайте начнем с того, что для начала нам нужно понять, а что мы можем вытащить, а что не можем вытащить. Мы уберем полностью перекрывающий звук. Здесь как бы без вариантов. Мы не можем дорисовать отсутствующие слова. ИИшка здесь, к сожалению, не работает. Можно поиграться в обработке, но здесь мы вряд ли достигнем воспроизводимого результата. Потому что каждый раз посредством обработки при помощи той же самой ИИшки мы, к сожалению, получим совершенно разные варианты. Но мы можем выровнять громкость, повысить разборчивость. Мы можем, в конце концов, убрать те самые моменты, когда микрофон трется о лацкан пиджака.

Самый часто встречающийся артефакт, который мешает восстановить. И все это мы будем делать исключительно исходя из физики звука. Давайте для начала поймем, а что нам может мешать в процессе воспроизведения какой-то речи. Это может быть какой-то постоянный фон. Как говорил коллега, мы берем... Просто образец шума, убираем его и слушаем. Да, это вариант. Когда у нас есть, например, фоном постоянно громко работающий кондиционер или слышен какой-то монотонный шум.

Это может быть какой-то низкочастотный грохот. Например, когда мы пытаемся записать что-то на улице. Когда городская среда нам добавляет грохот машин, стройка работает рядом. Это ветер. Собственно говоря, ветер и шум от постоянного трения о какую-то поверхность примерно одинаковые. Это шипение, это дождь, это городской шум, это щелчки и это клиппинг. Когда уровень звука превышает все и наша звукозаписывающая аппаратура просто обрезает частоты. Соответственно, мы не можем получить. Как я уже говорил, мы пользуемся Audacity, бесплатный аудиоредактор, который позволяет нам убрать все эти помехи, все эти шумы. Опять же, для каждой помехи в этом плане свой фильтр, где мы можем попытаться поиграться с убиранием.

Так вот, давайте попытаемся ответить на вопрос, когда к нам попадает какое-то аудио. А что перед нами за шум? Шум постоянный или меняется? Он в основном какой? Там щелчки, шипение? Где именно на спектре сосредоточены основные помехи? Перекрывает ли это полностью? Для этого мы идем по пути, собственно говоря, когда нам нужно визуализировать все то, что мы видим. Включаем два типа спектрограммы, которые как раз покажут нам, где искать те шумы, где нам искать голос, который мы впоследствии можем убрать.

Ну, а дальше. Обычно шум монотонный, шум почти не меняется, хорошо слышен в паузах, спектральная картина стабильная. Здесь все достаточно просто. Как сказал коллега, мы берем Audacity, вырезаем, ищем место, где нет какого-то полезного сигнала, вырезаем этот шум, скармливаем автоматическому убирателю шумов, и он убирает этот монотонный шум из записи, опять же, в идеальных условиях. Редко такое случается, когда шум монотонный, и, в принципе, всех этих действий достаточно, чтобы сделать. Следующий - грохот. Шум ощущается как вибрации, грохот.

Когда основная энергия, звуковая энергия находится снизу спектрограммы, когда перегруз по записи, когда касание микрофона. Здесь немного другая история. Мы идем в эффекты, мы заходим в эквалайзер, и мы пытаемся поиграться высокочастотным фильтром для того, чтобы убрать этот самый шум. С ветром примерно то же самое. Когда ветер, потому что ветер и грохот, в принципе, у нас создают одну и ту же картину.

Следующий момент, когда шум напоминает шипение. Здесь как раз верхний частотный диапазон, который на спектрограмме, где мы можем попытаться его также вычистить обратным шумодавом для низкого...

через низкочастотный фильтр. Шум города. Шум постоянно меняется, появляются источники, исчезают. Спектральная картина неоднозначна. Здесь мы уже работаем по всему спектру. Берем эквалайзер и пытаемся, во-первых, разметить те места, где у нас шумы особенно явные. Шумы какого типа особенно явные. И пытаемся их обойти. При помощи графического эквалайзера. Ну и, как заключающая вещь, когда нам нужно привести перепады громкости к одной постоянной, этот процесс называется компрессией, которую также вы можете сделать благодаря этому алгоритму. Ну и нормализировать все аудио, которое у вас было в разгаре.

Это, собственно, все, что я вам хотел сегодня рассказать. Если мы вдруг с вами не знакомы, у меня есть маленькое хобби - два Telegram-канала.

Вопросы из зала

И на этом канале, скорее всего, через несколько минут появится эта презентация. Вопросы? Перед тем, как будут вопросы, я подскажу, что статья, которую, Дмитрий Владимирович, вы писали, она уже находится на портале с QR-кодом, который мы сегодня показывали. Так что она уже, в общем-то, доступна. А теперь, коллеги, да, и правда, вопросы. Смотрю на ваши руки. Как будто бы все... Нет, руки есть. Знаешь, это обычно, когда все понятно, либо ни черта не понятно.

— Доброе утро. У меня вопрос, наверное, довольно такой глупый. Если у нас есть запись, в которой ничего не понятно, и пофиг это аудио или видео, да? Идет следствие по какому-то делу. Эту запись очистили и представили в качестве доказательства. Может ли адвокат возмутиться и сказать, что запись была изменена или нет? То есть это будет признано в суде как доказательство? Или это вопрос, там, к юристам? Если вы пользовались ИИшечкой, тогда адвокат скажет: "Да, какая-то непонятная хрень, и вообще оно придумало".

Поскольку все действия, о которых мы сейчас говорили, воспроизводимы, то после выступления эксперта... Эксперта или специалиста эта запись обычно принимается судом.

— Дмитрий, большое спасибо за доклад. Большое не за что. Я как бывший фоноскопист просто могу сказать, что то, что вы рассказали, это примерно уровень, может, шестого-седьмого года. Желаю вам побольше методов набрать. В частности, если у нас шумы имеют структурные гармонические составляющие, они очень легко снимаются, не нарушая речь. Есть такая программка, к сожалению, автора нет в живых, называется Юстифон. Да, прекрасная вещь. Он прекрасно снимает гармонические составляющие. Там есть демонстрационный пример разговора на фоне органа. Когда у нас есть четкая математическая выраженность помехи, мы можем ее вычесть без нарушения того, что лежит под ней.

Второе, по видео. Здесь тоже я советую коллегам особо не доверять тому, что видно на первый взгляд, потому что вы не о всех методах рассказали. Безусловно. А с практической стороны нам приходилось реконструировать перестрелку. Вы, наверное, уже знаете. У нас в Wildberries была перестрелка в свое время. И там было видеозаписи порядка 45 с разных источников: стационарные видеокамеры, видеорегистраторы, Дозор, мобильные устройства. И вот нам приходилось вручную складывать видеопотоки в более широкий кадр, чтобы потом не просто переключаться между ними, а одновременно, конечно, глазам было тяжело, но одновременно мы анализировали, кто стреляет с какой стороны и у кого этот пистолет был раньше в кармане.

Я к чему это хочу дополнить. Просто в дополнение к вашему примеру. Просто очень хорошо, когда мы не просто переключаемся между видеопотоками, а просматриваем их одновременно, как бы в мультиплексном таком режиме. Спасибо. Да, большое спасибо, во-первых, коллега. Да, 2006-2008 год, безусловно, тот же самый VideoCleaner. Вопрос в другом. Что мы можем использовать, когда под рукой у нас ничего нет? И что мы можем использовать, когда особых знаний-то у нас нет? Но это нужно сделать. Момент. По поводу реконструкции событий. Момент. Дмитрий Владимирович, там все-таки съемка еще. Можно? Ой, извините. На сцену, пожалуйста. Да. По поводу реконструкции событий.

Это действительно проблема, когда у нас есть несколько источников, у нас есть под сотню свидетелей, с которых мы сняли видеоданные, и которые потом надо разместить на карте. А еще с высотой, а еще с видом, а еще привязать это к таймингу. Маленький тизер. Моя команда сейчас готовит как раз такой инструмент для того, чтобы заниматься реконструкцией событий по видеоданным с привязкой к местности. Он будет, скорее всего, бесплатный, и вы можете им пользоваться. Как-то так.

Дмитрий Владимирович, спасибо большое. У нас, к сожалению, время, тайминг. Проводим аплодисментами Дмитрия.

Ну и сейчас у меня будет, наверное, не совсем хорошая новость для тех, кто у нас находится в онлайне, потому что на сегодня мероприятие у нас закончилось. Но только для тех, кто находится в онлайне. Следующие части транслироваться не будут, и мы вернемся к вам завтра в 11 часов утра. Но для тех, кто находится сейчас сегодня в зале, мы переходим к нашей, скажем так, более закрытой, более практической части мероприятия.

[Конец трансляции первого дня. Дальше в трансляцию не выводились: доклад Екатерины Мингараевой (ООО «СЕУСЛАБ», по программе 13:40–14:15), закрытая часть первого дня (после 14:20) и вскрытие капсулы времени 2021 года. Следующая фраза — уже открытие второго дня, 4 сентября.]