Разное

Как сделать 3д панораму: Как сделать 3D панораму из фотографий?

Содержание

Что такое виртуальный тур 360? Зачем нужен 3D тур и чем отличается от фотографий? — Блог фотографа

Из этой статьи вы узнаете, что из себя представляет виртуальный 3D тур, чем он отличается от фото и видео и как использовать его наиболее эффективно.

Виртуальный тур (3D тур, тур 360, панорамный тур) — это интерактивный виртуальный проект, презентация с эффектом присутствия созданная на основе 3D панорам 360 или 3D визуализации. Тур состоит из одной и более 3D панорам, связанных между собой ссылками-переходами.

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

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

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

3D тур идеально подходит для прямой рекламы недвижимости или услуг, например для ресторанов или отелей. А также для использования в портфолио, для демонстрации результатов работы дизайнеров, архитекторов и застройщиков.

В первую очередь туры отличаются качеством 3D панорам

Здесь я имею в виду качество самих изображений.

По сути, 3D панорама — это одна большая фотография, склеенная из множества кадров. А так как качество всех этапов создания 3D панорам: съемка, склейка и обработка фотографий — у разных фотографов и ретушеров разное, то итоговый результат тоже сильно  различается.

Точка съемки панорам 

От выбора точки съемки зависит насколько панорама получится информативной. Панораму можно снять как из центра помещения, так и около стены, и если в первом случае “полезная информация” будет вокруг зрителя, куда бы он не посмотрел, то во втором — почти половину панорамы займет стена.

Качество склейки изображений

Отсутствие стыков между соседними кадрами 3D панорамы. Если вы отсмотрите 10 случайным образом выбранных 3D туров, то в большинстве из них заметите, плохую стыковку соседних изображений. Особенно это заметно в сложных случаях: пол и потолок панорамы, а так же близко расположенные объекты, которые попадали на несколько кадров.

Вертикальные вертикали

К сожалению, не все панорамные фотографы знают, как сохранить вертикали при съемке панорамы или как восстановить их на этапе сборки.
В результате стены помещений разъезжаются и панорама становится похожей на палубу корабля во время шторма. 
Ниже пример того как быть не должно (скриншот 3D тура сделан на сайте foto-g.org):

Уровень обработки

На обработку влияет качество съемки, а также квалификация и опыт ретушера, который обрабатывает 3D панорамы.

Сама же обработка фотографий состоит из следующих этапов.

  • сборка панорам
  • цветокоррекция
  • коррекция яркости и контраста
  • техническая ретушь

Также отличается качество самого 3D тура

Информативность 3d тура — зависит от качества, количества и расположения панорам

Скорость работы и объем в мегабайтах — зависит от программы и/или движка, в на котором собирается 3D тур, и квалификации программиста, если тур создается вручную.

Кроссплатформенность — работа на персональных компьютерах и мобильных устройствах

Дизайн (модификации, виджеты и брендирование) — аналогично предыдущему пункту, зависит от программы и/или движка и квалификации программиста
 

Сравнивая виртуальные туры с фото или видео можно сделать следующие выводы:

Преимущества и выгоды

  1. Эффект присутствия
  2. Зритель самостоятельно управляет просмотром
  3. Можно показать все помещение целиком и без ограничений — от пола до потолка
  4. В сравнении с видео есть возможность ретуши недостатков появившихся в процессе эксплуатации
  5. Существенно большая информативность по сравнению с фотографиями 

Недостатки

  1. Более высокая стоимость в сравнении с фотографиями;
  2. 3D панорамы не подходят для печатной продукции; 
  3. Для публикации виртуального тура нужен свой сайт или подходящий сторонний ресурс:
    • Сайты агрегаторы недвижимости — самые крупные площадки агрегаторов не дают возможности опубликовать 3D тур в объявлении.
    • Vkontakte и Facebook — публикация весьма затруднена, так как ресурс для этого не предназначен и все делается через “костыли”. При этом через встроенный интерфейс в Facebook можно опубликовать 3D панораму 360, но только одну.
    • Публикация в Instagram возможна только в формате видео тура.
  4. Статичная картинка — фактически 3D панорама — это одна большая фотография натянутая на сферу. Добавление видео в панорамы весьма трудоемко и часто не оправдывает затраченных на это ресурсов.
 

Цель создания 3D тура — это почти всегда реклама в прямом или косвенном виде:

Реклама жилой недвижимости

  • для продажи
  • для аренды

Реклама коммерческой недвижимости

  • рестораны
  • отели
  • магазины и шоурумы
  • фитнес-центры
  • фотостудии и т.д

Портфолио специалистов и реклама их услуг

  • архитекторы
  • дизайнеры
  • строители и застройщики и т.д.
  • презентации маркетологов
  • продажа и тюнинг автомобилей
  • выставки и экскурсии
     

Для заказчика основной сложность при создании виртуального тура является выбор подрядчика и более высокая стоимость и неуниверсальность 3D туров в сравнении с обычными фотографиями.  

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

Создание виртуальных туров 360 и VR при помощи сервиса TheViewer.co (VRay и Corona)

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

https://vimeo.com/163526248 

     Ролик показывает, как при помощи специального приложения на смартфоне и очков виртуальной реальности дизайнеры могли бы презентовать свои проекты потенциальным заказчикам с полным так сказать погружением. Насколько я знаю, приложения такого до сих пор не существует, однако есть вполне адекватный аналог c неплохим функционалом – TheViewer.co. Нашел я его как-то раз совершенно неожиданно, забив в яндексе словосочетание Corona VR. Перейдя по ссылке, я оказался на сайте TheConstruct.co, который предлагает несколько программных решений для презентации своих проектов. Больше всего меня заинтересовал сервис The Viewer, так как он позволяет абсолютно бесплатно (не более трех проектов) и без особого труда создавать виртуальные туры 360 градусов одновременно с возможностью просмотра их в очках VR. А именно специальных шлемах VR, рассчитанных на использование со смартфоном, имеющим на борту гироскоп и экран с 2к разрешением. На мой взгляд, такие решения незаменимы в области презентаций проектов архитектуры и интерьеров т.к. отличаются своей мобильностью в отличие от тех же Oculus Rift и HTC Vive. Лично я тестировал данное приложение на телефоне Samsung galaxy s6 в связке с очками Gear VR (совместного производства Samsung и Oculus).      

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

    Во первых это панорама — изображение окружающей среды запечатленное при помощи камеры 360 градусов, или в случае с презентацией проекта — изображение просчитанное в 3d приложении с определенными настройками камеры и рендера. Такие панорамы называются равноугольными (Equirectangular). Примеры таких панорам можно посмотреть на сервисе Flickr в соответствующей группе.

https://www.flickr.com/groups/equirectangular 

      Можно интерактивно изучить каждую сцену управляя обзором мышкой. В основном тут представлены панорамы снятые на камеру 360 градусов. Однако мы далее будем говорить о панорамах созданных в 3DSMax в связке с рендером V-Ray или Corona.      

Способ для Corona Render:      

Допустим у вас есть готовый проект комнаты.     

     1 Размещаем камеру по центру комнаты примерно на уровне глаз человека среднего роста.      

     2 Применяем к нашей камере модификатор corona camera mod и ставим галочку projection type override – spherical.   

        3 Заходим в настройки рендера и делаем чтобы соотношение сторон будущего изображения было 2:1 и имело разрешение от 4000х2000 пкс. до 10000х5000 пкс. в зависимости от требуемого качества финальной картинки. Произведя данные настройки нажимаем кнопку render и получаем нашу панораму (развертку интерьера). Следует отметить, что эта панорама будет воспроизводиться в очках VR, но не будет обладать стерео эффектом. Для этого в corona camera mod нужно поставить галочку Virtual reality mod stereo. Финальная картинка должна иметь соотношение сторон 1:1 (от 4000 пкс.) так как изображения с каждого глаза в Corona размещаются друг под другом.     

Способ для V-Ray:     

Допустим у вас есть готовый проект комнаты.      

1 Размещаем камеру по центру комнаты примерно на уровне глаз человека среднего роста.      

2 Заходим в настройки рендера и настраиваем камеру.

     При этом соотношение сторон будущего изображения должно быть 2:1 и иметь разрешение от 4000х2000 пкс. до 10000х5000 пкс. в зависимости от требуемого качества финальной картинки. Произведя данные настройки нажимаем кнопку render и получаем нашу панораму (развертку интерьера). Следует отметить, что эта панорама будет воспроизводиться в очках VR, но не будет обладать стерео эффектом. Для этого нам следует отрендерить изображение под каждый глаз в отдельности. В VRay есть помощник для этого: helpers-VRay-VRayStereoscopic, однако пользоваться им мы не будем т.к. он дает не совсем тот результат который нам нужен. Проделаем все вручную, нам просто нужно клонировать камеру параллельно существующей на межглазное расстояние (примерно 65 мм) и сделать рендер с теми же параметрами что и первое изображение. Затем следует склеить эти изображения одно под другим таким образом что бы изображение с левого глаза было сверху, а с правого снизу. В итоге должна получиться квадратная картинка.      

     И так мы научились делать панорамы, теперь можем проверить результат на сервисе TheViewer:       

    1 Выбираем пункт меню New Project       

    2 Вам предложат зарегистрироваться или войти под аккаунтом google. Выполняем.        

    3 Называем наш будущий проект       

    4 Нажимаем + в правой части экрана и перетаскиваем наши панорамы в окно сервиса. Прямоугольные и квадратные (стереоскопические) панорамы сервис распознает автоматически.      

    5 Теперь необходимо настроить переходы (warp) между панорамами. Для этого два раза щелкаем в то место где размещается следующая локация. Создается Warp c двумя полями. Верхнее задает название перехода (например «спальня») и нежнее, где выбираем саму панораму спальни из списка загруженных нами панорам. Подтверждаем выбор нажатием галочки. Затем переходим в строку с именем текущей панорамы и выбираем панораму спальни. Теперь создаем warp чтобы вернуться в исходную точку или попасть в следующую. C помощью варпов можно менять предметы и их цвета, предварительно подготовив соответствующие панорамы с нужными вариантами.       

    6 Закончив настройку варпов нажимаем кнопку save gallery. Проматываем галерею вниз и находим наш новый проект. Нажимаем и проверяем все ли правильно настроено. На проекте в галерее сразу присутствует кнопка для копирования ссылки и отправки кому бы-то ни было. У меня получился такой простенький тур по двум комнатам гостиницы.

https://theviewer.co/share/aae12502-5e2c-417d-8944-7e42faf036fb/4c40494d-5dc5-4809-8358-c767bfd9dce2

     Скачав приложение для Android можно посмотреть результат в очках VR. Впрочем просматривать панораму в VR режиме можно прямо в браузере на смартфоне. Приложение просмотра также доступно для ios и отдельно для Gear VR.

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

    Дополнительная информация:

    Программы просмотра отдельных панорам для ПК под windows и для смартфонов под Android.

    Наиболее адекватной программой для просмотра панорамы на ПК  является GoPro VR Player 2.0 – простая программка с интуитивно понятным интерфейсом.

    Для мобильных:

Vars VR Player Pro

https://play.google.com/store/apps/details?id=com.VaRs.VRPlayerPRO

VR Gallery

https://play.google.com/store/apps/details?id=com.holumino.vrpano

TurnMe Panorama

https://play.google.com/store/apps/details?id=com.bezine.panosphere

Это самые мне понравившиеся.      

    Существует так же короновский скрипт для создания панорам Corona Panorama exporter, но он не очень удобен т.к. результат сложно отправлять заказчику. При отправке почта ругается как на потенциально опасную программу.

   Еще раз спасибо за внимание.

Создание виртуальных туров и 3D панорам

Что такое виртуальный тур

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

Planoplan позволяет пользователям самостоятельно создавать 3D панорамы и панорамные туры по планировкам квартир. Если панорамы сделаны для нескольких помещений, то между ними можно перемещаться, нажимая на значок с человечком.

3D-туры, созданные в Planoplan, можно просматривать на смартфонах в бесплатном приложении Planoplan Go! — для этого достаточно установить приложение и отсканировать QR-код виртуального тура. При наличии очков виртуальной реальности вы сможете буквально перенестись внутрь будущего дома.

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

Создание виртуальных туров позволяет буквально «вжиться» в помещение с разработанным дизайном или ремонтом. 360°-панорама, в отличие от обычных 3D-рендеров, позволяет оценить объемы помещений, высоту потолков, пространства между предметами меблировки.

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

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

Как с помощью Планоплана создать виртуальный тур

Для создания виртуального тура необходимо добавить помещение, произвести его декорирование, установить источники света и нажать на иконку фотокамеры в верхней части рабочего поля. После этого откроется окно выбора разрешения VR-панорамы. Доступны панорамы разрешением 600 и 900 пикселей. Чем выше разрешение, тем четче и качественней будет выглядеть виртуальный тур. После отправки VR-панорамы на просчет и ее готовности, к вам поступит уведомление и QR-код для открытия 3D-панорамы в специализированном бесплатном приложении для Android и iOS Planoplan GO! Также вы можете посмотреть ролик, где наглядно продемонстрирован весь процесс создания и просмотра VR-панорамы.

Примеры VR-панорам, созданных пользователями с помощью сервиса Planoplan

Примеры виртуальных туров для застройщиков

Как сделать 360-градусные интерактивные воздушные панорамы с помощью дрона

Съемка, объединение и обмен интерактивными панорамами с использованием только Photoshop и бесплатных ресурсов

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

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

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

Вещи вам понадобятся:

Стрельба

При съемке установите камеру в ручной режим и взлетайте на нужную высоту.

Я считаю, что лучше всего это работает при съемке с расстояния 100-200 футов, но эти фотографии действительно можно сделать на любой высоте. Отсюда у вас есть два варианта: вы можете снимать их вручную или с помощью автоматического приложения, такого как DronePan или Litchi, в зависимости от личных предпочтений.

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

    Если вы снимаете вручную, начните с обычной панорамы. Для этого сделайте одну фотографию, затем поверните камеру примерно на 45 градусов и сделайте еще одну фотографию. Повторяйте это, пока не достигнете исходной точки. Затем наклоните камеру примерно на 30 градусов и повторите тот же процесс. Сделайте это еще раз под углом примерно 60 градусов, затем направьте камеру прямо вниз и сделайте один снимок. Убедитесь, что на каждой фотографии есть перекрытие примерно на 40-50%, чтобы в Photoshop было достаточно информации, чтобы сшить их вместе.

  • Если вы хотите использовать автоматизированное приложение, я рекомендую DronePan (бесплатно) или Litchi ($). Эти приложения выполняют точно такой же процесс, но все, что вам нужно сделать, это нажать кнопку, и ваш дрон сделает это оттуда. Эти приложения избавляют от множества догадок при съемке и обеспечивают действительно точные результаты. При постобработке может произойти много деформации и искажения, если ваши фотографии расположены неравномерно, и эти приложения устранят большую часть этих искажений.

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

Сшивание

Чтобы начать сшивание этих фотографий, откройте свои фотографии в формате RAW в Camera Raw.Отредактируйте одно из них, как хотите, затем выберите все изображения и используйте Alt + S, чтобы синхронизировать эти настройки с остальными фотографиями. Важно убедиться, что вы включили коррекцию профиля, чтобы изображения плавно сливались.

Теперь выберите все изображения, щелкните правой кнопкой мыши и выберите «Объединить в панораму». Загрузка предварительного просмотра может занять несколько минут, потому что файлы RAW очень большие. После загрузки предварительного просмотра обязательно выберите «Сферический» в качестве типа проекции, затем нажмите «Объединить» и выберите, где вы хотите сохранить новое изображение RAW.Если вы снимали вручную, здесь вы увидите некоторое искажение, если снимали неправильно. Возможно, вы сделали больше снимков в первом повороте, чем во втором или третьем, или некоторые из них перекрывали больше, чем другие. Когда я делал фотографии вручную, я обнаружил, что слишком много перекрываюсь. Я бы повернул полностью туда, где начал, и сделал дополнительный снимок для хорошей оценки, но тогда у меня были две очень похожие фотографии, которые не нужны. Если бы Photoshop сделал что-то вроде этого:

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

Выглядит лучше, но все же не совсем так. Photoshop объединяет фотографии так, как вы их сделали, сверху вниз. Здесь на помощь приходит фильтр Flexify 2. Щелкните «Фильтр», «Пылающая груша», затем «Flexify II». Это откроет диалоговое окно с множеством опций.Единственное, что вам нужно сделать, это перетащить ползунок широты до тех пор, пока линия горизонта не станет прямой. Нажмите «ОК», тогда ваша фотография будет выглядеть примерно так:

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

Это плоская версия вашей панорамы. Далее мы собираемся воплотить фотографию в жизнь.

Обмен

Kuula.co — это сайт обмена виртуальной реальностью, где вы можете загружать свои интерактивные панорамы и делиться ими. Это действительно удобно (и БЕСПЛАТНО!) И просто в использовании, и вы можете использовать его для публикации в любой социальной сети или встраивания в веб-сайт. Все, что вам нужно сделать, это создать учетную запись и нажать кнопку «Загрузить». Перетащите панораму на 360 градусов, и она автоматически станет трехмерной. Теперь вы можете щелкнуть и перетащить, чтобы осмотреться. Если вы разговариваете по мобильному телефону, изображение будет даже двигаться вместе с ним.Если вы посмотрите вниз, вы словно сидите в воздухе на сотни футов!

Получите сертификат для коммерческих полетов

Курс подготовки к экзамену Dronegenuity Part 107 позволяет глубоко изучить все темы, которые рассматриваются на экзамене FAA Part 107. Этот экзамен требуется для пользователей дронов, которые намерены использовать дрон в коммерческих целях. Другими словами, если вы собираетесь зарабатывать деньги на своем дроне, этот курс поможет вам сдать экзамен FAA и получить сертификат.Мы рассмотрим такие темы, как правила FAA, погода, радиосвязь, карты в разрезе (конечно), национальная система воздушного пространства и многое другое. Зарегистрируйтесь сейчас, чтобы сделать первый шаг к сертификации FAA.

  • Распродажа!




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

360 панорама в 3ds Max учебник

Всем известно, насколько важна визуализация и ее роль в представлении дизайна конечному пользователю с красивыми фотореалистичными изображениями. Насколько легко взаимопонимание между клиентом и дизайнером, когда нет необходимости объяснять и обдумывать чертежи, планы, эскизы, фасады и другую необработанную техническую информацию … Но что, если одной серии статических изображений недостаточно? Что, если клиент хочет большего ощущения присутствия и объема, чем двухмерные растровые изображения, а выполнение анимации нецелесообразно из-за значительных временных и вычислительных затрат? Ответом на этот риторический и достаточно актуальный вопрос является псевдотрехмерное представление 2d изображений с использованием технологии 3d интерактивных панорам . Такая презентация позволит нам увидеть трехмерное изображение визуализации с помощью виртуальной камеры, повернуть ее и наблюдать за любой точкой на 360 градусов, а также увеличивать и уменьшать масштаб.

ПАНОРАМА

(Щелкните изображение и поверните его в любом направлении, удерживая левую кнопку мыши)

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

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

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

Когда кубическая проекция готова, нам нужно растянуть ее на 3D-куб и превратить в интерактивную панораму с помощью узкоспециализированного программного обеспечения.

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

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

Существует несколько методов получения равнопрямоугольной проекции.

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

Затем с помощью специального программного обеспечения и ручной ретуши в растровом редакторе фотографии сшиваются в равнопрямоугольную проекцию.

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

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

Когда получается сферическая проекция, она преобразуется непосредственно в кубическую проекцию для следующего растягивания по виртуальному кубу 3D панорамы.

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

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

И снова этот метод на практике очень неэффективен.

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

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

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

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

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

Существует также другой метод получения кубических проекций путем рендеринга сцены с типом камеры Box. Результатом этого рендеринга будет вертикальная кубическая карта, так называемый Vertical Cross .

К сожалению, даже этот способ неудобен из-за необходимости преобразовать карту Vertical Cross с помощью редактора растровых изображений в нужный тип кубической проекции, названный Horizontal Cross .

Учитывая вышесказанное, более рациональным и вполне правильным как для фото, так и для 3д графики является способ создания интерактивной панорамы из равнопрямоугольной проекции .

ПРИМЕЧАНИЕ

Далее процесс создания виртуальной панорамы будет описан на примере 3D-редактора 3ds Max 2008 и рендеринга V-Ray 1.5 с описанием некоторых возможностей именно этого программного обеспечения. Однако все описанные принципы абсолютно верны для любого другого программного обеспечения для 3D, которое имеет возможность делать рендеринг с помощью сферической камеры с углом обзора 360 градусов.Поэтому, если вам нужно создать панораму с использованием альтернативного движка моделирования или рендеринга, вам следует просто опустить конкретные характеристики работы с 3ds Max + V-Ray и применить эти методы для создания интерактивных панорам в любом другом аналогичном программном обеспечении. .

Для создания равнопрямоугольной проекции трехмерной сцены в 3ds Max + V-Ray необходимо визуализировать ее с заданной точки камерой с углом обзора 360 градусов. К сожалению, специализированный рендерер V-Ray 1.5 VRayPhysicalCamera не поддерживает угол обзора 360 градусов и не имеет режима сферической камеры . Для получения равнопрямоугольной проекции следует использовать только стандартную камеру 3ds Max .

ПРИМЕЧАНИЕ

Если сцена изначально настроена для работы с VRayPhysicalCamera , то для использования стандартной камеры 3ds max сцена должна быть сброшена с помощью нескольких простых методов.Подробности перехода с VRayPhysicalCamera на стандартную камеру 3ds Max можно найти в разделе «Переход с VRayPhysicalCamera на стандартную».

Стандартная камера 3ds Max имеет встроенный регулируемый угол, но она не сферическая, и максимальный угол, который можно установить, составляет 175 градусов.

Чтобы обойти это ограничение, в модуле визуализации V-Ray есть специальный инструмент, улучшающий стандартную камеру.

ПРИМЕЧАНИЕ

Все изменения, сделанные с помощью этого инструмента, не отображаются в окне просмотра 3ds Max и будут видны только при визуализации.

Чтобы получить доступ к этому инструменту, мы должны найти на вкладке V-Ray в Render Scene: (F10) dialo g свиток с именем V-Ray: Camera . Там под Camera type в выпадающем меню Type выберите Spherical type camera. Таким образом, стандартная камера 3ds Max становится сферической . Затем мы должны активировать Override FOV , установив флажок рядом с ним для замены угла и установить в уже активном поле FOV желаемое значение 360 градусов.

ПРИМЕЧАНИЕ

Особенностью равнопрямоугольной проекции является фиксированное соотношение сторон два к одному.

Чтобы получить правильное изображение проекции, мы должны установить соотношение сторон 2: 1 для финального рендеринга. Для этого перейдите на вкладку Common в Render Scene: (F10) диалоговое окно и в разделе Output Size установите значение Image Aspect равным 2. Также мы должны нажать на значок замка для того, чтобы при установке значения пикселя одной стороны вторая выставлялась автоматически и сохраняла правильную пропорцию между шириной и длиной картинки.

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

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

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

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

Скачать и лицензировать эту программу можно прямо на сайте разработчиков:

http://gardengnomesoftware.com/pano2qtvr_download.php

Кроме того, есть демонстрационная версия, которая отличается от полнофункциональной поддержкой только формата QuickTime .

После запуска Pano2QTVR автоматически открывается вкладка Start и предлагает создать новый проект или открыть существующий.

Чтобы создать новый проект, мы должны нажать на большую горизонтальную кнопку Create New Project и указать имя и путь для нового проекта в новом открытом окне.

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

Затем в списке Формат вывода выберите формат будущей панорамы.

Если панорама будет отображаться на экране, то видеофайл QuickTime с расширением mov станет отличным выбором. Для его выбора необходимо указать значение QuickTime в раскрывающемся списке Output format.

Если мы хотим опубликовать панораму на странице сайта, то идеально подойдет flash файл с расширением swf .Для его выбора необходимо указать значение Flash в выпадающем списке Output format .

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

Когда мы нажимаем Create , временно открывается вкладка Console , где мы можем наблюдать за журналами преобразования, и после создания программа вернется на вкладку Project .

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

Если нам нужно изменить настройки панорамы по умолчанию, такие как разрешение окна панорамы, степень сжатия и т. Д., Их можно изменить с помощью функций, расположенных на вкладке «Настройки».

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

У всех быстрые рендеры и красивые панорамы! 🙂

Вопросы и предложения по этому туториалу оставляйте в комментариях.

Визуализация панорамы 360 ° | Учебники

Регистрация

|

Войти в систему Поиск События Подделка или фото Вакансии Продукты
  • org/SiteNavigationElement»> Жизнь в 3D
  • Учебники
    • 3ds Max
    • Арнольд
    • Пламя
    • майя
    • Грязевой ящик
    • MotionBuilder
    • Майя LT
    Блоги
  • org/SiteNavigationElement»>
    • Загрузите свою работу
    Галерея
  • Приложения

    • 3ds Max
    • Бифрост
    • Майя
    • Майя LT
    • MotionBuilder
    • MudBox

    Активы

    • Графики
    • Соединения
    • Текстуры
    • 3D модели
    • Шейдеры
    • org/SiteNavigationElement»> Базовые сетки
    • Марки
    • Плагины
    • Трафареты
    Загрузки
  • Продукты

    • 3ds Max
    • Арнольд
    • Генератор персонажей
    • FBX
    • Пламя
    • org/SiteNavigationElement»> майя
    • Майя LT
    • MotionBuilder
    • Грязевой ящик
    • Дробовик
    • Витрина
    • Дым
    • Softimage
    • морской скат

    Тема

    • Поддержка веб-сайта области
    • org/SiteNavigationElement»> Создание игр

    Приложения

    • Bifrost
    Форумы
Ваша карьера в 3D ЖИЗНЬ В 3D Учебники БЛОГИ ГАЛЕРЕЯ ПРОДУКТЫ ЗАГРУЗКИ ФОРУМЫ СОБЫТИЯ ПОДДЕЛКА ИЛИ ФОТО РАБОТА Ваша карьера в 3D ЖИЗНЬ В 3D Учебники БЛОГИ
  • 3ds Max
  • Арнольд
  • Пламя
  • майя
  • Грязевой ящик
  • MotionBuilder
  • Майя LT
ГАЛЕРЕЯ
  • Загрузите свою работу
ЗАГРУЗКИ

Приложения

  • 3ds Max
  • Бифрост
  • Майя
  • Майя LT
  • MotionBuilder
  • MudBox

Активы

  • Графики
  • org/SiteNavigationElement»> Соединения
  • Текстуры
  • 3D модели
  • Шейдеры
  • Базовые сетки
  • Марки
  • Плагины
  • Трафареты
ФОРУМЫ

Продукты

  • 3ds Max
  • Арнольд
  • Генератор персонажей
  • FBX
  • Пламя
  • майя
  • Майя LT
  • MotionBuilder
  • Грязевой ящик
  • Дробовик
  • Витрина
  • Дым

Стереоскопические панорамы 360 ° — Справочное руководство 360 Cities

Просмотр и публикация стереоскопических панорам

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

Самым простым является анаглиф, изображение с одной цветовой кодировкой, которое может отображаться проигрывателем 2D-панорамы. При просмотре через очки с дополнительными цветными линзами можно увидеть стереоскопическое изображение. Самый распространенный тип — это красно-голубой анаглиф, который легко сделать из изображений RGB путем удаления красного компонента из правого изображения, удаления зеленого и синего компонентов из левого изображения и смешивания результатов 50:50.Помимо простоты, этот метод мало что может рекомендовать.

Все другие методы стереофонического отображения требуют, чтобы механизм отображения обрабатывал два изображения параллельно. Фактически, необходимы два синхронизированных проигрывателя панорамы. Это естественный режим гарнитур виртуальной реальности. И сегодня оба основных проигрывателя веб-панорамы, krpano и Pano2VR, поддерживают стереоизображения в режиме VR. Более того, sView, программа для ПК, предназначенная для воспроизведения стереоскопического сферического видео на 3D-телевизорах, также воспроизводит неподвижные панорамы.Таким образом, это в основном вопрос упаковки левой и правой сфер, подходящей для выбранного игрока. Детали все еще несколько запутаны и быстро меняются, поэтому, если бы я дал здесь инструкции, они, вероятно, устарели бы, прежде чем вы их прочитали. Но публикация на устройствах виртуальной реальности становится все проще.

Могу порекомендовать два готовых решения для веб-публикации. Pano2VR версии 5 позволяет создавать стереопанорамы через Интернет так же удобно, как и 2D. Это требует некоторого обучения, но это время потрачено не зря, если вы хотите разместить свои собственные панорамы.А 360Cities, лучшая платформа для веб-панорамы, теперь принимает стереопанорамы. Все, что вам нужно сделать, это упаковать ваши равнопрямоугольные сферы в один файл, так чтобы левая сфера была сверху. Когда вы загружаете это квадратное изображение, 360 городов преобразуют его в стереопанораму, которая будет отображаться в стерео на устройствах VR и в 2D на рабочем столе.

Сшивание панорам OpenCV — PyImageSearch

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

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

Поскольку существует основных различий в том, как OpenCV 2. 4.X и OpenCV 3.X обрабатывают обнаружение ключевых точек и локальные инвариантные дескрипторы (такие как SIFT и SURF), я позаботился о предоставлении кода, совместимого с обе версии (при условии, что вы скомпилировали OpenCV 3 с поддержкой opencv_contrib , конечно).

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

Прочтите, чтобы узнать, как выполняется сшивание панорамы с помощью OpenCV.

Сшивание панорамы OpenCV

Наш алгоритм создания панорамы состоит из четырех шагов:

  • Шаг № 1: Обнаружение ключевых точек (DoG, Harris и т. Д.) И извлечение локальных инвариантных дескрипторов (SIFT, SURF и т. Д.) Из двух входных изображений.
  • Шаг № 2: Сопоставьте дескрипторы между двумя изображениями.
  • Шаг № 3: Используйте алгоритм RANSAC для оценки матрицы гомографии, используя наши согласованные векторы признаков.
  • Шаг № 4: Примените преобразование деформации, используя матрицу гомографии, полученную на этапе Шаг № 3 .

Мы инкапсулируем все четыре шага в Panorama.py , где мы определим класс Stitcher , используемый для создания наших панорам.

Класс Stitcher будет полагаться на пакет imutils Python, поэтому, если он еще не установлен в вашей системе, вы захотите продолжить и сделать это сейчас:

$ pip install imutils
 

Давайте продолжим и начнем с просмотра панорамы .py :

# импортируем необходимые пакеты
импортировать numpy как np
импорт imutils
импорт cv2

класс Stitcher:
def __init __ (сам):
# определяем, используем ли мы OpenCV v3.X
self.isv3 = imutils.is_cv3 (or_better = True)
 

Мы начинаем с строк 2-4 , импортируя наши необходимые пакеты. Мы будем использовать NumPy для операций с матрицами / массивами, imutils для набора удобных методов OpenCV и, наконец, cv2 для наших привязок OpenCV.

Отсюда мы определяем класс Stitcher в строке Line 6 . Конструктор Stitcher просто проверяет, какую версию OpenCV мы используем, вызывая метод is_cv3 . Поскольку существуют существенные различия в том, как OpenCV 2.4 и OpenCV 3 обрабатывают обнаружение ключевых точек и локальные инвариантные дескрипторы, важно, чтобы мы определяли версию OpenCV, которую мы используем.

Далее, давайте начнем работать по методу стежка :

def stitch (self, images, ratio = 0.75, reprojThresh = 4.0,
showMatches = False):
# распаковать изображения, затем определить ключевые точки и извлечь
# локальных инвариантных дескриптора из них
(imageB, imageA) = изображения
(kpsA, featuresA) = self.detectAndDescribe (imageA)
(kpsB, featuresB) = self.detectAndDescribe (imageB)

# совпадение характеристик между двумя изображениями
M = self.matchKeypoints (kpsA, kpsB,
featuresA, featuresB, ratio, reprojThresh)

# если совпадений нет, то совпадений недостаточно
# ключевые точки для создания панорамы
если M равно None:
return None
 

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

Мы также можем дополнительно предоставить коэффициент , , используемый для теста отношения Дэвида Лоу при сопоставлении функций (подробнее об этом тесте отношения позже в руководстве), reprojThresh , который является максимальным «пространством для маневра» пикселя, разрешенным алгоритмом RANSAC, и наконец showMatches , логическое значение, используемое, чтобы указать, должны ли совпадения ключевых точек визуализироваться или нет.

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

После того, как мы распаковали список изображений , мы вызываем метод detectAndDescribe на строках 16 и 17 . Этот метод просто обнаруживает ключевые точки и извлекает локальные инвариантные дескрипторы (т.е.е., SIFT) из двух изображений.

Учитывая ключевые точки и функции, мы используем matchKeypoints ( строки 20 и 21 ) для сопоставления функций на двух изображениях. Мы определим этот метод позже на уроке.

Если возвращенные совпадения M равны Нет , то было сопоставлено недостаточно ключевых точек для создания панорамы, поэтому мы просто возвращаемся к вызывающей функции ( строки 25 и 26, ).

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

# в противном случае примените перспективную деформацию для сшивания изображений
# все вместе
(совпадения, H, статус) = M
результат = cv2.warpPerspective (imageA, H,
(imageA.shape [1] + imageB.shape [1], imageA.shape [0]))
результат [0: imageB.shape [0], 0: imageB.shape [1]] = imageB

# проверить, должны ли быть визуализированы совпадения ключевых точек
если showMatches:
vis = self.drawMatches (imageA, imageB, kpsA, kpsB, совпадения,
положение дел)

# вернуть кортеж сшитого изображения и
# визуализация
return (результат, vis)

# возвращаем сшитое изображение
вернуть результат
 

При условии, что M не является Нет , мы распаковываем кортеж в строке 30 , давая нам список ключевых точек , совпадающих с , матрицу гомографии H , полученную из алгоритма RANSAC, и, наконец, статус , список индексов, указывающих, какие ключевые точки в совпадают с , были успешно пространственно проверены с помощью RANSAC.

Учитывая нашу матрицу гомографии H , теперь мы готовы сшить два изображения вместе. Сначала мы вызываем cv2.warpPerspective , для которого требуются три аргумента: изображение, которое мы хотим деформировать (в данном случае правое изображение ), матрица преобразования 3 x 3 ( H ) и наконец, форма выходного изображения. Мы получаем форму из выходного изображения, суммируя ширину обоих изображений, а затем используя высоту второго изображения.

Строка 30 проверяет, должны ли мы визуализировать совпадения ключевых точек, и если да, то вызываем drawMatches и возвращаем кортеж панорамы и визуализации вызывающему методу ( Строки 37-42 ).

В противном случае мы просто вернули сшитое изображение (, строка 45, ).

Теперь, когда определен метод stitch , давайте рассмотрим некоторые из вызываемых им вспомогательных методов. Начнем с detectAndDescribe :

def detectAndDescribe (себя, изображение):
# преобразовать изображение в оттенки серого
серый = cv2.cvtColor (изображение, cv2.COLOR_BGR2GRAY)

# проверяем, используем ли мы OpenCV 3.X
если self.isv3:
# обнаруживать и извлекать особенности изображения
дескриптор = cv2.xfeatures2d.SIFT_create ()
(kps, features) = descriptor.detectAndCompute (изображение, Нет)

# в противном случае мы используем OpenCV 2.4.X
еще:
# обнаруживаем ключевые точки на изображении
детектор = cv2.FeatureDetector_create ("SIFT")
kps = Detect.detect (серый)

# извлекаем элементы из изображения
экстрактор = cv2.DescriptorExtractor_create ("SIFT")
(kps, features) = extractor.compute (серый, kps)

# преобразовываем ключевые точки из объектов KeyPoint в NumPy
# массивов
kps = np.float32 ([kp.pt для kp в kps])

# возвращаем кортеж ключевых точек и функций
возврат (км / с, характеристики)
 

Как следует из названия, метод detectAndDescribe принимает изображение, затем обнаруживает ключевые точки и извлекает локальные инвариантные дескрипторы. В нашей реализации мы используем детектор ключевых точек Различия Гаусса (DoG) и экстрактор признаков SIFT.

В строке 52 мы проверяем, используем ли мы OpenCV 3.X. Если да, то мы используем функцию cv2.xfeatures2d.SIFT_create для создания экземпляров как нашего детектора ключевых точек DoG, так и экстрактора функций SIFT. Вызов detectAndCompute обрабатывает извлечение ключевых точек и функций ( строки 54 и 55 ).

Важно отметить, что вы должны скомпилировать OpenCV 3.X с включенной поддержкой opencv_contrib. Если вы этого не сделали, вы получите сообщение об ошибке, например AttributeError: объект 'module' не имеет атрибута 'xfeatures2d' .Если это так, перейдите на мою страницу руководств по OpenCV 3, где я подробно расскажу, как установить OpenCV 3 с поддержкой opencv_contrib , включенной для различных операционных систем и версий Python.

Строки 58-65 обрабатывают, если мы используем OpenCV 2.4. Функция cv2.FeatureDetector_create создает экземпляр нашего детектора ключевых точек (DoG). Вызов detect возвращает наш набор ключевых точек.

Оттуда нам нужно инициализировать cv2.DescriptorExtractor_create , используя ключевое слово SIFT , чтобы настроить нашу функцию SIFT экстрактор .Вызов метода compute экстрактора возвращает набор векторов признаков, которые количественно определяют область, окружающую каждую из обнаруженных ключевых точек на изображении.

Наконец, наши ключевые точки преобразуются из объектов KeyPoint в массив NumPy (, строка 69, ) и возвращаются вызывающему методу (, строка 72, ).

Теперь давайте посмотрим на метод matchKeypoints :

def matchKeypoints (self, kpsA, kpsB, featuresA, featuresB,
ratio, reprojThresh):
# вычисляем необработанные совпадения и инициализируем список фактических
# Матчи
совпадение = cv2.DescriptorMatcher_create ("BruteForce")
rawMatches = matcher.knnMatch (featuresA, featuresB, 2)
совпадения = []

# перебрать необработанные совпадения
для m в rawMatches:
# убедитесь, что расстояние находится в определенном соотношении между каждым
# другое (например, тест соотношения Лоу)
если len (m) == 2 и m [0] .distance 

Функция matchKeypoints требует четырех аргументов: ключевых точек и векторов признаков, связанных с первым изображением, за которыми следуют ключевые точки и векторы признаков, связанные с

Как создавать и публиковать 360-градусные панорамы с помощью дрона

Мы привыкли снимать панорамы с удобными предустановленными режимами на наших телефонах и камерах, но уникальная перспектива с дрона добавляет вертикальное измерение, которое может создавать впечатляющие виды с высоты птичьего полета.Однако это также усложняет процесс захвата, обработки и обмена изображениями. Мы расскажем, как это сделать, и расскажем, какие инструменты вам понадобятся. Для иллюстрации мы будем использовать мой любимый DJI Mavic Pro, но процесс очень похож на другие дроны-продюсеры.

Создание панорамных снимков с помощью дрона

Для начала вам нужно оптимизировать настройки камеры вашего дрона. Используйте как можно более низкое значение ISO, чтобы при этом выдержка оставалась достаточной для уменьшения или устранения размытости изображения при движении.Я обнаружил, что для пейзажей вполне подойдет скорость от 1/60 секунды. Если вы снимаете при ярком свете, также стоит посмотреть, улучшит ли внешний вид добавление фильтра круговой поляризации, например, от PolarPro (CPL отфильтрует много отраженного света и часто согреет изображение, снятое при ярком свете. световые условия). Я использую фильтры PolarPro, потому что они достаточно легкие, чтобы не повредить стабилизатор дрона, но при этом довольно прочные.

Эта 360-градусная панорама каньона Ред-Рок была снята с использованием Mavic Pro, полетного приложения Litchi и рабочего процесса, описанного в этой статье (нажмите для навигации):

Так же, как смартфоны добавили режимы панорамы, производители дронов добавили автоматические режимы панорамы на 360 градусов.DJI, например, добавила опцию «Панорама в один клик» в последние версии своего приложения DJI GO. Новый режим позволяет вашему поддерживаемому дрону делать заранее заданную серию снимков и сшивать их для вас. Если вам нужен быстрый способ получить разумный снимок, это идеально. Он имеет четыре режима, из которых Sphere используется для создания изображения на 360 градусов. Режим «Сфера» захватывает 34 изображения и автоматически сшивает их для вас в композитный JPEG.

Как и почти в любой фотографии, вы можете получить лучшее качество с камеры вашего дрона, снимая в режиме RAW.Для Mavic Pro это означает 12-мегапиксельные файлы DNG. Один интересный трюк с режимом Pano от DJI заключается в том, что если вы установите камеру в RAW перед ее использованием, вы получите как сшитый JPEG, так и все исходные файлы RAW, которые вы сможете обработать самостоятельно позже.

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

Управление дроном для съемки панорамы

Если вы не используете встроенный режим панорамы, у вас есть несколько вариантов управления дроном.Первый - управлять им вручную. Начните с горизонта (если есть интересные облака или горы, тогда вы можете начать прицеливаться еще выше) и снимайте изображения с интервалами вокруг полного круга. Для достижения наилучших результатов вам нужно около 50% перекрытия между изображениями. Для Mavic Pro это означает около дюжины изображений вокруг горизонта. Затем опустите подвес примерно на 1/2 высоты кадра и повторите. Делайте это, пока не смотрите прямо вниз, а затем сделайте несколько снимков, вращаясь вокруг этой точки (называемой надиром).Тогда все готово!

Эту панораму сельской местности штата Шан в Мьянме было не только интересно запечатлеть, но и вызвали у местных жителей большое любопытство. Один фермер предложил обменять свой урожай перца чили на мой Mavic Pro (нажмите, чтобы перейти):

Если вы хотите, чтобы дрон делал это за вас (мне нравится, когда мой дрон смотрит на окрестности, пока я останавливаюсь) и съесть свой обед во время путешествия, например), тогда вы можете использовать приложение, поддерживающее запрограммированные панорамы.Мне больше всего нравится Litchi, который доступен как для Android, так и для iOS. Это не бесплатно, но не нужно много времени, чтобы окупить себя. В Litchi вы можете установить, где вы хотите начать, сколько изображений вы хотите в каждой строке и сколько строк вы хотите захватить. Вы даже можете установить задержку между кадрами, если в противном случае вы слишком сильно увеличиваете производительность своего дрона или мобильного устройства.

Постобработка изображений с дрона

Если вы снимали в формате RAW, вам нужно будет обработать изображения как пакет, прежде чем вы сможете их сшить.Я обнаружил, что Camera Raw в Photoshop или Lightroom - это удобный способ сделать это. Обычно вы хотите использовать одни и те же настройки для всех изображений, чтобы обеспечить единообразный вид. Для максимального качества сохраните результаты в виде файлов TIFF, если ваше программное обеспечение для вышивания поддерживает это; иначе как JPEG.

Создание панорамы не может быть проще, чем делает ее ICE от Microsoft

Качественная стыковка - это самая требовательная часть рабочего процесса постобработки. К счастью, есть несколько действительно хороших инструментов.Одним из наиболее впечатляющих из-за своей мощной простоты является ICE (Image Composite Editor) от Microsoft Research. Вы почти всегда можете просто бросить на него свои изображения, и он отлично справится с их организацией и сшиванием. К сожалению, программное обеспечение не добавляет все метаданные, необходимые для правильного отображения на некоторых сайтах совместного использования, и Microsoft отказалась от него, поэтому, если вы его используете, вам, вероятно, придется добавить некоторые метаданные самостоятельно.

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

Сшивание панорамы с помощью Hugin

Ptgui - платное приложение, которое довольно популярно, но я нашел Hugin, бесплатную альтернативу, как отличный вариант.Он не самый очевидный в использовании, но у него есть интерфейс «Ассистент», который проведет вас по этапам (в новой версии 2018 это вызывается путем выбора Интерфейс-> Простой). Сначала вы загружаете изображения, перетаскивая или используя File Open. Hugin принимает файлы JPEG или TIFF, поэтому он довольно гибкий. Вам нужно будет указать фокусное расстояние для вашего дрона. Для Mavic Pro это 28 мм.

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

Когда вы войдете в интерфейс Ассистента, вы можете просто нажать на Шаг 2, «Выровнять… Хугин запускает фоновую задачу, которая пытается выровнять и сшить изображения, используя контрольные точки, которые он определяет в их перекрытии.Если все пойдет хорошо, вы можете просто откорректировать горизонт, перетащив его вверх и вниз в режиме макета. Хугин также покажет вам все связи, которые он установил между изображениями. Если вы видите серые линии, значит, не удалось соединить некоторые изображения. Вы можете исправить это, щелкнув ссылку, а затем определив соответствующие точки между изображениями, которые Хугин может использовать.

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

Публикация панорамных снимков

Facebook - первая цель большинства людей для обмена фотографиями, и панорамные фотографии не исключение.Facebook упростил этот процесс, если ваше изображение покрывает полные 360 градусов на 180 градусов, имеет правильные метаданные и не превышает 10 000 пикселей в ширину. Вы просто загружаете его, как любую другую фотографию, и Facebook отмечает его как 360 и позволяет пользователям перемещаться по нему с помощью мыши или перемещая свое мобильное устройство. YouTube в настоящее время не поддерживает панорамные фотографии (хотя и поддерживает видео), но Google Street View поддерживает.

К сожалению, SmugMug, мой любимый сайт для обмена фотографиями, не поддерживает панорамные фотографии, поэтому мне пришлось искать качественный хостинг в другом месте.Пока Kuula.co отвечает всем требованиям. Их бесплатная подписка предоставляет достаточно функций для большинства пользователей, и у них есть действительно хорошие инструменты для просмотра. Куула также предполагает, что все загруженные изображения являются панорамами, поэтому для полных сферических панорам (360 x 180) вам даже не нужны дополнительные метаданные. Kuula также поддерживает необычно популярный вид Tiny Planet для ваших сферических панорам. Наконец, Kuula поддерживает панорамы с более высоким разрешением. до 16 384 пикселей - почти вдвое больше, чем вы можете загрузить на Facebook.Их планы Pro, начинающиеся с 8 долларов в месяц, позволяют использовать некоторые расширенные функции, такие как виртуальные туры и пакетная загрузка.

Лучшие сведения о дронах Panoramas

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

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

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