Logo    
Деловая газета CitCity.ru CITKIT.ru - все об Open Source Форумы Все публикации Учебный центр Курилка
CitForum    CITForum на CD    Подписка на новости портала Море(!) аналитической информации! :: CITFORUM.RU
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

20.02.2017

Google
WWW CITForum.ru
С Новым годом!
2005 г.

Публикация растровых карт

Печников Алексей Олегович, руководитель геоинформационного проекта "GeoMapX", http://geomapx.ru

Несмотря на сложность и трудоемкость обработки по-прежнему широко распространены растровые карты. Векторизуя космические снимки и сканированные карты, можно создавать различные векторные карты, однако во многих ситуациях требуется возможность работы непосредственно с растровыми данными. В статье рассматриваются способы автоматического построения таких карт из исходного картматериала. На вопросах совместного использования векторных и растровых карт мы останавливаться не будем, поскольку при выполнении изложенных ниже рекомендаций решение проблемы принципиальной трудности не представляет.

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

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

Традиционно картографические приложения создают 8-битную псевдо-цветную карту, основанную на 8-битной картинке в оттенках серого или псевдоцветной. Таким образом, если растровый файл является 24-битным изображением (красный, зеленый и синий диапазоны), обычно используемый метод отрисовки не пригоден.

Если строится 8-битное псевдо-цветное изображение, тогда полная 24-битная RGB картинка для отображения будет преобразована в карту цветов выходного изображения. Для преобразования может быть использован цветовой куб. Он включает фиксированный набор из 175 цветов и поддерживает использование 5 уровней красного, 7 уровней зеленого и 5 уровней синего, и плюс к этому 32 оттенка серого. Растры отрисовываются “на лету” одним из цветов куба. Такой механизм ухудшает качество цветопередачи, особенно для изображений с плавными переходами цвета. Также можно использовать фиксированный набор из 256 цветов, что работает значительно быстрее.

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

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

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

Структура файла привязки следующая. Первый коэффициент представляет собой размер по координате X в пикселах.Второй и третий являются коэффициентами поворота/сдвига (для неискаженного изображения равны 0.0). Четвертый коэффициент представляет собой размер по координате Y в пикселах, обычно этот коэффициент отрицателен, что соответствует направлению оси ординат вниз от левого верхнего угла. Последние два значения представляют собой X и Y координаты центра левого верхнего пиксела изображения. Следующий пример соответствует изображению с размером пиксела 2m x 2m, и левым верхним углом в точке (356800E, 5767999N).

2
0.0000000000
0.0000000000
-2
356800.00
5767999.00

Имя файла привязки основывается на имени файла изображения. Например, для файла aerial.tif файл привязки будет называться aerial.tfw. Также используются файлы привязки с расширением .wld.

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

  • Построение перекрывающихся уровней для растров высокого разрешения гарантирует, что только разумно необходимый объем данных будет обработан при построении карты. Могут быть организованы группы перекрывающихся слоев, отображаемых в зависимости от выбранного разрешения. Другой, возможно, более простой путь, заключается в построении пирамид для поддерживаемых форматов.
  • Для больших изображений используется их разбиение на набор малых, что позволяет загружать лишь небольшой набор данных для текущей области отображения. Такой путь может пользоваться механизмом разделения растров, или построением файла пирамиды (например, для формата TIFF). Заметим, что речь идет о растрах, покрывающих большую плошадь, в отличие от рассмотренного выше случая растра высокого разрешения. Вообще говоря, ранее предложенный способ обычно легче реализуем, а текущий – более трудоемок, что окупается его универсальностью.
  • Предварительная обработка RGB 8-битных изображений с использованием таблицы цветов с целью уменьшения объемов обрабатываемых данных и числа вычислений “на лету”.
  • Подготовьте заранее изображение во всех необходимых проекциях, чтобы исключить перепроецирование “на лету”, требовательное к ресурсам компьютера.
  • Убедитесь, что проекция карты совпадает с проекциями всех слоев , в этом случае лишние преобразования выполняться не будут.

Размещение рекламы — тел. +7 495 4119920, ICQ 232284597

Подписка на новости IT-портала CITForum.ru
(библиотека, CITKIT.ru, CitCity)

Новые публикации:

24 декабря

CITKIT.ru:

  • Новогодние поздравления
  • Сергей Кузнецов. Цикл Операционные системы: Ностальгия по будущему:

  • Алексей Федорчук. OpenSolaris 2008.11 Release

  • Сергей Голубев:

  • Евгений Чайкин aka StraNNik (Блогометки):

    17 декабря

  • С.Д.Кузнецов. Базы данных. Вводный курс

    10 декабря

    CITKIT.ru:

  • OpenSolaris 2008.11 Release

  • Альтернативные ОС: две грустные истории (С.Кузнецов)
  • Nokia N810 — доведение до ума
  • CitCity:

  • Платформа 2009: заоблачные перспективы Microsoft

    4 декабря

  • Лекция С.Д.Кузнецова Понятие модели данных. Обзор разновидностей моделей данных

    CITKIT.ru:

  • OpenSolaris 2008.11 Release. Первые впечатления

  • Linux vs FreeBSD: продолжим "Священные войны"?

  • Nokia N810 as is

  • Индульгенция для FOSS

  • Друзья СПО'2008

    26 ноября

  • Нечеткое сравнение коллекций: семантический и алгоритмический аспекты

    CitCity:

    CITKIT.ru:

  • Глава из книги А.Федорчука
    Сага о FreeBSD:
  • 19 ноября

  • Проблемы экономики производства крупных программных продуктов

  • Язык модификации данных формата XML функциональными методами

    CITKIT.ru:

  • Главы из книги А.Федорчука
    Сага о FreeBSD:

    Заметки к книге:

  • FreeBSD: монтирование сменных устройств и механизм HAL
  • Текстовый редактор ee

    12 ноября

  • Правило пяти минут двадцать лет спустя, и как флэш-память изменяет правила (Гоц Грейф, перевод: Сергей Кузнецов)

    CITKIT.ru:

  • Главы из книги А.Федорчука
    Сага о FreeBSD:
  • OSS в России: взгляд правоведа (В.Житомирский)

  • Новая статья из цикла С.Голубева "Железный марш":

    29 октября

  • О некоторых задачах обратной инженерии

  • Веб-сервисы и Ruby

  • Тестирование web-приложений с помощью Ruby

    CITKIT.ru:

  • Главы из книги А.Федорчука
    Сага о FreeBSD:

  • PuppyRus Linux - беседа с разработчиком (С.Голубев)

  • Сергей Кузнецов. Заметка не про Linux

    22 октября

  • Обзор методов описания встраиваемой аппаратуры и построения инструментария кросс-разработки

    CITKIT.ru:

  • Сергей Кузнецов. Почему я равнодушен к Linux

  • Глава из книги А.Федорчука
    Сага о FreeBSD:
  • Что надо иметь
    3. Базовые познания

    CitCity:

  • Управление IT-инфраструктурой на основе продуктов Microsoft

    15 октября

  • Методы бикластеризации для анализа интернет-данных

    CitCity:

  • Разъемы на ноутбуках: что они дают и зачем их так много?
  • AMD Puma и Intel Centrino 2: кто лучше?

    CITKIT.ru:

  • Новый цикл статей С.Голубева
    Железный марш:

  • Главы из книги А.Федорчука
    Сага о FreeBSD:

    8 октября

  • Автоматизация тестирования web-приложений, основанных на скриптовых языках
  • Опыт применения технологии Azov для тестирования библиотеки Qt3

    Обзоры журнала Computer:

  • SOA с гарантией качества
  • Пикоджоуль ватт бережет
  • ICT и всемирное развитие

    CitCity:

  • Пиррова победа корпорации Microsoft

    CITKIT.ru:

  • Главы из книги А.Федорчука
    Сага о FreeBSD:

    Статья из архива:

  • Я живу в FreeBSD (Вадим Колонцов)

    Новые Блогометки:

  • Перекройка шаблона Blogger или N шагов к настоящему
  • Blogger. Comment style
  • Screenie или глянцевый снимок экрана

    2 октября

    CITKIT.ru:

  • Сага о FreeBSD (А. Федорчук)

    Zenwalk: пакет недели

  • Банинг — интеллектуальное развлечение (С.Голубев)

    CitCity:

    25 сентября

  • Клермонтский отчет об исследованиях в области баз данных

    CITKIT.ru:

  • Пользователям просьба не беспокоиться... (В.Попов)

  • Снова про ZFS: диск хорошо, а два лучше
  • Командная оболочка tcsh (А.Федорчук)

    Zenwalk: пакет недели

    17 сентября

  • T2C: технология автоматизированной разработки тестов базовой функциональности программных интерфейсов
  • Технология Azov автоматизации массового создания тестов работоспособности

    CITKIT.ru:

  • FreeBSD: ZFS vs UFS, и обе-две — против всех (А.Федорчук)

    Zenwalk: пакет недели

  • Дачнет — практика без теории (С.Голубев)

    10 сентября

  • За чем следить и чем управлять при работе приложений с Oracle
  • Планировщик заданий в Oracle
    (В.Пржиялковский)

    CITKIT.ru:

  • Microsoft: ответный "боян" (С.Голубев)

  • Причуды симбиоза, или снова "сделай сам" (В.Попов)

  • Файловые системы современного Linux'а: последнее тестирование
  • Zsh. Введение и обзор возможностей
    (А.Федорчук)

    Описания пакетов Zenwalk: Zsh, Thunar, Thunar-bulk-rename, Xfce4-places-plugin, Xfce4-fsguard-plugin

    Блогометки:

  • Google Chrome
  • Лончер для ASUS Eee PC 701

    3 сентября

    CITKIT.ru:

  • Заметки о ядре (А.Федорчук):

    Добавлены описания пакетов Zenwalk: Galculator, Screenshot, Gnumeric, Pidgin

    В дискуссинном клубе:

  • И еще о Википедии и Google Knol

  • Лекция для начинающего линуксоида (С.Голубев)

    26 августа

  • Транзакционная память (Пересказ: С. Кузнецов)

    CITKIT.ru:

  • Открыт новый проект Zenwalk: пакет недели

  • Статья Текстовые процессоры и их быстродействие: конец еще одной легенды?

    21 августа

    CITKIT.ru:

  • Почему школам следует использовать только свободные программы (Ричард Столлман)
  • Беседа Сергея Голубева с учителем В.В.Михайловым

  • Википедия или Гуглезнание? Приглашение к обсуждению (Алексей Федорчук)
  • Народная энциклопедия от Google (StraNNik)

  • Обзор Mandriva 2009.0 Beta 1 Thornicrofti
  • Новичок в Линукс: Оптимизируем Mandriva 2008.1

  • Книга Zenwalk. Приобщение к Linux:

    13 августа

    CitCity:

  • Мирный Atom на службе человеку. Обзор платы Intel D945GCLF с интегрированным процессором
  • Обзор процессоров Intel Atom 230 на ядре Diamondville

  • iPhone - год спустя. Скоро и в России?

    CITKIT.ru:

  • Интермедия 3.4. GRUB: установка и настройка (из книги Zenwalk. Приобщение к Linux)

    6 августа

  • СУБД с хранением данных по столбцами и по строкам: насколько они отличаются в действительности? (Пересказ: С. Кузнецов)

    CITKIT.ru:

  • Интермедия 2.2. Что неплохо знать для начала (из книги Zenwalk. Приобщение к Linux)

  • И снова про шрифты в Иксах (А.Федорчук)

  • 20 самых быстрых и простых оконных менеджеров для Linux

  • Дело о трех миллиардах (С.Голубев)

    30 июля

  • OLTP в Зазеркалье (Пересказ: С. Кузнецов)

    CitCity:

  • Будущее BI в облаках?
  • Тиражные приложения и заказная разработка. Преимущества для заказчика
  • Дискуссия со сторонниками заказной разработки

    CITKIT.ru:

  • Новые главы книги Zenwalk. Приобщение к Linux:
  • Глава 8. Пакеты: средства установки, системы управления, системы построения
  • Глава 9. Zenwalk: репозитории, пакеты, методы установки

    23 июля

    CITKIT.ru:

  • Все против всех. 64 vs 32, Intel vs AMD, tmpfs vs ext3
  • Две головы от Intel

  • Zenwalk: обзор штатных приложений (глава из книги "Zenwalk. Приобщение к Linux")

  • Нормально, Григорий...

    16 июля

    Обзоры журнала Computer:

  • Перспективы и проблемы программной инженерии в XXI веке
  • Большие хлопоты с большими объемами данных
  • Перспективы наноэлектроники

    CITKIT.ru:

  • Интермедия о лицензиях (А.Федорчук. "Zenwalk. Приобщение к Linux")

  • Есть ли будущее у KDE?

  • Linux в школе: альтернативный вариант в задачах

  • Шифр (приключения агента Никодима)

    10 июля

    CITKIT.ru:

  • Новые разделы книги А. Федорчука Zenwalk. Приобщение к Linux:
  • Интермедия вступительная. Linux или GNU/Linux? Как вас теперь называть?
  • Глава 5. Среда Xfce
  • Глава 6. Xfce: приложения и плагины

  • ZUR (Zenwalk User Repository) FAQ

    2 июля

  • Персистентность данных в объектно-ориентированных приложениях (С. Кузнецов)

    CITKIT.ru:

  • Новые разделы книги А. Федорчука Zenwalk. Приобщение к Linux:
  • Интермедия 1.2. Дорога к Zenwalk'у. Период бури и натиска
  • Интермедия 3.3. Немного о Linux'е и "железе"
  • Глава 4. Настройка: инструментами и руками
  • Интермедия 4.1. Zenpanel и конфиги: поиски корреляции

  • Интервью с Жан-Филиппом Гийоменом, создателем дистрибутива Zenwalk

  • Linux в школе: первые итоги (С. Голубев)

    25 июня

    CITKIT.ru:

  • Zenwalk. Приобщение к Linux (А. Федорчук)

  • Логика и риторика (С.Голубев)

  • Технология Tru64 AdvFS

  • Ханс Райзер предлагает отвести полицейских к телу Нины

    18 июня

  • Проекты по управлению данными в Google (Пересказ: С. Кузнецов)

    CITKIT.ru:

  • ОС и поддержка "железа": мифы и реальность (А. Федорчук)

  • Linux в школе: другие дистрибутивы

  • Пинок (С. Голубев)

    4 июня

  • Ландшафт области управления данными: аналитический обзор (С. Кузнецов)

    CITKIT.ru:

  • Linux в школе: слово заинтересованным лицам

  • SlackBuild: пакеты своими руками

  • Linux от компании Novell. Установка и обзор openSUSE Linux

    Все публикации >>>




  • IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

    Информация для рекламодателей PR-акции, размещение рекламы — тел. +7 495 4119920, ICQ 232284597 Пресс-релизы — pr@citcity.ru
    Послать комментарий
    Информация для авторов
    Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
    Copyright © 1997-2000 CIT, © 2001-2007 CIT Forum
    Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...