Появление в продаже контроллера-камеры Microsoft Kinect породило целую волну изобретений с его использованием. В частности, многие хакеры экспериментировали с оцифровкой реальных объектов. Уже могло показаться, что они способны создавать такие штуки, о которых в Microsoft даже и не догадывались. Но, похоже, исследователи из Microsoft Research просто работают медленнее, зато результат с лёгкостью затыкает за пояс все любительские поделки.
http://youtu.be/quGhaggn3cQ
В этом довольно длинном видео последовательно демонстрируется, как Kinect и программа KinectFusion делают просто невероятные вещи. Kinect можно пронести по комнате и получить на компьютере её трёхмерное представление, выполненное в мельчайших деталях. KinectFusion, похоже, не боится ни теней, ни отражений, ни дрожания камеры.
Сцена постоянно обновляется с учётом получаемых данных. К примеру, если добавить объект в кадр, то он тут же будет добавлен и к модели. Точно так же можно и удалять движущиеся объекты или наоборот — отделять их от фона. На полученную модель можно наложить текстуру, заодно полученную с камеры Kinect. И, судя по видео, сидит она как влитая.
Разработчики KinectFusion демонстрируют пару возможностей, открываемых технологией. В одном примере на виртуальную сцену вбрасывают множество мелких объектов, и физический движок обеспечивает их реалистичное поведение: шарики красиво отскакивают от поверхностей и катаются так же, как катались бы по самой настоящей комнате.
Следом KinectFusion используют для отслеживания положения руки и пальцев. Это позволяет рисовать на любых поверхностях и получать более-менее реалистичную привязку нарисованных линий к трёхмерным объектам.
Изобретение сложно недооценить: во-первых софт, с помощью которого можно оцифровывать любые трёхмерные объекты при помощи двухсотдолларовой камеры, хорош уже сам по себе: для начала пригодится трёхмерщикам, а там, кто знает, может, и в более далёких от компьютеров областях — к примеру, в дизайне интерьеров.
Однако по-настоящему KinectFusion раскроет свои таланты в сочетании с другими технологиями. К примеру, трёхмерная карта местности может пригодиться в машинном зрении. Ещё два очевидных направления — дополненная реальность и тач-интерфейсы. Аккуратное и постоянно обновляющееся представление окружающей среды позволит выводить изображение поверх любой поверхности, вставлять в сцену нарисованные трёхмерные объекты или даже персонажей.
В общем, возможности можно перечислять и перечислять. Вопрос только в том, воспользуется ли чем-нибудь из этого Microsoft в ближайшем будущем. Будем надеяться, что если воспользуется, то не для очередного Kinect Fun Labs. Ну или хотя бы не только для него.