17 December 2011

Сканируем в 3D с помощью фотоаппарата или 123D Catch

Working with 3D-graphics
В современном мире трехмерные технологии стали очень популярны. 3D стремительно и разнообразно входит в жизнь даже обычного человека. Начиная от 3D телевизоров, 3D сканеров и даже принтеров. Хотя последние два устройства в большей степени пока доступны только специалистам. Но технологии не стоят на месте. Появляются трехмерные принтеры стоимостью около $2000, что уже приближает время, когда они появятся, если не у каждого школьника/студента на столе, то как минимум, у каждого инженера или дизайнера. Что касается методов получения трехмерной модели с реального физического объекта, то тут тоже не все однозначно. Требуются наличие либо дорогостоящего лазерного сканера, либо можно попытать счастье с помощью лазерного строительного уровня, веб-камеры и специального программного обеспечения. Наличием всех этих вещей тоже не может похвастаться абсолютно любой человек.
Однако есть очень простой способ “сканировать” объект в 3D модель, используя обычный цифровой фотоаппарат. Как это сделать? Об этом и пойдет речь далее.


Компания Auotodesk, разработала облачный сервис под названием 123D Catch, который позволяет в автоматическом режиме построить 3D модель объекта по набору фотоизображений. Как подсказывает Википедия, данная технология называется Фотограмметрия.
И так что же нам нужно, чтобы получить 3D модель объекта по фотографиям?

Для эксперимента я взял небольшую морскую ракушку.

Скачиваем и устанавливаем программу 123D Catch. Тут нужно отметить два момента, которые немного усложнили мне жизнь, прежде чем я разобрался в чем было дело.
  • Время на компьютере должно быть синхронизировано через интернет! В случае малейшего расхождения от “идеально” времени, программа будет оказываться запускаться.
  • Программа очень не любит кириллицу в любых путях. Как в пути до папки установки, так и до папки с исходными фотографиями.

Программа установлена и запускается.



Далее производим фотосъемку объекта. На этом этапе тоже необходимо придерживаться некоторых правил:
  • Сначала производится съемка объекта со всех сторон, а затем делаются более детальные виды (если требуется);
  • Объект должен быть неподвижен. Необходимо перемещаться вокруг него, а не вращать объект;
  • Каждый последующий кадр должен накладываться/пересекать предыдущий;
  • Сервис не работает с прозрачными объектами;
  • Количество фотографий не должно превышать 70 штук;
  • Размер фото уменьшается на серверах сервиса до 3 мегапикселей. Для экономии времени закачки фото на сервера, нет смыла делать их большего размера.

Закончив фото сессию, загружаем фото в программу, нажав на кнопку “Create a new Photo Scene”. Отправляем все фотографии на в облачный сервис для просчета нашей сцены, нажав кнопку “Compute Photo Scene”.



Далее нас попросят ввести свой емайл и выбрать вариант дальнейших действий
Кнопка “Wait” — ожидать завершения процесса просчета. При этом будет отображаться шкала прогресса.
Кнопка “Email Me” — закрыть программу и ожидать уведомления по эл. почте.



В моем случае процесс ожидания не занял более двух минут.



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



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

На мой взгляд, большую ценность представляет возможность экспортировать сцену в файл и использовать для дальнейших манипуляций в редакторах трехмерной графики (например Blender3D или 3D Max).
Поддерживаются следующие форматы: Autodesk Drawing (dwg), Autodesk FBX (fbx), OBJ, RZI, IPM, LAS.




Получившаяся 3D модель в формате OBJ (2.64 Mb)
http://narod.yandex.ru/disk/34643353001/123D%20Example.zip

Самые разнообразные примеры можно найти на YouTube по ключевым словам “123D Catch” и “Project Photofly”.

Удачи в 3D сканировании!
Tags:123D Catch3D сканер3D по фото
Hubs: Working with 3D-graphics
+130
121.6k 781
Comments 59
Popular right now
Дизайнер digital
from 80,000 ₽CreativePeopleМоскваRemote job
Product designer with interaction skills
from 2,000 to 3,000 $StarOfServiceRemote job
Graphics Developer / Unity developer (возможна удаленка)
from 120,000 to 150,000 ₽Deus CraftНовосибирскRemote job
Unity-разработчик на VR- и AR-проекты
from 60,000 ₽JetStyleЕкатеринбургRemote job