Разработка алгоритма цифровой обработки образов отпечатка пальца
Реферат
Ключевые слова: биометрия, аутентификация, отпечаток пальца, преобразование Габора.
Цель работы: разработка алгоритма цифровой обработки образов отпечатка пальца, обладающего преимуществами по сравнению с существующими алгоритмами.
В данной работе рассматриваются вопросы улучшения качества отпечатков пальца с целью повышения эффективности работы алгоритмов биометрической аутентификации. Проведен обзор алгоритмов обработки изображений отпечатков пальцев, выполнен анализ алгоритма, основанного на использовании преобразования Габора. Разработано программное обеспечение, реализующее обработку отпечатков пальца с помощью данного алгоритма и проведен численный эксперимент, позволяющий сделать выводы о применимости преобразования Габора в алгоритмах биометрической аутентификации.
Содержание
Введение
Биометрическая аутентификация на основе отпечатка пальца является важной темой для исследования в сфере информационной безопасности. На сегодняшний день разработаны различные алгоритмы, производящие обработку образов с целью улучшения качества. Однако пока не отпадает необходимость в разработке и реализации алгоритмов с с лучшими характеристиками.
Таким образом, целью дипломного проектирования является разработка алгоритма цифровой обработки образов отпечатка пальца, обладающего преимуществами по сравнению с существующими алгоритмами.
Задачами дипломного проекта являются:
- исследование математических методов и алгоритмов обработки отпечатков пальца;
- математическая постановка задачи;
- выбор рационального алгоритма из условия обеспечения качества фильтрации и сохранения ключевой информации;
- программная реализация выбранного алгоритма обработки биометрических образов, обработка результатов численного эксперимента;
- обоснование экономической целесообразности проекта
- рассмотрение организационно-правовых вопросов проекта
Дипломный проект состоит из 5 частей.
В первой части содержатся общие сведения о проблеме обработки образов отпечатков пальца, введены основные понятия. Приведен обзор существующих алгоритмов.
Во второй части проекта описаны плюсы и минусы алгоритмов, рассмотренных в исследовательской части. Выбран наиболее рациональный алгоритм из условия качества фильтрации и сохранения ключевой информации. Описан математический аппарат выбранного метода в контексте поставленной задачи. Приведена математическая постановка задачи.
Третья часть посвящена реализации программного обеспечения, иллюстрирующего работу алгоритма. Подробно описаны этапы работы алгоритма, приведены полученные результаты.
В четвертой части рассматриваются правовые аспекты, касающиеся дипломного проекта.
В пятой части рассмотрены организационно экономические показатели проектной разработки, оценена экономическая выгода реализации проекта.
Расчетно-пояснительная записка состоит из … листов, включает в себя 31+ мат постановка(медианный фильтр уже учтен), рисунок, 11 таблиц, список литературы из 9 наименований.
-
Исследовательская часть
1.1 Введение
Биометрия является прикладной областью знаний, использующей при создании различных автоматических систем разграничения доступа. В биометрии используются уникальные признаки, присущие каждому отдельному человеку (папиллярный узор пальца, форма кисти руки, узор радужной оболочки глаза, параметры голоса, черты лица, термограмма лица, схема кровеносных сосудов, форма и способ подписи, фрагменты генетического кода и др.) и не отделимые от него.
Биометрическая идентификация является дополнительным уровнем защиты, так как биометрические данные человека сложно подделать. Так же биометрические данные неизменны и уникальны для каждого человека, что является их достоинством. Основное преимущество аутентификации по биометрическим параметрам очевидно: данные невозможно забыть, потерять, передать другому человеку или украсть, воспроизвести в полном объеме.
Для биометрических методов идентификации и аутентификации используются статистические и динамические характеристики личности. Биометрическими характеристиками человека могут являться голос, лицо, структура ДНК, отпечатки пальцев, контур ладони, рисунок вен руки, сетчатка глаза, особенности подписи, походки и другие. На рисунке 1.1 приведена классификация биометрических методов по принципу действия.
Рис.1.1. Биометрический методы аутентификации
Как видно их рисунка 1, методы биометрической аутентификации делятся на два класса: статистическая и динамическая. Статистическая аутентификация включает методы, основанные на изучении и анализе характеристик, не меняющихся с течением всей жизни человека, таких как отпечаток пальца, рисунок радужной оболочки глаза, строение ДНК и другие. Динамические методы построены на анализе тех характеристик человека, которые могут измениться с течением времени, такие как походка, почерк или характер набора на клавиатуре.
Идеальная биометрическая характеристика должна обладать следующими свойствами:
• универсальность возможность представления человека одной единственной характеристикой;
• уникальность исключение возможности существования двух человек с идентичными характеристиками;
• постоянство независимость характеристики от времени и (относительно) от внешних условий;
• измеримость возможность быстрого и легкого получения характеристики
В таблице 1.1 показаны экспертные оценки свойств характеристик человека.
Таблица 1.1. Экспертные оценки свойств биометрических характеристик человека. +++ - высокая оценка, ++ - средняя, + - низкая.
Характеристика |
Универсальность |
Уникальность |
Постоянство |
Измеримость |
Видеообраз лица |
+++ |
+ |
++ |
+++ |
Термограмма лица |
+++ |
+++ |
+ |
+++ |
Отпечаток пальца |
++ |
+++ |
+++ |
++ |
Геометрия руки |
++ |
++ |
++ |
+++ |
Радужная оболочка глаза |
+++ |
+++ |
+++ |
++ |
Сетчатка |
+++ |
+++ |
++ |
+ |
Подпись |
+ |
+ |
+ |
+++ |
Голос |
++ |
+ |
+ |
++ |
Отпечаток губ |
+++ |
+++ |
++ |
+ |
Особенности ушной раковины |
++ |
++ |
++ |
++ |
Динамика письма |
+++ |
+++ |
+ |
+++ |
Походка |
+++ |
++ |
+ |
+ |
Как видно из таблицы, отпечаток пальца, являющийся основной темой данной статьи, имеет высокую оценку уникальности и постоянства, и среднюю оценку универсальности и измеримости.
С точки зрения потребителя биометрическая идентификация является подготовительной операцией перед основными процедурами биометрической аутентификации. Основной задачей биометрических систем является задача биометрической аутентификации. Принципиальным отличием идентификации и аутентификации является уровень доверия к пользователю. На предварительном этапе идентификации системы (обучения системы) уровень доверия к регистрируемому пользователю априорно высок. В многопользовательской системе биометрическая идентификация обязательно должна проводиться под прямым контролем ее владельца или его представителя, подтверждающего полномочия регистрируемой личности и корректность ее поведения при обучении системы.
Режим биометрической аутентификации, напротив, предполагает низкий уровень доверия к аутентифицируемой личности. При биометрической аутентификации личность-заявитель должна доказать подлинность своего заявленного имени путем предъявления своих уникальных биометрических образов. Следует отметить, что биометрическая аутентификация потенциально уязвима, если она используется независимо от методов классической аутентификации, основанных на протоколов с использованием паролей и ключей. Достаточный уровень информационной безопасности может быть обеспечен только путем сочетания методов классической и биометрической аутентификаций.
Как видно из диаграммы (Рисунок 1.2), дактилоскопический метод, основанный на уникальности рисунка папиллярных линий на пальцах человека, является самым распространенным на сегодняшний день биометрическим методом.
Рис.1.2. Распространенность различных биометрических методов, %.
1.2 Дактилоскопия
Основная тема данной работы связана с дактилоскопией способом опознания человека по отпечаткам пальцев, основанном на неповторимости рисунка кожи рук. Данный метод широко применяется в криминалистике и различных системах идентификации и аутентификации. Впервые с целью идентификации личности был применен в 1902 году. После этого дактилоскопический метод опознания личности получил широкое распространение в различных странах мира. Изначально применялся в криминалистике, с целью идентификации личности. Отсутствие компьютеров в то время во многом определило направление развития дактилоскопии. С ростом количества отпечатков пальцев возникла проблема их классификации. Решение этой проблемы позволяло намного быстрее сравнивать отпечатки, ведь операцию сравнения приходилось производить вручную, без использования средств автоматизации. Одним из способов классификации являлось разделение отпечатков по типу папиллярного узора; отпечатки бывают трех типов: арки, петли и завитки (Рисунок 1.3).
(а) (б) (в)
Рис. 1.3. Различные типы узоров отпечатка пальца: арка (а), петля (б) и завиток (в).
Еще одним признаком классификации является так называемый счетчик линий количество линий папиллярного узора, расположенных между различными точками изображения например между центром и дельтой для отпечатка типа петля.
Позднее, с появлением компьютеров и их входом в обиход, отпечатками пальцев так же заинтересовались коммерческие корпорации. На данный момент дактилоскопический метод является самым распространенным на сегодняшний день методом идентификации и аутентификации. Он широко применяется при аутентификации с целью физического разграничения доступа или доступа к данным. Однако, несмотря на свое широкое применение, надежность дактилоскопического метода не является доказанной предположение о неповторимости отпечатков пальца не имеет достаточного научного обоснования, а для опознания по отпечаткам нет оценки достоверности. На практике же достоверность принимается равной 100 %.
1.3 Общие сведения о проблеме
1.3.1 Методы сравнения отпечатков пальцев
На сегодняшний день существует два основных метода сравнения образов отпечатков пальца.
Первым методом является корреляционное сравнение. Рассмотри алгоритм, применяемый при использовании данного метода: полученный отпечаток пальца накладывается на каждый эталон из базы данных отпечатков, и производится расчет попиксельной разницы между входным и эталонным отпечатками.
Основное преимущество данного метода низкое требование к качеству полученного отпечатка. Недостатками является необходимость большого объема памяти для хранения базы данных, так как данный алгоритм требует большой объем памяти для каждого отпечатка, и низкое быстродействие алгоритма. Дело в том, что человек каждый раз прикладывает палец под разными углами и не точно в одно и то же место рабочей области сканера. А это значит, что процесс сравнения его ОП с эталонами должен включать в себя множество итераций, на каждой из которых изображение, полученное со сканера, поворачивается под небольшим углом или чуть-чуть смещается. Из-за длительности процедуры сравнения, особенно при решении задачи идентификации, то есть сравнения «один ко многим», данный метод крайне редко применяется при решении задач идентификации и аутентификации.
Вторым методом сравнения является метод, использующий ключевые точки минуции. Алгоритм работы следующий: на основе образа отпечатка пальца формируется шаблон, на котором выделены особые точки конечные точки и точки ветвления. При сравнении на входном изображении отпечатка пальца так же выделяются ключевые точки, после чего минуци данного отпечатка сравниваются с шаблонами; по количеству совпавших точек принимается решение об идентичности образов. Преимуществом данного алгоритма является скорость работы. Алгоритмы данного класса являются наиболее распространенными. В данной работе рассматриваются алгоритмы сравнения по особым точкам.
Для работы алгоритма сравнения отпечатков по особым точкам необходимо изображение высокого качества с низким уровнем шума. Поэтому для улучшения качества образов отпечатков пальца используются специальные алгоритмы обработки изображения.
1.3.2. Метод сравнения отпечатков по ключевым точкам (минуциям)
Рассмотрим более подробно метод сравнения отпечатков пальца, основанный на сравнении ключевых точек. Схема алгоритма представлена на рисунке 1.4.
Рис.1.4. Блок-схема алгоритма сравнения отпечатков с использование минуции
Как правило изображение, полученное с помощью сканера, имеет низкое качество. На качество полученного изображения влияет множество факторов сила нажима пальца при сканировании, влажность воздуха, чистота пальца и самого сканера. Поэтому для повышения качества исходного изображения используют различные методы фильтрации.
На этапе скелетизации бинарное изображение образа отпечатка пальца утончаются до скелета.
Скелетом линии называется простая цепь (u,v) с вершинами u и v-смежностями, проходящая вблизи геометрического центра линии, причем для каждой вершины существует ровно две смежные с ней вершины и , при этом вершины и не являются смежными.
Далее в скелете изображения производится поиск минуций ключевых точек. В большинстве алгоритмов для распознавания используется только два типа минуций- окончание и разветвление. В скелете изображения они определяются следующим образом:
Окончанием называется вершина скелета такая, что для неё существует ровно одна смежная с ней вершина . Разветвлением называется такая вершина скелета, что для неё существует ровно три смежные вершины , и , попарно несмежные.
Следующим этапом является поиск минуций в изображении. Для каждой ключевой точки определяется её тип (окончание или разветвление), координаты х и у, ориентация.
На рисунке 1.5 приведены результаты этапов фильтрации, скелезации и поиска минуций для образа отпечатка пальца.
а б в
Рис. 1.5. Изображение после фильтрации (а), скелет изображения (б) минуции (в).
Последним этапом аутентификации по отпечатку пальца является сравнение принятого на вход алгоритма изображение с эталоном из базы данных. На основе анализа всех имеющихся данных с использованием решающего правила принимается решение о разрешении или запрещении доступа.
1.4 Обзор существующих алгоритмов цифровой обработки образов отпечатка пальца
Рассмотрим наиболее распространенные на сегодняшний день алгоритмы обработки отпечатков пальца.
1.4.1 Сглаживающий фильтр
Данный метод широко используется для удаления шумов в изображении вообще и для удаления шумов в образе отпечатка пальца в частности. Заключается в сканировании всего изображения окном N размерности и перерасчета значения интенсивности для каждого пикселя. Новое значение вычисляется как среднее арифметическое от значения всех пикселей, попавших в окно:
,
где - новое значение интенсивности пикселя с координатами , - исходное значение интенсивности для пикселя с координатами .
(а) (б)
Рис. 1.6. Нормализованное изображение(а) и изображение после обработки сглаживающим фильтром (б).
1.4.2 Медианный фильтр
Так же широко распространенный метод удаления шумов в изображении. Изображение сканируется окном размерности , значение интенсивности пикселей внутри каждого окна сортируется по возрастанию (убыванию); выходным значением является интенсивность пикселя, находящегося в середине списка.
Пример
1.4.3 Метод пространственной фильтрации образа
Метод заключается в реализации физического процесса поглощения и отражения света
Работа данного алгоритма осуществляется в несколько этапов:
1. На вход алгоритма поступает полутоновое изображение R с градациях серого. На данном этапе работы алгоритма производится пороговая обработка образа отпечатка пальца для получения бинарного изображения.
,
где - значение пикселя с координатами в бинарном изображении.
2. Бинарное изображение сканируется окном размерности , для центрального пикселя окна с координатами рассчитывается коэффициент отражения, равный отношению количества попавших в окно белых пикселей к размерности окна:
,
где -коэффициент отражения пикселя с координатами .
3. На этом этапе рассчитывается новое значение интенсивности для каждого пикселя. Новое значение интенсивности пикселя равно произведению коэффициента отражения на максимальную интенсивность света:
,
где - максимальное значение интенсивности, - значение интенсивности пикселя с координатами .
1.4.4 Обработка изображения с применением фильтра Габора
Обработка образа отпечатка пальца данным алгоритмом осуществляется в несколько этапов:
1. Нормализация изображения. Необходимо для того, чтобы задать предварительные средние значения и отклонения. Нормализованное изображение G определяется как изображение, где G(i,j) значение нормализованной яркости пикселя с координатами (i, j). Нормализованное изображение рассчитывается исходя из среднего и среднеквадратического отклонения исходного изображения:
,
где и - заданные значения среднего и среднеквадратичного отклонения соответственно, и - исходные значения среднего и среднеквадратичного отклонения, вычисляются по формулам:
,
,
2. Из нормализованного изображения рассчитывается ориентационное изображение. Ориентационное изображение О определяется как изображение, где - локальная ориентации (угол наклона) выступа в пикселе с координатами :
где и - градиенты пикселя с координатами по осям X и соответственно Y.
3. Из нормализованного изображения рассчитывается частотное изображение. Частотное изображение F представляет собой изображение , где - локальная частота выступа, которая определяется как частота папиллярных линий образа отпечатка пальца. Если из-за особенностей папиллярного узора нет возможности определить частоту пикселя, то его частота определяется как средняя величина частоты соседних блоков.
Пусть -количество пикселей между двумя соседними вершинами гребней в блоке размерностью , центром которого является пиксель с координатами , тогда частота в данном пикселе будет равна:
.
4. Бинаризация изображения. Бинарное изображение R определим как изображение, где показывает категорию пикселя . Пиксель может быть пикселем впадины или пикселем гребня.
,
где - порог маскирования, - интенсивность пикселя нормализованного изображения.
5. Использование фильтров Габора, настроенных на локальную ориентацию выступов; применяется к нормализованному входному изображению:
,
где ; ; - ориентация фильтра Габора, - частота синусоидальной плоской волны, и - пространственные константы огибающей Гаусса вдоль осей x и y соответственно. Эти константы устанавливаются и корректируются на основе эмпирических данных о работе алгоритма.
(а) (б)
Рис.1.7. Пример исходного отпечатка(а) и результат обработки фильтром Габора для этого отпечатка(б).
1.5 Общие сведения о преобразовании Габора
В данном разделе будет дано определение преобразования Габора, перечислены его основные свойства, а так же рассмотрены особенности применения преобразования Габора в двумерном пространстве.
1.5.1 Преобразование Габора. Свойства преобразования Габора
Пусть у нас имеется функция , тогда преобразование Фурье для этой функции выглядит следующим образом:
Преобразование Фурье дает частотную информацию, содержащуюся в сигнале, то есть говорит нам о том, каково содержание каждой частоты в сигнале. Интеграл берется от минус бесконечности до плюс бесконечности, по всей временной оси. Поэтому в какой момент времени возникла та или другая частота, когда она закончилась - на эти вопросы ответ получить не удастся. Для преобразования Фурье равнозначно, присутствует ли какая-нибудь частота на протяжении всего исследуемого сигнала или возникла в определенный момент времени, ее вклад все равно будет одинаковым.
В связи с вышесказанным отметим, что преобразование Фурье непригодно для анализа нестационарных сигналов, за одним исключением, когда нас интересует лишь частотная информация, а время существования спектральных составляющих неважно.
Для исправления этих недостатков может быть использовано преобразование Габора.
Пусть
,
где - фиксированный параметр. Функция используется в качестве так называемого временного окна.
Преобразованием Габора функции f является следующее выражение:
где b параметр, используемый для сдвига окна. Преобразование Габора локализирует преобразование Фурье вокруг точки t = b.
1.5.2 Алгоритм построения одномерного фильтра Габора
Для построения одномерного фильтра Габора применяется формула:
,
где - стандартное отклонение гаусового ядра, определяющее амплитуду функции. Чем больше это значение, тем более пологий вид примет функция, и напротив, чем меньше значение, тем более острый пик получится в результате построения графика функции. - частота колебаний, определяемая как
,
где Т период функции косинуса.
На рисунке (Рисунок №) функция Габора, представляющая собой композицию косинуса и экспоненты.
Рис1.8. Функция Габора (3), представляющая собой композицию функции косинуса (1) и экспоненты (2).
1.6 Выводы
В данной части дипломного проекта были рассмотрены различные способы биометрической аутентификации, подробно был рассмотрен метод, основанный на уникальности рисунка отпечатка пальца человека. Были рассмотрены основные методы сравнения отпечатков пальца корреляционное сравнение и сравнение по ключевым точкам. Приведен обзор существующих на сегодняшний день алгоритмов обработки образов отпечатков пальца, применяющихся при сравнении отпечатков по ключевым точкам.
-
Конструкторская часть
2.1 Введение
В конструкторской части дипломного проекта принимается решение выбора алгоритма реализации задачи, подробно описывается математический аппарат алгоритма в контексте данной задачи. Приводится математическая постановка задачи.
2.2 Исследование алгоритмов обработки образов отпечатков пальца
2.2.1 Алгоритмы обработки образов, основанные на сглаживающих или медианных фильтрах
Одни из наиболее часто используемых фильтров, используемых для обработки образов отпечатка пальца. Широкое распространение получили благодаря простоте реализации и низких требований к ресурсам вычислительной системы. Однако данные фильтры обеспечивают крайне невысокую степень фильтрации, к тому же побочным результатом их использования является размытие изображения, что отрицательно влияет на последующие шаги алгоритма распознавания образа.
2.2.2 Метод пространственной фильтрации образа, заключающейся в реализации физического процесса поглощения и отражения света
Плюсами данного метода является простота его реализации и достаточно высокое быстродействие; несмотря на простоту, конечное изображение не имеет характерной расфокусировки, свойственной широко распространенным сглаживающим и медианным алгоритмам. Так же данный алгоритм обеспечивает выделение середин папиллярных линий, что упрощает дальнейшую обработку отпечатка и выделение его скелета, что упрощает последующие шаги алгоритма распознавания образа отпечатка пальца. Минусами данного метода является худшее, по сравнению с более сложными фильтрами, качество фильтрации и сохранения ключевой информации.
2.2.3 Алгоритм обработки образов основанный на фильтрах Габора
Преимуществом данного метода является самое высокое качество обработки образов ОП из применяемых на сегодняшний день фильтров. Недостатком самые высокие требования к вычислительной мощности из всех представленных алгоритмов.
Так как перед нами стоит задача выбрать алгоритм из условия качества фильтрации и сохранения ключевой информации, то наиболее рациональным выбором является алгоритм, основанный на фильтрах Габора, так как он лучше других удовлетворяет данным критериям.
2.3 Преобразование Габора
Рассмотри фильтр Габора в контексте нашей задач, а именно двумерный фильтр Габора.
2.3.1 Пространственный фильтра Габора для 2-D изображений
Формула функции Габора выглядит следующим образом:
,
где - комплексная синусоида, а - огибающая Гаусса для двумерного пространства. Остановимся более подробно на этих составных частях фильтра Габора.
2.3.2 Комплексная синусоида
Комплексная синусоида определяется как
,
где и Р определяются как пространственная частота и фаза синусоиды.
Можно представить синусоиду как две действительные функции, расположенные в действительной и мнимой части комплексной функции (Рисунок 2.1).
Рис. 2.1. Действительная и мнимая часть комплексной синусоиды с параметрами: , .
Действительная и мнимая части синусоиды имеют вид:
Параметры определяют частоту синусоиды в декартовых координатах.
2.3.3 Огибающая Гаусса
Огибающая Гаусса имеет вид:
,
где - координаты пика функции, а и b скалярные параметры Гауссиана, - индекс, обозначающий операцию вращения, такой, что:
.
Иллюстрация огибающей Гаусса представлена на рисунке 2.2.
Рис.2.2. Огибающая Гаусса при значениях параметров:
2.3.4 Комплексная функция Габора
Комплексная функция Габора определяется следующими 9 параметрами:
• K Весовая величина огибающей Гаусса
• (a,b) Весовые величины огибающей, распределенные по осям
• Угол вращения огибающей Гаусса
• Координаты пика огибающей Гаусса
• Пространственные частоты комплексной синусоиды
• Р Фаза комплексной синусоиды
Каждая комплексная функция Габора состоит из двух частей, расположенных в действительной и мнимой части функции (Рисунок 2.3).
Рис.2.3 Действительная и мнимая часть комплексной функции Габора.
Таким образом, функция Габора имеет вид:
2.3.5 Алгоритм построения двумерного фильтра Габора
Для построения двумерного фильтра Габора применяется формула
где , ; и - стандартные отклонения Гауссова ядра по осям соответственно, определяющая растянутость фильтра по осям; - частотная модуляция фильтра; - пространственное направление фильтра, определяющее ориентацию фильтра относительно осей x и y.
На Рисунке 2.4 изображена визуализация двумерной функции Габора в пространстве.
Рис.2.4. Двумерная функция Габора.
2.4 Применение фильтра Габора для 2-D изображений
Применение фильтра Габора для изображений осуществляется за четыре этапа.
Этап 1. Нормализация изображения.
Нормализация изображения необходима для того, чтобы задать предварительные средние значения и отклонения. Нормализованное изображение G определяется как изображение, где G(i,j) значение нормализованной яркости пикселя с координатами (i, j). Нормализованное изображение рассчитывается исходя из среднего и среднеквадратического отклонения исходного изображения:
,
где и - заданные значения среднего и среднеквадратичного отклонения соответственно, и - исходные значения среднего и среднеквадратичного отклонения, вычисляются по формулам:
,
На рисунке 2.5 приведен пример входного и нормализованного изображения
(а) (б)
Рис.2.5. Пример входного (а) и нормализованного (б) изображения образа отпечатка пальца.
Этап 2. Расчет ориентационного изображения.
Рассчитываем рассчитывается ориентационное изображение. Ориентационное изображение О представляет собой матрицу , в которой каждая компонента показывает локальную ориентацию (угол наклона в данной точке) линии с координатами .
.
Пример ориентационного изображения отпечатка пальца показан на Рисунке 2.6.
а) б)
Рис.2.6. Ориентационные изображения фрагментов отпечатка пальца. На рисунке а) изображен фрагмент центра, на рисунке б) фрагмент дельты.
Этап 3. Расчет частотного изображения.
Частотное изображение представляет собой матрицу размера , в которой каждая компонента показывает локальную частоту линий в данной точке, определяемую как частоту гребней , направленных вдоль ориентации выступа. В случае, если в какой-то точке невозможно определить четкую синусоидально-очерченную волну (например, из-за наличие особых точек в этих координатах), частота определяется как средняя величина частоты в соседних блоках.
Рис.2.7. Пример блоков, в которых невозможно четко определить четкую синусоидально-очерченую волну.
Рис.2.8. Волновое представление линий в ячейке
Расчет частоты в точке с координатой рассчитывается следующим образом: если количество пикселей между двумя соседними гребнями в блоке размерностью , и центр блока пиксель с координатами , то частота в данной точке будет рассчитываться как
Этап 4. Бинаризация изображения.
Изображение B определяется как изображение, если каждый пиксель принимает одно из двух возможных значений нуля единицы. Единица соответствует гребню отпечатка, ноль впадине:
,
где - порог маскирования, а - интенсивность пикселя изображения.
Этап 5. Применение к бинарному изображению фильтров Габора.
Фильтр настраивается на локальную ориентацию выступов, применяется к пикселям выступов и впадин изображения.
где ; ; - ориентация фильтра Габора, - частота, а и - пространственные константы огибающей Гаусса вдоль осей x и y соответственно.
Для использования Фильтра Габора нам необходимо знать значения следующих величин:
1) направление фильтра
2) частоту синусоидальной плоскостной волны
3) и - среднеквадратичные отклонения огибающей Габора
Частотная характеристика фильтра определяется из локальной частоты f выступов, направление определяется локальной ориентацией. Значения и можно задать при реализации алгоритма. Чем больше будут эти значения, тем более фильтр будет устойчив к шумам, но, в то же время, будет вносить больше искажений, создавая несуществующие выступы и впадины. Если выбрать значения и низкими, фильтр не будет вносить искажений, но его способность фильтровать значительно снизится, что приведет к неэффективному устранению шумов. Поэтому при подборе значений и пытаются найти компромисс между эффективностью фильтра и отсутствием вносимых фильтром искажений. Как правило эти параметры подбираются эмпирическим путем.
Рис.2.9. Пример отпечатка пальца, обработанного фильтром Габора.
2.5 ROC-анализ
Пусть имеется два класса: с положительным исходом и с отрицательным исходом. ROC-кривая показывает зависимость количества верно классифицированных положительных примеров от количества неверно классифицированных отрицательных примеров. В терминологии ROC-анализа первые называются истинно положительным, вторые ложно отрицательным множеством. При этом предполагается, что у классификатора имеется некоторый параметр, варьируя который, мы будем получать то или иное разбиение на два класса. Этот параметр часто называют порогом, или точкой отсечения (cut-off value). В зависимости от него будут получаться различные величины ошибок I и II рода. Для понимания сути ошибок I и II рода рассмотрим Таблицу 2.1.
Таблица 2.1 Ошибки первого и второго рода
Фактически |
||
Моедель |
Положительно |
Отрицательно |
Положительно |
TP |
FP |
Отрицательно |
FN |
TN |
TP (True Positives) верно классифицированные положительные примеры (так называемые истинно положительные случаи);
TN (True Negatives) верно классифицированные отрицательные примеры (истинно отрицательные случаи);
FN (False Negatives) положительные примеры, классифицированные как отрицательные (ошибка I рода). Это так называемый "ложный пропуск" когда интересующее нас событие ошибочно не обнаруживается (ложно отрицательные примеры);
FP (False Positives) отрицательные примеры, классифицированные как положительные (ошибка II рода); Это ложное обнаружение, т.к. при отсутствии события ошибочно выносится решение о его присутствии (ложно положительные случаи).
Для нашей задачи положительным исходом будет класс гребней (черные пиксели в для изображения), отрицательным исходом класс впадин (белые пиксели).
При анализе чаще оперируют не абсолютными показателями, а относительными долями, выраженными в процентах:
Доля истинно положительных примеров:
.
Доля ложно положительных примеров:
.
Введем еще два определения: чувствительность и специфичность модели. Ими определяется объективная ценность любого бинарного классификатора.
Чувствительность это и есть доля истинно положительных случаев:
,
Специфичность доля истинно отрицательных случаев, которые были правильно идентифицированы моделью:
,
Заметим, что .
Модель с высокой чувствительностью часто дает истинный результат при наличии положительного исхода (обнаруживает положительные примеры). Наоборот, модель с высокой специфичностью чаще дает истинный результат при наличии отрицательного исхода (обнаруживает отрицательные примеры). Если рассуждать в терминах нашей задачи:
- Чувствительный тест характеризуется максимальном предотвращении пропуска гребня;
- Специфичный тест диагностирует только истинные гребни. Это важно в случае, когда «гипердиагностика» не желательна.
ROC-кривая получается следующим образом:
1. Для каждого значения порога отсечения, которое меняется от 0 до 1 с шагом dx (например, 0.01) рассчитываются значения чувствительности Se и специфичности Sp. В качестве альтернативы порогом может являться каждое последующее значение примера в выборке.
2. Строится график зависимости: по оси у откладывается чувствительность Se, по оси х откладываем величину (сто процентов минус специфичность), или, что то же самое, FPR доля ложно положительных случаев.
Рис 2.10. ROC-кривая
Для идеального классификатора график ROC-кривой проходит через верхний левый угол, где доля истинно положительных случаев составляет 100% или 1.0 (идеальная чувствительность), а доля ложно положительных примеров равна нулю. Поэтому чем ближе кривая к верхнему левому углу, тем выше предсказательная способность модели. Наоборот, чем меньше изгиб кривой и чем ближе она расположена к диагональной прямой, тем менее эффективна модель. Диагональная линия соответствует "бесполезному" классификатору, т.е. полной неразличимости двух классов.
2.6 Подбор параметров алгоритма. Математическая постановка задачи
Задача: подбор параметров для оптимальной работы алгоритма из условия обеспечения качества фильтрации и сохранения ключевой информации.
- множество ключевых точек в изображении
- множество ошибок в изображении
Необходимо выбрать оптимальный набор параметров для фильтра изображения, основанного преобразовании Габора. Будет проводится подбор параметра , среднеквадратичной огибающей Гаусс, используемой в фильтре.
Каждому значению ставятся в соответствие значения функций и .
- функция вероятности ошибки первого рода, то есть вероятность внесения фильтром искажений в ключевую информацию
- функция вероятности ошибки второго рода, то есть вероятность игнорирования, т.е. не удаления шумов в изображении.
Если принять за некую функцию, являющуюся линейной комбинацией 2-х параметров:
,
где и - весовые коэффициенты,
то задачу можно сформулировать следующим образом необходимо найти такое значение параметра , что .
2.7 Решение поставленной математической задачи
Для решения поставленной в работе математической задачи необходимо определить диапазон значений, в котором будет производится подбор параметр и количество шагов подбора N.
Пусть - выбранный диапазон значений, тогда - величина шага.
Значение на шаге i определяется формулой:
, .
Необходимо найти такое i, при котором .
Примем , N=24, величина шага .
Результаты эксперимента показали, что значение функции минимально при .
На рисунке 2.10 проиллюстрирована работа алгоритма при разных значениях параметра .
Рис. 2.10. Результаты обработки изображения фильтром Габора при различных значениях .
2.8 Выводы
В данной части данного проекта был выбран метод обработки пальцев, основанный на фильтрах Габора. Был подробно изучен математический аппарат данного метода, и разработан алгоритм, решающий поставленную задачу. Так же была сформулирована математическая постановка задачи, заключающаяся в формализации методов подбора параметров фильтра Габора.
-
Технологическая часть
3.1 Введение
В данной части рассмотрен процесс разработки программного обеспечения, предъявлены требования к разрабатываемому ПО, выбран язык программирования для реализации программного обеспечения. Выбирается формат представления данных и система управления базой данных.
3.2 Разработка общей структуры программного обеспечения
В рамках разработки ПО необходимо обеспечить следующие этапы обработки образа отпечатка пальца:
- Нормализация изображения
- Расчет ориентационного изображения
- Расчет частотного изображения
- Бинаризация изображения
- Применение фильтра Габора
Так же должен быть реализован пользовательский интерфейс данного ПО.
Общая структура разрабатываемого программного обеспечения представлена на рисунке 3.1.
Рис.3.1. Общая структура разрабатываемой программы.
Из структуры представленного ПО следует, что разрабатываемая программа имеет многокомпонентное строение. Это обуславливает целесообразность реализации продукта как программного пакета, содержащего несколько исполняемых модулей, а не как автономного работающего продукта, выполненного в одном файле. Такой подход значительно упростит разработку и отладку программы и, как следствие, ускорит процесс написания ПО.
На Рисунке 3.2 представлен алгоритм действий программы.
Рис 3.2. Общий алгоритм действия программы.
3.3 Выбор языка реализации
Язык реализации должен быть удобен для работы с матрицами, так же плюсом является наличие готовых библиотек для работы с изображениями. Так как главной целью данной работы является разработка работоспособного алгоритма обработки образов отпечатка пальца, а не создание конечного продукта, на скорость работы программы и на требования к ресурсам вычислительной системы жестких ограничений не накладывается.
Выделим следующие требования к языку написания данного ПО:
- возможность использования стандартных библиотек, предназначенных для работы с матричными типами данных
- наличие свободно распространяемых библиотек обработки изображений
- опыт конкретного разработчика в области программирования
С учетом перечисленных требований был выбран язык Matlab. Данный язык программирования позволяет выполнять широкий спектр операций над матричными типами данных, имеет мощную встроенную библиотеку для работы с изображениями. Так же Matlab не требователен к навыкам программирования, что позволяет писать достаточно сложные программы не имея высокого уровня знаний в области программирования.
3.4 Нормализация изображения
На вход программа принимает файл в формате bmp, 24-х битный. Для преобразования такого изображения в черно-белое будет использована функция rgb2gray.
В библиотеке Matlab есть специальная функция для обработки изображений есть специальная функция для нормализации изображений imadjust.
Текст функции нормализации представлен ниже.
function [ output_img ] = normalisation( imput_img )
output_img = rgb2gray(input_img);
output_img = imadjust(output_img);
end
Ниже приведен пример входного и нормализованного изображения.
Рис. 3.3. Исходное и нормализованное изображение.
3.5 Построение поля направлений
Ориентационное изображение строится по градиентам исходного изображения. Градиенты находятся с посредством применения оператора Собеля. Оператор Собеля - это дискретный дифференциальный оператор, вычисляющий приближенное значение градиента яркости изображения. Он основан на свертке изображения небольшим сепарабельным целочисленным фильтром в вертикальном и горизонтальном направлении. Расчет градиентного изображения происходит путем применения двумерной операции свертки между изображением и оператором Собеля.
,
где А исходное изображение, и - изображения, где каждая точка содержит приближенные производные по х и у.
Угол, показывающий направление градиент рассчитывается по формуле:
Текст подпрограммы построения ориентационной матрицы приведен в приложении № 1, текст подпрограммы визуализации ориентационного изображения в приложении № 2.
Рис.3.4 Пример поля направлений отпечатка пальца.
Рис.3.5 Фрагмент поля направлений отпечатка пальца.
3.5 Бинаризация изображения
Бинарное изображение это изображение, в котором каждый пиксель является либо пикселем впадины, либо пикселем гребня. Для построения бинарного изображения к нормализованному изображению применяют пороговую обработку - каждому пикселю изображения присваивается значение нуля(гребня), если он ниже порогового значения, и единицы(впадины) в обратном случае.
,
где - порог маскирования, - интенсивность пикселя нормализованного изображения.
Рис.3.6 Пример нормализованного изображения (слева) и его бинарное изображение (справа) после пороговой обработки.
3.6 Применение фильтра Габора
Последним этапом обработки изображения является применение фильтра Габора. Первым шагом на этом этапе является генерация фильтра Габора и подбор параметров.
Ниже приведен под функции, реализующий генерацию фильтра габора по заданным углом theta.
function gb=gabor_fn(theta)
bw = 2;
gamma = 1;
psi = 1;
lambda = 6;
theta = (theta+90)*pi/180;
sigma = lambda/pi*sqrt(log(2)/2)*(2^bw+1)/(2^bw-1);
sigma_x = sigma;
sigma_y = sigma/gamma;
sz = 9;
if mod(sz,2)==0, sz=sz+1;end
[x y]=meshgrid(-fix(sz/2):fix(sz/2),fix(sz/2):-1:fix(-sz/2));
x_theta=x*cos(theta)+y*sin(theta);
y_theta=-x*sin(theta)+y*cos(theta);
gb=exp(-0.5*(x_theta.^2/sigma_x^2+y_theta.^2/sigma_y^2)).*cos(2*pi/lambda*x_theta+psi);
end
Ниже приведены примеры сгенерированных фильтров Габора.
Рис3.7. Примеры сгенерированных фильтров Габора.
Следующим этапом является наложение фильтра Габора на изображение. Ниже приведен код программы, реализующий данный этап:
function [ img ] = gabor_filter( img, orient )
img_m = zeros(19, size(img,1),size(img,2));
for c = 0:10:180
gab = gabor_fn(c);
img_m((c)/10+1,:,:) = imfilter(img, gab);
end
for a = 1:size(img, 1)
for b = 1:size(img,2)
if (orient(a,b)>=175)
orient(a,b) = 1;
end
end
end
for a = 1:size(img, 1)
for b = 1:size(img,2)
img(a,b) = img_m(round(orient(a,b)/10)+1,a,b);
end
end
end
На рисунке 3.8 приведен пример нормализованного изображения (1), и изображения после обработки фильтром Габора(б).
(а) (б)
Рис.3.8 Бинарное изображение (а) и изображение после обработки фильтром Габора (б).
3.7 Вывод
В данной части дипломного проекта проведена реализация программного обеспечения, выполняющего фильтрацию образов отпечатков пальцев, основанную на фильтрах Габора. Приведены результаты работы отдельных частей алгоритма и конечный результат работы программы образ отпечатка пальца после применения к нему фильтра Габора.
-
Организационно-правовая часть
4.1 Введение
В настоящем дипломном проекте рассматриваются вопросы, связанные с цифровой обработкой биометрических образов. Анализируются различные алгоритмы обработки образов отпечатка пальца, исследуются степень искажения ключевой информации в образе отпечатка пальца при его обработке. При проведении подобных работ необходимо учитывать требования нормативных документов Российской Федерации, касающихся темы информации и информационной безопасности. Также следует рассмотреть требования к защите персональных данных при их обработке в информационных системах. Дипломный проект является результатом интеллектуальной деятельности, поэтому необходимо обратить внимание на анализ вопросов, связанных с авторским правом.
Рассмотрим основные документы, касающиеся темы данного дипломного проекта:
- Конституция Российской Федерации;
- Доктрина информационной безопасности Российской Федерации;
- Федеральный закон от 27.07.2006 г. N 149-ФЗ «Об информации, информационных технологиях и о защите информации»;
- Федеральный закон от 27.07.2006 г. N 152-ФЗ «О персональных данных»;
- Постановление Правительства Российской Федерации от 01.11.2012 №1119 «Об утверждении требований к защите персональных данных при их обработке в информационных системах персональных данных»;
- Гражданский кодекс Российской Федерации, часть четвёртая;
- Уголовный кодекс Российской Федерации.
4.2 Конституция Российской Федерации
Конституция Российской Федерации, принятая 12 декабря 1993 года, имеет высшую юридическую силу, прямое действие и применяется на всей территории Российской Федерации. Она является основным источником права в области обеспечения информационной безопасности Российской Федерации.
Согласно статье 23 Конституции Российской Федерации, каждый имеет право на неприкосновенность частной жизни, личную и семейную тайну, защиту своей чести и доброго имени, а так же каждый имеет право на тайну переписки, телефонных переговоров, почтовых, телеграфных и иных сообщений.
В рамках Статьи 24 Конституции РФ запрещается сбор, хранение, использование и распространение информации о частной жизни лица без его согласия.
Также Статья 29 Конституции РФ гласит, что каждый имеет право свободно искать, получать, передавать, производить и распространять информацию любым законным способом.
4.3 Доктрина информационной безопасности Российской Федерации
Доктрина информационной безопасности Российской Федерации (Далее - Доктрина), принятая 9 сентября 2000 года, представляет собой совокупность официальных взглядов на цели, задачи, принципы и основные направления обеспечения информационной безопасности Российской Федерации.
Доктрина служит основой для:
- формирования государственной политики в области обеспечения информационной безопасности Российской Федерации;
- подготовки предложений по совершенствованию правового, методического, научно - технического и организационного обеспечения информационной безопасности Российской Федерации;
- разработки целевых программ обеспечения информационной безопасности Российской Федерации.
Доктрина развивает Концепцию национальной безопасности Российской Федерации применительно к информационной сфере. В общегосударственных информационных и телекоммуникационных системах основными объектами обеспечения информационной безопасности Российской Федерации в общегосударственных информационных и телекоммуникационных системах являются:
- информационные ресурсы, содержащие сведения, отнесенные к государственной тайне, и конфиденциальную информацию;
- средства и системы информатизации (средства вычислительной техники, информационно - вычислительные комплексы, сети и системы), программные средства (операционные системы, системы управления базами данных, другое общесистемное и прикладное программное обеспечение), автоматизированные системы управления, системы связи и передачи данных, осуществляющие прием, обработку, хранение и передачу информации ограниченного доступа, их информативные физические поля;
- технические средства и системы, обрабатывающие открытую информацию, но размещенные в помещениях, в которых обрабатывается информация ограниченного доступа, а также сами помещения, предназначенные для обработки такой информации;
- помещения, предназначенные для ведения закрытых переговоров, а также переговоров, в ходе которых оглашаются сведения ограниченного доступа.
Основными угрозами информационной безопасности Российской Федерации в общегосударственных информационных и телекоммуникационных системах являются:
- деятельность специальных служб иностранных государств, преступных сообществ, организаций и групп, противозаконная деятельность отдельных лиц, направленная на получение несанкционированного доступа к информации и осуществление контроля за функционированием информационных и телекоммуникационных систем;
- вынужденное в силу объективного отставания отечественной промышленности использование при создании и развитии информационных и телекоммуникационных систем импортных программно - аппаратных средств;
- нарушение установленного регламента сбора, обработки и передачи информации, преднамеренные действия и ошибки персонала информационных и телекоммуникационных систем, отказ технических средств и сбои программного обеспечения в информационных и телекоммуникационных системах;
- использование несертифицированных в соответствии с требованиями безопасности средств и систем информатизации и связи, а также средств защиты информации и контроля их эффективности;
- привлечение к работам по созданию, развитию и защите информационных и телекоммуникационных систем организаций и фирм, не имеющих государственных лицензий на осуществление этих видов деятельности.
Основными направлениями обеспечения информационной безопасности Российской Федерации в общегосударственных информационных и телекоммуникационных системах являются:
- предотвращение перехвата информации из помещений и с объектов, а также информации, передаваемой по каналам связи с помощью технических средств;
- исключение несанкционированного доступа к обрабатываемой или хранящейся в технических средствах информации;
- предотвращение утечки информации по техническим каналам, возникающей при эксплуатации технических средств ее обработки, хранения и передачи;
- предотвращение специальных программно - технических воздействий, вызывающих разрушение, уничтожение, искажение информации или сбои в работе средств информатизации;
- обеспечение информационной безопасности при подключении общегосударственных информационных и телекоммуникационных систем к внешним информационным сетям, включая международные;
- обеспечение безопасности конфиденциальной информации при взаимодействии информационных и телекоммуникационных систем различных классов защищенности;
- выявление внедренных на объекты и в технические средства электронных устройств перехвата информации.
4.4 Федеральный Закон «Об информации, информационных технологиях и о защите информации»
Федеральный Закон РФ № 149-ФЗ «Об информации, информационных технологиях и о защите информации», принятый Государственной Думой 8 июля 2006 года и вступивший в силу 27 июля 2006 года, регулирует отношения, возникающие при:
- осуществлении права на поиск, получение, передачу, производство и распространение информации;
- применении информационных технологий;
- обеспечении защиты информации.
Согласно статье 3 правовое регулирование отношений, возникающих в сфере информации, информационных технологий и защиты информации, основывается на следующих принципах:
- свобода поиска, получения, передачи, производства и распространения информации любым законным способом;
- установление ограничений доступа к информации только федеральными законами;
- открытость информации о деятельности государственных органов и органов местного самоуправления и свободный доступ к такой информации, кроме случаев, установленных федеральными законами;
- равноправие языков народов Российской Федерации при создании информационных систем и их эксплуатации;
- обеспечение безопасности Российской Федерации при создании информационных систем, их эксплуатации и защите содержащейся в них информации;
- достоверность информации и своевременность ее предоставления;
- неприкосновенность частной жизни, недопустимость сбора, хранения, использования и распространения информации о частной жизни лица без его согласия;
- недопустимость установления нормативными правовыми актами каких-либо преимуществ применения одних информационных технологий перед другими, если только обязательность применения определенных информационных технологий для создания и эксплуатации государственных информационных систем не установлена федеральными законами.
Согласно статье 5 информация может являться объектом публичных, гражданских и иных правовых отношений. Информация может свободно использоваться любым лицом и передаваться одним лицом другому лицу, если федеральными законами не установлены ограничения доступа к информации либо иные требования к порядку ее предоставления или распространения. Информация в зависимости от категории доступа к ней подразделяется на общедоступную информацию, а также на информацию, доступ к которой ограничен федеральными законами (информация ограниченного доступа). Ограничение доступа к информации устанавливается федеральными законами в целях защиты основ конституционного строя, нравственности, здоровья, прав и законных интересов других лиц, обеспечения обороны страны и безопасности государства.
Согласно статье 16 защита информации представляет собой принятие правовых, организационных и технических мер, направленных на:
- обеспечение защиты информации от неправомерного доступа, уничтожения, модифицирования, блокирования, копирования, предоставления, распространения, а также от иных неправомерных действий в отношении такой информации;
- соблюдение конфиденциальности информации ограниченного доступа;
- реализацию права на доступ к информации.
Государственное регулирование отношений в сфере защиты информации осуществляется путем установления требований о защите информации, а также ответственности за нарушение законодательства Российской Федерации об информации, информационных технологиях и о защите информации.
Обладатель информации, оператор информационной системы в случаях, установленных законодательством Российской Федерации, обязаны обеспечить:
- предотвращение несанкционированного доступа к информации и (или) передачи ее лицам, не имеющим права на доступ к информации;
- своевременное обнаружение фактов несанкционированного доступа к информации;
- предупреждение возможности неблагоприятных последствий нарушения порядка доступа к информации;
- недопущение воздействия на технические средства обработки информации, в результате которого нарушается их функционирование;
- возможность незамедлительного восстановления информации, модифицированной или уничтоженной вследствие несанкционированного доступа к ней;
- постоянный контроль за обеспечением уровня защищенности информации.
Требования о защите информации, содержащейся в государственных информационных системах, устанавливаются федеральным органом исполнительной власти в области обеспечения безопасности и федеральным органом исполнительной власти, уполномоченным в области противодействия техническим разведкам и технической защиты информации, в пределах их полномочий. При создании и эксплуатации государственных информационных систем используемые в целях защиты информации методы и способы ее защиты должны соответствовать указанным требованиям.
4.5 Федеральный Закон «О персональных данных»
Защита персональных данных регламентируется Федеральным Законом РФ № 152-ФЗ «О персональных данных», принятым 27 июля 2006 года.
Целью настоящего Федерального закона является обеспечение защиты прав и свобод человека и гражданина при обработке его персональных данных, в том числе защиты прав на неприкосновенность частной жизни, личную и семейную тайну (Статья 2).
К персональным данным можно отнести любую информацию, которой достаточно, чтобы однозначно определить физическое лицо и получить о нём какую-либо дополнительную информацию. Любая организация, работающая с данными физических лиц, должна защитить информационные системы и получить документы, подтверждающие соответствие этих систем требованиям закона.
Согласно статье 7 настоящего закона любая компания, организация либо фирма, должна обеспечивать конфиденциальность персональных данных.
Каждой информационной системе, в которой хранятся и обрабатываются персональные данные, необходимо присвоить класс, в соответствии с которым будет обеспечиваться защита этих данных. Кроме того, информационные системы могут быть типовыми или специальными, и последние требуют для эксплуатации обязательного лицензирования. Специальными, например, считаются системы, содержащие информацию о состоянии здоровья и те, на основе которых предусмотрено принятие решений, порождающих юридические последствия. Иными словами, если данные из таких информационных систем, а точнее, их анализ и обработка, могут повлиять на жизнь или здоровье субъекта персональных данных. Класс специальных информационных систем определяется на основе модели угроз безопасности персональных данных в соответствии с нормативно-методическими документами регуляторов.
В настоящем законе так же предусматриваются меры по обеспечению безопасности персональных данных при их обработке (Статья 19).
Для всех компаний, предприятий или фирм, осуществляющих обработку персональных данных для того, чтобы избежать нарушений, необходимо провести ряд мероприятий, которые включают в себя следующие работы:
- направление уведомления об обработке персональных данных в контролирующий орган, Роскомнадзор;
- разработка формы и получение согласия каждого субъекта на обработку его персональных данных (согласие должно содержать собственноручную подпись субъекта (либо его цифровую подпись));
- документально описание информационных систем обработки персональных данных (назначение, состав данных, правовые основания для их обработки), а также обозначение круга лиц, работающих с персональными данными и имеющими к ним доступ;
- разработка ряда нормативных документов, описывающих модели угроз и средства защиты от них персональных данных;
- обеспечение защиты персональных данных техническими (программными, аппаратными) и организационными методами;
- прохождение необходимых проверок для подтверждения соответствия систем защиты персональных данных требованиям законодательства.
Для успешного проведения данных работ необходимо, во-первых, назначить сотрудника, ответственного за вопросы защиты и обработки персональных данных, во-вторых, для всех ресурсов и подсистем, содержащих персональные данные, определить их статус, и, наконец, определить способы и сроки обработки данных, а также сроки хранения».
4.6 Постановление Правительства Российской Федерации «Об утверждении требований к защите персональных данных при их обработке в информационных системах персональных данных»
Постановление Правительства Российской Федерации №1119 «Об утверждении требований к защите персональных данных при их обработке в информационных системах персональных данных», принятое 01 ноября 2012 года, устанавливает требования к защите персональных данных при их обработке в информационных системах персональных данных (далее - информационные системы) и уровни защищенности таких данных.
Безопасность персональных данных при их обработке в информационной системе обеспечивается с помощью системы защиты персональных данных, нейтрализующей актуальные угрозы, определенные в соответствии с частью 5 статьи 19 Федерального закона "О персональных данных". Для данной информационной системы актуальны угрозы 3-го типа, то есть не связанные с наличием недокументированных (недекларированных) возможностей в системном и прикладном программном обеспечении, используемом в информационной системе.
Информационная система является информационной системой, обрабатывающей биометрические персональные данные, если в ней обрабатываются сведения, которые характеризуют физиологические и биологические особенности человека, на основании которых можно установить его личность и которые используются оператором для установления личности субъекта персональных данных, и не обрабатываются сведения, относящиеся к специальным категориям персональных данных.
При обработке персональных данных в информационных системах устанавливаются 4 уровня защищенности персональных данных. Для данной информационной системы необходимо обеспечить 3-й уровень защищенности персональных данных, так как для информационной системы актуальны угрозы 3-го типа и информационная система обрабатывает биометрические персональные данные (согласно пункту 11-г) настоящего Постановления).
Для обеспечения надлежащего уровня защищенности персональных данных при их обработке в данной информационной системе необходимо выполнение следующих требований:
а) организация режима обеспечения безопасности помещений, в которых размещена информационная система, препятствующего возможности неконтролируемого проникновения или пребывания в этих помещениях лиц, не имеющих права доступа в эти помещения;
б) обеспечение сохранности носителей персональных данных;
в) утверждение руководителем оператора документа, определяющего перечень лиц, доступ которых к персональным данным, обрабатываемым в информационной системе, необходим для выполнения ими служебных (трудовых) обязанностей;
г) использование средств защиты информации, прошедших процедуру оценки соответствия требованиям законодательства Российской Федерации в области обеспечения безопасности информации, в случае, когда применение таких средств необходимо для нейтрализации актуальных угроз.
д) назначение должностного лица (работника), ответственного за обеспечение безопасности персональных данных в информационной системе.
Контроль выполнения настоящих требований организуется и проводится оператором (уполномоченным лицом) самостоятельно и (или) с привлечением на договорной основе юридических лиц и индивидуальных предпринимателей, имеющих лицензию на осуществление деятельности по технической защите конфиденциальной информации. Указанный контроль проводится не реже 1 раза в 3 года в сроки, определяемые оператором (уполномоченным лицом).
4.7 Гражданский Кодекс Российской Федерации
Гражданский кодекс Российской Федерации в части четвертой регулирует вопросы охраны результатов интеллектуальной деятельности и средств индивидуализации.
Согласно статье 1225 ГК РФ, программы для электронных вычислительных машин (программы для ЭВМ) и базы данных являются результатами интеллектуальной деятельности и приравненными к ним средствами индивидуализации юридических лиц, товаров, работ, услуг и предприятий, которым предоставляется правовая охрана (т. е. являются интеллектуальной собственностью).
Согласно статье 1228 ГК РФ, автором результата интеллектуальной деятельности признается гражданин, творческим трудом которого создан такой результат.
Автору программы для ЭВМ или базы данных принадлежит право авторства, право на имя и иные личные неимущественные права. Авторство и имя автора охраняются бессрочно. После смерти автора защиту его авторства и имени может осуществлять любое заинтересованное лицо.
Произведения науки и программы для ЭВМ относятся к объектам авторских прав и охраняются как литературные произведения. Для возникновения, осуществления и защиты авторских прав не требуется регистрации произведения или соблюдения каких-либо иных формальностей. В отношении программ для ЭВМ и баз данных возможна регистрация, осуществляемая по желанию правообладателя в соответствии с правилами статьи 1262 ГК РФ.
Исключительные права на результаты интеллектуальной деятельности и на средства индивидуализации действуют в течение определенного срока, за исключением случаев, предусмотренных ГК РФ.
Правообладатель может распорядиться принадлежащим ему исключительным правом на результат интеллектуальной деятельности или на средство индивидуализации любым не противоречащим закону и существу такого исключительного права способом, в том числе путем его отчуждения по договору другому лицу (договор об отчуждении исключительного права) или предоставления другому лицу права использования соответствующих результата интеллектуальной деятельности или средства индивидуализации в установленных договором пределах (лицензионный договор).
По лицензионному договору одна сторона - обладатель исключительного права на результат интеллектуальной деятельности или на средство индивидуализации (лицензиар) - предоставляет или обязуется предоставить другой стороне (лицензиату) право использования такого результата или такого средства в предусмотренных договором пределах.
Лицензиат может использовать результат интеллектуальной деятельности или средство индивидуализации только в пределах тех прав и теми способами, которые предусмотрены лицензионным договором. Право использования результата интеллектуальной деятельности или средства индивидуализации, прямо не указанное в лицензионном договоре, не считается предоставленным лицензиату.
Споры, связанные с защитой нарушенных или оспоренных интеллектуальных прав, рассматриваются и разрешаются судом.
Лицо, правомерно владеющее экземпляром программы для ЭВМ или экземпляром базы данных (пользователь), вправе без разрешения автора или иного правообладателя и без выплаты дополнительного вознаграждения:
- внести в программу для ЭВМ или базу данных изменения исключительно в целях их функционирования на технических средствах пользователя и осуществлять любые действия, необходимые для функционирования такой программы или базы данных в соответствии с их назначением, в том числе запись и хранение в памяти ЭВМ (одной ЭВМ или одного пользователя сети), а также произвести исправление явных ошибок, если иное не предусмотрено договором с правообладателем;
- изготовить копию программы для ЭВМ или базы данных при условии, что эта копия предназначена только для архивных целей или для замены правомерно приобретенного экземпляра в случаях, когда такой
Лицо, правомерно владеющее экземпляром программы для ЭВМ, вправе без согласия правообладателя и без выплаты дополнительного вознаграждения изучать, исследовать или испытывать функционирование такой программы в целях определения идей и принципов, лежащих в основе любого элемента программы для ЭВМ.
Лицо, правомерно владеющее экземпляром программы для ЭВМ, вправе без согласия правообладателя и без выплаты дополнительного вознаграждения воспроизвести и преобразовать объектный код в исходный текст (декомпилировать программу для ЭВМ) или поручить иным лицам осуществить эти действия, если они необходимы для достижения способности к взаимодействию независимо разработанной этим лицом программы для ЭВМ с другими программами, которые могут взаимодействовать с декомпилируемой программой, при соблюдении следующих условий:
- информация, необходимая для достижения способности к взаимодействию, ранее не была доступна этому лицу из других источников;
- указанные действия осуществляются в отношении только тех частей декомпилируемой программы для ЭВМ, которые необходимы для достижения способности к взаимодействию;
- информация, полученная в результате декомпилирования, может использоваться лишь для достижения способности к взаимодействию независимо разработанной программы для ЭВМ с другими программами, не может передаваться иным лицам, за исключением случаев, когда это необходимо для достижения способности к взаимодействию независимо разработанной программы для ЭВМ с другими программами, а также не может использоваться для разработки программы для ЭВМ, по своему виду существенно схожей с декомпилируемой программой для ЭВМ, или для осуществления любого другого действия, нарушающего исключительное право на программу для ЭВМ.
Применение данных положений не должно наносить неоправданный ущерб нормальному использованию программы для ЭВМ или базы данных и не должно ущемлять необоснованным образом законные интересы автора или иного правообладателя.
4.8 Уголовный Кодекс Российской Федерации
Уголовное законодательство система нормативных правовых актов, принимаемых уполномоченными органами государственной власти, содержащих нормы, регулирующие отношения, связанные с установлением оснований привлечения к уголовной ответственности и освобождения от неё, определением преступности деяний и иные отношения, входящие в предмет регулирования уголовного права. Уголовный закон современными учёными, как правило, признаётся формой выражения уголовного права, производной от воли общества и правосознания народа, а не навязанной ему извне.
Преступления в сфере компьютерной информации регулируются главой 28 УК РФ.
Согласно статье 272 «Неправомерный доступ к компьютерной информации»:
1. Неправомерный доступ к охраняемой законом компьютерной информации, если это деяние повлекло уничтожение, блокирование, модификацию либо копирование компьютерной информации, - наказывается штрафом в размере до двухсот тысяч рублей или в размере заработной платы или иного дохода осужденного за период до восемнадцати месяцев, либо исправительными работами на срок до одного года, либо ограничением свободы на срок до двух лет, либо принудительными работами на срок до двух лет, либо лишением свободы на тот же срок.
2. То же деяние, причинившее крупный ущерб или совершенное из корыстной заинтересованности, - наказывается штрафом в размере от ста тысяч до трехсот тысяч рублей или в размере заработной платы или иного дохода осужденного за период от одного года до двух лет, либо исправительными работами на срок от одного года до двух лет, либо ограничением свободы на срок до четырех лет, либо принудительными работами на срок до четырех лет, либо арестом на срок до шести месяцев, либо лишением свободы на тот же срок.
3. Деяния, предусмотренные частями первой или второй статьи 272 УК РФ, совершенные группой лиц по предварительному сговору или организованной группой либо лицом с использованием своего служебного положения, - наказываются штрафом в размере до пятисот тысяч рублей или в размере заработной платы или иного дохода осужденного за период до трех лет с лишением права занимать определенные должности или заниматься определенной деятельностью на срок до трех лет, либо ограничением свободы на срок до четырех лет, либо принудительными работами на срок до пяти лет, либо лишением свободы на тот же срок.
4. Деяния, предусмотренные частями первой, второй или третьей статьи 272 УК РФ, если они повлекли тяжкие последствия или создали угрозу их наступления, - наказываются лишением свободы на срок до семи лет.
Под крупным ущербом признается ущерб, сумма которого превышает один миллион рублей.
Согласно статье 273 «Создание, использование и распространение вредоносных компьютерных программ»:
1. Создание, распространение или использование компьютерных программ либо иной компьютерной информации, заведомо предназначенных для несанкционированного уничтожения, блокирования, модификации, копирования компьютерной информации или нейтрализации средств защиты компьютерной информации, - наказываются ограничением свободы на срок до четырех лет, либо принудительными работами на срок до четырех лет, либо лишением свободы на тот же срок со штрафом в размере до двухсот тысяч рублей или в размере заработной платы или иного дохода осужденного за период до восемнадцати месяцев.
2. Деяния, предусмотренные "частью первой" настоящей статьи, совершенные группой лиц по предварительному сговору или организованной группой либо лицом с использованием своего служебного положения, а равно причинившие "крупный ущерб" или совершенные из корыстной заинтересованности, - наказываются ограничением свободы на срок до четырех лет, либо принудительными работами на срок до пяти лет с лишением права занимать определенные должности или заниматься определенной деятельностью на срок до трех лет или без такового, либо лишением свободы на срок до пяти лет со штрафом в размере от ста тысяч до двухсот тысяч рублей или в размере заработной платы или иного дохода осужденного за период от двух до трех лет или без такового и с лишением права занимать определенные должности или заниматься определенной деятельностью на срок до трех лет или без такового.
3. Деяния, предусмотренные "частями первой" или "второй" настоящей статьи, если они повлекли тяжкие последствия или создали угрозу их наступления, наказываются лишением свободы на срок до семи лет.
Согласно статье 274 «Нарушение правил эксплуатации средств хранения, обработки или передачи компьютерной информации и информационно-телекоммуникационных сетей»:
1. Нарушение правил эксплуатации средств хранения, обработки или передачи охраняемой компьютерной информации либо информационно-телекоммуникационных сетей и оконечного оборудования, а также правил доступа к информационно-телекоммуникационным сетям, повлекшее уничтожение, блокирование, модификацию либо копирование "компьютерной информации", причинившее "крупный ущерб", наказывается штрафом в размере до пятисот тысяч рублей или в размере заработной платы или иного дохода осужденного за период до восемнадцати месяцев, либо исправительными работами на срок от шести месяцев до одного года, либо ограничением свободы на срок до двух лет, либо принудительными работами на срок до двух лет, либо лишением свободы на тот же срок.
2. Деяние, предусмотренное "частью первой" настоящей статьи, если оно повлекло тяжкие последствия или создало угрозу их наступления, наказывается принудительными работами на срок до пяти лет либо лишением свободы на тот же срок.
Так же глава 19 статья 138 УК РФ за нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений предусматривает:
1. Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений граждан наказывается штрафом в размере от пятидесяти до ста минимальных размеров оплаты труда или в размере заработной платы или иного дохода осужденного за период до одного месяца, либо обязательными работами на срок от ста двадцати до ста восьмидесяти часов, либо исправительными работами на срок до одного года.
2. То же деяние, совершенное лицом с использованием своего служебного положения или специальных технических средств, предназначенных для негласного получения информации, наказывается штрафом в размере от ста до трехсот минимальных размеров оплаты труда или в размере заработной платы или иного дохода осужденного за период от одного до трех месяцев, либо лишением права занимать определенные должности или заниматься определенной деятельностью на срок от двух до пяти лет, либо арестом на срок от двух до четырех месяцев.
3. Незаконные производство, сбыт или приобретение в целях сбыта специальных технических средств, предназначенных для негласного получения информации, - наказываются штрафом в размере от двухсот до пятисот минимальных размеров оплаты труда или в размере заработной платы или иного дохода осужденного за период от двух до пяти месяцев, либо ограничением свободы на срок до трех лет, либо лишением свободы на срок до трех лет с лишением права занимать определенные должности или заниматься определенной деятельностью на срок до трех лет.
За нарушения авторских и смежных прав Статья 146, предусматривает:
1. Незаконное использование объектов авторского права или смежных прав, а равно присвоение авторства, если эти деяния причинили крупный ущерб, - наказываются штрафом в размере от двухсот до четырехсот минимальных размеров оплаты труда или в размере заработной платы или иного дохода осужденного за период от двух до четырех месяцев, либо обязательными работами на срок от ста восьмидесяти до двухсот сорока часов, либо лишением свободы на срок до двух лет.
2. Те же деяния, совершенные неоднократно либо группой лиц по предварительному сговору или организованной группой, наказываются штрафом в размере от четырехсот до восьмисот минимальных размеров оплаты труда или в размере заработной платы или иного дохода осужденного за период от четырех до восьми месяцев, либо арестом на срок от четырех до шести месяцев, либо лишением свободы на срок до пяти лет.
Согласно статье 273, создание программ для ЭВМ или внесение изменений в существующие программы, заведомо приводящих к несанкционированному уничтожению, блокированию, модификации либо копированию информации, нарушению работы ЭВМ, системы ЭВМ или их сети, а равно использование либо распространение таких программ или машинных носителей с такими программами - наказываются лишением свободы на срок до трех лет со штрафом в размере от двухсот до пятисот минимальных размеров оплаты труда или в размере заработной платы или иного дохода осужденного за период от двух до пяти месяцев.
Те же деяния, повлекшие по неосторожности тяжкие последствия, -наказываются лишением свободы на срок от трех до семи лет.
Согласно статье 274, нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети лицом, имеющим доступ к ЭВМ, системе ЭВМ или их сети, повлекшее уничтожение, блокирование или модификацию охраняемой законом информации ЭВМ, если это деяние причинило существенный вред, - наказывается лишением права занимать определенные должности или заниматься определенной деятельностью на срок до пяти лет, либо обязательными работами на срок от ста восьмидесяти до двухсот сорока часов, либо ограничением свободы на срок до двух лет.
То же деяние, повлекшее по неосторожности тяжкие последствия, - наказывается лишением свободы на срок до четырех лет.
4.9 Выводы
Законодательство Российской Федерации в области информационных технологий и их защиты представляет собой совокупность целого ряда нормативно-правовых актов, тем самым создавая правовое поле для обеспечения информационной безопасности страны в целом.
На сегодняшний день основным законом в области защиты информации является Федеральный Закон РФ от 27.07.2006 г. № 149-ФЗ «Об информации, информационных технологиях и о защите информации», так же существуют ряд основных нормативно-правовых актов, таких как: Доктрина информационной безопасности Российской Федерации, Указ Президента РФ от 06.03.1997 N 188 «Об утверждении Перечня сведений конфиденциального характера» и многие другие законы, которые дают правовое обеспечение защиты информации.
-
Организационно-экономическая часть
5.1 Введение
Разработка программного обеспечения предполагает необходимость координации значительного количества весьма разноплановых работ, в которых принимают участие специалисты различного профиля и квалификации. Необходимость обеспечения эффективности разработки требует формирования единого плана, предусматривающего окончание всего комплекса работ и отдельных его составляющих в заданные сроки и при ограниченных издержках.
Анализ предстоящей разработки целесообразно проводить, представляя работу в виде экономико-функциональных блоков, что позволяет спланировать деятельность оптимальным образом и обоснованно спрогнозировать конкретные сроки выполнения отдельных этапов работы. Построение диаграммы Гантта позволяет наглядно представить последовательные и параллельные участки, продолжительность и очерёдность работ.
5.2 Расчёт трудоёмкости проекта
Общие затраты труда на разработку и внедрение проекта определяются по формуле:
Где - затраты на выполнение i-ого этапа проекта.
Воспользуемся методом экспертных оценок для вычисления ожидаемой продолжительности работ Т для каждого этапа по формуле:
где и - максимальная и минимальная продолжительность работы соответственно. Их назначают в соответствии с экспертными оценками, а ожидаемая продолжительность работы рассчитывается как математическое ожидание для распределения.
Полный перечень робот с разделение по этапам приведен в Таблице 5.1.
Таблица 5.1. Распределение работ по этапам
№ |
Этап |
№ работы |
Содержание работы |
, |
, чел/часы |
Т, чел/часы |
Т, чел/дни |
1 |
Разработка технических требований |
1 |
Получение задания, анализ полученных требований к разрабатываемому ПО |
8 |
8 |
8 |
1 |
2 |
Разработка и утверждение ТЗ |
24 |
28 |
26 |
3 |
||
2 |
Разработка алгоритмов |
3 |
Анализ предметной области и существующих решений |
30 |
50 |
38 |
5 |
4 |
Разработка общей структуры ПО и пользовательского интерфейса |
27 |
32 |
29 |
4 |
||
5 |
Разработка алгоритмов, структуры входных и выходных данных |
64 |
86 |
73 |
11 |
||
3 |
Разработка программных модулей |
6 |
Программная реализация выбранного алгоритма поставленной задачи |
96 |
160 |
122 |
19 |
7 |
Реализация пользовательского интерфейса |
34 |
48 |
40 |
5 |
||
4 |
Тестирование и отладка разрабатываемого ПО |
8 |
Тестирование ПО |
56 |
76 |
64 |
9 |
9 |
Внесение изменений в ПО |
36 |
46 |
40 |
5 |
||
5 |
Разработка документации |
10 |
Разработка программной и эксплуатационной документации |
80 |
100 |
88 |
12 |
Итог |
527 |
74 |
Таким образом, затраты труда на разработку равны:
5.2.1 Определение численности исполнителей
Для оценки возможности выполнения проекта имеющимся в распоряжении разработчика штатным составом исполнителей, нужно рассчитать их среднее количество, которое при реализации проекта определяется соотношением:
,
Где - затраты труда на выполнение проекта (разработка и внедрение ПО), фонд рабочего времени; определяется по следующей формуле:
,
где фонд времени в текущем месяце, который рассчитывается из учёта общего числа дней в году, числа выходных и праздничных дней, продолжительность рабочего дня, общее число дней в году, число выходных дней в году, число праздничных дней в году.
Для 2014 года: , , .
Таким образом, фонд времени в текущем месяце составляет:
Время выполнения проекта Т=2,5 месяцев.
Величина фонда рабочего времени составляет 370 часов.
Затраты труда на выполнения проекта были рассчитаны в предыдущем разделе, их величина равна 527 чел/час. В соответствии с этими данными среднее количество исполнителей равно:
Так как N значительно меньше двойки, ближайшего целого числа, то можно привлечения к работе исполнителя с меньшей квалификацией с целью сократить расходы за счет более низкой заработной платы менее квалифицированного работника.
5.2.2 Построение сетевого графика
Для определения временных затрат и трудоёмкости разработки ПО, используем метод сетевого планирования. Метод сетевого планирования позволяет установить единой схемой связь между всеми работами в виде наглядного и удобного для восприятия изображения (сетевого графика), представляющего собой информационно-динамическую модель, позволяющую определить продолжительность и трудоёмкость, как отдельных этапов, так и всего комплекса работ в целом.
Составление сетевой модели включает в себя оценку степени детализации комплекса работ и определения логической связи между отдельными работами.
С этой целью составляется перечень всех основных событий и работ. В перечне указываются кодовые номера событий, наименование событий в последовательности от исходного к завершающему, кодовые номера работ, перечень всех работ, причём подряд указываются все работы, которые начинаются после наступления данного события.
Основные события и работы проекта представлены в таблице 5.2.
Рассчитанные оставшиеся параметры элементов сети (сроки наступления событий, резервы времени событий, полный и свободный резервы времени работ) приведены в таблице 5.3.
Таблица 5.2. Основные события и работы проекта
Наименование события |
Код работы |
Работа |
t, чел/час |
t, чел/день |
|
0 |
Разработка ПО начата |
0-1 |
Получение задания, анализ полученных требований к разрабатываемому ПО |
8 |
1 |
1 |
Анализ полученных требований к разрабатываемому ПО проведён |
1-2 |
Разработка и утверждение ТЗ |
26 |
3 |
2 |
ТЗ разработано и утверждено |
2-3 |
Анализ предметной области и существующих решений |
38 |
5 |
3 |
Анализ предметной области и существующих решений проведён |
3-4 |
Разработка общей структуры ПО и пользовательского интерфейса |
29 |
4 |
4 |
Разработка общей структуры ПО и пользовательского интерфейса проведены |
4-5 |
Разработка алгоритмов, структуры входных и выходных данных |
73 |
11 |
5 |
Разработка алгоритмов, структуры входных и выходных данных завершена |
5-6 |
Реализация пользовательского интерфейса |
40 |
5 |
5-7 |
Программная реализация выбранного алгоритма работы ПО |
122 |
19 |
||
6 |
Реализация пользовательского интерфейса завершена |
6-7 |
Фиктивная работа |
0 |
0 |
7 |
Программная реализация выбранного алгоритма работы ПО выполнена |
7-8 |
Тестирование ПО |
64 |
9 |
7-9 |
Разработка документации |
88 |
12 |
||
8 |
Тестирование ПО завершено |
8-10 |
Внесение изменений в ПО |
40 |
5 |
9 |
Внесение изменений в ПО закончено |
9-10 |
Фиктивная работа |
0 |
0 |
10 |
Документация разработана. Разработка ПО закончена |
- |
- |
- |
- |
Таблица 5.3. Временные затраты на каждый этап работы
Код работы i - j |
чел/день |
чел/день |
чел/день |
чел/день |
чел/день |
чел/день |
|
0 |
0-1 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
1-2 |
3 |
1 |
1 |
0 |
0 |
0 |
2 |
2-3 |
5 |
4 |
4 |
0 |
0 |
0 |
3 |
3-4 |
4 |
9 |
9 |
0 |
0 |
0 |
4 |
4-5 |
11 |
13 |
13 |
0 |
0 |
0 |
5 |
5-6 |
5 |
24 |
24 |
0 |
14 |
0 |
5-7 |
19 |
0 |
0 |
||||
6 |
6-7 |
0 |
29 |
43 |
14 |
14 |
14 |
7 |
7-8 |
9 |
43 |
43 |
0 |
0 |
0 |
7-9 |
12 |
2 |
0 |
||||
8 |
8-10 |
5 |
57 |
57 |
0 |
0 |
0 |
9 |
9-10 |
0 |
55 |
57 |
2 |
2 |
2 |
10 |
- |
- |
57 |
57 |
0 |
0 |
0 |
Здесь ранний срок совершения события определяет минимальное время, необходимое для выполнения всех работ, предшествующих данному событию и равен продолжительности наибольшего из путей, ведущих от исходного события к рассматриваемому:
Поздний срок совершения события это максимально допустимое время наступления данного события, при котором сохраняется возможность соблюдения ранних сроков наступления последующих событий. Поздние сроки равны разности между поздним сроком совершения j-го события и продолжительностью i-j работы:
Критический путь это максимальный путь от исходного события до завершения проекта. Его определение позволяет обратить внимание на перечень событий, совокупность которых имеет нулевой резерв времени.
Все события в сети, не принадлежащие критическому пути, имеют резерв времени показывающий на какой предельный срок можно задержать наступление этого события, не увеличивая сроки окончания работ:
Полный резерв времени работы и свободный резерв времени работы можно определить, используя следующие соотношения:
Полный резерв работы показывает максимальное время, на которое можно увеличить длительность работы или отсрочить её начало, чтобы не нарушился срок завершения проекта в целом. Свободный резерв работы показывает максимальное время, на которое можно увеличить продолжительность работы или отсрочить её начало, не меняя ранних сроков начала последующих работ.
Сетевой график приведён ниже на рисунке 5.1.
Рисунок 5.1. Сетевой график выполнения работ.
Как видно из сетевого графика, критический маршрут проходит через вершины 0-1-2-3-4-5-7-8-10 и имеет длину Ткр = 57 рабочих дня.
5.2.3 Диаграмма Гантта
Для иллюстрации последовательности проводимых работ приведём диаграмму Гантта данного проекта, на которой по оси Х изображены календарные дни от начала до конца проекта, а по оси Y выполняемые этапы работ.
Диаграмма Гантта приведена на рисунке 5.2. Занятость исполнителей приведена в таблице 5.4.
Рисунок 5.2. Диаграмма Гантта проводимых работ.
Таблица 5.4. Занятость исполнителей
Код работы |
Дата начала |
Дата окончания |
Исполнитель |
0-1 |
01.02.2014 |
02.02.2014 |
Ведущий программист |
1-2 |
02.02.2014 |
04.02.2014 |
Ведущий программист |
2-3 |
04.02.2014 |
9.02.2014 |
Ведущий программист |
3-4 |
9.02.2014 |
13.02.2014 |
Ведущий программист |
4-5 |
13.02.2014 |
24.02.2014 |
Ведущий программист |
5-6 |
24.02.2014 |
1.03.2014 |
Программист |
5-7 |
24.02.2014 |
15.03.2014 |
Ведущий программист |
7-8 |
15.03.2014 |
24.03.2014 |
Программист |
7-9 |
15.03.2014 |
27.03.2014 |
Программист |
8-10 |
24.03.2014 |
29.03.2014 |
Ведущий программист |
5.3 Анализ структуры затрат проекта
Затраты на выполнение проекта могут быть представлены в виде сметы затрат, включающей в себя следующие статьи:
• заработная плата исполнителям;
• отчисления на социальные службы;
• материальные затраты;
• амортизационные затраты;
• прочие затраты.
5.3.1 Затраты на выплату заработной платы
Затраты на выплату исполнителям заработной платы линейно связаны с трудоёмкостью и определяется следующим соотношением:
где основная заработная плата,
дополнительная заработная плата,
отчисление с заработной платы.
Расчёт основной заработной платы (оплаты труда непосредственных исполнителей):
где число дней, отработанных исполнителем проекта,
дневной оклад исполнителя.
При 8-и часовом рабочем дне он рассчитывается по соотношению:
где месячный оклад,
месячный фонд рабочего времени.
С учётом налога на доходы физических лиц размер оклада увеличивается, что отражено в формуле:
где «чистый» оклад,
налог на доходы физических лиц в размере 13%.
Сведём результаты расчёта в таблицу с перечнем исполнителей и их месячных и дневных окладов, а также времени участия в проекте и рассчитанной основной заработной платой каждого исполнителя, таблица 5.5.
Таблица 5.5. Заработная плата исполнителей
№ |
Должность |
«Чистый» оклад, руб. |
Дневной оклад, руб. |
Трудозатраты, чел/день |
Затраты на зарплату, руб. |
1 |
Ведущий программист |
70 000 |
3 812,63 |
48 |
183006,20 |
2 |
Программист |
50 000 |
2722,89 |
36 |
98024,00 |
Из таблицы получим общие затраты проекта на заработную плату исполнителей: руб.
Расходы на дополнительную заработную плату учитывают все выплаты непосредственным исполнителям за время, не проработанное на производстве, но предусмотренное законодательством РФ. Величина этих выплат составляет 20% от размера основной заработной платы:
5.3.2 Отчисления на социальные нужды
Согласно нормативным документам, суммарные отчисления в пенсионный фонд, фонд социального страхования и фонды обязательного медицинского страхования составляют 30% от размеров заработной платы.
Общие расходы на заработную плату составляют:
5.3.3 Материальные затраты
Затраты, учитываемые данной статьёй, включают в себя канцелярские товары, расходные материалы для принтера, представлены в таблице 5.6.
Таблица 5.6. Материальные затраты
№ |
Наименование |
Ед. изм. |
Кол-во |
Цена за ед., руб. (стоимость аренды, руб/мес) |
Длительность аренды, мес |
Сумма, руб. |
1 |
Бумага формата А4 Xerox |
500 л. |
2 |
240 |
Покупается |
480 |
2 |
Картридж для принтера Samsung ML2010 |
Шт. |
2 |
3 200 |
Покупается |
6 400 |
3 |
Принтер лазерный Samsung ML2010 |
Шт. |
1 |
5 400 |
Покупается |
5 400 |
Итого |
12 280 |
5.3.4 Прочие затраты
Прочие затраты приведены в таблице 5.7.
Таблица 5.7. Прочие затраты
№ |
Наименование |
Ед. изм. |
Количество |
Цена, руб. |
Сумма, руб. |
1 |
Услуги связи (интернет) |
месяц |
3 |
400 |
1 200 |
Итого: |
1 200 |
5.3.5 Затраты на организацию рабочих мест
Расчёт затрат, связанных с организацией рабочих мест для исполнителей проекта, проводится на основе требований СНИПа (санитарные нормы и правила) и стоимости аренды помещения требуемого уровня сервиса
В соответствии с санитарными нормами, расстояние между рабочими столами с видеомониторами должно быть не менее 2-х метров, а между боковыми поверхностями видеомониторов не менее 1,2 метра. Площадь на одно рабочее место с терминалом или ПК должна составлять не менее 6 кв. м., а объём не менее 20 куб. м. Расположение рабочих мест в подвальных помещениях не допускается. Помещения должны быть оборудованы системами отопления, кондиционирования воздуха или эффективной приточно-вытяжной вентиляцией. Таким образом, для размещения двух сотрудников и принтера необходимо помещение площадью 6+6+3=15 кв. м.
Затраты на аренду помещений вычислим по формуле:
Где - стоимость аренды 1 кв. метра за год, S арендуемая площадь, - срок аренды в месяцах. Тогда стоимость аренды помещения площадью 15 кв. метров за 3 месяца составит:
5.3.6 Накладные расходы
Накладные расходы состоят из расходов на производство, управление, техническое обслуживание и прочее. Примем величину накладных расходов равной 60% от заработной платы работников:
5.3.7 Суммарные затраты на реализацию программного продукта
Круговая диаграмма, отображающая структуру затрат проекта, приведена на рисунке 5.3. Расчёт суммарных затрат на реализацию программного проекта приведено в таблице 5.8.
Рисунок 5.3. Структура затрат проекта.
Таблица 5.8. Суммарные затраты на проект
№ |
Наименование статьи расходов |
Затраты, руб. |
1 |
Заработная плата исполнителям |
438 407 |
2 |
Закупка и аренда оборудования |
12 280 |
3 |
Прочие затраты |
1200 |
4 |
Организация рабочих мест |
52 500 |
5 |
Накладные расходы |
168 618 |
Суммарные затраты |
672 705 |
Таким образом, суммарные затраты на проект составляют 712 349 рублей.
5.4 Исследование рынка
На сегодняшний день существует целый ряд поколений программного обеспечения предназначенный для распознавания отпечатков пальцев. В этих программах реализованы подпрограммы обработки изображений с целью повышения качества, принципиально отличающиеся от реализованной в проекте по качеству фильтрации. Таким образом, на сегодняшний день не существует прямых конкурентов для данного продукта.
5.4.1 Сервисное обслуживание
Сервисное обслуживание нашего ПО будет выполнять один сотрудник. Для того, чтобы не обучать персонал особенностям нашего программного обеспечения, для выполнения данной работы привлечём программиста, который участвовал в разработке программного обеспечения. Так как мы не планируем продажу нашего продукта, то время, которое затратит наш программист, составит 2 рабочих дня в месяц, 24 дня за год. Затраты на сервисное обслуживание приведены в таблице 10.
Таблица 5.9. Заработная плата исполнителей
№ |
Должность |
«Чистый» оклад, руб. |
Дневной оклад, руб. |
Трудозатраты, чел/дни |
Затраты на зарплату, руб. |
1 |
Программист |
50 000 |
2 722,89 |
24 |
65 349,36 |
Расходы на дополнительную заработную плату учитывают все выплаты непосредственным исполнителям за время, не проработанное на производстве, но предусмотренное законодательством. Величина этих выплат составляет 20% от размера основной заработной платы:
Расходы на дополнительную заработную плату составят:
5.4.2 Отчисления на социальные нужды
Согласно нормативным документам, суммарные отчисления в пенсионный фонд, фонд социального страхования и фонды обязательного медицинского страхования составляют 30% от размеров заработной платы.
Общие расходы на заработную плату составляют:
Затраты на сервисное обслуживание: 101 945 рублей.
5.5 Планирование цены ПО на рынке
На основе данных о затратах на разработку, определим стоимость одного комплекта программного обеспечения.
Частичная стоимость разработки рассчитывается исходя из данных о планируемом объеме продаж:
,
Где - часть стоимости разработки на одну копию программы , - стоимость проекта, - планируемое число копий, - ставка по долгосрочным кредитам (более одного года), примем равную 20% («ОАО Альфа-Банк»).
Определим процент прибыли, воспользовавшись формулой:
Стоимость ПО на рынке определяется стоимостью разработки, стоимостью внедрения и прибыли фирмы разработчика. В нашем случае затраты на внедрение ПО примем равными нулю.
Сумма прибыли от продажи одной копии ПО равна:
,
Где - процентная ставка налога добавочной стоимости, равная 18%.
Для оплаты расходов на реализацию проекта возьмем кредит в банке ОАО «Альфа-Банк» в размере 700 000рублей на срок 18 месяцев. Ежемесячный платеж по данному кредиту составляет 45334 рубля. Сумма погашения кредита составляет 816 016 рублей. На рис. 5.4 изображена диаграмма прибыли проекта.
Рис. 5.4 Диаграмма прибыли
5.6 Вывод
Результаты проведённых организационно-экономических расчётов позволили оценить структуру работ, необходимое количество исполнителей, структуру затрат проекта, срок окупаемости проекта.
Общие затраты труда для выполнения программного проекта составили 74 чел/дней или 527 чел/часов. Затраты на разработку ПО составляют 672 705рублей.
Из структуры затрат проекта видно, что основной статьёй расходов является заработная плата исполнителей.
На рынке не существует прямых конкурентов для данного проекта. Так же данный проект не требует внедрения и доработки, так как все технические и технологические характеристики учитываются при разработке.
Прибыль от продажи одной копии составляет 27511 рублей.
Проект окупается за 18 месяцев с учетом выплат по кредиту.
На основании вышеизложенного можно сделать вывод о целесообразности проведения работ и внедрения и производство данной разработки.
Заключение
В ходе выполнения дипломного проекта были исследованы существующие алгоритмы, решающие поставленную проблему обработку образов отпечатка пальца. Был проведен кратки обзор данных алгоритмов и выбран наиболее рациональный метод для последующей реализации. Подробно рассмотрен математический аппарат выбрано алгоритма, приведена математическая постановка задачи. Проведен анализ норматвно-правовых актов Российской Федерации с целью проверки законности распространения и использования разрабатываемого программного обеспечения. Проведен организационно экономический анализ проектной разработки, оценены показатели затрат и экономическая выгода реализации проекта.
Список литературы
1.) Жуковский, В.В. Способ улучшения изображения отпечатка пальца/В.В. Жуковский, С.В. Сай//Вестник ТОГУ. 2009г. - № 4.
2.) Гудков, В.Ю. Скоростная обработка изображения отпечатка пальца/В.Ю. Гудков, М.В. Боков//Труды института системного анализа РАН. 2009г. - № 45.
3.) Фан Нгок Хоанг Алгоритмы для классификации отпечатков пальца на основе применения фильтра Габора, вейвлет-преобразоваия и многослойной нейронной сети/ Фан Нгок Хоанг, В.Г. Спицын//Известия Томского политехнического университета. 2012г. - № 5.
4.) Javier R. Movellan (Ed) Tutorial on Gabor Filters. 2008. http://mplab.ucsd.edu/tutorials/gabor.pdf (дата обращения:
20.06.2014).
5.) Maltoni D., Maio D., Jain A.K., Prabhakar S. Handbook of fingerprint recognition. N.Y.: Springer, 2003. 348 p.
6.) Asker M. Bazen, Systematic methods for the computation of the directional fields and singular points of fingerprint/ Asker M. Bazen, Sabih H. Gerez// IEEE Transactions on pattern analysis and machine intelligence. 2002 - № 7.
7.) Jie Zhou, Singular Points Analysis in Fingerprints Based on
Topological Structure and Orientation Field//Jie Zhou, Jinwei Gu, David Zhang//Department of Computing, the Hong Kong Polytechnic University, Kowloon, Hong Kong
8.) BaseGroup Labs, технологии анализа данных[электронный ресурс] URL: http://www.basegroup.ru/, Логистическая регрессия и ROC-анализ - математический аппарат, http://www.basegroup.ru/library/analysis/regression/logistic/ (дата обращения 20.06.2014)
9.) Гонсалес Р. Цифровая обработка изображений. М., 2005
Приложение 1. Код функции построения поля направлений
function [ orient ] = orient_grad( img )
[mod, dir] = imgradient(img);
for a = (1:size(mod,1))
for b = (1:size(mod,2))
if(dir(a,b)>=0)
line_dir(b) = dir(a,b)-90;
else
line_dir(b) = dir(a,b)+90;
end
end
if a==1
dir_new = line_dir;
else
dir_new = cat(1, dir_new, line_dir);
end
end
win_size = 9;
for a = (fix(win_size/2)+1 :win_size: size(dir_new,1) - fix(win_size/2))
for b = (fix(win_size/2)+1 :win_size: size(dir_new,2) - fix(win_size/2))
count_plus = 0; %counter of pluses in the window
count_min = 0; %coynter of munusis in the window
for c = (1:win_size)
for d = (1:win_size)
if dir_new(a-(fix(win_size/2)+1)+c, b-(fix(win_size/2)+1)+d)>=0
count_plus = count_plus + 1;
else
count_min = count_min + 1;
end
end
end
aver = 0; %average angle
for c = (1:win_size)
for d = (1:win_size)
if count_plus>count_min % if pluses more, then..
if dir_new(a-(fix(win_size/2)+1)+c, b-(fix(win_size/2)+1)+d)>=0
aver = aver+ double(dir_new(a-(fix(win_size/2)+1)+c, b-(fix(win_size/2)+1)+d));
end
else %else
if dir_new(a-(fix(win_size/2)+1)+c, b-(fix(win_size/2)+1)+d)<0
aver = aver + double(dir_new(a-(fix(win_size/2)+1)+c, b-(fix(win_size/2)+1)+d));
end
end
end
end
% count averege angle
if count_plus>count_min
aver = aver/count_plus;
else
aver = aver/count_min;
end
% save value in matrix
orient_line(fix(b/win_size)+1) = aver;
end
if a==fix(win_size/2)+1
orient = orient_line;
else
orient =cat(1, orient, orient_line);
end
end
end
Приложение 2. Код функции визуализации поля направлений
function [ output_img ] = show_orient( img )
img = img*pi/180;
for x=(1:size(img,1)/5)
img_line = show(img,x);
if (x==1)
output_img = img_line;
else
output_img = cat(1, output_img, img_line);
end
end
imtool(output_img)
end
function [ img_out ] = show( img, x )
line = zeros(15,15);
for a = (3:13)
line(8,a) = 255;
end
a = (x-1)*5+3;
for b = (3:5:size(img,2)-2)
sum = 0
for c = (1:5)
for d = (1:5)
sum = sum + img(a-3+c, b-3+d);
end
end
sum = sum/25; %среднее арифметическое углов
orient = imrotate(line, sum*180/pi, 'crop');
orient = imadjust(orient, [0 1], [1 0]);
if (b==3)
for c = (1:15)
for d = (1:15)
img_out(c, (b-3)*3+d) = orient(c, d);
end
end
else
img_out = cat(2, img_out, orient);
end
end
end
Приложение 3. Код функции подбора параметра
function [ output_args ] = test_gabor( img, orient )
bw = 0.3;
for a = 1:24
test_im = gabor_filter( img, orient,bw+a/20 );
imtool(test_im);
end
end
PAGE 5
Разработка алгоритма цифровой обработки образов отпечатка пальца