Программная реализация методов сегментации текстовой информации на изображениях денежных купюр

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    10,89 Кб
  • Опубликовано:
    2017-01-18
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Программная реализация методов сегментации текстовой информации на изображениях денежных купюр















Курсовая работа

ПРОГРАММНАЯ РЕАЛИЗАЦИЯ МЕТОДОВ СЕГМЕНТАЦИИ ТЕКСТОВОЙ ИНФОРМАЦИИ НА ИЗОБРАЖЕНИЯХ ДЕНЕЖНЫХ КУПЮР


Постановка задачи

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

Содержание

Введение

1. Разработка комплексного метода обработки изображений

1.1 Понятие обработки изображений. Выбор среды реализации ПО

1.2 Выбор методов обработки и сегментации изображений

1.3 Математические основы примененных фильтров

1.3.1 Медианный фильтр

1.3.2 Гистограмма яркости изображения

1.3.3 Пороговый фильтр

1.3.4 Морфологический фильтр

2. Программная реализация комплексного метода обработки изображений

2.1 Процесс разработки приложения

3. Тестирование разработанного программного обеспечения

Заключение

Список используемых источников


Введение

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

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

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

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

Для реализации поставленной цели, формируются следующие задачи:

изучение обобщенной теоретической части по обработке изображений;

освоение различных методов сегментации текстовой информации на изображениях;

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

реализация на языке высокого уровня приложения, позволяющее произвести фильтрацию с заданными изображениями;

тестирование разработанной программы и сравнение полученных результатов.

Для разработки приложения, будет использована среда программирования Borland C++ Builder.

1. Разработка комплексного метода обработки изображений

1.1 Понятие обработки изображений. Выбор среды реализации ПО

Входными данными для обработки являются изображения. На выходе может быть не только обработанное изображение, но и некоторая его характеристика. Изображения бывают различными: от бинарных, то есть тех, в которых присутствует лишь два цвета (как правило, черный и белый), до 32-х битных изображений. Остановимся на самых распространенных 24-х битных изображениях формата .bmp (от англ. bitmap). Этот формат предназначен для хранения растровых изображений, то есть изображений, представляющих собой сетку пикселей или же точек цветов. Помимо него есть множество других форматов, таких как .jpeg (.jpg), .png, .tiff и другие. Отличаются они, как правило, способом кодировки изображения. Например, формат .jpeg содержит сжатые данные, которые были получены по одноименному алгоритму JPEG, являющемуся алгоритмом сжатия с потерей качества. Чтобы рассматривать изображение без потери качества и с полной глубиной цвета был выбран формат .bmp.

Для работы с изображениями на компьютере с использованием языков программирования высокого уровня существует достаточно много средств. Самыми распространенными являются: Open GL (Open Graphics Library) - это открытая графическая библиотека, DirectX - набор функций, разработанных для решения задач, связанных с видео программированием под Microsoft Windows, а также непосредственно Microsoft Visual Studio в которой и будет реализовано приложение. Microsoft Visual Studio - линейка продуктов компании Microsoft, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms, а также веб-сайты, веб-приложения и т.д. Данная среда программирования, наиболее подходящая для реализации различных методов фильтрации изображений, так как имеет ряд преимуществ среди других сред программирования, такие как:

·Простая реализация общих задач и индивидуальный подход;

·Простое подключение различных библиотек

·Быстрое создание высококачественного кода;

·Функция поддержки нескольких мониторов;

·Возможность реализации идей и решений для широкого спектра платформ, включая ОС Windows, сервера Windows и т.д.

1.2 Выбор методов обработки и сегментации изображений

В качестве изображений для которых будут использованы методы фильтрации, будут являться изображения денежных купюр. На рисунке 1 и рисунке 2 представлены изображения купюр российских банкнот в 500 и 1000 рублей соответственно в черно-белом цвете и в формате «.bmp».

Рисунок 1 - Исходное изображение купюры в 500 рублей

Рисунок 2 - Исходное изображение купюры в 1000 рублей

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

Проанализировав данные изображения можно приступить к определению фильтров для сегментации изображений текстовой информации обоих купюр. В качестве графического редактора, в котором и будут определятся методы фильтрации, является Adobe Phoroshop СС 2015. Photoshop - это многофункциональный графический редактор, разработанный и распространяемый фирмой Adobe Systems. В основном работает с растровыми изображениями, однако имеет некоторые векторные инструменты. Продукт является лидером рынка в области коммерческих средств редактирования растровых изображений и наиболее известным продуктом фирмы Adobe.

Подбор методов обработки и сегментации изображения, представленного на рисунке 1, в графическом редакторе Adobe Photoshop выявил, что для повышения информативности изображения целесообразно воспользоваться пороговой фильтрацией, позволяющей определить контуры текстовой информации купюры. Таким образом на рисунке 3 приведен результат фильтрации изображения с порогом яркости, равным 145.

Рисунок 3 - Бинаризация изображения с заданным порогом

Подбор методов обработки и сегментации изображения, представленного на рисунке 2, выявил целесообразность использования на начальном этапе медианного фильтра для подавления мелкозернистого шума. Результат применения фильтра приведен на рисунке 5.

Рисунок 5 - Медианный фильтр

После медианного фильтра, к этому же изображению был применен фильтр бинаризации с оптимальным порогом яркости равным 160, результат представлен на рисунке 6.

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


Рисунок 6 - Фильтр бинаризации

1.3 Математические основы примененных фильтров

1.3.1 Медианный фильтр

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

Значения отсчётов внутри окна фильтра сортируются в порядке возрастания (убывания); и значение, находящееся в середине упорядоченного списка, поступает на выход фильтра. В случае четного числа отсчетов в окне выходное значение фильтра равно среднему значению двух отсчетов в середине упорядоченного списка. Окно перемещается вдоль фильтруемого сигнала и вычисления повторяются.

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

Медианный фильтр представляет собой оконный фильтр, последовательно скользящий по массиву сигнала, и возвращающий на каждом шаге один из элементов, попавших в окно (апертуру) фильтра. Выходной сигнал yk скользящего медианного фильтра шириной 2n+1 для текущего отсчета k формируется из входного временного ряда …, xk-1,xk,xk+1,… в соответствии с формулой:

k=med(xk-n,xk-n+1,…,xk-1,xk,xk+1 ,…,xk+n-1,xk+n)

где med(x1, …,xm, …, x2n+1) = xn+1,xm - элементы вариационного ряда, т.е. ранжированные в порядке возрастания значений xm:

x1=min(x1,x2,…, x2n+1) ≤x(2)≤x(3)≤ … ≤ x2n+1 =max(x1,x2,…, x2n+1).

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

1.3.2 Гистограмма яркости изображения

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

Гистограмма характеризует частоту встречаемости на изображении пикселов одинаковой яркости.

Яркостными преобразованиями изображения называются преобразования двумерных функций яркости, описываемые простой формулой:

I′(x,y)=f(I(x,y)).

Здесь f() - функция отображения яркости, которая никак не зависит от положения пиксела x,y. Простейшим случаем яркостных преобразований изображения являются линейные преобразования яркости, в которых функция отображения яркости имеет вид

f(I)=a*I+b,


1.3.3 Пороговый фильтр

Простейшим методом препарирования изображений является бинаризация. Это преобразование заключается в превращении изображения в двухцветное черно-белое. Главным параметром такого преобразования является порог - значение, которое будет критерием проверки интенсивности точки изображения. Функция бинаризации представлена на рисунке 7.

Бинарные изображения в смысле подмножеств пикселей («масок») часто используются в цифровой обработке изображений. Для исследования формы и структуры некоторых множеств однотипных объектов бинарные растры используются в математической морфологии.


Рисунок 7 - Функция бинаризации

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

Значения каждого пикселя изображения условно кодируются, как «0» и «1». Значение «0» условно называют задним планом или фоном (англ. background), а «1» - передним планом (англ. foreground).

Порог, по которому идет разделение пикселей на «черные» и «белые» определяется по гистограмме изображения.

1.3.4 Морфологический фильтр

Под морфологическими фильтрами в данном случае понимаются следующие алгоритмы:

. Расширение (Erosion)

. Сжатие (Dilation).

. Нахождение расширенного контура (Eroded Contour).

. Нахождение сжатого контура (Dilated Contour).

На рисунке 8 показаны три новых пространственных фильтра: фильтры сжатия и расширения, а также контурный фильтр.

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

Рисунок 8 - Морфологические фильтры

Принцип работы морфологических фильтров.

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

Все морфологические фильтры основаны на двух операциях - dilation и erosion. Они определяются следующим образом. Пусть у нас есть два произвольных набора точек в дискретном двумерном пространстве: и . На этих наборах определим функции и будем называть их объектами А и В.

Операция erosion (разъедание) выглядит так:


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

Определение операции dilation(расширение):



2. Программная реализация комплексного метода обработки изображений

2.1 Процесс разработки приложения

Начало разработки приложения на языке высокого уровня С++ в среде Borland C++ Builder осуществлялось с создания формы программы, в которую были добавлены необходимые компоненты для работы с приложением. На рисунке 9 приведен фрагмент формы приложения с кнопками.

изображение программный гистограмма

Рисунок 9 - Форма приложения

Форма состоит из панели разделов, в которой есть такие пункты как «Файл» и «Эффекты». В разделе «Файл» находятся кнопки с картинками, которые позволяют открыть, сохранить изображение и закрыть приложение. В разделе «Эффекты» соответственно реализован выбор фильтров. На рисунке 10 приведен фрагмент формы в разделе «Эффекты».


Рисунок 10 - Разделы "Эффекты"

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

На рисунке 11 представлен фрагмент алгоритма работы метода медианной фильтрации изображений.

Рисунок 11 - Алгоритм работы медианного фильтра

Программная реализация (листинг) метода медианной фильтрации приведена на рисунке 12.

Рисунок 12 - Код медианного фильтра

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

Рисунок 13 - Алгоритм работы гистограммы

Сформированный код по разработанному алгоритму изображен на рисунке 14.

Рисунок 14 - Код гистограммы

На рисунке 15 и рисунке 16 представлен алгоритм и программная реализация метода пороговой фильтрации с выбором порога бинаризации по гистограмме яркости. Порог определяется согласно позиции компонента TrackBar.

Рисунок 15 - Алгоритм порогового фильтра


Рисунок 16 - Код пороговой фильтрации по позиции TrackBar

На рисунке 17 представлен алгоритм работы морфологического фильтра - сжатие.

Рисунок 17 - Алгоритм работы фильтра сжатия

Листинг написанной программы приведён на рисунке 18.


Рисунок 18 - Листинг программы

. Тестирование разработанного программного обеспечения

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

После запуска готового приложения выбран исходный фрагмент купюры, приведенной на рисунке 1, что показано на рисунке 19.

Рисунок 19 - Исходное изображение с хорошим качеством

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


Рисунок 20 - Пороговая фильтрация

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

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

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

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


Рисунок 21 - Медианный фильтр

Рисунок 22 - Пороговый фильтр


Рисунок 21 - Морфологическая фильтрация

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

Заключение

Подведя итоги выполнения курсовой работы, можно отметить что поставленная цель выполнена. Так же соответственно изучена общая теоретическая часть по обработке изображений. Самостоятельно были определены методы фильтрации изображений в выбранном графическим редакторе, предназначенные для дальнейшего преобразования. Так же при выполнении курсовой работы были изучены различные методы реализации фильтрации изображений. После чего разработаны алгоритмы их работы, и реализованы в среде Borland C++ Builder. Сформированное приложение является средством, которое позволяет применить такие методы фильтрации как медианный, пороговый и морфологический фильтры, а также гистограмму яркости изображения.

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

Список используемых источников

1. Интернет источник «wikipedia.org/wiki/Обработка_изображений»

2. Грузман И.С. Цифровая обработка изображений в информационных системах / И.С. Грузман, В.С. Киричук и др. - Новосибирск: Изд-во НГТУ, 2002 - 352 с.

. И.М. Журавель "Краткий курс теории обработки изображений" [Электронный ресурс]. - Режим доступа: http://matlab.exponenta.ru/imageprocess/book2/76.php.

. ТелеМедТехника - Системы ввода и анализа изображений [Электронный ресурс]. - Режим доступа: http://telemed-spb.narod.ru/defect.htm.

. Вудс, Р. Цифровая обработка изображений / Р. Вудс, Р. Гонсалес. - Москва : ТЕХНОСФЕРА, 2005. - 1072 с.

. Яне, Б. Цифровая обработка изображений / Б. Яне. - Москва : ТЕХНОСФЕРА, 2007. - 584 с.

Похожие работы на - Программная реализация методов сегментации текстовой информации на изображениях денежных купюр

 

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