Pmonline.ru

Пром Онлайн
2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Некоторые особенности осмотра средств сотовой связи при расследовании уголовных дел

Некоторые особенности осмотра средств сотовой связи при расследовании уголовных дел

Васюков Виталий Федорович, преподаватель кафедры криминалистики и предварительного расследования в ОВД Орловского юридического института МВД России имени В.В. Лукьянова, кандидат юридических наук, майор полиции.

Булыжкин Александр Викторович, начальник кафедры криминалистики и предварительного расследования в ОВД Орловского юридического института МВД России имени В.В. Лукьянова, кандидат юридических наук, доцент, подполковник полиции.

В статье рассматриваются практические вопросы процессуального характера, возникающие при осмотре средств сотовой связи в ходе расследования уголовных дел.

Ключевые слова: осмотр, средство сотовой связи, мобильный телефон, расследование преступлений, абонент, абонентское соединение.

Some peculiarities of examination of means of cell communication in investigation of criminal cases

V.F. Vasyukov, A.V. Buly'zhkin

The article considers practical issues of a procedural nature, arising during the inspection of the means of cellular communication in the course of a criminal investigation.

Key words: inspection, means of cellular communication, mobile phone, investigation of crimes, the subscriber, the subscriber connection.

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

В таких случаях неотъемлемым следственным действием по уголовному делу является осмотр обнаруженного или изъятого средства сотовой связи, который, как правило, делится на несколько этапов:

  1. Внешний осмотр. На стадии внешнего осмотра происходит непосредственное изучение и фиксация наружного строения и состояния аппарата, в рамках которого в протоколе указываются марка, модель, тип, форма аппарата, цвет корпуса, размер; наличие объективов тыльной и (или) лицевой фото/видеокамеры (вспышки), фирменных наименований, логотипа, обозначений; количество и расположение функциональных, встроенных, сенсорных клавиш (джойстика); разъемов Mini(Micro)USB, зарядного устройства, стереонаушников; наличие отверстий для динамика, микрофона, датчика расстояния, внешней освещенности. Отдельно указываются особые приметы наружного строения: повреждения — сколы, царапины, потертости, отсутствие должных элементов; наличие дополнительных атрибутов и технических составляющих — чехла, шнурка, брелока, гарнитуры, полимерных наклеек, графических вставок, надписей, инкрустации драгоценными металлами и др. В ходе внешнего осмотра проводится детальная фотосъемка внешней, оборотной, боковых панелей мобильного телефона. В случае если осматриваемый телефон раскладного ("бабочка") или раздвижного типа ("слайдер"), то телефон фотографируется в первоначальном и раскладном/раздвижном состоянии.
  2. Конструктивный осмотр. На данной стадии производится осмотр конструкции телефона по частям — задней крышки телефона и (или) аккумуляторной батареи (в определенных моделях аппаратов сотовой связи батарея встроена в корпус либо в заднюю крышку), флеш-карты, SIM-карт(ы). При осмотре аккумуляторной батареи в протоколе следует указать ее идентификационный номер, тип, марку, модель, мощность, иную информацию, указанную на корпусе. Также в протоколе указывается цвет и родовой материал, из которого изготовлена батарея. При осмотре флеш-карты (MiniSD) необходимо обратить внимание на ее идентификационный номер, объем, цвет и родовой материал корпуса. SIM-карта, обнаруженная в телефоне, осматривается аналогичным образом. Как правило, на корпусе SIM-карты имеется логотип оператора сотовой связи, описание которого также обязательно в протоколе.

В ходе конструктивного осмотра проводится детальная фотосъемка внешней и оборотной стороны батареи, флеш-карты, SIM-карты, а также тыльной стороны корпуса мобильного телефона (без задней крышки) так, чтобы на снимке был виден IMEI-номер аппарата.

  1. Осмотр информационной среды. Осмотр информационной среды телефона включает изучение и фиксацию сведений, которые содержатся в памяти мобильного телефона, флеш-карты, SIM-карты. В случае если в ходе осмотра следователю удалось включить мобильный телефон и получен доступ к сведениям, которые в нем находятся, в протоколе в хронологическом порядке фиксируются все производимые в дальнейшем с аппаратом манипуляции.

В следственной практике нередко возникают ситуации, в которых в ходе производства первоначальных следственных действий изымается сразу несколько аппаратов сотовой связи во включенном состоянии. Выключать в таких случаях мобильные телефоны до осмотра нецелесообразно (отключение может произойти при извлечении батареи, SIM-карты, просмотре IMEI-кода на наклейке, расположенной во внутренней части панели телефона и т.д.), т.к. при последующем включении потребуются коды блокировки (PIN-код), которые могут быть известны только его последнему пользователю (подозреваемому, свидетелю или потерпевшему). Отказ последнего в предоставлении информации по разблокировке телефона может исключить возможность незамедлительного полноценного исследования его информационного содержимого (электронной записной книжки, входящих и исходящих соединений, SMS-, MMS-сообщений, E-mail, голосовой почты, фото-, видеофайлов, диктофонных записей, органайзера и др., в зависимости от модели телефона). Поэтому важно подчеркнуть, что если к моменту осмотра телефон был включен, то конструктивный осмотр следует проводить только после изучения его информационной среды.

Читайте так же:
За мной следят через телефон как отключить

Представляется особо значимым акцентировать внимание на том, что если для уголовного дела представляют значение данные о входящих и исходящих сигналах соединения телефонных аппаратов конкретных пользователей связи, то в случае отсутствия согласия законного владельца мобильного телефона следователь может осматривать подобного рода информацию только по решению суда. Обязательность исполнения этого положения корреспондирует с позицией Конституционного Суда Российской Федерации, выраженной в Определении от 2 октября 2003 г. N 345-О: ". информацией, составляющей охраняемую Конституцией Российской Федерации и действующими на территории Российской Федерации законами тайну телефонных переговоров, считаются любые сведения, передаваемые, сохраняемые и устанавливаемые с помощью телефонной аппаратуры, включая данные о входящих и исходящих сигналах соединения телефонных аппаратов конкретных пользователей связи; для доступа к указанным сведениям органам, осуществляющим оперативно-розыскную деятельность, необходимо получение судебного решения. Иное означало бы несоблюдение требования статьи 23 (часть 2) Конституции Российской Федерации о возможности ограничения права на тайну телефонных переговоров только на основании судебного решения" [2].

Таким образом, в случае отказа лица — владельца мобильного телефона в даче согласия на его осмотр, но при необходимости производства осмотра в связи с его неотложностью, следователь может руководствоваться требованиями ч. 5 ст. 165 УПК РФ.

Осмотр информационной среды необходимо начать с указания в протоколе процедуры разблокировки клавиатуры телефона, перечисления графических и текстовых элементов, которые отобразились на его экране после разблокировки. Затем осуществляется проверка IMEI-номера мобильного телефона нажатием комбинации клавиш *#06# (пятнадцатизначный номер должен отобразиться на экране телефона).

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

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

Напомним, что для извлечения и анализа информационных данных из средства сотовой связи любого типа и вида в следственной и экспертной практике широко используются специальные устройства ("Мобильный криминалист", "UFED", "XRY" и др.), позволяющие войти в операционную систему в обход (либо распознавая) паролей и логинов, работать с мобильными устройствами без аккумулятора, либо отдельно с SIM-картой [3]. Поэтому в случае если доступ к информационной среде мобильного телефона затруднен, то для участия к осмотру необходимо привлечь специалиста, имеющего навыки пользования данными устройствами.

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

Телефоны с отпечатком пальца

Телефоны с отпечатком пальца пользуются все большей популярностью, так как они считаются самыми защищенными. Сканер отпечатков пальцев представляет собой тип электронной системы безопасности, которая использует отпечатки пальцев для биометрической аутентификации, чтобы предоставить пользователю доступ к информации или для одобрения транзакций.

Отпечаток пальца

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

Отпечаток пальца

Что такое сканеры отпечатков пальцев

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

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

Отпечаток пальца в телефоне

Сканер отпечатка пальца появился самым последним из всех способов идентификации. Уже были пин-коды, коды шаблонов, пароли, распознавание лиц, определение местоположения, сканирование диафрагмы, распознавание голоса, надежное соединение Bluetooth/NFC.

Зачем же нужен новый метод защиты, если можно поставить пароль?

Многие пользуются новой технологией защиты для безопасности, удобства и футуристического ощущения.

Читайте так же:
Лучшие кнопочные смартфоны 2018

Принцип работы и типы

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

Метод захвата данных отпечатков зависит от типа используемого сканера:

  • Оптический датчик: эти типы датчиков в основном делают фотокопию пальца. Многие освещают палец, чтобы обеспечить четкий контраст линий, поскольку светочувствительный датчик изображения или светочувствительный микрочип записывает информацию для создания цифрового изображения. Многие компьютерные устройства и смартфоны на Андроид и iOS с хорошей камерой для сканирования используют оптические датчики.
  • Емкостный датчик: вместо света, эти системы используют электричество (аналогично работают сенсорные экраны), чтобы определить образцы отпечатков пальцев. Как только палец опирается на сенсорную поверхность, устройство измеряет заряд; хребты демонстрируют изменение емкости, а долины практически не меняются. Датчик использует все эти данные для точной печати отпечатков. Большинство смартфонов со сканерами пальцев используют емкостные датчики.
  • Ультразвуковой датчик: Подобно тому, как летучие мыши и дельфины используют эхолокацию для поиска и идентификации объектов, ультразвуковые датчики работают через звуковые волны. Аппарат предназначен для отправки ультразвуковых импульсов и измерения количества отскоков назад. Хребты и долины отражают звук по-разному, именно так ультразвуковые сканеры могут создавать подробную 3D-карту отпечатков пальцев. Ультразвуковые датчики в настоящее время прототипируются (например, Qualcomm Technologies, Inc.) и протестированы для использования в мобильных устройствах, например, iPhone.

Плюсы и минусы использования сканеров отпечатков пальцев

Плюсы и минусы использования сканеров отпечатков пальцев

Плюсы использования сканеров отпечатков пальцев:

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

Минусы использования сканеров отпечатков пальцев:

  • Не 100% надежность. Люди с нужными ресурсами, временем и самоотверженностью могут обманывать сканеры фальшивками и/или отпечатками мастера.
  • Невозможно получить новые отпечатки. Можно менять/заменять карты, коды и пароли, но нельзя сделать это, если кто-то украдет данные отпечатка пальца.
  • Шифрование по-прежнему вызывает сомнения. Безопасность данных зависит от производителя программного обеспечения/оборудования.
  • Дефект на пальце может затруднить успешное сканирование и запретить доступ к авторизации пользователям. Даже небольшие недостатки могут создавать трудности. Царапина, укус – все, датчик не работает.
  • Микробы. Знаете ли вы, сколько людей коснулись этого общественного сканера, прежде чем это сделали вы? Лучше сначала продезинфицировать его.

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

Телефоны с технологией сканирования

Motorola Atrix стала первым смартфоном, который использовал эту технологию защиты, еще в 2011 году. С тех пор появились многие другие телефоны с отпечатком пальца. Примеры включают (но не ограничиваются ими): Apple iPhone 5S, модели Apple iPad, Apple iPhone 7, Samsung Galaxy S5, Huawei Honor 6X, Huawei Honor 8 PRO, OnePlus 3T, OnePlus 5 и Google Pixel. Вероятно, что еще больше мобильных устройств будут поддерживать сканеры отпечатков пальцев с течением времени.

На большинстве смартфонов уже предустановленна программа для сканирования, но на некоторых моделях придется установить приложение самостоятельно.

Добавить отпечаток пальца на телефон

Проблемы со считыванием

Несмотря на то, что считыватели считаются довольно точными, может быть несколько причин, по которым не происходит авторизация.

Если перестал работать датчик, может проблема кроется в следующем:

  • Влажные или жирные руки.
  • Электронный сбой. Нужно перезагрузить устройство.
  • Дефект на пальце – царапина, укус и другой след могут стать причиной того, что считыватель не сработает.

Большинство производителей предвосхитили эти моменты, поэтому некоторые устройства все еще могут быть разблокированы паролями, пин-кодами или сканированием диафрагмы.

Пароль

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

Некоторые пользователи спрашивают, как разблокировать телефон с отпечатком пальца другого человека?

В принципе, защиту можно обойти. Например, ситуация: муж спит на диване, а жена хочет забраться в его сообщения, поискать компромат. Для разблокировки девайса можно просто прислонить палец спящего мужа. Конечно, такой путь не всегда доступен. Но можно сделать хитрее – найти место, где касался человек и остался его явный след, посыпать пудрой и приклеить скотч. Дальше кусок скотча прислоняется к телефону и, в большинстве случаев, считыватель открывает доступ.

Читайте так же:
Диктофон в телефоне sony xperia

Google Smart Lock: что это за программа на Android

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

Сейчас самым популярным способом разблокировки устройства является использование сканера отпечатка пальца. Также можно применять и разблокировку по лицу, но как показывает практика, на Android она менее безопасная. И если про эти варианты защиты знают практически все, то что такое Google Smart Lock на телефоне Android известно не каждому. Давайте разберемся, что это за программа, а также рассмотрим принцип её настройки.

Что такое Smart Lock на Android

Если внимательно посмотреть на название программы, то можно догадаться, что она каким-то образом связана с блокировкой смартфона. Так и есть, потому что Google Smart Lock – современная опция, позволяющая значительно облегчить разблокировку телефона. В основе работы сервиса лежит анализ поведения пользователя, то есть ведение статистики по посещённым местам, контактам с другими устройствами и прочим действиям. Система определяет уровень безопасности нахождения владельца, и на основании этого решает – включить блокировку экрана или нет.

настройки Google Smart Lock

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

Как настроить Smart Lock

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

  1. Заходим в настройки.
  2. Переходим в раздел «Блокировка и защита» либо «Экран блокировки и безопасность». Опять-таки заметим, что названия пунктов в зависимости от установленной прошивки и версии Android могут отличаться.
  3. Открываем вкладку «Защита устройства» или «Тип блокировки экрана».
  4. Нажимаем по строке «Способ защиты» и выбираем нужный вариант блокировки.

включение блокировки смартфона

А теперь возвращаемся в раздел с настройками безопасности и находим в нём пункт «Smart Lock». Нажимаем по нему и видим список с настройками.

настройка программы Smart Lock

Давайте разберём каждый из вариантов защиты:

  • Физический контакт. Современная опция, основанная на использовании информации о перемещении устройства в пространстве. За основу здесь взят установленный в телефоне акселерометр или гироскоп. Программа анализирует данные с датчиков и определяет – держит ли человек смартфон в руке или нет.
  • Безопасные места. Утилита Google Smart Lock предлагает выбрать определённые безопасные места, где телефон не будет требовать ввода пароля. Это может быть ваш рабочий офис, любимое кафе или дом. Но стоит отметить, что для работы функции GPS должен постоянно находиться в работающем состоянии. Это совсем не хорошо, так как значительно влияет на расход аккумулятора.
  • Надежные устройства. Мы постоянно находимся в окружении многих устройств. Это и умные часы, Bluetooth колонка, магнитола автомобиля и прочие современные девайсы. Разработчики сервиса Smart Lock позволяют перенести все эти гаджеты в список надёжных устройств. Это позволит системе разблокировать телефон при нахождении рядом с этими девайсами.
  • Распознавание лиц. Подобный вариант разблокировки используют многие пользователи, поэтому его также можно активировать в настройках Google Smart Lock. Функция в принципе удобная, но не совсем безопасная. Иногда разблокировать телефон можно при помощи обычной фотографии его владельца.
  • Распознавание по голосу. Все, наверное, знают фирменного голосового ассистента от Google. Достаточно произнести команду «О’кей, Google» и помощник уже готов выполнять ваши требования. Аналогичная технология применяется в программе Smart Lock. Система запоминает голос владельца, а после произношения нужной команды разблокирует устройство.

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

Как отключить Google Smart Lock

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

  1. Открываем настройки.
  2. Переходим в раздел «Расширенные настройки».
  3. Открываем вкладку «Конфиденциальность».
  4. Заходим в подкатегорию «Агенты доверия».
  5. Убираем галочку возле единственной строки «Smart Lock».

отключение Google Smart Lock

Что касается устройств с версией Android 5, то здесь принцип действий немного другой:

  1. Заходим настройки.
  2. Открываем вкладку с настройками аккаунта Google.
  3. Переходим в раздел «Smart Lock».
  4. Убираем галочку возле строки «Smart Lock для паролей».
Читайте так же:
Игровой телефон asus predator

отключение Google Smart Lock на Android 5

Чтобы включить функцию Smart Lock, достаточно проделать указания инструкций в обратном порядке.

Таким образом, Google Smart Lock – программа, или лучше сказать опция, предназначенная для упрощения разблокировки смартфона. Она анализирует данные местоположения, расположения устройства в пространстве, голос пользователя, а также находящиеся рядом устройства. Для отключения функции достаточно убрать галочку с соответствующего пункта в настройках телефона.

Кейс: Хабиб vs МакГрегор или Распознавание лиц на Python

Детекция (т.е. нахождение) и распознавание лиц — очень популярная задача в современном мире: в метро уже давно следят за нашими передвижениями, а в загородных домах все чаще ставят «умные дверные глазки».

Так уж сложилось, что сейчас уже нельзя просто написать программу для распознавания лиц и присвоить себе должность Senior Data Scientist — таких знаний требуют даже от начинающих специалистов.

Если Вы еще не игрались с распознаванием лиц, но хотите развиваться в области нейронных сетей (ну или просто Вам интересна эта область), то эксперты IT Resume подготовили для вас этот гайд — давайте вместе пройдем все шаги:

  • научимся загружать и представлять фотографии в виде матриц;
  • проведем обработку исходных фотографий;
  • задетектим лица на фотографии;
  • обработаем изображения нейронной сетью;
  • посмотрим — сможет ли сеть понять, что мы ей дали два фото одного и того же человека.

Для работы нам потребуется:

    — среда для работы с Python в браузере. Они еще доступ к GPU дают (а для нейронных сетей это очень нужно).
  1. И все ?

Этап 1. Подключение модулей

Перед тем, как начать работу, давайте сменим среду выполнения на «Ускорение GPU». В будущем нам это понадобится для работы нейронной сети. Для этого в Google Colab нажимаем «Среда выполнения» → «Сменить среду выполнения» → «Аппаратный ускоритель GPU».

ABBYY , Москва, можно удалённо , От 230 000 ₽

Теперь подключим необходимые библиотеки. В Colab большинство библиотек уже установлено, поэтому нам осталось их только импортировать:

  • cv2 — для загрузки и обработки изображений;
  • dlib — для детекции лиц;
  • numpy — для работы с матрицами.

Помимо этого, с помощью команды pip install face_recognition мы устанавливаем библиотеку face_recognition — с ее помощью мы будем обрабатывать лицо нейронной сетью.

Примечание Вообще сделать полную обработку можно всего за несколько строчек кода, потому что в библиотеке face_recognition многие процессы (например, детекция лиц) уже завернуты в функции. Но мы намеренно некоторые вещи будем делать «с нуля», чтобы вы лучше во всем разобрались.

Этап 2. Первичная настройка

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

Начнем с настройки детектора лиц. Сначала скачиваем файл с готовой моделью с помощью команды wget (да, именно этой командой Цукерберг запустил Фэйсбук в фильме Социальная сеть) и распаковываем файл в формат .dat.

Далее создаем детектор лиц и передаем скачанную модель в shape_predictor , который будет предсказывать ключевые точки человеческого лица — контур головы, глаза, нос и рот.

Отлично, теперь мы готовы переходить к содержательной части — обработке фотографий.

Этап 3. Загрузка и обработка фотографий

Перед тем, как загружать фотографию в переменную Python, ее надо загрузить в файловое хранилище Google Colab. Для этого достаточно нажать на иконку Папки на левом сайдбаре и выбрать Upload.

Мы, например, загрузим фотографию Конора МакГрегора.

Отлично, теперь надо «прочитать» изображение в переменную Python. Это можно сделать несколькими способами, но нам удобнее представить изображение сразу в виде матрицы. Это можно сделать с помощью функции imread из модуля cv2 .

Если вы загружаете цветную картинку, то «матрица» будет иметь размерность 3*height*width , где 3 — количество цветовых каналов (RGB), а width и height — размерность картинки в пикселях. Проверить это можно с помощью метода shape . Каждое число в матрице — значение пикселя по конкретному цветовому каналу.

Кстати говоря, если вы хотите посмотреть на загруженную картинку, то вам нужно:

  1. Импортировать команду cv2_imshow : from google.colab.patches import cv2_imshow .
  2. Передать в функцию cv2_imshow нужную картинку: cv2_imshow(img) .

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

Поэтому давайте переведем нашу цветную картинку в черно-белую:

Теперь переходим к следующему этапу — детекция лица.

Этап 4. Детекция лица

Детектор лиц у нас уже настроен, поэтому можем переходить непосредственно к детекции. Делать это будем в 2 этапа:

  1. Ищем прямоугольники, в которых находятся лица.
  2. По этим прямоугольникам предсказываем контуры и ключевые точки лица.
Читайте так же:
Датчик присутствия в смартфоне что это

С помощью detector мы получим координаты нужного прямоугольника. Если лиц несколько, то и наборов точек будет несколько. Чтобы выбрать конкретное лицо, нужно указать индекс (в нашем случае — ноль).

Чтобы посмотреть на результат, можно нарисовать рамку вокруг лица с помощью метода rectangle и посмотреть фото с помощью cv2_imshow . Только будьте осторожны — рамка останется на фото навсегда, так что лучше потом загрузить изображение заново.

Теперь по найденным квадратам нужно «предсказать» ключевые точки лица. Для этого используем predictor , а потом извлекаем координаты точек.

  • лямбда-функции;
  • функцию map ;
  • распаковку.

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

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

Этап 5. Обработка нейронной сетью

Основная идея обработки сетью заключается в том, что из исходного «большого» изображения выделяются только ключевые признаки, которые впоследствии и помогут нам отличить одного человека от другого. Другими словами, многомерная матрица-картинки преобразуется в относительно небольшой числовой вектор, который характеризует лицо с картинки.

Итак, получить итоговый вектор очень просто — достаточно вызвать функцию face_encodings .

Примечание Обратите внимание, что в качестве аргументов мы передали только изображение, а полученные ранее ключевые точки мы не использовали. Причина очень проста — функция face_encodings делает все те же самые действия, которые мы с вами проделали вручную ранее для понимания процесса «изнутри».

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

Однако, от этого вектора нам толку мало — чтобы оценить эффективность «нейросетевых технологий», нужно сравнить два вектора для двух разных фотографий. Давайте немного поэксперементируем — будем подавать разные фото на вход и сравнивать с нашим изначальным фото МакГрегора.

Этап 6. Сравнение векторов

Чтобы сравнивать лица между собой, мы будем действовать следующим образом:

  1. Загружаем новое фото и производим обработку, которую уже разобрали на предыдущих этапах. На выходе получаем вектор.
  2. Сравниваем вектора между собой.
  3. На основании расстояния принимаем решение — один и тот же человек на фото или разные.

Встает вопрос — что значит «сравнить вектора»? Самый простой способ — посчитать расстояние в некоторой метрике. Мы выберем обычную евклидову метрику. Вычислять ее без лишнего кода нам позволит функция pdist из scipy.spatial.distance .

Итак, сначала загрузим еще одну фотографию Конора.

Сохраняем полученный вектор для первой фотографии в vector1 , для второй — в vector2 и вычисляем расстояние:

Получаем ответ — 0,48. Это достаточно близкое расстояние, из чего делаем вывод, что это один и тот же человек. Сеть справилась отлично!

Ну хорошо, еще пару экспериментов — давайте возьмем снова Конора, но усложним задачу — пусть он будет в очках.

Результат — 0,56. Снова в яблочко (разработчик библиотеки face_recognition рекомендует придерживаться порога 0,6 — если больше 0,6, то это другой человек).

Ну что ж, а может сеть просто всех определяет как Конора? Давайте подсунем ей другого бойца — Хабиба Нурмагомедова. Что наша сеть на это скажет?

Снова проводим уже известную процедуру и ответ… — 0.72. По утвержденному ранее порогу, делаем вывод: Хабиб — не Конор. Сеть снова нас не подвела, и мы со спокойной душой можем переходить к более сложным проектам.

Эпилог

Мы с вами разобрали основной инструментарий, который вам понадобится для старта в области face recognition (да и в нейронных сетях, в целом). Однако это далеко не предел — мы затронули лишь верхушку айсберга, опустив очень много моментов как программных, так и математических.

Вот несколько вещей, которые мы рекомендуем вам сделать, чтобы прокачаться в области Computer Vision (компьютерное зрение):

  • Научитесь выстраивать процесс распознавания с нуля, без использования оберток (чем является библиотека face_recognition ). Начните хотя бы с изучения исходников этой библиотеки на GitHub — там ничего сверхсложного нет.
  • Попробуйте разные нейронные сети. Погуглите state-of-the-art решения и посмотрите — чем будет различаться результат.
  • Изучите структуру нейронных сетей (например, сверточных) с математической точки зрения. Это можно сделать с помощью многочисленных туториалов и официальной документации библиотек (например, PyTorch).

Есть много и других точек роста, но начните с этих — остальные мысли придут в процессе

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector