3D-проєкція: відмінності між версіями

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Вилучено вміст Додано вміст
Masich 0 (обговорення | внесок)
Створена сторінка: '''3D проекція''' — це будь-який спосіб відображення тривимірних точок на двовимірній п...
(Немає відмінностей)

Версія за 17:01, 26 травня 2016

3D проекція — це будь-який спосіб відображення тривимірних точок на двовимірній площині. Оскільки більшість сучасних методів для відображення графічних даних базуються на планарних[en] (піксельна інформація з декількох бітових площин) двомірних середовищах, використання цього типу проекції широко поширене, особливо в галузі комп'ютерної графіки, інженерії та креслення.

Ортогональна проекція

Коли людське око дивиться на сцену, об'єкти на відстані здаються менше, ніж об'єкти поруч. Ортогональна проекція ігнорує цей ефект, щоб дозволити створення креслення в масштабі для будівництва і машинобудування.

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

Якщо нормаль площини перегляду (напрямок камери) паралельна одній первинній осі (яка є , або вісь ), то математичне перетворення виглядає наступним чином; Для проектування 3D-точок , , на 2D точки , з використанням паралельної ортогональної проекції на ось Y (вид профілю), можуть бути використані наступні рівняння:

де вектор s — довільний масштабний коефіцієнт, а c являє собою довільне зміщення. Ці константи не є обов'язковими, і можуть бути використані, щоб правильно вирівняти вікно перегляду. За допомогою матричного множення, рівняння стають:

.

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

Слабка перспективна проекція

«Слабка» перспективна проекція використовує ті ж принципи ортогональноі проекції, але вимагає коефіцієнт масштабування, який необхідно вказати, таким чином гарантуючи, що ближчі об'єкти здаються більшими в проекції, і навпаки. Це можна розглядати як гібрид між ортогональною і перспективною проекціями, і описується або в якості перспективної проекції з окремими глибинами точки заміненими середнім постійним глибини ,[1] або просто як ортогональна проекція з масштабування.

Таким чином, слабко-перспективна модель апроксимує перспективну проекцію, використовуючи більш просту модель, схожу на чисту (немаштабовану) отрогональну проекцію. Це розумне зближення, коли глибина об'єкта уздовж лінії візування мала в порівнянні з відстанню від камери, а поле зору маленьке. При цих умовах можна припустити, що всі точки на 3D-об'єкті знаходяться на однаковій відстані від камери, без суттєва помилок в проекції (в порівнянні з повною перспективною моделлю).

Перспективна проекція

Коли людське око бачить сцену, об'єкти на відстані здаються менше, ніж об'єкти поруч — це відомо як перспектива. У той час як ортогональна проекція ігнорує цей ефект, щоб дозволити точні вимірювання, перспективна проекція показує, що віддалені об'єкти менше, щоб забезпечити додатковий реалізм.

Перспективна проекція вимагає більш активну участь визначення в порівнянні з ортогональною проекцією. Концептуальною допомогою у розумінні механіки цієї проекції є уявлення 2D проекції, ніби об'єкт(и) в даний час розглядається через видошукач камери. Положення камери, орієнтація і поле зору управління поведінкою перетворення проекції. Наступні змінні визначені для опису цієї трансформації:

  •  — 3D-положення точки , яка повиненна бути спроектована.
  •  — 3D-положення точки , що представляє камеру.
  •  — орієнтація камери (представлена кутами Ейлера).
  •  — глядацьке положення щодо поверхні дисплея[2] яка проходить через точку , яка представляє камеру.

Що призводить до:

  •  — 2D-проекція .

Коли та 3D-вектор проектується на 2D вектор .

В іншому випадку, для обчислення ми спочатку визначимо вектор як положення точки по відношенню до системи координат, визначеній камерою, з початком в , і повернутої на відносно початкової системи координат. Це досягається шляхом віднімання матриці[en] з і потім застосування обертання по . Це перетворення часто називають перетворенням камери, і воно може бути виражене, висловлюючи обертання в термінах обертань навколо осей , , і (ці розрахунки мають на увазі те, що осі впорядковані як лівостороння система осей): [3] [4]

Це уявлення відповідає обертанню на три кута Ейлера, використовуючи конвенцію , яку можна інтерпретовати як «обертання навколо зовнішніх осей (осей сцени) в порядку , , (читання справа наліво)» або «поворот навколо власних осей (осі камери) в порядку , , (читання зліва-направо)». Зверніть увагу, що якщо камера не повертається (), то матриці випадають (як тотожності), і це зводиться до простого зрушення:

В якості альтернативи, без використання матриць:

Це перетвориння точки потім може проектуватися на 2D площині, використовуючи формулу (тут x/у, використовується в якості площини проекції; у літературі також може використовуватися x/z):[5]

Або в матричній формі з використанням однорідних координат, система

в поєднанні з аргументами, використування подібніх трикутників призводить до поділу однорідними координатами, даючи

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

Наведені вище рівняння можна переписати таким чином:

В якому - розмір дисплея, - розмір робочої поверхні диска (наприклад CCD), відстань від поверхні запису центру камери, та це відстань, від 3D точки проектування, до ока користувача.

Подальші операції відсікання і масштабування можуть бути необхідними для відображення 2D площини на будь-якому дисплеї.

Схема

Для того, щоб визначити, який x-координатний екран відповідає точці, в помножимо координати точки на:

де

x координата екрану.
x координата моделі.
фокусна відстань—осьова відстань від центру камери[en] до площини зображення[en].
це відстань до об'єкта.

Посилання

  1. Subhashis Banerjee (18 лютого 2002). The Weak-Perspective Camera.
  2. Ingrid Carlbom, Joseph Paciorek (1978). Planar Geometric Projections and Viewing Transformations (PDF). ACM Computing Surveys[en]. 10 (4): 465—502. doi:10.1145/356744.356750..
  3. Riley, K F (2006). Mathematical Methods for Physics and Engineering. Cambridge University Press. с. 931, 942. doi:10.2277/0521679710. ISBN 0-521-67971-0.
  4. Goldstein, Herbert (1980). Classical Mechanics (вид. 2nd). Reading, Mass.: Addison-Wesley Pub. Co. с. 146—148. ISBN 0-201-02918-9.
  5. Sonka, M; Hlavac, V; Boyle, R (1995). Image Processing, Analysis & Machine Vision (вид. 2nd). Chapman and Hall. с. 14. ISBN 0-412-45570-6.

Зовнішні посилання