Гонсалес Р., Вудс Р., Эддинс С. Цифровая обработка изображений в среде Matlab (2006) (1246139), страница 90
Текст из файла (страница 90)
Ковариационная матрица и средний вектор для У1 вычисляются командой » [С1, ш1] = со»тшасг1х(У1); и аналогично для остальных классов. Теперь мы строим массивы СА и ИА для их использования в функпии Ьауевяапвв: н.в с«н ш 5!ф на стабильность оценок параметров. Наибольшее число ошибок в обоих случаях произошло при оценивании городских участков. Это неудивительно, так как там тоже встречается растительность (заметим, что городские и растительные места ни разу не классифицировались как водные). На рис.
12.2, е) черным цветом отмечены точки, где произошла ошибочная классификация, а белый цвет соответствует правильной классификации. На области с номером 1 практически не видно черных точек, поскольку все 7 ошибочно распознанных местоположений находятся около границы или лежат на ней. Таблица 12.1. Байесовская классификация ыультиспектрапьных данных Для построения завершенной системы распознавания для классификации мультиспектральных изображений может потребоваться некоторая дополнительная работа. Однако уже из этого примера видно, что прототип такой системы построен на базе функций МАТЮКАВ и пакета 1РТ, которые дополнены некоторыми новыми функциями, разработанными к этому моменту в данной книге. О 12.3.5. Адаптивные обучающиеся системы Подход, изложенный в Я 12.3.1 и 12.3,3, основан на оценке статистических параметров некоторой выборки каждого класса образцов.
Классификатор по минимальному расстоянию полностью определяется средним вектором каждого класса. Аналогично, байесовский классификатор для гауссовых величин однозначно задается средним вектором и ковариационной матрицей множества образов каждого класса. В обоих случаях обучающие множества строятся достаточно просто. Обучающие обра1ы каждого класса используются для вычисления параметров решающих функций, определяющих этот класс.
После оценивания нужных параметров структура классификатора фиксируется, и далее его эффективность будет зависеть от того, насколько хорошо реальные образы удовлетворяют базовым статистическим предположениям. сделанным при выводе данного метода классификации. Пока характеристики образов из рассматриваемых классов удовлетворяют, хотя бы приблизительно, закону гауссова распределения, предложенные методы будут работать вполне удовлетворительно. Однако если эти допущения нарушаются, разработка подходящего статистического классификатора становится более сложной задачей, поскольку оценивание многомерных функций распределения вероятностей является нетривиальным делом. На практике такие задачи теории решений лучше преодолеваются с помощью методов, которые позволяют строить решающие функции непосредственным обучением по доступным образ- (ю6 г Й.г б цам.
Тогда предварительные допущения относительно функций распределения вероятностей для имеющихся классов образов становятся необязательными. Основной подход, используемый в настоящее время для классификации такого типа, базируется на нейронных сетях (см. ~Сопяа1еа, %оос)э, 20021). Реализация нейронных сетей, годящихся для конкретных приложений обработки изображений, лежит не очень далеко от рамок возможностей МАТЬАВ и 1РТ. Однако такие действия были бы не вполне законными, поскольку уже имеется хороший пакет по нейронным сетям, разработанный компанией Т)те Ма1)т%огЫ несколько лет назад. ! 2.4.
Структурное распознавание Техника структурного распознавания базируется на общем представлении интересующих объектов в виде символьных строк, деревьев или графов определении набора дескрипторов и правил распознавания на основе выбранного представления объектов. Ключевое различие между подходами теории решений и структурными методами заключается в том, что в теории решений количественные дескрипторы представляются в виде числовых векторов.
В отличие от этого, структурный метод принципиально работает лишь с информацией, представленной в символьном виде. Например, пусть границы объектов в некотором приложении представлены ломаными линиями минимальной длины. Подход теории решений мог быть основан на построении векторов, элементами которых являются величины внутренних углов многоугольников, а структурный анализ может исходить из задания символов для ряда величин углов, после чего строятся строки таких символов для описания образа в целом. Символьные строки являются самыми распространенным элементами представления объектов, которые используются в структурном распознавании, поэтому мы сфокусируем наше внимание в этом параграфе именно на этом представлении данных.
Как скоро станет ясно, МАТЬАВ имеет весьма солидный набор специализированных функций для обращения со строками символов. 12.4.1. Работа со строками в МАТ1 АВ В системе МАТ1,АВ символьные строки это одномерными массивы, элементами которых являются коды символов. Отображение символов на экране зависит от таблицы символов, которая используется для кодирования данного шрифта. Длиной строки называется число ее символов, включая пробелы. Ее можно узнать, воспользовавшись стандартной функцией 1епбхЬ. Строка определяется путем заключения ее символов в одинарные кавычки (текстовые кавычки внутри строки обозначаются двойными кавычками). В табл.
12.2 перечислены все основные функции МАТЬАВ для работы со строками.1 Первая функция Ь1впкв из этой категории имеет синтаксис в = Ыал1св(п). 1Некоторые важные функции для обработки строк уже вводились в предыдущих главах. Она строит строку, состоящую из и пробелов. Функция се11втт создает смешанный массив строк по массиву символов.
Одно важное преимущество хранения строк в виде смешанных массивов состоит в устранении необходимости дополнять строки пробелами, чтобы в символьном массиве все строки имели одинаковую длину (тс е. подравнивать строки). Обращение с = се11ввт(Я) » Я = [' аЬс'; 'бе1я'; 'Ь1 ') % Мове СЬе Ь1ап)св. Я = аЬс с)ейя Ьх Таблица 12.2. Функции МАТЮКАВ для обработки строк Категория Имя функции Объяснение Общие функции Строка пробелов. Строит смешанный массив строк из символьно- го массива.
Использовать функцию сЬаг для об- ратного преобразования в символьный массив. Строит символьный массив (строку). Удаляет ковпевые пробелы. Выполняет строковую команду 1ИАТЬАВ. Истина для смешанного л~ассива строк, Истина для символьного массива. Истина для буквы. Истина для символов пробела.
Преобразует буквы в строчные. Отыскивает регулярные выражения. Отыскивает регулярные выражения, игнориру» заглавные. Ь1апйе се11всг сЬаг аеы Ь ета1 1все11всг 1всЬаг хв1ессег Проверки строк 1вврасе 1ояег Операции со строками гебехр гебехрт Заменяет строку на регулярное выражение. Соединяет строки. Сравнивает строки (слс $ 2.10.6). Сравнивает строки, игнорируя заглавные. Ищет строку внутри другой.
Выравнивает строку. Находит совпадения строк. Сравнивает первые п символов строк. Сравнивает первые и символов строк,игнори- руя заглавные. Читает форматированные данные в строке. См. подробности в х 2.10.5. геяехргер всгсас вггсшр вхгсшрх всг11па вхг)вес асгшассь Бхгпохр ехгпсшрг есггеае помещает строки сил~вольного массива Я в отдельные ячейки с. Функция сйат конвертирует смешанный массив обратно в матрицу символов. Например, рас- смотрим следующую матрицу строк: й 1В г.. 12..
=...= .ь. хаблица 12.2 (окончание). вхггер всгсох всгтсаС пррег оопЪ1е Преобразования из строк в числа СпС2вгг вас2всг ппв2всг яргспгг есг26опые всг2пвв яесапх Ьаве2оес Преобразования систем счисления Умп26ес пес2Ьаве оес2Ь1п еес2Ьех Ьех2оес Ьех2шлх Набрав в командной строке иЬов Я, получим следующую информацию: » иЬов Я Наше Я Яхве Зх4 Вугев С1авв 24 сЬаг аггау Заметьте, что в двух из трех строк массива Я имеются по краям пробелы, поскольку все строки символьной матрицы должны иметь одинаковое число символов. Обратим также внимание на то, что в выходных данных отсутствуют ограничивающие кавычки, так как мы имеем дело с символьным массивом.
Следующая команда возвращает смешанный массив размера 3х1: Яхве Зх1 Вусев С1авв 294 се11 аггау » с се11вгг(Я) с = ' аЬс' 'бегя' 'Ь1' )) иЬ08 С Наше Заменяет строку внутри другой. Ищет метку в строке. Соединяет строки по вертикали. Преобразует буквы в заглавные. Преобразует из строки в число. Преобразует целое число в строку.