Важнейшим носителем информации до сих пор является бумага. Вследствие ее структурных и механических свойств, а также как результат не слишком бережного хранения изображение может ухудшаться: стирается информация, изменяется цвет. При сканировании документов нередко появляются линейные искажения, а при хранении картографического материала — нелинейные искажения. Также приходится работать с синьками плохого качества, имеющими неоднородный фон.
Со всеми этими и многими другими дефектами призван справляться модуль «Растр». Рассмотрим его подробнее.
«Растр» — это профессиональный растровый редактор и векторизатор, который работает на Платформе nanoCAD. Модуль располагает множеством команд, применяющихся к растровым изображениям различной сложности, что делает работу проектировщиков быстрой и комфортной.
Перечень задач, которые решает «Растр», очень широк: от поворота растра до улучшения качества с последующей векторизацией. Давайте возьмем конкретную задачу, которая наиболее полно представит его возможности и позволит нам погрузиться в мир проектировщика: построим поверхность по горизонталям, взятым из изображения «Картограмма зимней ветрозащиты территорий» (рис. 1).
Изображение пришло ко мне в формате *.tif. Отмечу, что модуль «Растр» работает со следующими расширениями: *.tif, *.tiff, *.bmp, *.jpg, *.jpeg, *.png, *.pcx, *.gif, *.ecw.
Все исходные и сопутствующие материалы нашей статьи доступны по ссылке (рис. 2).
В качестве точки вставки выберем координаты 0,0,0 и нажмем ОК.
Вкладка Диапазон диалогового окна Бинаризация позволит избавиться от лишней информации на обрезанном изображении.
Нажатием на кнопку напротив слоя изменим цвет изображения на черный (рис. 6).
Цвета данных, которые нужно оставить на монохромном изображении, укажем с помощью кнопки Взять пробу . В пространстве модели выберем цвет полилинии. Для лучшей конвертации повторим взятие пробы в нескольких местах. Результат настроек бинаризации динамически отображается в окне предварительного просмотра (рис. 7).
Если вы промахнулись, удалите лишнюю отметку с помощью кнопки Удалить цвет .
После того как мы убедились в правильности полученных данных, нажмем Применить и закроем диалоговое окно. Полученный монохромный растр находится под цветным — чтобы увидеть результат, выберем цветной растр и перенесем его с помощью команды MOVE.
Для этого воспользуемся командой RASTERERASER (Ластик). Введем размер ластика (в пикселях) в командную строку или укажем на экране. После этого удалим ненужную информацию (рис. 9).
Остается векторизовать полученное монохромное изображение. Модуль «Растр» поддерживает два способа векторизации: автоматический и полуавтоматический. Из названия понятно, что автоматическая векторизация не требует ручного контроля со стороны пользователя: при этом способе достаточно настроить параметры и нажать всего одну кнопку. Автоматическую векторизацию можно использовать на любом типе растра. В свою очередь полуавтоматическая векторизация (трассировка) позволяет эффективно устранять дефекты векторных объектов. Покажу оба способа векторизации на нашем монохромном изображении. Для полилиний применим трассировку и будем автоматически размещать их на слое «0», а для текстов используем автоматическую векторизацию и создадим для них слой «Текст».
Точность поставим в область высоких значений. Размеры укажем на растре с помощью кнопки Измерить значение .
Если получилось так, что трассировка выбрала неверное направление, как показано на рис. 12, отмените сегмент в командной строке: Отменить_сегмент.
При обнаружении пробелов выберите Нарисовать_сегмент. Обязательное условие: горизонтали не должны прерываться. Но даже если такое случилось — не переживайте, для редактирования векторных полилиний существует удобный инструмент pltools (см. рис. 2 — подборку материалов, представленных в начале статьи).
Полученный результат показан на рис. 14.
Без проблем удаляем его с помощью команды SpeckleRemover (Удаление мусора) — (рис. 16).
Я привык самостоятельно указывать величину растрового мусора при помощи кнопки Измерить максимальный размер . Далее указываем на растре максимальный предполагаемый размер мусора и нажимаем кнопку Применить (рис. 17).
Остальной мусор можем удалить уже знакомым нам ластиком.
Для автоматической конвертации выберем растр и воспользуемся командой R2VConvertor. Если текст распознался неверно, поправим его вручную. Если же не распознался вообще, переходим к следующему этапу.
Выбираем слой для текста и полилиний, нажимаем ОК. Как результат, получаем объекты на нужном уровне в соответствии с отметками на полилиниях (рис. 21).
Для дальнейших действий необходимо вертикальное приложение nanoCAD GeoniCS, которое работает на базе Платформы nanoCAD.
Переходим к завершающему этапу построения поверхности. Вызываем контекстное меню в разделе с названием вашей поверхности и выбираем ПОСТРОИТЬ. В диалоговом окне Свойства поверхности оставляем значения по умолчанию (рис. 24).
Получаем сообщение об успешном построении поверхности с информацией о количестве полученных треугольников (в нашем случае их 1908) — (рис. 25).
Результат всей нашей работы представлен на рис. 26.
Как вы могли заметить, вся работа с исходным растром происходила только в nanoCAD с соответствующими модулями без перехода в сторонние приложения и, соответственно, без переключения внимания пользователей.
Сегодня мы рассмотрели несколько функций, часто используемых при работе с растровыми изображениями, а об остальных возможностях модуля «Растр» вы можете узнать из нашей онлайн-справки (рис. 27).
Удачного проектирования!