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

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

А.В. Чернов, Н.В. Чупшев

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

А.В. Чернов, Н.В. Чупшев Институт систем обработки изображений РАН Самарский государственный аэрокосмический университет

Аннотация

В статье предлагается объектный подход, позволяющий автоматизировать векторизацию ортогональных площадных объектов на картографических изображениях с использованием распознавания на основе геометрических признаков. Полученные результаты позволяют в 2-3 раза снизить трудоемкость векторизации объектов типа зданий и сооружений.

Введение

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

Рассматривалась задача распознавания зданий. На исходном изображении здание представляется в виде замкнутого контура с ортогональными сторонами, содержащего внутри надписи, полученные по значениям семантических атрибутов: номер дома, количество этажей и др. Пример объектов, подлежащих распознаванию, приведен на рис. 1:

Рис. 1. Пример распознаваемых объектов

К процедуре распознавания предъявлялись следующие требования:

1. Строгие ограничения на допустимое положение результирующего контура относительно растрового оригинала с сохранением прямоугольно-сти.

2. Соблюдение топологических отношений между граничащими объектами.

3. Устойчивость к шумам, разрывам линий на исходном изображении, наличию примыкающих к контуру посторонних объектов

4. Высокая скорость векторизации и минимизация количества точек в результирующем представлении объектов.

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

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

1. Скелетизация исходного растрового изображения

2. Построение первичной векторной модели.

3. Устранение потенциальных разрывов.

4. Поиск всех базовых замкнутых контуров на векторной модели.

5. Выделение из множества замкнутых контуров и их объединений контуров зданий.

6. Постобработка данных с целью оптимизации результирующего представления.

Скелетизация

Формируемый на данном этапе скелетный образ должен обладать свойством строгой 8-связности и сохранять топологическую структуру исходного изображения. Для скелетизации был выбран метод попиксельного итеративного утончения, удовлетворяющий указанным требованиям. Следует отметить, что выбор алгоритма по точности представления

2007

Компьютерная оптика, том 31, №4

растровых объектов не является в данном случае принципиальным, в силу того, что на этапе постобработки используется ряд процедур, направленных на улучшение полученных векторных данных. [5]

Построение векторной модели

Первоначально на данном этапе осуществляется выделение особых точек на скелете (имеющих число связности, не равное двум). По найденному множеству создается полное описание скелетной структуры путем поиска для каждой особой точки всех исходящих из неё скелетных линий (поиск осуществляется до следующей особой точки). Полученная система скелетных линий подвергается уточнению, состоящему в генерализации каждой из линий и формировании на ней множества существенных (поворотных) точек. В результате получается векторная модель изображения в виде графа в(У, Е), где

V - множество вершин графа V = ¥0 и У1, ¥0 -множество особых точек, каждая из которых соответствует изолированной, концевой или точке ветвления на скелете изображения,

VI - множество промежуточных существенных точек,

Е - множество ребер графа, аппроксимирующих скелет изображения [2].

Устранение разрывов

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

Выделение замкнутых контуров

В данном случае использовался двухэтапный метод, позволяющий сократить вычислительные затраты и при этом дающий хорошие практические результаты.

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

ребер, имеющих заданный идентификатор в качестве одной из разделяемых областей, и составлению из них целостного объекта.

Контуры зданий представляют собой объединения базовых контуров. На графе они представляются в виде разложения по базисным циклам в следующем виде:

С = © ©... © .

¡1 12 V '

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

множества } , обеспечивающего заданный

V 1'>1=0

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

Г(С ) = Ь > То .

( ^

Для определения множества {¿^} применяется алгоритм эвристического поиска, в котором в качестве функции оценки текущего состояния выступает у (С). После окончания поиска осуществляется проверка критерия (2) для контура С' с наилучшей оценкой у (С') и принятие решения о том, является ли этот контур зданием [3].

Постобработка данных

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

Целью данного этапа является улучшение полученных векторных данных, состоящее в удалении лишних вершин, спрямлении углов контуров и правильном позиционировании данных на исходном

растре. Пусть С = {С, - множество найденных

контуров зданий, Я = {г!} - множество ребер ¡I. ./ > ]=0

го вюнгур^ Аг = [сск = А(гк, гк+1) I гк, гк+1 £ Кг} - множество углов /-го контура. Тогда оптимизация векторного представления может быть определена минимизацией целевой функции следующего вида:

N-1 N-1

R(G) = £ Xs

i=0 k=0

nn nn

ak-- <e ak--

k 2 J k 2

Данная функция, по сути, отвечает за умень-

„ пп

шение отклонения углов контуров от значений .

Оптимизация осуществляется поиском для каждой вершины положения, при котором обеспечивается минимум Я(О). При определении положения необходимо учитывать допустимость новых векторных данных, возможность удаления и слияния вершин.

На последнем этапе требуется повысить соответствие между полученной векторной моделью и исходным растровым изображением, используя только параллельный сдвиг ребер с сохранением всех ортогональных углов. Для этого производится дистантное преобразование исходного изображения, вычисление интегральных характеристик положения ребра Л(О) по данному изображению и выполнение параллельного сдвига ребра в направлении увеличения Л(О). Применение такой процедуры приводит к перемещению ребра по направлению к средним линиям исходных растровых объектов [6].

Заключение

На основе предложенного подхода было разработано программное обеспечение автоматического распознавания зданий, которое сейчас проходит опытную эксплуатацию в ряде организаций при создании векторных планов г. Самары. Основная трудность состоит в извлечении из результатов множества контуров, соответствующих зданиям. На сегодня это делается оператором, при этом вероятность правильного распознавания составляет более 95%, а ручного труда сокращается в 2-3 раза. Ведутся работы по автоматической идентификации зданий путем распознавания надписей стандартного вида (типа «2КЖ»). На рис. 2 приведены результаты векторизации четырех зданий на растровом изображении рис. 1:

Рис. 2. Результаты распознавания

Благодарности

Работа выполнена при поддержке Российского фонда фундаментальных исследований

Литература

1. Методы компьютерной обработки изображений / Под ред. В.А. Сойфера. - М.: ФИЗМАТЛИТ, 2003. - 784 с.

2. Janssen, R.D.T., Vossepoel, A.M. Adaptive Vectoriza-tion of Line Drawing Images // Computer Vision and Image Understanding, 1997. - Vol. 65. - No. 1. - P. 38-56.

3. Luger. G. Artificial intelligence: structures and strategies for complex problem solving // Addison-Wesley Publishing Company, 2002.

4. Gonzalez, R.C., Woods, R.E. Digital Image Processing // Prentice Hall, 2004, 624 pages.

5. Rosenfeld, A., Pfaltz, J. L. Sequential operations in digital picture processing // ACM, 1966. - Vol. 13. - P. 471494.

6. Borgefors, G. Distance Transforms in Digital Images // Computer Vision, Graphics and Image Processing, 1986. -P. 344-371.