Kinect что такое – Kinect — Wikipedia

беспроводной контроллер нового поколения — Ferra.ru

Но прежде чем перейти к рассказу о том, как устроен Kinect, скажем вкратце, что в нем особенного . Есть ведь и Nintendo Motion (контроллер для Wii), и PlayStation Move (PS 3). Ключевое отличие «мелкомягкого» устройства — в том, что при игре не требуется вообще ничего держать в руках, никаких «волшебных посохов с набалдашником», ни-че-го. Полная свобода движений и действий — ограниченная, правда, стенами комнаты.

Мы дергаем руками и дрыгаем ногами

Для игры потребуется подключить датчики Kinect к Xbox 360, поставить устройство в зоне прямой видимости, и пройти несложную процедуру калибровки. Камера без труда обнаружит живого человека перед телевизором и создаст его аватар (и, кстати, распознает пол).

Именно на этом этапе вы столкнетесь с единственным ограничением, которое новый контроллер накладывает на игроков. Вам потребуется свободное, не сковывающее движений пространство — от 2 до 3 метров от экрана ТВ, шириной около 1,5—2 метров. Это не очень удобно, так как раньше, с геймпадом в руках, мы могли находиться где угодно, в помещении любого размера (и Microsoft не заставлял нас наводить порядок в комнате)!

С этого момента все управление, включая навигацию в меню, будет «завязано» на ваши жесты и слова. Да-да, Kinect распознает фразы, правда, самые простейшие, и пока только на английском и японском языках. Жители Западной Европы могут надеяться, что в ближайшее время выйдут языковые пакеты и для их стран, а вот россиянам придется подождать. Впрочем, не знающие английского в любой момент могут взять в руки классический джойпад и отдавать команды по старинке. Признаемся: иногда это удобнее, чем разговаривать «с самим собою» вслух, совершая при этом нелепые телодвижения.

Как работает Kinect?

Итак, мы движемся перед экраном, Kinect считывает информацию, а Xbox 360 обрабатывает ее, затрачивая на это около 10-15% процессорной мощности. Какие же данные передаются из черной глянцевой коробочки на консоль?

www.ferra.ru

Xbox One без Kinect: что все это значит

Вечером 13 мая компания Microsoft сделала важное объявление: ее новая игровая система Xbox One не будет снабжаться сенсором Kinect в стандартной комплектации. В свою очередь, стоимость консоли с 9 июня снизится на $100 и составит $399 (в России консоль поступит в продажу осенью, цена не объявлена). Посмеявшись над гуляющими по интернету шуточками, члены редакции Disgusting Men и приглашенные гости пытаются понять, что это значит для Microsoft, самой Xbox и игровой индустрии в целом.

Петр Сальников В том, что Xbox One теперь будет продаваться без Kinect, свою роль сыграла и аудитория. Время показало, что геймеры — настолько застойный народ, что любая новая технология, тем более делающая желаемое приобретение дороже, принимается если не в штыки, то с определенной долей скепсиса. Учитывая, каким прогрессивным эта публика привыкла  считать свое хобби – это парадокс.

Еще больший парадокс вот в чем: принято жаловаться на одинаковость ежегодных Call of Duty, Assassin’s Creed, Need for Speed; на то, что новые консоли мало чем отличаются от старых, — и при этом воротить нос от всех свежих идей. Хардкорная публика настолько закостенела в этом спиралеобразном движении, что хочет, на самом деле, только одного: чтобы бесплатные игры раз в месяц, скидки и акции. А на какой именно консоли — теперь уже и не очень важно. Платформодержатели тоже стали частью этой карусели сумасшедших смеющихся коней. И поэтому у Sony на PlayStation 4 многопользовательский режим стал частью подписки PS Plus, как в Xbox Live. Поэтому теперь Kinect 2.0 продается отдельно от Xbox One, как PlayStation Camera.

Я не берусь заступаться за Microsoft, которая за последние двое суток сумела отвлечь внимание диванных экспертов даже от Украины. Но это очень и очень печальная тенденция: технология, от которой у меня сперло дыхание в ходе прошлогодней презентации, оказалась невостребованной. Сейчас мне остается только порадоваться тому, что Oculus успела отдаться Facebook. Так у этой компании появился хороший тыл, не имеющий ничего общего с аудиторией, запутавшейся в собственных желаниях, избалованной издателями и платформодержателями, которые вечно идут у нее на поводу. И, чуть отклонившись от курса, получают по шапке. Такими темпами в этой же мусорной корзине прекрасных, но не востребованных технологий может оказаться и Project Morpheus — штука тоже удивительная, но, как и Kinect, Move и другая нишевая периферия, предназначенная далеко не для всякой игры.

Что касается непосредственно шага с отказом от принудительной упаковки Kinect в коробку с консолью, то это же здорово, радуйтесь. Теперь устройство стоит на сотню баксов меньше. Что до тех, кто поторопился и уже купил приставку — ну, вы же хотели получить Xbox One прямо сейчас. Если бы вы дождались официального российского старта, то, может, теперь не чувствовали себя обманутыми?

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

Максим Самойленко Приход нового CEO в Microsoft, возможно, не сказался непосредственно на принятии некоторых решений, назревавших давно, но так совпало, что как только Сатья Наделла приступил к работе, Microsoft начала делать правильные вещи – и это очень вдохновляет. В отличие от Стива Баллмера, который очевидно пересидел в кресле главы компании и иногда походил на корпоративного упрямца, действовавшего чуть ли не вопреки интересам Microsoft, Наделла сохраняет холодную голову и мыслит исключительно категориями бизнеса. Чего стоит только тот факт, что свое первое публичное выступление он посвятил анонсу MS Office для iPad – при Баллмере это невозможно было представить.

Сатья Наделла

Позавчерашние новости про то, что Microsoft выпустит версию Xbox One без Kinect и на $100 дешевле, укладываются в ту же парадигму: да, очень болезненно признавать собственные ошибки и расписываться в полном PR-бессилии (Xbox One изначально создан для работы с Kinect и неразрывно с ним связан, бла-бла-бла), но будет еще хуже, если не посмотреть на ситуацию трезво и не попытаться исправить ситуацию. А она до сего момента складывалась не то чтобы плохо, но очевидно не так, как планировали в Редмонде: Xbox One собрал противоречивую прессу, продался примерно на треть меньшим количеством экземпляров, чем PS4, и имеет не самую лучшую репутацию среди разработчиков. А любовь разработчиков – самое главное для платформодержателя, и вчера Microsoft сделала очень важный шаг, чтобы ее укрепить. Во-первых, теперь создателям игр для Xbox One не придется обязательно работать над поддержкой далеко не всем нужной технологии Kinekt, что является большим облегчением. Во-вторых, уцененная Xbox One наверняка начнет продаваться бодрее, а увеличивающаяся install base – главная причина для поддержки платформы авторами игр.

В общем, в последние месяцы Microsoft исключительно радует и посылает сигналы, что отныне в компании решения принимают люди, дружащие с головой – а это важный месседж для всей индустрии. И совершенно не важно, какую роль во всем этом на данный момент играет лично Сатья Наделла.

Вячеслав Мостицкий На эту новость можно посмотреть с двух сторон: с точки зрения бизнеса и потребителя. Если первое, то все хорошо, новый глава Microsoft Сатья Наделла большой молодец, Xbox One только что получила нужное преимущество, облегчило жизнь некоторым разработчикам. Поскольку мы говорим о развлекательном продукте далеко не премиум-класса, то снижение цены — очень важный и сильный пункт. А значительная часть новых владельцев Xbox One, возможно, и не заметят пропажи какого-то там устройства.

Бизнес, прибыль и доля рынка — это замечательно. Но есть простые игроки. Об этом среди экспертов говорить не принято, но давайте не будем забывать, ради чего все это делается. Ради того, чтобы люди могли весело проводить время, развлекаться и получать удовольствие. И в этом процессе очень важны доверительные и прозрачные отношения между компанией-производителем и потребителем. Важно взаимное уважение — вещь, казалось бы, тривиальная, но стыдливо замалчиваемая в нескончаемом обсуждении ревеню, ROI и стоимости привлечения/удержания пользователей. Но так получилось, что за последние годы Microsoft уже несколько раз сильно подвела своих фанатов: достойных Kinect-игр для кор-аудитории так и не вышло, аксессуар заброшен в своем игровом направлении; (хороших) эксклюзивных проектов для Xbox 360 в последние годы было до обидного мало; запущенная будто назло программа Games with Gold предлагает очень старые и неинтересные игры; поддержка инди-разработчиков становится все хуже и хуже. В сравнение сразу приходит лучший друг компании Microsoft, гигант Electronic Arts, чью продукцию я перестал покупать из-за наплевательского отношения к пользователям.

В то же время Sony, как бы наивно и идеалистически это ни звучало, слушает свою аудиторию — такое ощущение, что они даже NeoGAF, Reddit и Twitter постоянно прочесывают в поисках отзывов про PS4. Президент Sony Worldwide Studios Шюхей Йошида постоянно отвечает на вопросы обычных игроков в Twitter — он не только информирует, но и создает, кирпичик за кирпичиком, имидж PlayStation и закладывает мостик между компанией и пользователями. Простота архитектуры для разработчиков, качественная поддержка инди, опциональная, а не принудительная периферия, ставки как на максимально широкие ААА-проекты, так и на экспериментальные проекты — все эти вещи насколько же «бизнесовые», насколько и «геймерские». Иногда может показаться, что игроки (не самая прогрессивная в своем большинстве прослойка человечества) чуть ли не диктуют свою волю платформодержателю — хотя это, конечно, ни разу не так. Но  впечатления складываются примерно такие, а это говорит об очень правильном взаимодействии с аудиторией и успешной и своевременной корректировке стратегии развития как сервисов и функционала, так и партнерских сделок и утверждении разрабатываемых внутри игр. Прибыль и количество проданных SKU — это хорошо, доверие аудитории — еще лучше, а если эти два вектора идут параллельно вверх, то вообще замечательно. А пока ситуация вокруг Microsoft складывается такая, что доверять ей свои деньги и, соответственно, время не очень хочется.

То, что аналитики называют сменой стратегии, игроки воспринимают как обман. И обман этот усугубляется крайне неумелой коммуникацией Microsoft с потребителями. Kinect — неотъемлемая часть Xbox One? Оказывается, нет. Xbox One изменит ваше представление о том, как вы играете и взаимодействуете с консолью? Нет. Xbox One наконец-то получит Kinect-based игры, привлекательные для кор-аудитории? Теперь тоже нет. В «Твиттере» я читаю много западных разработчиков, и среди них есть достаточное количество тех, кто этой новости откровенно расстроился – они

хотели сделать хорошую игру для Kinect, но теперь потеряли все гарантии, которые им обещала Microsoft.

В ролике, посвященном снижению цены, Юсуф Мехди перечисляет «замечательные функции Xbox One, которые будут доступны покупателям версии без Kinect»: режим Snap, мгновенное переключение между приложениями и подключение TV через HDMI. Все. Достаточно ли этого, чтобы говорить о будущем электронных развлечений, а не просто о хорошей игровой консоли?

Александр Каныгин Не помню сейчас уже точно где, но, кажется, это был «Первый канал», как-то показывали сюжет о сумасшедших бабушках у подъезда, которые не пускали в дом растерянного электрика. В съехавших набок капорах и платках, с раскрасневшимися лицами они толкали парня, который стоял в общем-то в стороне и не пытался никуда проникнуть, и громко кричали: «Нам не нужен никакой ваш вайфай!». Ситуация была комичная и абсурдная одновременно: позже выяснилось, что старушки агрессивно нападали на прокладчика интернет-кабеля, потому что понятия не имели, что такое wi-fi и, само собой, он им был «в их доме» не нужен.

Так вот, из-за какого-то пространственно-временного сдвига аудитория гаджетов, программного обеспечения и игр, то есть, вроде бы, самые продвинутые в техническом плане люди, стремительно мутирует в вышеупомянутых бабок во время анонса любой новинки. Анонс Nintendo Wii: «Управлять движениями? Что за бред,? Как так можно?». Планшета: «Без кнооооопок? Как? Да кто это купит?». На посещаемом сайте появился новый раздел/программа/автор: «Хрень! До этого не было, и все было хорошо!».

Перечислять можно вечно, такая реакция встречает абсолютно любое громкое событие. Эти же люди, кстати, очень любят потом распушать катышки на свитерах, браться за подтяжки и роптить: «Стагнация! Инноваций ноль! Battlefield 4 ничем не отличается от Battlefield 3. За что я плачу деньги?». Ну как вам сказать, родные: а зачем инновации в темном подъезде, где уютно пахнет кошками, а на окнах раскинулись фикусы в горшках? Там любят игровые журналы с железобетонными рамками рубрик, фильмы с цифрами после названия, игры про войнушку и понятные приставки без умных камер и подключения к интернету. Привет!

Я не спорю, не все такие. Так что всем остальным: «Оставайтесь голодными. Оставайтесь безрассудными».

Дмитрий Бурковский Давайте совсем просто: прайс-кат — это ВСЕГДА хорошо для продажи железа. Sony когда-то победила SEGA и вышвырнула последнюю из игрового бизнеса, просто произнеся на двух Е3-конференция последовательно «$299» и «$199» (кто не знает этой истории, почитайте – очень поучительно, про ценовую войну и информационную разведку). Другое дело, что сейчас Microsoft А) в роли догоняющего и Б) мне совсем не нравится отказ от обязательного Кинекта. Совсем. Поясню почему.

Вы знаете какой-нибудь успешный видеоигровой аксессуар, который стал популярным, но при этом не был обязательным при покупке приставки? Я знаю только один –DualShock. Потому что оригинальный геймпад у первой PlayStation был лишен аналоговых стиков. Но до релиза PS2 каждая игра на PlayStation должна была в обязательном порядке поддерживать старый геймпад, не позволяя сделать аналоговое управление обязательной частью геймплея. Образно, в этом и есть суть проблемы. Отказ от включения Кинекта в комплект поставки это с высокой вероятностью тихий закат и забвение этой технологии – тогда как наличие его в каждой приставке на старте Xbox One вселяло определенные надежды на то, что Microsoft хочет всерьез сменить парадигму управления в классических играх, добавив туда хотя бы тоже голосовое управление.

Инновации не возможны без ломания традиций. Игры бы перестали поддерживать Wii Remote, если бы он не был обязательным и единственно возможным органом управления. У самой Microsoft есть отличный пример – отсутствие жесткого диска в обязательной конфигурации Xbox 360 тупо усложнило разработку игр под нее, особенно на последних годах жизненного цикла консоли.

Оригинальный Kinect, PS Move, PS Eye и т.п. не создали вала продуктов, которые бы оправдывали их покупку. Самый успешный игровой аксессуар последних 10 лет – WiiBalance Board – продалась тиражом более 60 миллионов экземпляров (т.е. в десять раз больше, чем Xbox One и PS4 на данный момент), но под нее так и не вышло никакого столь же значимого софта кроме комплектного Wii Fit. А планы у Nintendo на это были, вы просто поверьте. Разработчики игр в современном мире — это довольно прагматичные люди: они либо не верят в успех необязательного аксессуара, либо не имеют ресурсов и возможностей тратить время на его поддержку.
То есть, если стратегия MS сейчас заключается в том, чтобы догнать Sony по цене, отказавшись от фокуса на не-игровой части Xbox One и выставив в качестве главного аргумента Titanfall, то Microsoftпросто потеряла год. Очень и очень жаль.

disgustingmen.com

что такое Kinect для Xbox 360. срочно.

игровой «контроллер без контроллера» для Xbox 360. Разработан фирмой Microsoft. Основанный на добавлении периферийного устройства к игровой приставке Xbox 360, Kinect позволяет пользователю взаимодействовать с ней без помощи игрового контроллера через устные команды [2], позы тела и показываемые объекты или рисунки. Цель проекта — увеличить число пользователей Xbox 360. Kinect был впервые представлен 1 июня 2009 г. на выставке E³. В тот же день фирма Майкрософт разослала разработчикам программ более 1000 комплектов средств разработки Kinect. Вышел 4 ноября 2010 года в США и 10 ноября в Европе. Майкрософт продемонстрировал несколько применений технологии на E³ выставке 2009 г [3]. Рикошет — Breakout-подобная игра, в которой используется всё тело для отбивания мячей разбивающих блоки. Paint Party — в которой игрок может разбрасывать краску на стену. Игрок может выбирать цвет голосом и использовать позы тела для создания трафаретов. Kinect — это горизонтально расположенная коробка на небольшом круглом основании, которую помещают выше или ниже ]][4]. Размеры — примерно 23 см в длину и 4 см в высоту. Состоит из двух сенсоров глубины, цветной видеокамеры и микрофонной решетки. Проприетарное программное обеспечение осуществляет полное 3-х мерное распознавание движений тела, мимики лица и голоса. Микрофонная решетка позволяет Xbox 360 производить локализацию источника звука и подавление шумов, что дает возможность говорить без наушников и микрофона Xbox Live[5]. Это ИК изображение, показаное лазерной сеткой Kinect, используемой для расчета глубины Карта глубины; используется для отображения цветовой градиент от белого (ближе) до синего (дальше) Датчик глубины состоит из инфракрасного проектора, объединенного с монохромной КМОП-матрицей, что позволяет датчику Kinect получать трёхмерное изображение при любом естественном освещении [5]. Диапазон глубины и программа проекта позволяет автоматически калибровать датчик с учётом условий игры и окружающих условий, например мебели, находящейся в комнате [6]. Судя по недавнему патенту Microsoft, Kinect будет способен распознавать язык жестов. Пока патент касается только ASL, но, возможно, другие языки будут добавлены позже. Ожидается, что это расширит аудиторию пользователей и поможет обучать немых языку жестов. [7] Однако, согласно официальному комментарию [8], эта особенность не будет включена в первую версию Kinect из-за сниженного в угоду цене разрешения камер. С другой стороны, Microsoft не отказывается от использования патента — но будет ли это улучшенная версия Kinect или отдельный продукт, пока неизвестно.

штука, где в играх когда ты двигаешься на мониторе телике в игре двигается тот или иной предмет! тоесть боксер игра, то руками ты машешь и на мониторе тоже самое !

touch.otvet.mail.ru

Kinect Sports — Википедия. Что такое Kinect Sports

Kinect Sports — это спортивная видео-игра, разработанная компанией Rare и выпущенная Microsoft Game Studios для Xbox 360 и Xbox one. Игра использует Kinect[1]. Была выпущена в Северной Америке, Европе, Австралии и Японии в ноябре 2010 года, одновременно со стартом продаж сенсора Kinect.

Игра представляет собой совокупность шести спортивных симуляторов и восьми мини-игр. В спортивные симуляторы входят: Боулинг, Бокс, Бег, Настольный теннис, Пляжный волейбол и футбол. Стоя перед сенсором Kinect, игроки соревнуются имитируя действия из реальной жизни.

Игра получила положительные отзывы от критиков и была продана тиражом более 3-х миллионов экземпляров (по состоянию на апрель 2011 года). Сиквел к игре, Kinect Sports: Второй сезон, разработанный BigPark и Rare, был выпущен в октябре 2011 года[2]. Вместе с продолжением Kinect Sports, 18 сентября 2012 года была выпущена версия Kinect Sports: Ultimate Collection объединяющая игры, представленные в Kinect Sports и Kinect Sports: Второй сезон с дополнительным бонусным контентом.

Геймплей

Все шесть видов спорта поддерживают мультиплеер, как локально, так и онлайн. Игроки представлены в игре их аватаром Xbox Live. С помощью сенсора Kinect движения тела и жесты игрока отслеживаются. Благодаря этому нет необходимости использовать игровой контроллер.

Доступные игры

Боулинг представлен в виде трёх полос (независимо от числа игроков, бросок возможно сделать только на одной полосе). Игрокам необходимо по очереди бросить шар с целью сбить все кегли. В качестве мини-игр в боулинге представлены:

  • сбить заранее выставленные комбинации кеглей с одного удара
  • сбить как можно большее количество кеглей за определённое время

Бокс — необходимо наносить противнику удары, сократив его полосу жизни до минимума. При игре с компьютером противник может упасть либо продолжить битву. При игре с партнером, побеждённый имеет возможность за счёт несложной мини-игры получить дополнительную энергию на продолжение битвы.

Лёгкая атлетика. Пять соревнований объединённых в единый цикл. Необходимо пробежать спринт, метнуть копье, прыгнуть в длину, метнуть диск и осуществить бег с препятствиями.

Настольный теннис. Управляя персонажем, необходимо с помощью комбинаций подкрутки или сильного удара заставить противника совершить ошибку и пропустить мячик. Игра идёт до 11 очков, в случае если у проигравшего 10 очков, назначается дополнительный раунд с целью, чтобы разница между победителем и побеждённым была не менее двух очков.

Футбол. Возможно сыграть как игроком на поле так и вратарём. Мини-игры в футбол:

  • Забросить мяч в ворота в определённую точку.
  • Отбить мяч, будучи вратарём.

Пляжный волейбол. Игрок с участием компьютера в качестве помощника или второго игрока должен забить 3 мяча за сетку противника. Мини-игры в пляжный волейбол:

  • Стараться избегать летящих предметов.
  • Ловить мяч определёнными частями тела.

Обзоры

Игра получила положительные отзывы. IGN дал 8/10[3], GameSpot дал 7,5/10[4] и X-Play дал 4/5 баллов.

Кроме того, были представлены следующие рейтинги:

  • Gamepro — 70 %
  • Xbox Dynasty — 90 %
  • 4Players — 70 %
  • Metacritic — 72 %

Награды

Kinect Sports выиграла награду «Семейная игра года» от BAFTA[5] и была номинирована на 5 других наград, включая the Golden Joystick Award for Best Sports Game Award of 2011[6].

Примечания

Ссылки

   Тематические сайты

wiki.sc

Как работает Kinect Fusion – Мои IT-заметки

Описание алгоритма Kinect Fusion


На основе анализа кадров глубины, получаемых с сенсора Kinect (или аналогов) формируется детализированное 3D-представление обозреваемой сцены. Данные обрабатываются в реальном режиме. Высокая скорость и детализация достигается за счет использования для всех расчетов GPU, а также новаторским подходом к применению уже известных алгоритмов. В открытой реализации данного проекта в рамках библиотеке PCL поддержимаются лишь два последних поколения видео-карт (с расширенным набором инструкций и большим числом ядер) – архитектуры Fermi и Kepler (по спецификации NVidia – архитектуры 20 и 30 соответственно).

В память видео-карты помещается куб состоящий из множества вокселей – для эффективной обработки – данные куба хранятся в одном последовательном блоке памяти. В kinfu каждая его сторона – 512 вокселей (о них можно думать как об аналоге пикселя в 3D-пространстве). Нашу будущую сцену мы будем строить внутри этого куба. Перед началом работы указываем размеры сцены, которую будем “вписывать” в этот куб – по умолчанию это 3 метра. В каждой ячейке-вокселя куба будем хранить данные о текущем представлении сцены, и, по мере работы алгортма, постоянно обновлять эти данные. Основной цикл работы алгоритма включает в себя следующие шаги:

  • преобразование показаний камеры глубины в трехмерное облако точек и нормалей к ним
  • вычисление матрицы преобразования между двумя облаками точек, полученных с камеры глубины на текущей и предыдущей итерации, на основе этого преобразования определяется смещение камеры в глобальном пространстве, используя алгоритм ICP – Iterative Closet Point.
  • обновление сцены – на основе полученных данных мы формируем новые значения функции TSDF, которая и содержит текущее представление о сцене
  • используем значения функции TSDF для рендеринга (визуализации) сцены а также получаем сглаженные значения облака точек и нормалей к ним.

Судя по отзывам на www.pcl-developers.org – при известном желании возможно использовать топовые карты предыдущих поколений (архитектуры 13). В более старых моделях видео-карт отсутствует поддержка ряда операций над числами с плавающей точкой, что делает невозможным компиляцию. Эмуляция данных операций – теоретически возможна – но даже при условии успешной имплементации таковых, скорость обработки будет не удовлетворительной.

Очевидное ограничение на размер сцены присутствует в модуле KinFu. Расширение алгоритма Kinect Fusion – Kintinuous предлагает по мере приближения камеры к границам куба – выгружать часть сцены из памяти видео-карты во внутренее представление модели “всего мира”. Эта идея нашла свое отражение в модуле KinFu Large Scale.

А теперь все тоже самое, но по шагам:

Важный для понимания момент – осознать различие между координатным пространством глобальным (всей сцены) и текущим координатным пространством камеры (на основе карты глубины с текущего фрейма глубины). Глобальное пространство строится начиная с самого первого кадра глубины, на основе матрицы смещения 6DOF – 6 степеней свободы и матрицы калибровки камеры.

I Этап – подготовительный

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

II Этап – Бесконечный цикл работы ядра алгоритма Kinect Fusion, состоящий из четырех основных шагов

1) преобразование показаний камеры глубины

Каждый кадр глубины перед обработкой проходит фильтрацию (билатеральным фильтром) – для сглаживания. Преобразуем карту глубины в набор из 3D-вершин – (X,Y,Z) – облако точек (в координатном пространстве камеры – НЕ глобальном). Банально каждая точка из матрицы глубины перемножается с матрицей обратной для матрицы камеры на отдельном ядре GPU. Вычисляем нормали к ним (направление перпендикуляров к плоскости) используя данные о соседних с текущей вершинах.

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

Если этот шаг первый – инициируем глобальное координатное пространство начальными данными. Все следующие замеры карты глубины будем конвертировать к этим, стартовым показателям. Определяем положение камеры относительно сцены.

2) Определение смещения камеры в пространстве относительно предыдущего фрейма.

Для этого используем ICP – Iterative Closet Point алгоритм, обрабатывая два облака точек – с текущего и предыдущего кадров глубины, а также знание о предыдущей позиции камеры в глобальном пространстве. Здесь надо принять во внимание используемое упрощение – расхождение между двумя фреймами глубины будут не значительны из-за особенностей кинекта. Это позволяет использовать в ICP не облака точек, а их проективную проекцию на матрицу глубины (point-to-plane вместо point-to-point) – выгода очевидна – меньше данных для обработки – быстрее.
Алгоритм прост и распаралеливается на GPU:

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

В качестве результата на этом шаге мы получаем матрицу преобразования, характеризующую положение камеры в глобальном пространстве. Эта матрица аккумулирует в себе данные полученные не только с текущей карты глубины, но и ее масштабированных вариаций, полученных на первом шаге – т.е. ICP пробегается по всем вариантам матрицы глубины и аккумулирует данные в единой матрице преобразования. В реализации KinFu – это отдельно матрицы сдвига и вектор поворота.

3) интеграция полученных данных в общую сцену

Зная положение камеры в глобальном пространстве мы можем перевести показания камеры с текущего кадра глубины в нашу общую “картину мира” представляемую в Kinect Fusion в виде функции особого вида – TSDF.

Перед этим этапом производится проверка – изменила ли камера свое положение по сравнению с предыдущими замерами (небольшие сдвиги не принимаются во внимание – уровень сдвига регулируется задаваемым граничным значением) – на основе метода Родригеса и матриц преобразования на текущем и предыдущем шаге. Если камера переместилась в пространстве значительно – запускается следующий алгоритм:

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

В качестве результата имеем обновленное представление глобальной сцены в виде TSDF функции. Каждый воксель содержит значение этой функции и его вес – вероятность. Значение функции в каждом вокселе – усредненное (на самом деле – скользящее среднее) значение дельты расстояний до этой точки за все время работы. Дельта расстояний вычисляется между фактическими данными карты глубины и полученными математически, на основе координат вершины=вокселя в трехмерном пространстве и центра камеры, с помощью данных калибровочной матрицы. Знак значения функции (+ или -) характеризует расположение вокселя относительно поверхности – т.е. находится ли данный воксель перед обозреваемой поверхностью или за ней. Вес в каждом вокселе отображает вероятность этого значения функции – т.е. если из 100 полученных кадров глубины мы только один раз отметили в заданном вокселе некоторую поверхность – скорее всего это результат ошибки или какой-то динамики в кадре, и вероятность наличия там реальной поверхности мала.

4) восстановление общей сцены

Для рендеринга используется метод бросания лучей “ray casting“. Сцена строится на основе замеров пересечения лучей с визуализируемой поверхностью. Каждый луч – направление взгляда с определенной точки на воксельный куб. Каждое ядро GPU занимается поиском вокселя, сквозь который проходит луч, в котором, при этом, значения TSDF функции – меняет знак – т.е. там находится некоторая поверхность. Освещение сцены (тени, отражения) вычисляются на основе следующих, дополнительных проходов луча. Для теней – инициируется еще один луч направленный от точки поверхности к источнику свету – в случае пересечения луча с поверхностью – воксель, находящийся в точке нового пересечения затеняется. Для отражений направления луча изменяется на основе вычисленного значения нормали к найденной точке поверхности.

Данные полученные на этапе raycasting’a могут быть использованы для более точного позиционирования камеры в глобальном пространстве. Вычисляемые значения нормалей, а так же обратная проекция облака точек на карту глубины полученные на этапе бросания лучей на модель (а чем не аналог работы сенсора кинекта?) получаются более сглажеными и, за счет интеграции с общим представлением модели – более полными.

Размер вокселя (в проекции на реальное пространство), размер куба в вокселях,  граничное значения для нормализации TSDF функции – все это те параметры, которые влияет на работу фильтров и, как следствие, на детализированность сцены.

Kinect Fusion и бесконечная сцена: Kintinuous, KinFu Large Scale и их некоторые различия

Из описания алгоритма очевидно что размер сцены ограничен размерами воксельного куба, а детализация – заданными размерами проецируемой области (KinFu – 3 метра). Для преодаления ограничений заложенных в алгоритм Kinect Fusion – в настоящее время существует два независимых расширения алгоритма: Kintinuous и KinFu Large Scale

Во время инициализации работы алгоритма – начальная позиция камеры рассчитывается как центр этого куба. Оба расширения предлагают задать некоторое граничное значение (расстояние от центра куба до текущего положения камеры в этом кубе), при достижении которого производится сдвиг сцены, хранимой в кубе. В KinFu Large Scale можно задать процент перекрытия двух соседних кубов – по умолчанию 2.5% от размера куба (в Kintinuous – 2 вокселя). Память видеокарты, в которой хранится куб – трехмерный массив из вокселей – трактуется как циклический буфер, таким образом модификация оригинального алгоритма KinFu сводится к дополнительным изменениям индексации этого массива во время обновления значений TSDF функции, описывающей сцену и этапа “бросания лучей”, для вычисления сдвига и поворота на основе полученных данных.

UPDATE от 22.08.2012 не верно был описан принцип использования FOVIS в Kintinuous
Дополнительно, в Kintinuous для работы со сценой содержащей обширные гладкие участки (стены/шкафы) с которыми алгоритм ICP, используемый для позиционирования камеры в пространстве, справлялся не лучшим образом – наблюдается частые потери в пространстве и, как следствие, “наслоение” карт глубины и смазанная сцена. В Kintinuous же карты глубины подаются в одну из реализаций методов визуальной одометрии – FOVIS, предоставляющую более стабильное определение местоположения камеры и минимизирующее число Reset’ов – ситуаций когда камера заплутается в пространстве. Причем используется какая-то реализация FOVIS на CPU.

Данные о сцене, которые выходят из области анализа (не попадают в сдвинутый куб) выгружаются в промежуточное представление. В Kintinuous это представление – pose-graph. Каждое новое положение (узел графа) содержит соответствующую поверхность, полученную для этого участка сцены, а также данные о положении текущего куба в рамках глобальной системы координат,и матрица поворота и вектор сдвига. В Kinfu Large Scale для этого используется особая структура, созданная на основе облака точек.

После этапа бросания лучей, облако точек, представляющее собой изученную поверхность, подвергается триангуляции (greedy mesh triangulation). В KinFu Large Scale для триангуляции используется алгоритм движущихся кубиков (marching cubes). При запросе накопленные данные интегрируются в общую модель глобальной сцены.

Существующие ограничения KinFu Large Scale: не терпит резких перемещений камеры, не всегда корректно производится вычисление нового положения камеры во время сдвига куба, работает не стабильно. Зато уже сейчас есть масса информации для экспериментов.

Создатели Kintinuous обещают в скором времени выложить свой код в открытй доступ, в состав PCL.

Используемые материалы

В основе статьи лежит анализ брошюр от Microsoft, а также материалы проекта PCL, в особенности, исходный код модулей KinFu и KinFu Large Scene из trunk, предлагающий свободную реализацию Kinect Fusion, а также вспомогательные работы по используемым алгоритмам.
KinectFusion: Real-Time Dense Surface Mapping and Tracking
KinectFusion: Real-time 3D Reconstruction and Interaction Using a Moving Depth Camera

форумы библиотеки PCL – кладезь знаний о внутренностях реализации KinFu и не только:
www.pcl-developers.org
www.pcl-users.org

в качестве возможных вариаций для применения:
робот, использующий данный метод для локализации себя на неизвестной местности и составлении карты этой местности: http://code.google.com/p/ic2020/wiki/Installation
свободно распространяемая версия метода FOVIS: http://code.google.com/p/fovis/
http://developkinect.com/ – интересный сайт с обзором возможных применений kinect и смежных технологий
Рабочая (но закрытая) реализация Kinect Fusion на OpenCL. Отсканированные элементы сцены могут быть распечатаны на 3d-принтере – http://reconstructme.net/

Описание алгоритма Kinect Fusion простым языком (насколько это вообще возможно) на английском:
http://razorvision.tumblr.com/post/15039827747/how-kinect-and-kinect-fusion-kinfu-work

Любые поправки и уточнения горячо приветствуются! 🙂

my-it-notes.com

Kinect: что это такое? | DeviceBox.ru

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

Благодаря встроенной цветной видеокамере, микрофонной решетке и нескольких глубинных сенсоров, этот девайс может фиксировать и интерпретировать сигналы, подаваемые в бесконтактном режиме. То есть с помощью такого контроллера можно передавать команды не только голосом, но и жестами.

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

Таким образом, появление контроллера Microsoft Kinect Xbox 360 и ему подобных решений, может привести к значительным изменениям в области взаимодействия человека и электронных систем. При этом, пользование такими системами станет гораздо более удобным и эффективным.

devicebox.ru

Обзор Microsoft Kinect

Устройству Microsoft Kinect специалисты пророчат большое будущее.

Презентация Kinect в Украине, которая состоялась на лекции Стива Балмера в КПИ, вызвала большой интерес у слушателей.

«Вы видели как в фильме «Особое мнение» Том Круз движением рук управлял интерфейсом компьютера. Kinect позволяет делать нечто схожее.

Ваше тело является контроллером. Вы полностью управляете своим аватаром на экране, без каких бы то ни было дополнительных приспособлений», — сказал перед демонстрацией игры в «пляжный волейбол» Андрей Калугин, представитель российского офиса Microsoft.

Как работает технология Kinect
В начале игры человек становится перед Kinect на расстоянии от 0,6 м до 1,8 м. Видеокамеры, микрофоны и инфракрасный датчики позиционируют игрока.

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

Затем система определяет, где находятся руки, ноги, голова игрока и формирует виртуальный скелет. На основе данных о движении тела игрока и подобранного скелета формируется простой 3D-персонаж (аватар).

К персонажу добавляются необходимые детали, в зависимости от игры — волосы, одежда, расцветка, предметы в руках.

Информация считывается каждую десятую долю секунды и позволяет Kinect рассчитывать ускорение рук и ног человека. Чем быстрее двигается игрок — тем сильнее будет удар аватара.

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

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

Что внутри Kinect
Размер Kinect — около 23 см в длину и 4 см в высоту. Внутри Kinect есть «глаза и уши». Микрофоны, с функцией шумоподавления, расположены в нижней части устройства. Цветная VGA-камера «видит» и отслеживает человека, с частотой 30 кадров в секунду.

В массивной подставке скрывается мотор — бесшумный сервопривод, который поднимает и опускает «голову» Kinect, неотрывно следя за игроком.

Также имеется измеритель расстояния до объекта слежения (игрока). Он представляет собой  инфракрасный проектор с монохромной КМОП-матрицей.

Для полноценной работы Kinect для Xbox 360 требуется 190 Мб памяти.

Об играх
Список анонсированных для Kinect игр для Xbox 360 содержит как известные серии, так и абсолютно новые игры:

— Dance Central — танцевальная игра от MTV Games и Harmonix, подаривших нам Rock Band.
— Forza 4 — новая часть главного гоночного симулятора на XBox 360, в котрой вы возьметесь за воображаемый руль.
— Kinect Adventures — приключенческая игра, где вам придется пробираться по экзотическим локациям.
— Kinect Joy Ride — аркадные картинг-гонки.
— Kinect Sports — набор спортивных игр.
— Kinectimals — аналог Nintedogs, но с дикими кошками и более продвинутой графикой.
— Sonic Freeriders — наследник идей Sonic Riders
— Your Shape: Fitness Evolved — сборник упражнений и мини-игр для тех, кто следит за фигурой и здоровьем

Стало известно, что разработчики уже начали адаптировать Call of Duty под Kinect. Также EA SPORTS Active 2 будет поддерживать технологию Kinect для Xbox 360.

Кто придумал Kinect
Разработчиком технологии Kinect является израильская фирма PrimeSense. Интересно, что Apple вполне могла первой заполучить эту технологию, но сделка сорвалась из-за специфического подхода Apple к ведению переговоров.

«Apple потребовала от меня подписать кучу документов и договоров. Apple — это тот еще геморрой», — так прокомментировал свое решение пойти к  Microsoft директор PrimeSense.

Kinect взломали. Но не до конца.
Группе программистов удалось написать программу для управления движениями видеокамеры Kinect.

Энтузиасты создали утилиту, которая перехватывала управление устройством Microsoft Kinect и выложили на YouTube демонстрационный видеоролик. Ими был использован обычный компьютер под управлением ОС Windows. Однако полная информация, от других датчиков Kinect пока недоступна для обработки.

За несколько дней до этого компания Adafruit Industries объявила о премии в $1000 тому, кто напишет драйвер для Kinect, позволяющий устройству взаимодействовать с ПК.

Продажи Kinect
Microsoft Kinect поступила в продажу 4 ноября 2010. Будет продаваться в виде комплекта с играми. Ориентровочная цена — $150, в Европе —  ?150. В России начало продаж запланировано на 10 ноября.

Когда же Microsoft Kinect официально появится в Украине — пока неизвестно.

supreme2.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *