Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
9.2. ОПИСАНИЕ ЛИНИИВ этом разделе мы рассмотрим различные способы описания линий или составленных из линий объектов. Общий подход будет заключаться в том, чтобы аппроксимировать объект одной или многими прямыми линиями (или, может быть, кривыми, которые описываются многочленами). Таким образом, имеются две задачи: как раз- бить исходный объект на сегменты и как подобрать линию для каждого сегмента. Мы будем обсуждать методы решения задач обоих видов, но должны сразу предупредить читателя, что в большинстве своем эти методы эвристические — они не облагорожены какой-либо лежащей в их основе теорией и должны применяться с разумной осторожностью. Мы начнем наше обсуждение со второй, более простой задачи и в связи с этим будем считать, что нам дано множество дискретных точек на плоскости (X, У), которое мы хотим аппроксимировать одной линией. В следующих пунктах описываются два аналитических подхода к этой задаче. 9.2.1. ПОДБОР ЛИНИЙ ПО МИНИМУМУ СУММЫ КВАДРАТОВ ОШИБОККлассический метод подбора линий состоит в отыскании одиночной линии, дающей минимальную сумму квадратов ошибок (МСКО). Говоря более точно, нам дано множество точек таких числа
была минимальна. Другими словами, мы хотим найти такую прямую линию, чтобы сумма квадратов расстояний по вертикали от каждой из точек до этой линии была минимальна. Эта задача и другие задачи такого типа могут быть элегантно решены посредством псевдообращения матрицы. В гл. 5 псевдообратная матрица бцла получена чисто аналитическими методами. Потратим некоторое время, чтобы для разнообразия получить тот же результат геометрически. Пусть дано матричное уравнение
Если мы обозначим через
Если вектор b лежит внутри линейной оболочки, образованной столбцами матрицы А, уравнение, конечно, имеет решение. Предположим, однако, что вектор b лежит вне линейной оболочки векторов
или
Теперь, если матрица
Матрица
Рис. 9.1. Аппроксимация по минимуму суммы квадратов ошибок. Всякая матрица обратима, если ее обнуляющий множитель равен нулю, т. е., в нашем случае, если из равенства Подведем итоги обсуждению вопросов, связанных с псевдообращением. Предположив, что столбцы матрицы что мы взяли наше множество точек
Если мы возьмем вектор
что представляет собой в точности критерий МСКО для коэффициентов
Подход на основе псевдообращения может быть легко распространен на случай аппроксимации множества точек по критерию МСКО с помощью многочлена. Пусть мы хотим найти такие коэффициенты
минимальна. Мы будем поступать так же, как и в линейном случае, но на этот раз запишем матрицу А для значений координат X в виде
а вектор и в виде
Положив
минимальна. 9.2.2. ПОДБОР ЛИНИИ ПО СОБСТВЕННОМУ ВЕКТОРУМожно получить хороший аналитический способ аппроксимации множества точек прямой линией, если изменить слегка определение «наилучшего» подбора, использованное в методе МСКО. А именно будем считать, что линия аппроксимирует множество точек наилучшим образом, если при этом минимальна сумма квадратов расстояний по перпендикуляру от точек до линии. По некоторым причинам, которые вскоре прояснятся, мы будем называть эту линию наилучшим приближением по собственному вектору. Различие между определениями иллюстрируется рис. 9.2, на котором метод МСКО выбрал бы линию, минимизирующую сумму квадратов длин вертикальных сплошных отрезков, в то время как метод, который будет обсуждаться в данном пункте, минимизировал бы сумму квадратов длин пунктирных отрезков. Таким образом, подбор по собственному вектору в противоположность подбору по МСКО не зависит от выбора осей координат. Введем несколько обозначений. Как обычно, положим, что дано множество из Вывод уравнения для наилучшей линии значительно упростится, если мы сразу же установим тот факт, что линия, минимизирующая линии. Пусть (см. скан) Рис. 9.2. Два критерия наилучшего подбора. (см. скан) Рис. 9.3. Способ представления линии. Элементарные вычисления показывают, что величина В силу доводов, приведенных выше, мы можем на тех же основаниях предположить, что множество из
Симметричная матрица
представляет собой матрицу рассеяния заданных
Мы предоставляем читателю доказать в качестве упражнения, что в случае, когда 1) Привести точки к стандартному виду вычитанием среднего значения из координат каждой точки. 2) Найти главный собственный вектор матрицы рассеяния для множества стандартизованных точек. 3) Линией наилучшего приближения является единственная прямая, проходящая через среднее множества точек и параллельная этому собственному вектору. На рис. 9.4 приведен интересный пример, показывающий, насколько различными могут быть приближения, полученные по МСКО и по собственному вектору. Приближение по собственному вектору представляет собой как раз ту прямую, какую можно было бы заранее пожелать, а вариант, полученный по МСКО, настолько «неверен», насколько это возможно.
Рис. 9.4. Два различных варианта подбора для одного и того же множества точек. Такой слабый результат вызван только данной системой координат. Если поменять местами оси X и Y, то приближения, полученные по собственному вектору и по МСКО, будут полностью идентичны. В заключение нашей дискуссии об аппроксимации по МСКО и по собственному вектору отметим, что оба метода основаны на аналитическом решении задачи минимизации некоторого критерия наилучшего приближения. При работе с дискретными изображениями во многих случаях желательно применение других критериев, которые не поддаются аналитическим методам. Часто удается минимизировать такой критерий методом поиска, при условии, конечно, что для поиска можно легко найти хорошую начальную точку. Предположим в качестве примера, что мы аппроксимируем множество точек посредством простого соединения крайней левой и крайней правой точек множества. Для дискретного изображения мы можем попробовать перемещать эти концевые точки в пределах небольшой области окрестных элементов с тем, чтобы минимизировать наш критерий. Такие перемещения можно выполнять путем перебора или с помощью какого-либо алгоритма поиска экстремума. Таким образом, основная стратегия минимизации некоторого критерия наилучшего приближения может использоваться даже в том случае, когда аналитическое решение невозможно. 9.2.3. ПОДБОР ЛИНИЙ ПОСРЕДСТВОМ КЛАСТЕРНОГО АНАЛИЗАРанее мы полагали, что все точки объекта должны аппроксимироваться единственной линией. Обратим теперь наше внимание к более общей задаче описания объекта посредством совокупности линий. А именно это означает, что мы должны уметь разделять объект на такие подмножества, что каждое из них может быть хорошо представлено единственной линией. Существует много методов для выполнения этой операции. В следующих пунктах описываются два метода, основанные на кластерном анализе. Идея, лежащая в основе каждого из них, заключается в том, чтобы перевести исходный объект в новое пространство, в котором коллинеарные подмножества объекта образуют группы или кластеры. Эти кластеры затем могут быть найдены, например, с помощью методов кластерного анализа, подобных описанным в гл. 6. 9.2.3.1. Преобразование точек в кривыеПредположим, как обычно, что нам дано множество из Конкретный пример методов этого класса будет задан, если мы введем систему параметров для семейства прямых линий. По некоторым причинам, объясняемым ниже, мы выберем так называемую нормальную систему параметров прямой линии. Как показано на рис. 9.5, такая система параметров задает прямую линию углом наклона выглядит следующим образом:
В соответствии с этим мы переводим каждую точку
Заметим, что это преобразование сводится всего лишь к тому, что мы иначе интерпретируем те же величины: мы считаем величины
или, поскольку точка
Рис. 9.5. Нормальная система параметров прямой линии. Но последнее равенство справедливо при В принципе описанный метод решает проблему аппроксимации множества заданных точек набором прямых линий. На практике, однако, возникают две трудности. Во-первых, если мы начинаем обработку кривая заносится в массив посредством увеличения содержимого счетчиков в каждой клетке вдоль кривой. Коллинеарные точки создадут в результате большие числа в некоторых счетчиках. Приближенно коллинеарные точки создадут моды в двумерной гистограмме, отображаемой массивом. Заметим, кстати, что нам нужно рассматривать значения 8 только от 0 до 9.2.3.2. Кластерный анализ сегментовМы расширим временно основные правила подбора линий с тем, чтобы включить задачу подбора линий для совокупности коротких (как правило) прямых сегментов. Довод в пользу такой постановки заключается в том, что иногда изображение преобразуется в набор коротких прямых сегментов посредством операции сравнения с эталоном. В таком случае следующий очевидный шаг может состоять в аппроксимации коллинеарных сегментов прямыми линиями. Ключ к тому, как это можно было бы сделать, дает специальный способ представления сегментов, показанный на рис. 9.5. Мы будем представлять данный сегмент в координатах 9.2.4. СЕГМЕНТАЦИЯ ЛИНИИВ некоторых случаях задача разбиения объекта на подмножества может рассматриваться как задача сегментации. Мы, например, имеем основания ожидать, что точки объекта скорее лежат на каких-то (возможно, сложных) кривых, чем на случайно расположенных линейных сегментах. В таких случаях естественно поискать методы для разбиения совокупности точек объекта, т. е. кривой, на некоторое число последовательных линейных сегментов, таких, что каждый из них может быть хорошо аппроксимирован отрезком прямой. В следующих пунктах описываются два весьма простых метода осуществления этой операции. 9.2.4.1. Итеративный подбор концевых точекВ своей простейшей форме метод итеративного подбора концевых точек заключается в следующем. Нам дано, как обычно, множество из
Рис. 9.6. Итеративный подбор концевых точек. Вычисляются расстояния от каждой точки до этой линии, и, если все они меньше некоторого установленного заранее порога, процесс закончен. Если это не так, мы находим точку, наиболее удаленную от АВ, например точку С, и заменяем первоначальную линию двумя новыми линиями АС и СВ. Этот процесс затем повторяется отдельно для двух новых линий, возможно, с различными порогами. Рис. 9.6 иллюстрирует этот метод. Исходная линия А В разбивается на AС и СВ, а затем линия СВ разбивается на CD и DB. Конечным результатом является последовательность связанных сегментов AC, CD и DB. Метод имеет два недостатка, причем оба они сводятся к тому, что на результат сильно влияют отдельные точки. Первый, менее существенный недостаток заключается в том, что сегмент, выбираемый в конечном итоге, может оказаться не самой лучшей аппроксимацией точек, находящихся в его непосредственном окружении. С этим можно бороться с помощью процесса вторичного подбора, в котором для уточнения позиций сегментов линии используется более изощренный алгоритм. Другими словами, итеративный алгоритм можно применять для приближенного подбора и приближенного определения точек излома, а затем улучшать аппроксимацию во время второго прохода. Более серьезный недостаток итеративного процесса заключается в том, что единственная «дикая» точка может резко изменить конечный результат. Хотя с этим также можно бороться, например с помощью процесса предварительного сглаживания, та же самая основная проблема встречается и во многих других алгоритмах обработки изображений. Простота часто достигается ценой принятия решения на основании только локальной информации об изображении. Поэтому область применения простых алгоритмов ограничена случаями, когда исходные данные в основном не содержат шумов. 9.2.4.2. Точки максимальной кривизныНам хотелось бы рассмотреть здесь задачу сегментации несколько иного рода. Пусть задан гладкий контур (он может быть получен, например, с помощью процедуры прослеживания контура). В чем может заключаться разумный способ разбиения этой кривой на последовательные прямолинейные отрезки? Один способ, подсказанный психологическими экспериментами, состоит в том, чтобы разбить кривую в точках высокой кривизны и соединить точки излома прямыми линиями. Ценность этого метода подтверждается известным рисунком, принадлежащим Аттниву, который построен в соответствии с описанным правилом (рис. 9.7).
Рис. 9.7. Пример Аттнива (из книги Аттнива, 1954). Мало кто не узнает здесь спящую кошку. С математической точки зрения такой подход связан с так называемым естественным уравнением кривой. Естественное уравнение кривой определяет ее кривизну как функцию длины дуги. Следовательно, обсуждаемый метод, по существу, эквивалентен заданию естественного уравнения кривой ее экстремальными точками. (Мы оставили без внимания некоторые математические трудности, связанные с определением кривизны в точке пересечения двух прямых линий.) 9.2.5. ЦЕПНОЕ КОДИРОВАНИЕВесьма удобный метод представления произвольной кривой известен под названием цепного кодирования. Ради простоты мы будем считать, что кривая первоначально задана в виде двухградационного изображения на неквантованной плоскости и что мы хотим каким-то образом представить ее в цифровой форме. Вместо того чтобы дискретизировать все изображение обычным путем, мы наносим сетку на аналоговую картинку и фиксируем точки, в которых кривая пересекает линии сетки.
Рис. 9.8. Цепное кодирование. Для представления кривой отбираются узлы сетки, ближайшие к каждому пересечению. Рис. 9.8, а показывает выделенные узлы для данной кривой. Затем мы кодируем последовательность узлов восьмеричными числами, обозначая направления от одного узла к другому в соответствии с кодами, показанными на рис. 9.8, б. Так, например, цепное кодирование данной кривой начиная с крайней нижней точки дает последовательность 1, 1, 2, 1, 0. Заметим, что такая схема может рассматриваться как дискретный вариант естественного уравнения кривой. Код определяет угол (в другом варианте — изменение угла) как функцию длины дуги с учетом того, что диагональные отрезки в Цепное кодирование особенно удобно при сравнении формы двух кривых. Предположим для простоты, что мы хотим измерить сходство между двумя кривыми одинаковой длины и ориентации. Обозначим цепи через выражения
где
Заметим, что, если две кривые идентичны, их цепная функция взаимной корреляции достигает своего максимального значения, равного 1. В более общем случае две цепи имеют разную длину, и нам будет нужно двигать одну цепь относительно другой с тем, чтобы найти наилучщее соответствие. В связи с этим мы обобщим определение цепной функции взаимной корреляции следующим образом:
где k — длина общего участка двух последовательностей. Таким образом, наилучшее соответствие достигается вычислением величины
|
1 |
Оглавление
|