Создание маски: Создание масок

Содержание

Создание масок

Фигуры и маски можно создавать с помощью инструментов Прямоугольник и Перо в After Effects. При создании маски или слоя-фигуры помните о перечисленных ниже нюансах.

  • Если слой выделен на панели Временная шкала, создается маска.
  • Если слой не выделен на панели Временная шкала, создается слой-фигура. См. раздел Создание фигур в After Effects.

Ярлык для инструмента Фигура — Q, а для инструмента Перо — G.

Можно создать одну или несколько масок для каждого слоя в композиции, используя следующие методы.

Что нужно иметь в виду

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

  1. Создайте маску на отдельном слое со сплошной белой заливкой и используйте подложку отслеживания для основного слоя.
  2. Используйте родительские элементы, чтобы сделать слой со сплошной заливкой дочерним по отношению к основному слою, чтобы маска перемещалась вместе с основным слоем, как если бы она применялась напрямую.
    Поскольку слой со сплошной заливкой является дочерним слоем, его также можно анимировать независимо от родительского слоя.
  3. Чтобы слой со сплошной заливкой (и маска) следовали за перемещающимися объектами в основном слое, можно использовать отслеживание движения. См. разделы Преобразование слоя в подложку отслеживания и Родительские и дочерние слои.

Создание маски путем перетаскивания с помощью инструментов фигур

К инструментам фигур относятся Прямоугольник , Прямоугольник со скругленными углами , Эллипс, Многоугольник и Звезда.

Для активации инструментов фигур и переключения между ними используйте клавишу Q.

Многоугольник — это звезда без свойства Внутренний радиус или Внутренняя округлость. Поэтому у фигур, созданных с помощью инструментов «Многоугольник» или «Звезда», одинаковое имя: многоугольник.

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

Чтобы нарисовать маску на слое-фигуре, нажмите активным инструментом фигур кнопку Инструмент создания маски на панели Инструменты.

Дополнительные сведения см. в разделе Создание фигур путем перетаскивания инструментов фигур.

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

Создание маски из значений канала с помощью автотрассировки

  1. Можно преобразовать альфа-канал, красный, зеленый, синий каналы или канал светимости слоя в одну или несколько масок с помощью команды «Автотрассировка».
  2. Автотрассировка создает столько масок Безье, сколько необходимо для выделения значений определенного канала в слое.
  3. Она также создает маски с минимально возможным количеством вершин, при этом подчиняясь выбранным настройкам.
  4. Изменить маску, созданную с использованием команды «Автотрассировка», можно так же, как и любую другую маску. С помощью выражений можно привязать ее контур к другим типам контура, например к контурам фигуры в слое-фигуре.

Для обеспечения точных результатов при применении автотрассировки затронутым слоям автоматически присваивается значение Лучшее качество.

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

Создание маски по размеру слоя

Создание масок из текстовых символов

Команда Создать фигуры из текста извлекает очертания каждого символа, создает из них фигуры и размещает фигуры на новом слое-фигуре. Затем эти фигуры можно использовать, как любые другие фигуры.

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

Создание маски из пути движения

Можно скопировать ключевые кадры положения, ключевые кадры опорных точек или ключевые кадры положения контрольных точек эффекта и вставить эти ключевые кадры в выделенный контур маски или фигуры. При создании контуров маски или фигуры из путей движения, убедитесь, что копируются ключевые кадры только из одного свойства «Положение». Не копируйте ключевые кадры любого другого свойства.

Нарисуйте путь движения с помощью инструмента «Набросок движения» и вставьте его в контур маски или фигуры.

При копировании между контурами маски и путями движения помните, что значения контура маски выражаются в системе координат слоя (пространство слоя), а значения пути движения — в системе координат композиции (пространство композиции). Это различие ведет к смещению вставленного контура и необходимости перемещения его после вставки. (См. раздел Системы координат: пространство композиции и пространство слоя.)

Создание контура маски из пути движения

создание маски в Instagram — Маркетинг на vc.ru

От компании «Тесла Таргет».

81 169 просмотров

Маски — главный тренд в Instagram в этом году. А все благодаря эффекту дополненной реальности, на которую сейчас есть спрос. Согласно данным IDC, в 2019 году рынок VR и AR должен составить уже $20,4 млрд, а к 2023 году — $94,63 млрд ($60,55 млрд — AR, $34,08 млрд — VR).

Человек-шаурма или стильный киберпанк на лице. А в каком образе ты сегодня пилил сторис? Всего лишь пару касаний — и на твоем лице яркий мейк или ароматный блин из «Теремка».

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

Чем маски могут быть полезными для бизнеса

1. Вирусность

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

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

2. Бесплатная реклама

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

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

Плюс в сторис каждого пользователя будет указано название бренда — как разработчика маски. Вот вам и бесплатная реклама.

3. Возможность примерки

Идеально для бизнеса одежды, красоты или тату-студий! Яркий пример — маска от компании Kylie Cosmetics. Компания сделала маски культовых помад Lip Kit, цвета которых можно было увидеть на своем лице в онлайне.

А некоторые бренды пошли дальше. Так, Infiniti выпустили лимитированную коллекцию виртуальной одежды для Instagram. Примерить ее можно и сейчас. Достаточно вбить в GIF-поиске “Infiniti”.

Команда «Тесла Таргет» примеряет на себе вещи от Infiniti

​Одежда от Infiniti в GIF Instagram

4. Продвижение через блогеров

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

Условно все маски можно поделить на четыре вида

Неанимированные (обычные)

Ретушь лица, прическа или стикеры на лице. Вариаций может быть много.

Анимированные

В таких масках присутствует движение объектов, изменение форм, света, цвета и так далее.

С возможностью выбора

Стиль маски один, а вариаций использования может быть неограниченное количество.

С геймификацией

Здесь фантазия разработчиков не ограничена. Можно создать даже собственную игру в сторис.

Далее на примере самой простой маски, неанимированной, мы расписали подробную инструкцию. Чекайте и применяйте в своих аккаунтах.

Инструкция по созданию неанимированной маски

Чтобы создать и выпустить в мир свою уникальную маску, нужно соблюдать определенные требования и вот они:

  1. Размер файла с маской не должен превышать 40 МБ.
  2. Рекомендуемый объем — 10 МБ.
  3. Для загрузки нужно внимательно ознакомиться со всеми правилами в Facebook.

Ссылка на них также есть в программе для создания масок Spark AR Studio. Скачать ее можно по ссылке.

Интерфейс программы довольно простой. Подойдет как и для продвинутых пользователей ПК, так и для новичков.

Чтобы ознакомиться с программой, наводим курсор на вкладку Сreate project, так мы создадим новый проект и войдем в главное меню.

Слева есть иконки Video, Play, Restart. С их помощью вы можете выбрать разных персонажей для примерки маски, а также примерить маску на собственное лицо, нажав на название вашей камеры.

Cкрин главного экрана программы

​Bконки Video, Play, Restart

Поле Scene — зона манипуляций, куда добавляются все маски и объекты. Поле Assets — зона с материалами, текстурами и импортированными объектами.

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

​Зона просмотра 

Создание маски

А теперь переходим к самому интересному. Будем делать вот такую маску:

Шаг первый: готовим макет

Cперва необходимо подготовить макет маски в программе Adobe Photoshop. Для этого нам нужен шаблон развертки лица. К счастью, когда скачиваешь Spark AR Studio, он идет в комплекте с файлом программы. Напомним, что наша маска состоит из стикеров «ВКонтакте». Их мы скачали тут.

​так выглядит развертка лица

Создаем новый проект в Adobe Photoshop, добавляем на слой развертку лица и ранее скачанные стикеры в формате PNG.

развертка лица с готовыми стикерами​

Если вам нравится, как выглядят стикеры, скрываем слой с разверткой и сохраняем в формате PNG.

Скрывать слой обязательно, иначе эта развертка лица будет помещаться вместе со стикерами на 3D-модель в программе Spark AR Studio.

сохраняем в формате png в программе photoshop​

Шаг второй — перемещаем маску в Spark AR Studio

Далее идем из Photosop обратно в Spark. Кликаем на любую свободную область в окне Scene правой кнопкой мыши.

Выбираем вкладку Add, далее Face mesh. Этими действиями мы создали основу, на которую можно будет помещать различные объекты, разглаживать кожу, менять цвет, материал и так далее.

Далее в правом окне выбираем вкладку Materials — чтобы изменять свойства выбранного объекта.

Слева в окне Assets выделяем Materials, после чего справа появляется окно, где можно совершать различные манипуляции с маской.

Теперь справа наводим курсор на вкладку Texture, New Texture и выбираем сохраненный PNG-файл со стикерами.

Наша маска готова!

Шаг третий — предпросмотр маски

Теперь можно посмотреть маску с помощью приложения на телефоне Spark AR Player.

(Ссылка для скачивания есть в первой ссылке с программой).

Подсоединяем свой смартфон через USB-кабель и нажимаем на вкладку Test on device (это иконка телефона слева) в программе Spark AR Studio. Далее маска выгружается в скачанное приложение.

Шаг четвёртный — выгрузка в Facebook

Сначала необходимо получить статус разработчика и одобрение маски в Spark AR Hub . После одобрения появится возможность юзать маску. Вуаля! Теперь вы самый крутой на районе!

Резюмируем

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

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

Понравилась статья? Больше полезного можно найти в нашей группе.

Как создавать маски в Adobe Premiere Pro

Вам нужно создать маску изображения для цветокоррекции, специальных эффектов или других приложений? Вы можете сделать это прямо в Adobe Premiere Pro.

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

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

Начнем!


1. Выберите рабочую область

Когда временная шкала с снимками, которые необходимо замаскировать, будет открыта, перейдите в Окно и выберите Рабочие области , затем выберите Редактирование .

Сделав это, вы сможете выбрать вкладку «Элементы управления эффектами» в верхнем левом окне, если она еще не открыта.


2. Удалить нижнюю часть клипа

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


 3. Выделите свой клип

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


4. Создайте маску непрозрачности

После того, как вы откроете Непрозрачность , вы увидите три значка прямо под заголовком Непрозрачность: эллипс, многоугольную маску с четырьмя точками и инструмент «Перо». Это три варианта создания пользовательской маски.

А пока нажмите инструмент «Перо» . В этом примере я маскирую отражение в зеркале, поэтому ставлю точки в каждом углу зеркала.

После того, как вы щелкнете по первой созданной точке, чтобы закрыть фигуру, вы увидите маску, окруженную пространством.


5. Инверсия маски

C установите флажок Inverted на несколько строк ниже, после чего внутренняя часть маски станет черной, и вы сможете увидеть исходный кадр вокруг нее.

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

Вы можете выделить Маска (1) , чтобы отобразить созданную вами маску на тот случай, если в данный момент вы не видите синий контур своей маски.


6. Поместите второй клип под

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

Вы можете настроить выравнивание отснятого материала на видеодорожке 1, выделив клип и управляя его положением с помощью координат x и y на вкладке Движение в Элементы управления эффектами .


Создание замен экрана

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

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

Робби Дженни из Shutterstock Tutorials учит нас, как он создает эти замены экрана в After Effects и Premiere. К вашему сведению, туториал похож на тот, о котором я писал выше. Методы маскирования универсальны, и не так уж много изменилось с инструментами и практическими рекомендациями.

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

Вот несколько полезных советов:

  • Загрузите зеленое изображение (. jpg) из Интернета и откройте его в родном приложении для работы с фотографиями на телефоне. Сделайте так, чтобы он покрывал весь экран телефона, и используйте его при съемке видео. Это позволит вам перемещать объекты по экрану, не нарушая замены экрана.
  • Сохранение всех четырех углов вашего устройства в поле зрения будет иметь решающее значение для идеального отслеживания изображения, когда вы перейдете к части отслеживания движения в этом руководстве.

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

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

Одно общее практическое правило, которому я хотел бы следовать или думать о котором, заключается в том, что маски работают путем наложения клипов друг на друга, а затем выбирают то, что удаляется и добавляется к этому первому начальному Мастер-пластина (зажим).


Другое использование масок

В Premiere Pro вам не нужно создавать маски только в элементах управления эффектом непрозрачности. Хотя это эффективное и широко распространенное использование маскирования, более практичное использование маски связано с элементами управления эффектами, такими как Lumetri Color, для применения цвета к определенной области изображения.

Маски также могут помочь контролировать квалификатор цвета в процессе вторичной цветокоррекции, чтобы точно изолировать выборку.

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

После этого волшебство спецэффектов обретает форму — и все это внутри Premiere Pro.


Нужны еще несколько советов по использованию Premiere Pro? Проверьте это:

  • 15 учебных пособий по Premiere Pro, которые должен посмотреть каждый видеоредактор
  • Быстрые и простые советы по композитингу для Adobe Premiere Pro
  • 15 БЕСПЛАТНЫХ пресетов сотрясения камеры для After Effects и Premiere Pro Pro
  • 3 самых простых способа нарезать клипы в Adobe Premiere Pro CC

Изображение обложки через Rawpixel.com.

Маски

Маски используются для исключения определенных пикселей из обработки изображения или при вычислении статистики изображения. Замаскированные пиксели выглядят прозрачными при отображении на виде. В этом разделе описываются различные методы создания маски с помощью инструментов ENVI и интерфейса прикладного программирования (API). См. следующие разделы:

  • Исходная информация
    • Значение игнорирования данных
  • Варианты создания маски
    • Области интереса (ROI)
    • Векторов
    • бинарных растров
    • Параметры построения растровой маски

  • Опции для выбора растров маски
    • Пользовательский интерфейс ENVI
    • ENVI API
  • См. также

Фон


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

  • Исключение пикселей воды и облаков из анализа растительности
  • Исключение неверных значений данных перед вычислением статистики изображения
  • Исключение пикселей за пределами представляющего интерес географического объекта, такого как сельскохозяйственное поле
  • Исключение пикселей за пределами области интереса (ROI) для регионального или локального анализа; например, безнадзорная классификация землепользования

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

Значение игнорирования данных

Значение игнорирования данных — это назначенное значение пикселя, которое ENVI должна игнорировать при обработке изображения или расчете статистики.

Поле Data Ignore Value доступно в диалоговом окне «Сохранить файл как параметры» при сохранении изображения на диск. Например, если вы установите Значение игнорирования данных От до 100, ENVI присваивает значение 100 замаскированным пикселям и отображает их как NoData, когда изображение отображается в представлении.

Если вы создаете замаскированное изображение и делаете вместо , установите Значение игнорирования данных , ENVI установит эти значения пикселей в 0, и они будут видны (не прозрачны) при отображении изображения.

Если указать Значение игнорирования данных , пиксели с этим значением будут иметь состояние 1 (NoData) и будут прозрачными в представлении при отображении изображения. См. Состояние пикселей растра в Руководстве по программированию ENVI API для получения дополнительной информации о состоянии пикселей.

Вот некоторые часто задаваемые вопросы об указании значения игнорирования данных:

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

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

Как выбрать правильное значение игнорирования данных для моего изображения?

Выберите значение, которое, как вы уверены, не используется ни в одном из допустимых пикселей изображения. В диалоговом окне «Сохранить файл как параметры» нажмите кнопку «Найти подходящие данные» «Игнорировать значение» , чтобы автоматически найти подходящее значение для использования на основе статистики изображения и типа данных.

Если вы пишете сценарий ENVI+IDL, см. Как настроить игнорирование значения данных? в Руководстве по программированию ENVI API.

Должны ли данные игнорировать значение указанного типа данных?

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

Почему мои замаскированные пиксели не отображаются, когда я обрабатываю замаскированный растр и отображаю результат?

Некоторые процессы ENVI не полностью поддерживают состояние пикселей, и в результате вы можете не получить полностью замаскированный растр с прозрачными замаскированными пикселями. В этих случаях все выходные замаскированные пиксели будут иметь значение пикселя, равное 0 (обычно отображается черным цветом). Мы рекомендуем повторно применить маскирование, сохранив результат в новый файл на диске. Выберите Файл > Сохранить как > Сохранить как (ENVI, NITF, TIFF, DTED) в строке меню выберите замаскированный растр в качестве входных данных, укажите допустимое значение игнорирования данных, затем выберите имя и местоположение выходного файла.

В следующем разделе описаны различные варианты создания масок в ENVI.

Параметры для создания маски


Маску можно создать из области интереса (ROI), из шейп-файла, путем создания двоичных растров или с помощью параметров, доступных в Build Raster Mask 9инструмент 0208. В этом разделе описывается каждый вариант.

Области интереса (ROI)

Обычным сценарием является создание ROI для определения пикселей, которые вы хотите включить или исключить из обработки изображения. Выполните следующие действия, чтобы создать маску из областей интереса. Вы не увидите бинарную маску; ENVI создает его внутри и применяет к входному изображению.

  1. Отобразите входное изображение, затем выберите Файл > Создать > Область интереса в строке меню.
  2. Выберите, следует ли создавать ИО из пороговых значений диапазона или из интересующих географических объектов:
    • Чтобы создать ИО из определенных значений данных (например, всех пикселей со значением 0), выполните шаги, описанные в разделе Создание ИО из пороговых значений диапазона. Это предпочтительный метод при определении фоновых пикселей или недопустимых данных изображения.
    • Чтобы создать область исследования из географических объектов, выполните шаги, описанные в разделе Создание областей исследования из геометрии. Используйте опцию Polygon, чтобы нарисовать многоугольные ROI вокруг объектов.
  3. В инструменте «Область интереса» выберите «Файл» > «Сохранить как » и сохраните область интереса в формате . xml.
  4. В строке меню выберите Файл > Сохранить как > Сохранить как (ENVI, NITF, TIFF, DTED) .
  5. В диалоговом окне File Selection выберите входное изображение и нажмите кнопку Mask .
  6. Выберите область интереса, которую вы создали.
  7. Включите параметр Обратная маска , если вы хотите создать обратную маску.
  8. Щелкните OK .
  9. Введите значение игнорирования данных.
  10. Нажмите OK в диалоговом окне выбора файла.
  11. Выберите выходной формат и имя файла, затем нажмите OK .
  12. Когда обработка завершена и изображение отображается, откройте инструмент «Значение курсора», чтобы убедиться, что замаскированные пиксели имеют значения NoData. Теперь изображение готово для дальнейшей обработки.
API для программирования

Вы также можете написать сценарий ENVI+IDL для создания и применения маски из ROI. Используйте процедуру ENVIROIMaskRaster, как показано в следующем примере кода. Или используйте задачу ROIMaskRaster при написании скрипта, использующего ENVITasks. Чтобы указать один ROI в файле ROI, состоящем из нескольких частей, используйте скобки (например, rois[2]).

 ; Запустите приложение 
 e = envi() 
   
 ; Открыть входной растр 
 file = FILEPATH('qb_boulder_msi', ROOT_DIR=e.root_dir, $ 
   SUBDIRECTORY=['data']) 
 raster = e.OpenRaster(file) 
   
 ; Открытые ROI 
 ROIFile = FILEPATH('qb_boulder_roi.xml', $ 
   ROOT_DIR=e.root_dir, SUBDIRECTORY=['data']) 
 rois = e.OpenROI(ROIFile) 
  ; Создать растр с маской 
 maskedRaster = ENVIROIMaskRaster(raster, rois) 
   
 ; Отображение маскированного растра 
 view = e. GetView() 
 layer = view.CreateLayer(maskedRaster) 

Векторы

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

.

Совет: Вы можете рисовать векторы в ENVI, чтобы определить области интереса, а затем экспортировать их в шейп-файлы. Подробности смотрите в теме Векторы.

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

  1. Показать шейп-файл.
  2. Щелкните правой кнопкой мыши шейп-файл в Менеджере слоев и выберите Просмотр/редактирование атрибутов .
  3. Щелкните определенную запись на дисплее или в средстве просмотра атрибутов.
  4. В меню средства просмотра атрибутов выберите Файл > Сохранить выбранные записи в новый шейп-файл .
  5. В диалоговом окне «Выбор имени выходного шейп-файла» выберите Шейп-файл для выходного формата .
  6. Выберите имя выходного файла, затем нажмите OK .

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

  1. Откройте входное изображение и шейп-файл.
  2. В строке меню выберите Файл > Сохранить как > Сохранить как (ENVI, NITF, TIFF, DTED) .
  3. В диалоговом окне «Выбор файла» выберите входное изображение и нажмите кнопку Маска .
  4. Выберите шейп-файл.
  5. Включите параметр Обратная маска , если вы хотите создать обратную маску.
  6. Щелкните OK .
  7. Введите значение игнорирования данных.
  8. Нажмите OK в диалоговом окне выбора файла.
  9. Выберите выходной формат и имя файла, затем нажмите OK .
Programming API

Вы также можете написать сценарий ENVI+IDL для создания и применения маски из шейп-файла. Используйте подпрограмму ENVIVectorMaskRaster, как показано в следующем примере кода. Или используйте задачу VectorMaskRaster при написании скрипта, использующего ENVITasks.

 ; Запустите приложение 
 e = envi() 
   
 ; Откройте файл входного растра 
 = FILEPATH('qb_boulder_msi', ROOT_DIR=e.root_dir, $ 
   SUBDIRECTORY=['данные']) 
 растр = e.OpenRaster(файл) 
   
 ; Создать маску из шейп-файла 
 vectorFile = FILEPATH('qb_boulder_msi_vectors.shp', $ 
   ROOT_DIR=e.root_dir, SUBDIRECTORY=['data']) 
 vector = e.OpenVector(vectorFile) 
 1 
; Создать растр с маской 
 maskedRaster = ENVIVectorMaskRaster(raster, vector) 
   
 ; Отобразить замаскированный растр 
 view = e. GetView() 
 layer = view.CreateLayer(maskedRaster) 

В приведенном выше примере создается и применяется маска к растру. Другая задача под названием GenerateMaskFromVector создает только бинарный растр, не применяя его к другому растру.

Двоичные растры

Двоичный растр содержит значения пикселей 0 и 1, например:

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

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

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

  1. Отобразите изображение, которое вы хотите замаскировать.
  2. На панели инструментов выберите Управление растрами > Построить растровую маску . Появится диалоговое окно «Входной файл маски сборки».
  3. Выберите входной файл и нажмите OK . Появится диалоговое окно «Определение маски».
  4. В строке меню диалогового окна «Определение маски» выберите «Параметры» > «Импорт диапазона данных» . Появится диалоговое окно «Выбор входных данных для диапазона данных маски».
  5. Введите минимальное и/или максимальное значение в Минимальное значение данных и Максимальное значение данных . Если вы введете только минимальное или максимальное значение, фактическое максимальное или минимальное значение данных соответственно будет использоваться в качестве другого конечного значения. Если входной файл имеет значение игнорирования данных, диалоговое окно открывается со значениями, автоматически введенными в эти поля.
  6. Выберите пиксель маски , если ВСЕ полосы соответствуют диапазону , или пиксель маски , если ВСЕ полосы соответствуют диапазону . Опция ALL включает все пиксели, находящиеся в диапазоне данных для всех каналов (логическая операция И). Параметр ANY включает все пиксели, находящиеся в диапазоне данных для любой полосы (логическая операция ИЛИ).
  7. Щелкните OK , чтобы ввести диапазон в список определения маски.
  8. Выберите вывод результата в файл или в память.
  9. Щелкните OK .

Совет: Функция Build Raster Mask также доступна в инструментах выбора при выборе входного файла. Когда вы выбираете входной файл, нажмите кнопку раскрывающегося списка Параметры маски , чтобы создать двоичную маску с использованием методов, описанных здесь.

API программирования

Вы можете использовать API ENVI для создания и применения маски на основе значений пикселей выше или ниже заданного порога.

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

В этом примере создается маска, в которой пикселям больше 220 присваивается значение 1, а всем остальным — 0. Исходное изображение является мультиспектральным, поэтому в примере кода используется ENVISubsetRaster для создания спектрального поднабора, состоящего только из одного канала. Используйте ENVIBinaryGTThresholdRaster для создания бинарной маски, как показано в этом примере. (Или используйте задачу BinaryGTThresholdRaster при написании скрипта, использующего ENVITasks.) Наконец, используйте ENVIMaskRaster, чтобы применить маску к одноканальному изображению.

 ; Запустить приложение 
 e = ENVI() 
   
 ; Откройте входной файл 
 file = FILEPATH('qb_boulder_msi', ROOT_DIR=e. ROOT_DIR, $ 
 SUBDIRECTORY=['data']) 
 raster = e.OpenRaster(file) 
   
12 
12 ; Создайте бинарную маску, установив порог первого канала 
 subset = ENVISubsetRaster(raster, BAND=[0]) 
 threshold = [220.] 
 binaryMask = ENVIBinaryGTThresholdRaster(subset, threshold) 
   
 ; Необязательно экспортировать бинарную маску на диск 
 outFile = e.GetTemporaryFilename() 
 binaryMask.Export, outFile, 'ENVI' 
   
 ; Применить маску к одноканальному растру 
 maskedRaster = ENVIMaskRaster(subset, binaryMask) 
   
 ; Отображение маскированного растра 
 view = e.GetView() 
 layer = view.CreateLayer(maskedRaster) 

Аналогичным образом вы можете использовать процедуру ENVIBinaryLTThresholdRaster для создания маски, где 9 пикселей0197 меньше , чем заданный порог, маскируются.

Вы также можете использовать ENVI API для создания и применения маски на основе 90 197 диапазонов 90 198 значений пикселей. В следующем примере маскируются пиксели в диапазоне от 0 до 220 и от 700 до 10 000.

Используйте ENVIDataValuesMaskRaster для создания бинарной маски, как показано в этом примере. (Или используйте задачу DataValuesMaskRaster при написании скрипта, использующего ENVITasks). Наконец, используйте ENVIMaskRaster, чтобы применить маску к изображению.

 ; Запустить приложение 
 e = ENVI() 
   
 ; Откройте входной файл 
 file = FILEPATH('qb_boulder_msi', ROOT_DIR=e.ROOT_DIR, $ 
   SUBDIRECTORY=['data']) 
 raster = e.OpenRaster(file) 
   
2 90; Определить диапазоны данных 
 диапазонов = [[0,220], [700, 10000]] 
   
 ; Создать растр с маской 
 maskedRaster = ENVIDataValuesMaskRaster(raster, ranges) 
   
 ; Отображение маскированного растра 
 view = e.GetView() 
 layer = view.CreateLayer(maskedRaster) 

Параметры построения растровой маски

Инструмент Build Raster Mask имеет другие параметры, помогающие создавать маски, в том числе из конечных значений, из значений NaN , из файлов ROI и из векторных файлов ENVI (EVF).

Чтобы замаскировать конечные значения, выберите Параметры > Маскировать конечные значения в строке меню диалогового окна «Определение маски». Выберите входной файл и нажмите OK . В диалоговом окне FINITE Option выберите параметр и нажмите 9.0207 OK :

  • Пиксель маски, если ВСЕ полосы совпадают КОНЕЧНО
  • Пиксель маски, если ЛЮБОЙ диапазон соответствует FINITE

Чтобы замаскировать значения данных NaN (не числа), выберите Options > Mask NaN Values ​​ в строке меню диалогового окна «Определение маски». Выберите входной файл и нажмите OK . В диалоговом окне NaN Option выберите параметр и нажмите OK :

  • Пиксель маски, если ВСЕ полосы совпадают NaN
  • Пиксель маски, если ЛЮБОЙ диапазон соответствует NaN

Чтобы использовать область интереса (ROI) в качестве основы для маски, выберите Options > Import ROI в строке меню определения маски. Выберите файл .roi или .xml, выберите области интереса и нажмите OK . Все импортированные области интереса обрабатываются как один слой маски.

Чтобы использовать векторный файл ENVI (EVF) в качестве основы для маски, выберите «Параметры» > «Импортировать электронные видоискатели» из строки меню диалогового окна «Определение маски». Выберите векторный файл для ввода, затем нажмите OK .

Чтобы установить для определенных областей в маске значение 1 (Вкл.) или 0 (Выкл.), выберите Параметры > Вкл./Выкл. выбранных областей в строке меню диалогового окна «Определение маски». Если выбрать Selected Areas Off , замаскированные пиксели будут иметь значение 0, что означает, что эти области исходного изображения будут игнорироваться во время обработки изображения после применения маски.

Маска строится с использованием логического ИЛИ или логического И между всеми элементами в списке. По умолчанию, Логическое ИЛИ, использует все определенные области для создания маски. Использование логического И маскирует только те области, в которых перекрываются все определенные области. Выбранные области — это те пиксели, которые удовлетворяют критериям маскирования.

Чтобы определить маску, используя только те области, в которых перекрываются перечисленные диапазоны данных, формы аннотаций и/или области интереса, выберите Параметры > Выбранные атрибуты [Логическое И] из строки меню диалогового окна «Определение маски».

Чтобы использовать все определенные области для создания маски, выберите Параметры > Выбранные атрибуты [Логическое ИЛИ] в строке меню диалогового окна «Определение маски».

Чтобы удалить элемент из списка Выбранные атрибуты в диалоговом окне Определение маски, выделите элемент и нажмите Удалить элемент .

Чтобы удалить все элементы из списка Selected Attributes в диалоговом окне определения маски, нажмите Удалить все элементы .

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

Опции для выбора маскированных растров


Вот несколько различных способов выбора маскированного растра в ENVI.

Пользовательский интерфейс ENVI

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

Нажмите кнопку Select Mask Band , чтобы выбрать растровую маску:

Укажите маску ввода в рабочих процессах. Эта опция принимает векторы и растры бинарной маски.

ENVI API

Если вы пишете программный скрипт с использованием ENVI API, доступны несколько подпрограмм, которые помогут вам создавать и определять маскированные растры. Они описаны в разделе «Параметры создания маски» в этом разделе справки.

Вы также можете использовать маски с большинством задач ENVITask. Полный список см. в разделе Поддержка маскирования в ENVITasks. Сначала вы создаете маску, а затем устанавливаете свойство задачи INPUT_RASTER на маску. В следующем примере кода создается и применяется маска с помощью шейп-файла, а затем используется замаскированный растр в качестве входных данных для классификации ISODATA.

 ; Запустите приложение 
 e = envi() 
   
 ; Откройте файл входного растра 
 = FILEPATH('qb_boulder_msi', ROOT_DIR=e.root_dir, $ 
   SUBDIRECTORY=['данные']) 
 растр = e.OpenRaster(файл) 
   
 ; Открытие входного шейп-файла. Создать растр с маской 
 maskedRaster = ENVIVectorMaskRaster(raster, vector) 
   
 ; Получить классификационное задание 
 задача = ENVITask('Классификация ISODATA') 
   
 ; Определить входные данные задачи 
 task.
Создание маски: Создание масок

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Пролистать наверх