Нехитрые советы для пользователей ПК

Архив за месяц: Январь 2020

 New новый чертёж (Plot) :

fig7-2071106

Далее можно переходить к построению графика. Для этого проще всего воспользоваться (на первых порах) Мастером по меню Graph>Graph Wizard:  

fig8-4631222

Попадаем в форму, в которой задаём вид графика. Пусть в нашем случае это будет обыкновенный график в виде кривой:

Затем задаём колонки, из которых будем извлекать данные для построения графика (обведено красным) и другие опции (цвет кривой, толщина, вид начальной/конечной точки и т.д.):

fig11-1769315

Жмём кнопку Finish, и после небольшой ретуши опций графика (это тема отдельного разговора) видим сл. картинку:

fig13-1378897

График сечения интерполированной поверхности с использование продуктов компании Golden SoftwareSurfer и Grapher — успешно создали!

Прим от 26.11.12   В 11-ой версии Surfer разработчики из Golden Software значительно усовершенствовали инструмент для создания профилей. Более подробную информацию можно посмотреть в этой статье

О том, как решить аналогичную задачу по созданию сечения рельефа в ArcGIS, можно посмотреть на нашем сайте здесь

Как создать профиль рельефа в Vertical Mapper — смотрите по этой ссылке

©Simashkov.2011

09.10.2011 г.

Назад

Задача по подписыванию объектов в ArcView/ArcMap является, пожалуй, одним из стандартных положений и не представляет из себя ничего сложного. О том, как это сделать (в смысле создать подписи на карте), и пойдёт речь немного ниже.

Предположим, наша исходная учебная карта выглядит сл. образом:

fig1-3785290

Что нам нужно :  сгенерировать  на карте подписи административных районов, взяв их из поля rayon слоя adm1.

Для выполнения этой манипуляции в Таблице содержания становимся на слой adm1, жмём на правую кнопку и в контекстном меню выбираем Properties:

fig2-1581065

Далее идём на вкладку Labels и в Панели Text String выбираем нужное нам поле, из которого будем брать значения для подписей (rayon в нашем случае):

fig3-8206876

Жмём кнопку OK и опять в контекстном меню слоя включаем пункт Label Feature:

fig4-1451643

Теперь наша карта с подписями выглядит сл. образом:

fig5-2250301

Как решить аналогичную задачу по подписыванию объектов в MapInfo — смотрите на нашем сайте по этой ссылке

 ©Simashkov.2011

 Перестроить новое целочисленное поле id:

fig4-3135080

Далее идём меню Таблица>Обновить колонку и в поле Значение устанавливаем функцию RowId:

fig5-1589361

… и видим результат, к которому стремились:

fig6-5323141

В поле id занесён номер записи в порядке возрастания. Задача решена.

05.10.2011 г.

©Simashkov.2011

Назад

Principal Components:

fig12-9175326

На вход этого метода «подаём» три наших интерполированных растра:

fig14-3542945

На выходе получаем синтезированный растр (Princip_1, для данного примера):

fig15-1872706

Другой широко-используемый метод классификации называется Метод максимального правдоподобия (Maximum Likelihood Classification). Его отличие от описанного выше метода заключается в том, что данный метод использует классификацию с обучением. Технологически это заключается в сл. моменте — перед построением классификации необходимо создать файл сигнатур или Iso (Iterative Self-Organizing) — файл. Выглядит это сл. образом. Ищем утилиту Iso Cluster:

fig10-3655287  

На вход этой утилиты опять «подаём» учебные интерполированные поверхности:

fig19-7660051

После отработки утилиты получаем «обучающий» файл (или, как ещё говорят, сигнатура) с расширение .gsg

Теперь можно производить классификацию методом Максимального правдоподобия:

fig17-3939462

Входными данными в данном случае будут поверхности и «обучающий» файл:

fig18-6788671

Жмём кнопку OK и видим приблизительно сл. картинку:

fig16-9377947

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

©Simashkov.2011

20.07.2011 г.

Назад

Image Classification:

fig1-5946700

Теперь небольшое отступление. Для создания классификаций необходимо обладать определённым знанием контекста ситуации. Это в том смысле, что вы элементарно должны представлять себе, что находиться на вашем космоснимке в конкретных  локализациях — ну например, надо четко представлять, где у вас  на снимке лес, водная поверхность, городская застройка и т.д. Такая информация нам сейчас пригодиться. Представим, что на снимке ниже, обведённый контур является пашней. Чтобы дать указание программе запомнить эту информацию, на панели инструментов Image Classification выбираем инструмент рисования, как принято выражаться, обучающей области (Draw training polygon) и обводим фрагмент снимка, который, по нашему мнению,  является пашней:

Абстрактное название Class1 и цвет являются не совсем подходящими. Поэтому, слегка подправляем этот момент:

Аналогичным образом, задаём на снимке, для примера,  области для водной поверхности и пастбища:

Обратите внимание, что на карте выше, для водной поверхности (в качестве  примера), искусственно захватили нехарактерный участок. Сейчас увидим, что из этого вышло:

fig6-7445325

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

fig11-8741010

Закончив эту манипуляцию, можно создать классифицированную поверхность — выбираем пункт меню Interactive Supervised Classification:

imageclass-2113083

Теперь наша карта будет выглядеть следующим образом

:

fig12-1518520

На рисунке выше продемонстрировано, также, использование набора инструментов Image Analysis. В частности, может пригодиться инструмент Swipe Layer. Щёлкаем по нему (см. рис. выше), и на карте появляются маркёры, прихватив которые,  можно сдвигать как шторку выбранный растр:

fig13-5990370

Создание классификации, в первом приближении закончили. Теперь, в отличии от исходного снимка, мы с какой-то степенью вероятности знаем, что конкретно (в смысле какой вид угодий) расположено в каждой локализации — на космоснимке такой информации нет! Далее можно приступать к ‘водным процедурам’ — обработке классификации различными статистическими методами и алгоритмами. Например узнать, какая вероятность того, что конкретный пиксель принадлежит к определённому классу (немного о таких алгоритмах можно посмотреть на нашем сайте здесь).

Как подготовить выразительный композит снимков Landsat для создания классификаций — смотрите здесь

 Coordinate System:

fig10-1881210

Далее выбираем проекцию Transverse Mercator (цифра 1):

fig15-2880205

Жмём на кнопку Select (см. рис. выше цифра 2):

fig11-4494075

 … и ещё далее :

Теперь наша карта приобрела сл. вид:

fig4-1603361

Для добавления нового поля в окне атрибутивных данных интересующего нас слоя river1 выбираем Add Field:

fig7-7338758

… и добавляем поле Len:

fig16-3844276

Теперь становимся на него и выбираем Calculate Geometry(Вычислить геометрию)  :

fig17-3579061

Далее устанавливаем нужную нам размерность длины (метры) и  параметр Length (длина сегмента, в данном случае):

fig8-8259081

Вот теперь получаем верный результат подсчёта длин в той размерности, которая нас устраивает:

fig18-3584828

А для подсчёта статистики колонки выбираем пункт Statistics … :

fig19-6316083

… и видим нужную нам сумму всех длин и прочую статистику колонки Len:

fig9-8658404

Небольшой комментарий. Чтобы выполнить простую манипуляцию по подсчёту длины сегментов, в ArcGIS пришлось проделать невероятные кульбиты. По-моему, идеологи и разработчики из фирмы ESRI здесь явно чего-то перемудрили. Для начинающих это может оказаться непосильной задачей …

©Simashkov.2011

13.08.2011 г.

Назад

Системные и в выпадающем списке Единиц площади выбираем интересующую нас размерность (на рисунке ниже, гектары):

screen6-4380987

Чтобы быстро, скажем, подсчитать сумму площадей всех контуров можно поступить следующим образом. Идём в меню Запрос>SQL и набираем текст так, как показано на рисунке ниже — Sum(Area(obj, «hectare»)). Функции Sum и Area можно выбрать из выпадающих списков Обобщение и Функции соответственно:

calcareasql-9575387

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

:

calcareasqlresult-2596902

Прим. 26.11.2015 В более поздних версиях MapInfo v12.5 и v15 пункт Запрос SQL можно найти на вкладке Map> SQL Select :

… или на вкладке Spatial :

Однако, продолжим …

Но чаще , все-таки, бывает необходимо вычислить площадь каждого контура и сохранить это значение в таблице. Такую задачу также можно решить с помощью SQL-запроса. Опять таки, идём меню Запрос>SQL и набираем параметры  приблизительно так, как указано на рисунке ниже — id, Round(Area(obj, «hectare»),0.1) «Площадь»:

screen3-3742342

Небольшой комментарий к рисунку выше. В указанном запросе мы добавляем к единственному полю с номером контура id поле со значение площади контура в гектарах, округленное до 0.1(одной десятой). Это округление делает функция Round. А измерение площади производим функцией Area.

В результате можно получить приблизительно такой список. Как видим, в результирующем списке Query1 появилась колонка «Площадь» со значением округлённой до 0.1 гектара площади контура.

screen4-8059207

Существует ещё один, более упрощённый (может быть, даже более удобный) способ заполнения столбца значением площади через пункт меню Таблица>Обновить колонку:

fig1-3331806

В этой форме задаём изменения в столбце

Area

таблицы

Parcels

Жмём на кнопку Составить (см рис. выше) и задаём сл. выражение:

fig2-5290101

Наш обновлённый список будет выглядеть так:

fig4-4808207

Теперь с помощью статистики по колонке легко получить сумму площадей всех контуров и другие статистические параметры по указанному столбцу. Для этого идём в меню Запрос>Статистика колонки.

Результат может выглядеть так:

statcolumns-8921009

Как решить аналогичную задачу по определению площади контуров, используя ArcGIS, можно посмотреть на нашем сайте здесь и здесь.

© Simashkov.2010

05.11.2010 г.

Назад

Режимы :

ris3-3822403

На форме, представленной выше, сначала кликаем Обработка растра, и на сл. форме выставляем опцию Всегда:

ris4-2281329

После нажатия на кнопку Проекция устанавливаем категорию Проекции мира

ris5-1656992

 … и проекцию Меркатора  для нашего учебного примера, как наиболее универсальную:

ris6-7237082

Теперь наша картинка примет сл. вид — карта предстанет в так называемом спроецированном виде:

ris7-1868690

Так, идём дальше. Сейчас самое время заняться созданием координатной сетки. Для этого идём меню Discover>Map Grid:

ris8-2080725

… и далее попадаем в форму настроек километровой сетки. Параметры (для нашего примера) могут выглядеть приблизительно таким образом:

ris9-3390285

Кликнем на OK и теперь наша карта приобрела сл. вид ( в общем, модуль Discover можно использовать и для построения прямоугольных сеток):

ris10-9431246

Далее воспользуемся ещё одной полезной возможностью расширения Discover — создание вида карты в Окне в рамках выбранного слоя. Пусть для нашего примера это будет только-что подготовленная километровая сетка (или слой ramka в рассматриваемом примере). Но для начала её необходимо выбрать. Проще всего это сделать по меню Запрос> Выбрать:

ris11-1815248

… или Запрос>Выбрать полностью (кому как удобнее):

ris12-1156616

Снова идём меню Discover и далее Map Window>Fit Map window to ….

ris15-9973905

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

ris16-8493723

Теперь можно непосредственно приступить к созданию макета . Для этого идём Discover>Scaled Output:

ris17-7346083

Попадаем на форму настроек макета:

ris18-5747877  

Для тех

,

кто хочет  создать на макете карты  угловой штамп

,

выставляем опции

TitleBlock

(угловой штамп)

и

Scalebar

(масштабная линейка)

Двигаемся дальше. Если правильно угадали с масштабом на форме выше, то вся наша карта должна лежать в границах  листа печати заданного размера (A3 Потрет для нашего примера, рамка чёрного цвета):

ris25-9247894

Теперь займемся оформлением угловой рамки (штампа). Для этого идём меню Scale Output>Accept Map Position , опять попадаем в форму настроек макета (Scale Output) и видим такую форму настроек угловой рамки.  Здесь необходимо заполнить некоторые поля реквизитов штампа:

ris19-2553068

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

ris20-4445618

То, что угловой штамп немного ‘отъехал’ — не беда. Берём, и просто подтягиваем его в нужное место  место (как более точно отпозиционировать,  можно посмотреть здесь) :

ris21-5923998

Чтобы поаккуратнее откорректировать угловой штамп,  просто идём в меню Окно в соответствующую карту:

ris22-6029092

Окончательно оформленный учебный макет для нашего  примера может выглядеть приблизительно так:

ris24-2254286

В общем, если вкратце, где-то так о том, как создать карту с использованием MapInfo и модуля Discover. С деталями, предполагаю, сможете разобраться сами …

© Simashkov.2013

18.01.2013 г.

Назад

 Проекция:

screen19-6003318

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

screen3-3916814

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

Пусть имеется растровая карта некой местности в Универсальной проекции Меркатора (UTM) — 36 Северная зона:

screen21-3198971

Теперь для наглядности поместим поверх этого растра координатную сетку и слой административной границы:

screen15-6835309

Как видим, географическая сетка имеет вид трапеции. Запомним этот факт.

Теперь удалим с этой карты вспомогательные слои и поменяем проекцию растра на Долгота/Широта на датуме WGS 84:

screen1-9118272

Теперь снова набросаем слой сетки и административных границ (для наглядности) и увидим сл. картинку:

screen14-8573579

Визуально видно, что сетка приняла прямоугольный характер. Слои сверху «подстроились» под проекцию нижнего растрового слоя! Что, в  общем-то, выглядит довольно логично. Если вы открываете несколько разных слоёв, и все они имеют разную проекцию, то понятно, что всё это хозяйство необходимо привести к какому-то «одному знаменателю» — одной проекции. Логично в качестве такой проекции и взять проекцию нижнего растрового слоя.

То, что разработчики ГИС MapInfo пошли по такому пути говорит следующий факт. Если вы попытаетесь, скажем,  изменить проекцию карты, не включив опцию Перепроецировать всегда ( на форме Обработка растра), то получите сл. сообщение:

screen22-6286465

Иначе говоря, нажав на кнопку Проекции на форме Проекция  вы, на самом деле, изменяете только проекцию растрового слоя. А все остальные слои «подстраиваются» под него.

Теперь логически может возникнуть следующий вопрос — а что будет, если в сборке не будет растрового слоя? Да ничего не будет … :-). В этом случае вы сможете изменить проекцию карты даже с включённой опцией Никогда на форме Обработка растра.

screen23-7534586

В завершении, для интереса, приведём примеры того, как будет выглядеть наша «учебная» сборка в разных проекциях.

Вот так будет смотреться наша карта в Азимутальной проекции  полушарий (Северный полюс):

screen25-6985618

А так в Равноугольной проекции (Европа):

screen28-3065095

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

screen27-2166496

Как поменять проекции в ArcGIS можно узнать на нашем сайте по этой ссылке.

Назад

©Simashkov.2011.

10.04.2011 г.

Для геопривязки вашей карты в виде растровой картинки в ГИС MapInfo необходимо, чтобы на отсканированном образце присутствовала координатная сетка или нанесённые реперные точки. Кроме того, крайне желательно знать проекцию бумажной карты.

Если вы отсканировали, скажем, топографические планшеты, то проблема координатной сетки будет решена сама собой. Геопривязать такие растры можно по координатам углов трапеции (система координат Долгота/Широта, градусы) или в плановой системе координат (прямоугольная сетка, метры). О том, как это сделать — смотрите информацию здесь на нашем сайте.

Но иногда стоит несколько другая задача. Есть картограмма (или карта) с известным масштабом, но с отсутствующей координатной сеткой. Если для вас не важна географическая привязка, но желательно сохранить масштаб карты (с тем, чтобы в дальнейшем была  возможность промерять по ней  расстояния и площади), то можно поступить следующим образом. Наносим на картограмму реперную сетку (точки) с шагом, ну скажем, 10 см от левого нижнего угла и затем сканируем такую карту. Другой вариант — можно нанести такую реперную сетку, используя какой либо графический редактор (типа Photoshop, см. на нашем сайте здесь или XnView). В общем, будем считать, что проблему реперной сетки вы каким-то одним из способов решили. Далее алгоритм действий следующий.

В ГИС MapInfo открываем исходный растровый файл.

Для этого идём меню Файл>Открыть и выбираем тип файла Растр:

screen1-2791681

Далее появляется сл. диалоговое окно, в котором жмём, естественно (в нашем случае) Регистрировать:

screen2-1693891

Следующий шаг. Видим окно  регистрации растрового изображения:

screen3-1168611

На картинке слева красным обведены нанесённые реперные точки. Для выбора системы координат жмём на кнопку Проекции.

Теперь  для задания координат реперной точки кнопкой «+» приближаем её,  жмём на кнопку Добавить, затем  «тыкаем» курсором в реперную точку:

screen4-9106007

… и далее забиваем в появившемся окне координаты точки:

screen7-1443210

Для регистрации изображения таким образом необходимо забить не менее 3-х точек. Такие опорные точки необходимо разместить по всему периметру карты. После добавления 4-ой точки программа выдаст ошибку (невязку) вашей регистрации:

screen8-4148810

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

screen9-1721792

Здесь методом «научного тыка» начинаем зондировать направление, в котором ошибка регистрации будет снижаться. Делается это «тыканьем» курсора в окрестности реперной точки. На приведённой картинке ошибку регистрации Точки 2 удалось довести до 4 единиц.

Подобным образом необходимо «пройтись» по всем проблемным реперным точкам.

После описанных выше манипуляций картинка нашей регистрации должна выглядеть приблизительно сл. образом:

screen14-1096413

Такой результат регистрации можно считать приемлемым. Жмём кнопку OK и получаем зарегистрированную (закоординированную) карту. Теперь по ней можно промерять расстояния и площади. Для более-менее удовлетворительной привязки необходимо минимум 4.. 5 точек (4 по краям карты и одна в центре). При увеличении количества точек точность привязки будет возрастать (но и лепить скажем, для привязки внутрихоза более 20, наверно, большого смысла нет).

И в завершении, небольшая ложка дёгтя. К сожалению (imho), назвать интерфейс регистрации растра в MapInfo идеальным нельзя. Непонятно, например, почему нет возможности окно регистрации изображения  развернуть во весь экран. И в этом смысле, от версии к версии в интерфейсе регистрации практически ничего не меняется… Но это так, к слову.

Способ регистрации карты с использованием карты-источника рассмотрен по этой ссылке

Как можно зарегистрировать карту, используя  ArcGIS —  смотрите  на нашем сайте здесь.

Назад

© Simashkov.2011

26.02.2011 г.