Камеры

Камеры


Тут хотели немного технических подробностей. Я расспросил своих хороших знакомых, бывших коллег, которые работали и/или работают(я умышленно не раскрываю их истинный текущий статус, во избежание...) над проектом до сих пор. Примеров кода и аудиовизуальной информации не будет, т.к. никто не хочет быть раскрытым.


Описание касается исключительно проекта системы распознавания и классификации лиц с подъездных камер.

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

1) Первый алгоритм - обнаружение "обширного" движения в близком поле объектива видеокамеры. Типичный поток с камеры имеет разрешение 800 на 600 точек и частоту 30 к/с(ночью 12 к/с). Обширным движением называется существенное изменение цвета в любой области изображения в квадрате 80 на 60 точек(область 10% от разрешения картинки) на более чем 0.5 сек. Лицо человека при среднем расстоянии до объектива 0.5-1.5 метра занимает от 9% до 12% площади изображения, исключая случаи, когда человек намеренно располагается ближе к объективу. Движение определяется с помощью свертки кадров до разрешения 80 на 60 точек(в 10 раз) и сравнения цветов одинаковых по расположению пикселей.

После обнаружения движения видеопоток передается на систему определения наличия человеческого лица на изображении. Берется выборка каждого 10 кадра и они подаются в алгоритм поиска лица.

2) Процесс определения наличия человеческого лица основан на алгоритме машинного обучения. Алгоритм обучен находить овал лица и ключевые точки: края глаз, центр лба, центр носа, края губ. Фактически, можно было сделать и обучить систему таким образом, чтобы алгоритм обнаружения определял исключительные признаки и сразу отделял разные лица и даже возвращал значения определенных признаков. Но, во-первых, такой вариант "черного ящика" не устраивал правительство(все хотят иметь максимально прозрачные и описываемые технологии, чтобы при смене группы спецов-разработчиков новые люди приступали к работе, а не тупили). Во-вторых, подобный вариант кратно ресурсозатратен. Если приводить в цифрах, то при одинаковых вычислительных мощностях определить овал лица и точки можно со скоростью 100 к/с, а определить уникальные признаки - 10-15 к/с. Поэтому для определения уникальных признаков лица используется другой алгоритм.

3) Алгоритм определения уникальных признаков лица состоит из двух операций. Первая операция по уже известным точкам определяет среднюю вертикальную и горизонтальную линии лица и их наклон. Также определяются расстояния(представление в пикселях) от всех точек до пересечения овала лица со средней горизонтальной линией(перпендикулярная вертикальной средней линии средняя линия между точками пересечения с вертикальной средней линией вверху и внизу овала лица). Из этих расстояний расчитывается значение наклона и поворота головы относительно объектива, что в дальнейшем позволяет компенсировать расстояния и привести их к значениям будто лицо находится четко в анфас к объективу. Вторая операция алгоритма приводит значения растояний к нормализованным значениям, учитывая компенсацию наклона и поворота головы. Нормализованные размеры берутся из определения, что высота лица(расстояние между верхней и нижней точками пересечения средней вертикальной линии с овалом лица) равна 100, а остальные значения пересчитываются как отношение к высоте лица умноженное на 100. Это не сантиметры и не милиметры, но это позволяет не учитывать фактическое расстояние между объективом и человеком(и соответственно не нужно дорабатывать камеры дальномером или усложнять алгоритмы для определения расстояния до объекта). Полученные значения являются признаками уникальности лица, по которым и разделяются разные лица.

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


Близнецов эта цепочка алгоритмов не определяет как разных людей, если у них нет явных, на первый взгляд, внешних различий. Также вполне успешно обмануть систему можно, когда лицо находится под любым небольшим углом относительно камеры и скорчена гримаса, т.к. при наклоне невидимая часть лица компенсируется математически от известной части, а если известная часть лица кривая, для системы равно, что все лицо кривое. Но пока люди об этой системе ни сном ни духом, они не кривляются перед камерами и успешно собираются в базу данных. Пока что есть нюансы с работой в ночное время, т.к. камера не всегда вовремя реагирует на объект вблизи и он получается засвеченным. Если человек быстренько подходит и проходит в подъезд, он выглядит не лучше белого пятна и о распознавании не идет речи вообще. Ну и очки любого вида хорошо отражают ИК-свет прямо в камеру. Недавно было совещание с техническими специалистами и они уверили, что натуральный свет(лампочка) на каждом подъезде никак не спасет ситуацию, т.к. камеры изначально стратегически были налажены на дальнее расстояние съемки ночью(25-30м), чтобы наблюдать происходящее во дворах перед подъездами, а натуральный свет принесет пользу и изменит ситуацию только при отключении ИК-подсветки. Перенести ИК-подсветку невозможно, отдельный блок создавать никто не будет, встроить в лампу еще и ИК нецелесообразно, т.к. не будет обзора на дальние дистанции. На текущий момент разработку немного притормозили органы сверху(предполагаю, что ФСБ), т.к. не готовы терять наблюдение дальних дистанций в пользу агрегации лиц. Но это касается только продакшена. Разработка и оптимизация алгоритмов идет и сейчас, а подрядчиков руководство планирует сменить в 2019 в пользу более опытных в этом направлении организаций, которые, возможно, найдут решение сложившейся проблемы. О полноценном запуске системы на весь город до 2021 года пока никто не заикается.


Сперва про подъездные камеры. Старые, новые, их различия в картинке и функционале.

Я не стал просить сделать мне видеокатов в моменты переключения новых камер с обычного кадра на "ночное видение", т.к. ребята, работающие с камерами сказали, что этот момент часто размыт и временами даже ночью(если в подъезде хороший свет и при откытии двери его хватает для освещения территории перед дверью) камеры переключают режимы.

Поэтому чуть по-простому.

Сначала старые камеры, которые возвращают картинку 800Х600 с различной частотой кадров ночью и днем, не имеют физического ИК-фильтра и вообще сами по себе на сегодняшний день "не очень". Их уже повально меняют от центра к окраинам города и перемещают на территорию ТиНАО. В последствии их же перепродадут в МО.

Вид с камеры днем в пасмурную погоду:

Если погода ясная и солнечная, то картинка четче, т.к. слабеньким мозгам блока камеры ее не приходится вытягивать по экспозиции.Вид с камеры в ночное время:


Из-за отсутвия механического ИК-фильтра, экспозиция камера при засветах работает программно, поэтому старые камеры не могут адекватно отобразить лицо(а не белый силуэт) и его формы, если человек проводит перед объективом менее 5-9 секунд ночью.Если же посмотреть на снимки с более современных блоков, которые сейчас активно устанавливают в Москве(сам блок по размеру больше и сделан из металла), они и днем показывают четче и, соответственно, шире, т.к. изображение 1280Х720:


Что же касается ночного наблюдения, то из-за наличия механического ИК-фильтра, картинка заметно четче и частота кадров выше(20 к/с ночью). А еще динамический диапазон матрицы шире и поэтому этим камерам зачастую достаточно подъездной лампы для нормального отображения форм человеческого лица. Ночные же снимки, где работает ИК-подсветка - не сильно лучше старых камер: экспозиция выравнивается быстрее, но все равно нужно, чтобы объект был в близком поле зрения более 3-5 секунд. А при наличии подъездного света экспозиция вообще не меняется с приближением человека.

Ночной вид без освещения:

Общий ночной вид более четкий и вполне возможно определить маленькое животное(кошка) на расстоянии более 20 метров.

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

Но если посмотреть на изображения с камер, где есть уличный свет, достаточных для неиспользования ИК-подсветки в ночное время:

Явно видно, что выделить черты лица намного проще. Кроме того, из-за общего наличия света во дворе(фото 2) камера вообще работает как днем и разницы в качестве между картинкой днем и ночью нет.В общем и целом, нужно понимать, что если на картинке лицо кажется нечетким и сложным для индентификации даже человеком, оно ежедневно на этой камере одинаковое и алгоритмы успешно составляют расписание, когда каждое уникальное лицо подходит к подъезду. Я, например, думаю, что проблемы могут быть только при попытке автоматической идентификации личности по сбивке фотографий из паспортов(Форма №1 таможенников). Но это сейчас. Что там придумают дальше и сколько в это денег вольют - не знаю.

Что дальше в плане камер.

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

И от новейших блоков ожидают лучшую работу в темное время суток и минимальные требования к освещению территории. Возможно, что откажутся от ИК-подсветки в пользу проекта "облагораживания дворов"(установка света, замена сгоревших ламп), на котором тоже не хило отмоют деньжат. Так что, если через год-два в вашем некогда темном дворе вдруг засветит каждый столб и подъезд, то вы будете знать если не основую, то одну из веских причин такого преображения двора.

P.S. Фото расположил на onion-хостинге, который указал время жизни фоткам в 30 дней. Лучшего не нашел.

Cap, какие есть беспалевные и наиболее легкие варианты смотреть камеру своего подъезда?

Кроме непосредственного доступа к ЕЦХД, я методов не знаю.

Учитывая, что на сегодняшний день ЕЦХД максимально изолировали от открытого интернета и даже в отделениях полиции, если отделение подключено не к нужному провайдеру(с которым контракт у правительства и все административные здания подключаются к изолированной сети на уровне провайдера), делают отдельный VPN, то для доступа к камерам нужно изрядно помучиться.

Report Page