Подтвердить что ты не робот

Изображение iOS - 2d превращается в 3d

Я просматривал это классное приложение под названием Morfo. Согласно их описанию продукта -

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

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

enter image description here

Мои вопросы следующие:

  • Как они это делают?
  • Как это возможно в iPad?
  • Разве это не сложно вычислить, чтобы отображать и преобразовывать 2D-изображение в 3D?

Любые указатели, ссылки на сайты или библиотеки в объективе C, которые делают это, очень ценятся.

ОБНОВЛЕНИЕ: эта демонстрация этот продукт здесь показывает, как morfo использует механизм шаблонов для преобразования, то есть после подачи двумерного изображения необходимо установить границы лица, где расположены глаза, размер и длина губ. затем он отключается, чтобы преобразовать его в 3D-модель. Как это делается? Какие рамки или библиотеки они могут использовать?

4b9b3361

Ответ 1

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

  • Как они это делают?
    Идея заключается в том, что в 3D-рендеринге 3D-модели могут быть текстурированы с 2-м изображением, известным как карта текстур. Вы используете 2D-изображение и обертываете его вокруг 3d-модели, будь то простой примитив, такой как сфера куба или более продвинутый, такой как классический чайник или модель человеческой головы e.t.c. Текстура может быть взята из любого места, я использовал канал камеры в прошлом, чтобы текстурные сетки с видео из потока камеры, я использовал фотографии с камеры, которые, как это делают. Так вот, как лицо отображается 3D-модели.

  • Является ли это эффективным?
    На iOS и большинстве мобильных устройств 3D-рендеринг использует аппаратное ускорение с использованием OpenGLES. Что касается вашего вопроса, это очень быстро в зависимости от того, как вы реализуете свой код рендеринга.

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

Итак, если вы хотите это сделать, я рекомендую прочитать учебник по Джеффу Ламаршу "с нуля" в качестве учебника:

http://iphonedevelopment.blogspot.com/2009/05/opengl-es-from-ground-up-table-of.html

Во-вторых, я прочитал около 4 книг по OpenGLES, для общего дизайна и для спецификаций платформ. Я рекомендую эту книгу:

http://www.amazon.co.uk/iPhone-Programming-Developing-Graphical-Applications/dp/0596804822/ref=sr_1_1?ie=UTF8&qid=1331114559&sr=8-1

Ответ 2

По-моему, как они это делают. Просто мои мысли, не видели приложение в реальной жизни.

У них есть 3D-модель человеческой головы. Когда вы нажимаете на определенные точки на 2D-изображении, они корректируют соответствующие точки в 3D-модели, поэтому они представляют собой особые грани, такие как расстояние между глазами, ширина губ и т.д. Затем текстура с 2D-изображения применяется к 3D-модели с использованием этих контрольных точек, поэтому у нас есть текстурированная 3D-модель человеческой головы. Учитывая тот факт, что наше восприятие способно восстановить трехмерную форму из 2D-изображений (скажем, мы смотрим на 2D-фотографию и все еще представляем себе трехмерного человека), нет необходимости точно восстанавливать трехмерную форму, текстура будет работать.

Ответ 3

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

Теперь, если вы заметили в Morfo, вы определяете край головы, глаз, рта и носа. с этой информацией Morfo знает, как поместить текстуру в определенную модель.

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

Ответ 4

Не интенсивно ли вычислить интенсивность для рендеринга и преобразования 2D-изображения в 3D?

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