Створення 3d-панорами

Створення 3d-панорами

Продовжуємо серію уроків "Створення 3D-панорами"

У цій статті відредагуємо зображення панорами, отримане в попередньому уроці, добудуємо зеніт і створимо 3D-панораму.

Разом з тим я рекомендую, створити цю панораму самостійно, тому як в даній статті я буду посилатися на висновки отримані в процесі її створення.

1. Програмне забезпечення для роботи з панорамами

Нам будуть потрібні програми:

2) Для створення 3d-панорами на основі сферичної проеціі: Autopano Tour. У версії Autopano Giga 2.0.6 ця програма вже поставляється в комплекті. Для версії 2.5 можна завантажити програму Panotour. Функціонал у неї досить схожий з Autopano Tour.

Autopano Tour пропонує функціонал krpano в більш зручному і звичному вигляді, але в той же час вимагає ліцензію на krpano. Без цієї ліцензії у вас будуть обмеження на дозвіл 3D-панорами.

Купити ліцензію на krpano можна тут.

3) Для роботи із зображеннями, само собою, буде потрібно Adobe Photoshop.

2. Заповнення зеніту

На цьому етапі необхідно панораму привести до необхідних размерениям.

У повній сферичної проекції панорами огляд становить 3600 по горизонталі і 1800 по вертикалі. Отже в сферичної проекції співвідношення сторін повинно бути два до одного.

В нашій панорамі вийшло дозвіл 7066х3272, а для сферичної проекції необхідно 7066х3533.

По минулому уроку ми бачили, що виходячи з значення кута Phi, у нас вийшло що від горизонту до надира у нас повне заповнення (тому що Phi Min = 900), а від горизонту до зеніту немає (тому що Phi Max Image -> Canvas Size. Ставимо Anchor в нижню частину квадрата і встановлюємо Height = 3533.

Створення 3d-панорами

А що робити якщо в панорамі присутні недобудовані і зеніт і надир?

В цьому випадку визначте лінію горизонту, і дозаповнити до 1/4 ширини вище і нижче горизонту.

В результаті вийде висота 3500 + 500 + 1000 = 5000 пікселів, тобто рівно половина від ширини. Умови співвідношення сторін два до одного дотримуються.

3. Перетворення з сферичної проекції панорами в кубічну

Для того щоб добудувати зеніт - перетворимо панораму з сферичної проекції в кубічну.

Запустіть програму Pano2VR

В область Імпорт з провідника або файлового менеджера перетягніть файл панорами.

Програма автоматично спробує визначити тип проекції. В даному прикладі Pano2VR тип проекції встановила вірно - еквідистантним (інша назва сферичної проекції)

Разом з тим, якщо присутній попереднє заповнення надира або зеніту, то іноді вона це робить неправильно. Якщо таке сталося - натисніть кнопку Вибрати і вручну вкажіть потрібний тип.

Для того щоб змінити тип проекції натисніть кнопку Змінити, після чого відкриється вікно перетворення текстури.

Виберіть тип проекції Сторони Куба і натисніть Process

Програма Pano2VR може працювати з декількома типами проекцій: еквідистантним, циліндрична і кубічна.

Крім того в списку типів є різні стрипи, хрести, Т-проекції. По суті це та ж кубічна проекція, що відрізняється лише тим як розташовані окремі сторони куба в зображенні панорами. Дані типи можуть стати в нагоді, коли необхідно редагувати в панорамі об'єкти які знаходяться відразу на декількох сторонах куба.

Наприклад, якщо більшу частину панорами займає довгий будинок, на якому вийшли дефекти (злами, зарубки).

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

4. Редагування панорами

Отже, після перетворення панораму з сферичної в проекцію Сторони Куба ми отримали 6 файлів. Особливу увагу слід приділити сторонам надира і зеніту (вони під номерами 5 і 6). У даній панорамі сторона надира не має дефектів, а ось в центрі зеніту - чорний багатокутник, що відповідає тій області, яку ми заповнювали в сферичної проекції.

Створення 3d-панорами

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

Створення 3d-панорами

Створення 3d-панорами

Відредагуємо його так, щоб дроти розташовувалися по одній лінії. Для цього скористаємося інструментом Free Transform (Головне меню -> Edit-> Free Transform). Нагадаю, що ви можете переміщати кути редагованої області за допомогою миші якщо затиснути клавішу Ctrl.

Створення 3d-панорами

Застосуємо до шару маску (Головне меню -> Layer-> Layer Mask-> Reveall All) і за допомогою кисті замажу різкі кордону шару.

Створення 3d-панорами

Після чого скористаємося штампом, щоб приховати невеликий перепад яскравості.

Тепер кадр зеніту добудований.

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

Потім натиснемо кнопку Змінити і перетворимо панораму з кубічної проекції назад в еквідистантним.

В результаті вийшла повна сферична проекція панорами з кутами огляду 360х180.

Створення 3d-панорами

5. Створення 3d-панорами.

Запустимо програму Autopano Tour.

Перетягнемо файл панорами з провідника або файлового браузера в ліву верхню область вікна програми і кликнемо по самій панорамі.

Створення 3d-панорами

Меню Hotspot Editor

Створення 3d-панорами

Тут можна вказати місце розташування сонця (для створення лінзових ефектів), і позначити точки переходу між панорамами.

У поточному уроці ми поки не створюємо віртуальний тур, а сонця на панорамі не видно за низькими хмарами. Тому в даному меню нам налаштовувати нічого.

Створення 3d-панорами

Тут ви можете подивитися превью майбутньої 3D-панорами. Покрутіть проекцію, визначте сподобався ракурс, натисніть праву кнопку миші і виберіть set a start position. З цієї точки буде запускатися ваша 3D-панорама.

У цьому едітор Yaw, Pitch - це кути по горизонталі і вертикалі на які повернута камера.

Fov - кут зору. Впливає на кутові розміри зображуваного простору і перспективні спотворення картинки. Тут кут можна поставити виходячи зі своїх переваг (я зазвичай ставлю fov = 55)

Вкладка Panorama Properties

Створення 3d-панорами

Тут вказуються основні властивості панорами.

Field of view. Кути огляду панорами. В даному випадку у нас панорама з повним оглядом, тому виставлено Horizontal = 360, Vertical = 180.

Autopano Giga у панорамних композиціях зберігає значення кутів в самій панорамі (в файлах зображень є спеціальні службові області, куди програми можуть прописувати необхідні їм дані).

Autopano Tour зчитує параметри залишені Autopano Giga або намагається автоматично обчислити кути (як в нашому випадку).

Але іноді відбувається наступна ситуація: Autopano Giga прописала кути в файл, а ми відредагували панораму через Photoshop і Pano2VR.

У процесі редагування штучно змінили реальні значення кутів. Наприклад, як в нашому випадку, ми добудували зеніт і довели вертикальний кут огляду до 180. І виходить що в файлі прописані старі кути огляду, а виходячи зі співвідношення сторін панорами, видно що кути змінилися. Autopano Tour в такій ситуації не завжди може правильно виставити кути огляду. Тому необхідно перевіряти значення цих параметрів.

А що тоді таке Vertical offset?

Горизонт в 3d-панорамі повинен проходити через центр, коли камера знаходиться горизонтально. Але якщо Phi Min НЕ дорівнює Phi Max, то відстань в пікселях від горизонту до верхньої межі і від горизонту до нижньої не рівні один одному. В цьому випадку необхідно змістити панораму по вертикалі, щоб вирівняти становище горизонту.

Vertical offset = (Phi Min + Phi Max) / 2

Тут слід враховувати, що Phi Min йде зі знаком "-".

Перед тим як панорама повністю завантажиться, щоб користувач не нудьгував перед чорним екраном, показується превью. Тут задається ширина даного превью. За замовчуванням цей параметр дорівнює 800, що цілком підходить для більшості випадків.

Зображення для панорами кодується в jpeg-файл. Тут встановлюється значення якості. Якщо панорама готується для інтернету, то рекомендується встановлювати якість 6-9.

Cube Face Size / Partial Panorama Width

Якщо панорама з кутом огляду по вертикалі не 180, то тут необхідно ввести ширину панорами в сферичної розгортці. Знову таки, якщо панорама готується для розміщення в інтернеті, підійде значення 5000-7000.

Якщо натиснути на кнопку Compute Optimal Size, то програма запропонує своє значення з точки зору оптимальності Cube Face Size / Partial Panorama Width. Разом з тим запропоновані значення не завжди підходять.

Якщо в надирі ви хочете розмістити логотип, або будь-яке зображення то виберіть тут файл і відрегулюйте розмір цього зображення (параметр Scale)

В даному прикладі ми не будемо використовувати цю можливість.

Yaw, Pitch визначає початкові кути камери (ці параметри визначаються автоматично, якщо в 3d editor-е використовувалася функція set a start position)

Fov - кут огляду камери.

Слід зауважити, що Fov камери і Fov в 3d Editor- е це незалежні значення. Для створюваної 3d-панорами необхідно виставити Fov саме в Camera parameters. В даному випадку встановимо Fov = 55.

Параметри Min і Max визначають відповідно мінімальний і максимальний fov камери, якщо користувач буде змінювати масштаб. Тобто ці параметри визначають в яких межах користувач може наближати і видаляти картинку.

Поставимо Min = 20. а Max = 100.

Вкладка Project Properties

Створення 3d-панорами

First Displayed Panorama

Якщо ви створюєте віртуальний тур, що складається з декількох панорам, то тут тут можна вибрати, яка панорама буде показуватися першої.

Insert navigation menu

Дозволяє вставити навігаційне меню. Воно показується в нижній частині панорами.

Use auto rotation

Використовувати автовращеніе. Якщо користувач якийсь час не рухає мишкою, то панорама починає плавно обертатися по горизонталі.

Add full screen button

Insert panoramas list

Дозволяє розмістити розгортається список панорам (актуально для віртуальних турів з безліччю панорам). Після вибору даної опції є можливість визначити кут, в якому буде виводитися даний список.

Дана опція дозволяє вивести логотип поверх панорами. Також можна задати посилання на сайт, якій буде відкриватися при кліці по логотипу. Після вибору даної опції з'явиться можливість визначити кут, в якому логотип буде виводитися.

В даному пункті можна налаштувати параметри експорту.

3d-панорама збирається з декількох файлів:

- Swf - виконуваний флеш файл панорами.

- Xml - текстовий файл з описом налаштувань панорами.

- Ряд jpg файлів панорами, які представляють собою набір файлів зображень панорами в кубічної проекції.

Безпосередньо працювати з цими файлами немає необхідності, програма Autopano tour може сама все оформити. Разом з тим треба вказати як саме їй необхідно збирати 3D-панораму.

Ця установка дозволяє упакувати все вишеобозначенние файли в єдиний swf-файл. Це зручно для розміщення 3D-панорами в інтернеті, і для поширення на дисках.

Embed XML files

Ця установка дозволяє визначити, чи треба пакувати XML файл в загальний swf-файл. Можливість "неупаковкі" може знадобитися якщо ви хочете вручну налаштувати даний XML-файл.

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

За замовчуванням дані шаблони знаходяться в:

Сюди можна розмістити свої шаблони і після перезавантаження Autopano Tour автоматично додасть до списку.

В даному прикладі виберемо шаблон simpleWithFullScreen.html. Це простий шаблон виводу 3D-панорами c можливістю розгорнути повністю на екран.

6. Прорахунок 3d-панорами і розміщення її в інтернеті

Тепер ми налаштували експорт зображення панорами в flash-файл і запускаємо на прорахунок.

- Export Flash

В результаті отримаємо 2 файли: swf файл панорами, і html шаблон для розміщення її в інтернеті. Обидва типи файлу можна подивитися за допомогою браузера.

Для того щоб розмістити 3d-панораму в інтернеті, розмістіть обидва файли на вашому хостингу, і вкажіть посилання на html-файл.

Фінальна 3D-панорама.

Таким чином ми крок за кроком створили 3d-панораму. У цих трьох уроках було показано на практичному прикладі загальна послідовність дій, робота зі спеціалізованими програмами і основні принципи створення 3d-панорам.

Минулі частини статті:

Схожі статті