В ноябре 2010 года Microsoft впервые предложила в качестве дополнения к игровой платформе Xbox сенсорное устройство Kinect, которое могло отслеживать движения двух активных игроков, сканируя при этом движения примерно 20 суставов. Если один игрок становился перед другим, устройство самостоятельно оценивало скрытые от него движения второго игрока и сразу же находило все его суставы, как только он вновь оказывался на виду. Kinect мог также распознавать лица, голоса и жесты в самых разных условиях освещенности и при разном уровне шума. Достигалось это с помощью цифровых сенсоров, внешнего микрофона (способного находить источник звука лучше, чем встроенный микрофон), стандартной видеокамеры и системы глубинного восприятия, умевшей одновременно и излучать, и принимать сигнал в инфракрасном спектре. Несколько встроенных процессоров и огромное количество проприетарных программ позволяли конвертировать данные, поступавшие с этих сенсоров, в информацию, которую могли бы использовать разработчики игр.[81] На момент выхода продукта на рынок все эти возможности были упакованы в устройство высотой 10 см и шириной менее 30 см, которое продавалось в рознице за 149,99 доллара.
В течение 60 дней после выпуска продукта было продано более 8 миллионов устройств Kinect (намного больше, чем айфонов или айпадов). В настоящее время Kinect удерживает рекорд «Книги Гиннеса» как самое быстро продаваемое компьютерное устройство на потребительском рынке.[82] Поначалу семейство Kinect позволяло играть в дартс, заниматься физическими упражнениями, гулять по виртуальным улицам и произносить заклинания на манер Гарри Поттера.[83] Однако система была способна на большее. В августе 2011 года на конференции SIGGRAPH (специальной группы по графическим и интерактивным методам Ассоциации вычислительных устройств) в Ванкувере команда сотрудников Microsoft и ученых использовала Kinect, чтобы наконец-то решить одну из самых сложных проблем в области роботехники.
SIGGRAPH – самый крупный и престижный конгресс в области теории и практики цифровой графики. Его посещают исследователи, разработчики игр, журналисты, предприниматели и другие профессионалы, интересующиеся этой темой. Словом, это самое подходящее место для того, чтобы компания Microsoft могла представить здесь то, что сайт Creators Project назвал «самовзломом, который может изменить буквально все»[84].[85] Речь идет о Kinect Fusion, проекте, в котором Kinect использовался для решения проблемы SLAM.
В видеофильме, показанном на SIGGRAPH-2011, демонстратор поднимал Kinect и водил им вдоль стен типичного кабинета – со стульями, растением в горшке, настольным компьютером и монитором.[86] В ходе этого процесса видео разделялось на несколько экранов, на которых было показано все, что способен почувствовать Kinect. Сразу же становится ясно, что если Kinect и не полностью решает проблему SLAM для комнаты, то достаточно близок к этому. В режиме реального времени Kinect создает трехмерную карту комнаты и всех объектов в ней, включая сотрудников. Он распознает слово DELL, выдавленное в пластике на задней панели компьютерного монитора, хотя эти буквы не раскрашены и имеют глубину всего 1 мм. Устройство знает, где именно в комнате оно находится, и даже способно рассчитать, как будут отскакивать виртуальные шарики для пинг-понга, если их бросить в комнату сверху. В статье технологического блога Engadget, написанной после проведения SIGGRAPH, говорилось: «Kinect сделал трехмерное восприятие достоянием мейнстрима и более того: из обычного потребительского продукта сотворили нечто такое, от чего просто крышу срывает».[87]
В июне 2011 года, незадолго до SIGGRAPH, Microsoft выпустила комплект разработки программного обеспечения для Kinect, дав разработчикам все необходимое, чтобы они могли писать программы под PC, с помощью которых можно было бы управлять устройством. После конференции возник огромный интерес к использованию Kinect для целей SLAM. Многие команды, занимавшиеся робототехникой и исследованиями искусственного интеллекта, загрузили себе SDK и принялись за работу.
Менее чем через год команда ирландских и американских исследователей во главе с нашим коллегой Джоном Леонардом из лаборатории компьютерных наук и искусственного интеллекта МТИ анонсировала Kintinuous – «пространственно расширенную» версию Kinect. С помощью Kintinuous пользователи могли использовать Kinect для маппинга крупных объектов, например домов и даже улиц и площадей (которые команда сканировала, высовывая Kinect из открытого окна машины во время ночных поездок по городу). В конце статьи, описывающей их работу, создатели Kintinuous обещали: «В будущем мы расширим систему, чтобы она могла в полной мере осуществлять SLAM-подход».[88] Мы думаем, что нам не придется долго ждать очередного известия об успехе от этой группы. В руках способных инженеров экспоненциальная сила закона Мура со временем позволяет решать самые сложные проблемы.
81
Dylan McGrath, “Teardown: Kinect has Processor After All”, EE Times, 15 ноября 2010 г., http://www.eetimes.com/electronics-news/4210757/Teardown – kinecthas-processor-after-all.
82
“Microsoft Kinect Sales Top 10 million, Set New Guinness World Record”, Mashable, 9 марта 2011 г., http://mashable.com/2011/03/09/kinect-10-million/ (по состоянию на 26 июня 2013 г.).
83
“Xbox Kinect’s Game launch lineup revealed”, Mashable, 18 октября 2010 г., http://mashable.com/2010/10/18/kinect-launch-games/ (по состоянию на 26 июня 2013 г.).
84
“KinectFusion: The Self-hack that Could Change Everything”, The Creators Project, 18 августа 2011 г., http://thecreatorsproject.vice.com/blog/kinectfusion-the-selfhack-that-could-change-everything (по состоянию на 26 июня 2013 г.).
85
В данном контексте под словом «взлом» (
86
Sarah Kessler, “KinectFusion HQ – Microsoft Research”, http://research.microsoft.com/apps/video/dl.aspx?id=152815 (по состоянию на 26 июня 2013 г.).
87
“Microsoft’sKinectFusionResearch Project offers Real-time 3D Reconstruction, Wild at Possibilities”, Engadget, 9 августа 2011 г., http://www.engadget.com/2011/08/09/microsofts-kinectfusion-research-project-offers-real-time-3d-re/ (по состоянию на 26 июня 2013 г.).
88
Thomas Whelan et al., “Kintinuous: Spatially Extended KinectFusion”, n. d., http://dspace.mit.edu/bitstream/handle/1721.1/71756/mIT-cSAIl-Tr-2012–020.pdf?sequence=1.