Гонсалес Р., Вудс Р., Эддинс С. Цифровая обработка изображений в среде Matlab (2006) (1246139), страница 87
Текст из файла (страница 87)
Первый шаг состоит в формировании стека из шести изображений размером 512х512хб, что обсуждалось ранее: » Я = сас(3, 11, 12, 13, 14, 16, 16); где 11 — 12 соответствуют шести снимкам в разных спектральных диапазонах. Далее этот стек загружается в массив Х; » [Х, к) = Ашвсас1с2нессогв(Я); Теперь мы получаем 6 изображений главных компонент, применяя функцию рг1псошр при с[ = б: » Р = рг1псошр(Х, б); Изображение первой компоненты строится и отображается на дисплее с помощью команд » 61 = Р.У(:, 1); » 61 = гевЬаре(61, 512, 512); » ХшвЬои(61, [ )) Все другие компоненты получаются и отображаются аналогичным образом.
Собственные значения расположены вдоль главной диагонали матрицы Р. Су, поэтому мы применяем команду » 4 = 41аб(Р.Су); где 4 это 6-мерный вектор-столбец, поскольку в нашем примере параметр <~ = б. ~~498 Глава 11. Предстанмн~~е и описании ~ 1!.'7 IЛ ~;л ыо~.оиис.::ин~нь~г ъолпь~н~ни: щт ~п~нотиь и~оГрмиетР 4~~~~ нскнмчгъятич~ск~м ду~~и~~ля ягой я«~ну~)яч при тип~~ ~~<~щччии уо ц ю~ т;;: Перед тем, как завершить материал данного параграфа, отметим, что функция рт1псошр может использоваться для ориентации объектов (областей или их границ) вдоль собственных векторов этих объектов.
Для этого координаты объектов выстраиваются в столбцы массива Х и применяется функция рт1псошр с аргументом с = 2. Преобразованные данные, выстроенные вдоль собственных векторов, содержатся в поле Р. У. В этом состоит грубая процедура выстраивания, которая использует все координаты для вычисления матрицы преобразования и располагает данные по направлению их основной концентрации. Выводы Представление и описание объектов или областей, полученных при сегментации изображения, составляют первые шаги работы большинства автоматизированных процессов, в которых участвуют цифровые изображения.
Такие описания, например, являются входной информацией для алгоритмов распознавания объектов, обсуждаемых в следующей главе. Разрабатываемые в последующих параграфах М-функции представляют собой значительное расширение стандартных функция пакета 1РТ для решения задач представления и описания изображений. Не вызывает сомнения, что выбор того или иного типа дескрипторов в большой степени диктуется исследуемой проблемой. Но тогда существенную помощь при решении задач может оказать гибкая среда для моделирования и прототипирования, в которой уже имеющиеся функции могут быть интегрированы в новый программный код, что расширяет рамки приложений при сокращении временных затрат на их разработку.
Материал данной главы является хорошим примером построения основы для такой рабочей среды. ГЛАВА 12 РАСПОЗНАВАНИЕ ОБЪЕКТОВ Введение Мы завершаем нашу книгу разработкой и обсуждением ряда М-функций, реализующих некоторые методы распознавания областей и границ, которые в этой главе будут называться обвектами или образами. Подходы к компьютеризации распознавания образов можно разделить на две основные категории: методы, основанные на теории решений, и структурный анализ. Первая категория имеет дело с образами, которые описываются количественными дескрипторами, такими как длина, площадь, текстура и многими другими дескрипторами, рассмотренными в гл. 11.
Вторая категория методов ориентирована па образы, которые можно хорошо представить символьной информацией, например, символьными строками. и которые можно описать свойствами и взаимоотношениями между этими символами, как объясняется в з 12.4. В теории распознавания образов ключевое место занимает принцип эобучаемости» при исследовании выборки объектов. Далее рассматриваются и иллюстрируются методы обучения, применяемые как в теории решений, так и в структурном анализе.
! 2. !. Некоторые основы Под образом подразумевается упорядоченная совокупность дескрипторов, подобных рассмотренным в гч. 11. В литературе по распознаванию образов дескрипторы принято также называть признаками. Классом образов называется совокупность образов, которые обладают некоторыми общими свойствами. Классы образов будут обозначаться символами щг щг,..., щи, где 11' — это число классов. Машинное распознавание образов предполагает отнесение образов к тем или иным классам, что должно совершаться автоматически или с минимальным вмешательством человека. В практических задачах распространены два типа упорядоченного представления признаков; в виде векторов (количестве1п1ое описание) и в виде символьных строк (структурное описание).
Образы, представление которых основано на векторах признаков, обозначаются жирными строчными буквами, например, х. у, х и они имеют вид векторов-столбцов размера пх1 х1 хг $ЕвЕ2 т гй. ее б где каждая компонента г, представляет дескриптор с номером Ь а п — это общее число дескрипторов, ассоциированных с образом. Иногда в вычислениях бывает удобно представлять образы в виде векторов-строк размера 1 х п, которые можно получить простым транспонированием векторов-столбцов: хт. Природа компонент вектора образа х зависит от подхода, применяемого к описанию самого физического объекта. Рассмотрим, к примеру, задачу автоматической классификации буквенно-цифровых символов. Дескрипторы, пригодные для метода теории решений, могут включать такие величины, как двумерные инварианты моментов или множество коэффициентов Фурье, описывающих внешнюю границу символов.
В некоторых приложениях характеристики образов лучше всего описывать с помощью структурных связей. Например, распознавание отпечатков пальцев основано на взаимных связях отпечатка, которые называются мелкими деталялеи . Вместе с их относительными размерами и расположением эти признаки играют роль примитивов, которые описывают свойства линий отпечатка, такие как обрывы, ветвления, слияния и несвязные сегменты. Задачи распознавания такого типа, в которых принадлежность образов определенному классу определяется не только данными количественных измерений признаков, но также и пространственным соотношениями между признаками, обычно лучше решаются с использованием структурных методов.
Материал последующих параграфов представляет собой реализацию на базе МАТЬАВ некоторых методов распознавания образов. Основной принцип распознавания, особенно в приложениях теории решений, состоит в сравнении образов с помощью измерения расстояния между векторами образов. Поэтому мы начнем с обсуждения различных эффективных методов вычисления расстояний средствами МА'П АВ. ! 2.2. Вычисление расстояний в МАТЮКАВ Материал этого параграфа связан с векторизацией вычисления расстояний. Без использования этой оптимизирующей возможности вычисления пришлось бы выполнять на основе операторов цикла йог или ип11е.
Некоторые из представленных ниже выражений с векторизацией являются еще более изощренными, чем операторные формулы из примеров, рассмотренных в предыдущих главах, поэтому мы советуем читателю детально разобраться в этих выражениях. Приводимые далее формулировки основаны на аналогичных формулах, разработанных в [Ас)с1аш, 2002]. Евклидоеым расстоянием между двумя и-мерными векторами х и у (в виде столбцов или строк) называется число с1(х,у) = /)х — у(! = /)у — х)/ = '1(х1 — р1) +. + (гн — у„) 1 Это выражение представляет собой норму разности двух векторов, поэтому его можно вычислять в МАТЬАВ с помощью функции погш: 6 = погш(х — у), В оригинале использован термин тпсонаае. — Прим. нерее. В.........
М~Т-В 10~~3) где х и у — это векторы, соответствующие х и у из предыдущей формулы для Н[х,у). Часто бывает нужно вычислить множество евклидовых расстояний от вектора у до каждого вектора некоторого семейства, состоящего из р векторов размерности и, которые записаны в виде строк матрицы Х размера рхп. Чтобы размерности были правильно согласованы, вектор у должен иметь размер 1 хо. Тогда расстояние от каждого элемента Х до у будет записано в вектор рх1 П = вцгс[впш[аЬв[Х вЂ” гершас(у, р, 1)) .
2, 2)), где й[1) есть евклидово расстояние от у до 1-ой строки матрицы Х (т.е., до Х[1,: ) ~. Обращаем ваше внимание на употребление функции гершаС, которая р раз дублирует вектор-строку у и записывает результат в виде матрицы рхп для приведения ее к размерам матрицы Х. Значение 2 во втором аргументе функции епш означает, что следует вести вычисления вдоль второй размерности, т. е. суммировать элементы по горизонтальной размерности. Пусть имеется два семейства векторов Х и Ъ' размерами рхп и дхп соответственно.
Матрицу, в которую записаны все расстояния между всеми парами строк этих семейств, можно вычислить, применив оператор Р = ес~гС(впш[аЬв[гершаС(ретшпсе(Х, [1 3 2]), [1 ц 1]) .. -гершаС(регшпСе[У, [3 1 2]), [р 1 1])) . 2, 3)), где Р(1, )) — это евклидова расстояние между 1-ым и )-ым векторами этих семейств. т, е.
между Х(1,:) и У[],:). Синтаксис функции регшпсе в предыдущем выражении имеет вид В = регшпСе[А, огрех). Эта функция перестраивает размерности массива А в соответствии с элементами вектора огйег [элементы в этом векторе должны быть однозначными). Например, если А является двумерным массивом, то выражение регшпСе[А, [2 1] ) попросту переставляет строки и столбца матрицы А, что эквивалентно присвоению матрице В результата транспонирования матрицы А.
Если длина вектора огйег больше, чем число размерностей А, то МАТ[ АВ обрабатывает компоненты вектора слева направо, пока не будут использованы все элементы. В предыдущем выражении для Р команда рехшисе(Х, [1 3 2]) порождает массивы в третьем измерении, каждый из которых является столбцом (размерности 1) из Х. Поскольку в Х имеется всего и столбцов, то создается и таких массивов, причем каждый из иих имеет размерность рх1.
Следовательно, команда регшпСе[Х, [1 3 2]) создает массив размерности рх1хи. Аналогично, команда регшпСе[У, [3 1 2]) строит массив размерности 1хдхп. Наконец, команда гершаС[регшпсе(Х, [1 3 2]), [1 ц 1]) повторяет д раз каждый из и столбцов массива, порожденного командой рехшпСе, и в результате образуется массив размерности рхдхп. Аналогичным образом можно прокомментировать другие команды, в которые вовлечена матрица У. ~фб Г беб б На самом деле, рассмотренная формула для Р является векторизацией выражений, которые можно записать иначе с помощью «медленных» циклов Хот или яЬ11е. В дополнение к рассмотренным выше выражениям в этой главе будет также вычисляться взвешенное расстояние от вектора у до среднего вектора семейства гп„, причем вес расстояния задается матрицей, обратной ковариационной матрице С„этого семейства. Такая метрика, называемая расстоянием Мпш ланпбиса, определяется выражением й(у, пт„) = (у — пт„) С„~(у — и к).