Игровой контроллер Kinect – первое на рынке устройство для прямого трехмерного измерения

    Выпущенный на рынок в ноябре 2010 года игровой контроллер Kinect является первым недорогим бытовым устройством для прямого дистанционного трехмерного измерения объектов и сцен. Я искренне благодарен компании Microsoft за этот шаг.

    Совсем недавняя история

    Первым устройством такого типа являлись любые разновидности радаров и сонаров, начиная от устройств системы ПВО и заканчивая парктроником на автомобиле. Если известна скорость распространения зондирующего импульса в среде, то умножение скорости на половину времени между моментами излучением и приема импульса даст расстояние от излучателя до объекта, который отразил сигнал. Ориентируя по-разному систему излучатель-приемник в пространстве, можно промерять набор расстояний до отражающих объектов в данном направлении.
    Производство компактных твердотельных лазеров позволило создать системы измерения, которые в качестве зондирующего импульса использовали свет. Тот или иной механический способ ориентирования светового луча позволил таким системам производить последовательные измерения в пространственном секторе (или сканировать его, соответственно устройства измерения стали называться лазерными сканерами).

    Любой сканер выдает набор трехмерных координат точек отражения лазерного луча относительно точки излучения. Представление в такой локальной системе координат является вполне достаточным для измерений локальных размеров вплоть до здания (стационарный сканер). Если же снабдить такой сканер достаточно точным GPS приемником и системой измерений его угловой ориентации по трем направлениям, то его можно устанавливать на самолет как аэросъемочный сканер или на на автомобиль как мобильный сканер.
    Рабочей длиной волны сканеров является ближний инфракрасный свет с длиной волны около 1 мкм для авиационных сканеров (меньшее рассеивание в парах атмосферы) и больше 1 мкм для стационарных сканеров (более безопасно для зрения).
    Результатом работы лазерных сканеров является облако трехмерных точек (point cloud).
    Вся история лазерного сканирования произошла буквально «вот только что», прямо на моих глазах, и укладывается в 20 лет.

    Достоинства и недостатки лазерного сканирования

    Достоинств много:
    — Прямой метод измерения трехмерных координат, в отличие от стереомтерии.
    — Возможность измерять сквозь оптически прозрачные покровы. В частности, воздушное лазерное сканирование позволяет получать координаты рельефа под покровом растительности.
    — Высокая производительность, что особенно важно для мобильных систем.
    Но есть и недостатки, можно выделить три основных:
    — Длительность процесса механического сканирования назначенного пространственного сектора (полного пространства для стационарного сканера, полосы или окружности для мобильного). К тому же дополнительные системы развертки могут вносить искажения в путь распространения луча, что требует отдельной обработки.
    — Отсутствие яркостной информации. Современные сканеры позволяют измерять интенсивность отраженного света, что только в некоторой степени способно заменить яркостное изображение, но полностью не решают проблемы интерпретации точек отражения.
    — Сочетание лазерного сканера с параллельным цифровым фотографированием позволяет получить яркостную характеристику сцены только косвенным методом путем проецирования фотографии на соответствующие участки облака точек. Особенно трудоемок это процесс для
    — Большие габариты и энергопотребление, хотя в последнее время производители работают над этим вопросом. Этой зимой я видел электрический беспилотный вертолет с очень компактным сканером на борту, которым обследовали участок леса в Лапландии.

    Очевидное решение

    Совершенно очевидным подходом к дистанционному трехмерному измерению является использование оптической фокусирующей системы и цифровой матрицы. Если известны параметры оптической системы, то задача восстановления пространственного положения любого пришедшего на матрицу луча является тривиальной. Дело остается за тем, что бы создать вспышку света на корпусе измеряющего аппарата и каким-то образом измерить задержку в приходе отраженного от объекта света на каждый пиксель цифровой матрицы.
    В 2006 году, на одной из отраслевых конференций, случилось обсуждение только что взошедшей звезды Google Maps вкупе с понятием «неогеографии». Практически каждое выступление сопровождалось упоминанием о необходимости перехода на истинно трехмерные текстурированные данные. Слушая докладчиков, я ясно ощутил, что лет через пять-семь портативные бытовые трехмерные камеры выйдут на рынок. Но сканерные решения на эту роль подходят плохо.
    Идея нового решения приходила в голову многим, при этом инвестиционный план предлагался по одной и той же схеме: «сейчас вы нам дадите миллион (или десять, или сто), а мы вам аппарат через десять лет (или пять, или через год)». Мы не стали инвестировать.

    А Microsoft вложилась

    Весной 2009 года компания приобрела израильскую фирму 3DV Systems. Израильтяне до того выпустили на рынок свою дальномерную камеру ZCam и нацелились на рынок игровых контроллеров. Судя по всему, Microsoft оценила технологию, как перспективную и решила использовать ее для внедрения в новый контролер для игровой приставки Xbox 360, назвав эту разработку «проект Наталь»

    Устройство дальнометрической камеры ZCam (по материалам из интернета)

    Конструкция камеры позволяет отнести ее к так называемым «времяпролетным», что, по сути, означает параллельную реализацию указанных выше принципов.
    Основными узлами камеры являются излучатель, оптическая система, специальная цифровая матрица и электронная измерительная и вычислительная система.
    Необходимо отметить, что характерные размеры области измерений (несколько метров) и требуемая точность (несколько сантиметров) выдвигают очень жесткие требования к временной точности работы всех измерительных устройств.
    Например, для обнаружения объекта, находящегося на расстоянии нескольких метров от камеры, характерное время запаздывания отражения составляет всего 10 нс (при скорости света c = 3 108 м/с). Соответственно, можно посчитать, что заявленная точность определения расстояния требует определять момент прихода отклика с точностью на два порядка больше. Характерные рабочие частоты электронной схемы лежат в области гигагерц.


    Внешний вид объектива и вспышки

    Общие принцип работы камеры

    Излучатель создает очень короткую равнонаправленную световую вспышку (по длительности эквивалентную расстоянию в несколько метров, что определяет максимально дальность камеры, например 7.5 метров при длительности вспышки t0 =50 нс). Рабочая длина волны составляет, скорее всего, 1.5 мкм. Отраженный от сцены свет возвращается обратно и фокусируется оптической системой так, что бы падать на цифровую матрицу.
    Эта матрица имеет специальный тип и состоит из фотодиодов. При попадании света на фотодиод, он начинает вырабатывать ток, который через ключ передается на накопительные элементы (конденсаторы). В простейшем случае можно использовать два конденсатора
    Первоначально заряжается первый конденсатор S1, через 50 нс после начала световой вспышки ключ переключается на зарядку второго конденсатора S2. Еще через 50 нс ключ переходит в нейтральное положение.
    Через небольшой интервал весь процесс повторяется снова. Так как частота следования вспышек достаточно большая и всю сцену можно считать неподвижной, то заряды конденсаторов S1 и S2 накапливаются от вспышки к вспышке, тем самым повышая уровень сигнал/шум и увеличивая надежность расчета. Для накопления используются несколько тысяч циклов.
    В результате, соотношение между зарядами S1 и S2 позволяет определить положение фронта отраженного импульса относительно вспышки. Окончательно рассчитать расстояние D вдоль луча, пришедшего к данному пикселю, можно по формуле

    D = c t0 S2 / 2(S1 + S2)


    Временные диаграммы (из Википедии)

    Согласно заявленным техническим характеристикам, контролер Kinetic поддерживает рабочий диапазон дальностей от 1 до 6 метров и имеет поле зрения примерно 50 угловых градусов в обоих направлениях. Разрешение дальномерной матрицы невелико и составляет, скорее всего, 320 х 240 пикселей.
    Одновременно со сбором дальностной информацией, обычная цифровая матрица выполняет видеосъемку сцены.


    Облака точек как результат работы Kinect

    Недостатки схемы

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

    Перспективы

    Среди них я бы назвал компактные трехмерные домашние сканеры и использование в робототехнике и транспорте (вспоминается трехмерный сканер, установленный на скейте И.В. в «Лавине» Стивенсона)
    Меня поражает, что уровень развития электроники позволяет сейчас напрямую измерить время, необходимое самому быстрому в мире процессу для распространения на нескольких метров. Надеюсь, что серия подобных устройств одним Kinect-ом не ограничится и предлагаемая технология займет свое достойное место.
    Поделиться публикацией
    Похожие публикации
    Ой, у вас баннер убежал!

    Ну. И что?
    Реклама
    Комментарии 36
      +4
      Спасибо за интересную статью!
      Хотел бы добавить, что уже есть несколько экспериментальных программ для Linux, использующих kinect:
      www.youtube.com/watch?v=7QrnwoO1-8A
      www.youtube.com/watch?v=3EeJCln5KYg

      А если рассматривать его как устройство для motion capture в играх, то здесь он нравится мне куда меньше. Недавно в магазине попробовал Kinect, Wii Motion Plus и Playstation Move.
      Больше всего поразил Мув, а кинект, наоборот, разочаровал — задержка огромная! Скажем, в демоигре «Kinect Adventures» персонаж стоял на едущей платформе, и должен был периодически прыгать, чтобы его не сбили препятствия. Так вот, из-за тормозов прыгать приходилось на секунду раньше, чем на обычном контроллере, из-за чего персонаж постоянно сваливался :)

      То же с управлением в меню — сначала впечатляет, что ты, аки голливудский маг, управляешь курсором с помощью собственной ладони, но потом уже раздражаешься из-за постоянных тормозов. В меню, кстати, неудобно реализовано управление — чтобы нажать кнопку, нужно задержать на ней курсор на 2 секунды (появляется заполняющаяся окружность, пользователи WinMobile<6 поймут). А теперь представьте, что вам нужно нажать 24 кнопки, чтобы покопаться в настройках! (хотя геймпад ещё никто не отменял)

      PS Move очень точный, динамичный, и у него один недостаток — обе руки заняты контроллерами.
      А так из сенсоров есть и камера, и акселерометр с гироскопом. То есть за основу взята идея Wii, но дополнена распознаванием образом, что дает ей возможность измерять расстояние между камерой и игроком. По мне — лучший выбор, т.к. только с ним можно нормально играть в стратегии, к примеру. А также в шутеры и экшен-игры вообще.
      Ассоциации с фильмом «Особое мнение» возникли именно при использовании Move.

      Вии — просто классика. Быстрый, удобный, но без камеры, что лишает его части плюсов, имеющегося в Move. Зато быстрые движения определяет чуть лучше.

      И все же, идея кинекта мне видится наиболее перспективной, потому что сейчас модно облегчать управление, а что может быть лучше, чем голосовое + жестикулярное управление?
      Наверное, только подсоединение с мозгом напрямую. =)
        0
        Лучше бы автор первого ролика вывел его в youtube в анаглифе, было бы нагляднее.
          +4
          Только вчера получил кинект в подарок.
          Ну что сказать — интересная игрушка. Поначалу обалдеваешь от отсутствия контролеров.
          Тормоза есть — согласен. Выбор в меню конечно немного раздражает тоже.

          Но как мне кажется, будущее все таки за вот такими устройствами а не Wii или Move.
            –5
            Kinect? Задержка? Тормоза?
            Не надо врать, красноглазый!
            (У меня кинект дома)
              +1
              Задержки есть :) Их не может не быть. Задержки есть даже при игре с обычным(теперь уже) беспроводным контроллером. У мыши есть задержка и у клавиатуры она есть. У Kinect латентнсть порядка 100-150ms, это примерно столько же или чуть больше чем у стандартного беспроводного контроллера. Разумаеется, играть это не мешает.
              p.s. голосовое управление рулит ^^
            +1
            Купил кинект вчера вместе с икбоксом, специально пришлось купить 60-флет тв для этого. очень доволен, все время танцую в Dance game. боксинг тоже очень интересный.

            Детям понравится игра про тигренка! очень рекомендую!
              +1
              Я думаю, для игр все равно это хрень. Гораздо перспективнее PS3 Move.
                +1
                PS перспективнее? Тоесть взять за основу успех wii, немного его доработать и уже успех?
                У Kinect главная проблема, это задержка, которая исчезнет с 2 и 3 версией, чем тогда будет бить ps? :)
                  +1
                  Какая еще задежка? Отзываются все игры очень оперативно и живо. миллисекунды буквально идут на обработку. Толковый девайс.
                    0
                    Ему пока не под силу rpg ;)
                    0
                    Уже не первый раз вижу комментарии о задержках и тормозах кинекта… Может быть вы просто не читали инструкцию при установке датчика? Или у вас мало игрового пространства? Или в кадре много движущихся объектов?

                    Уже недели три периодически играю у нас в магазине… Тормоза появляются только если заходить за края игрового пространства…
                      0
                      А если за спиной играющего зеркало или лакированная поверхность находится, Kinect справляется?
                        0
                        не знаю, но должен… он основан не на распозновании изображения… там стерео дальномеры, если не ошибаюсь, т.е. контроллер получает не изображение (точнее, не только изображение), а объемную картинку игрового поля…
                      +2
                      Да, именно так. У меня была и Wii и сейчас есть PS3. В PS3 все более удачно сделано — повтор движений 1:1, до 4 игроков одновременно, ну и самое главное преимущество перед Wii — качество графики (в наши дни на это обращают внимание). А преимущество перед Kinnect не в уровне задержки, а в самом контроллере. PS3 Move — это идеальное средство управления в шутерах, рпг, стратегиях, гонках и прочее, прочее. Даже дух захватывает от того, какие игры можно сделать с этим контроллером. У меня уже во всю руки чешутся помахать виртуальным мечом в какой-нибудь классной РПГ.
                        +1
                        Кстати, я поменял Wii на PS3 как раз из за этого контроллера. На перспективу так сказать.
                    0
                    Спасибо за интересную статью!
                      +1
                      Все хорошо. Но Kinect не time-of-flight. Kinect — structured light.
                        0
                        А расскажите подробнее, пожалуйста.
                          +1
                          Действительно, в отличие от ZCam, Kinect не использует принцип time-of-light, а базируется всё на той же доброй стереометрии, только вместо двух камер используется источник структурированной подсветки и камера. Поэтому в нем три «дырки» :) А именно: источник структурированной подсветки в ИК-диапазоне, видеокамера (чтобы давать обычную RGB-картинку) и ИК-сенсор (чтобы определять положение пятен подсветки).

                          Вот на этом видео хороша видна структура ИК-подсветки: http://www.youtube.com/watch?v=nvvQJxgykcU

                          Дальше работает триангуляция и ровно из-за этого на карте глубины образуются своеобразные «тени»: http://media.zero997.com/kinect_shadow.pdf

                          Кстати, как это не странно, но даже не смотря на такой подход народ умудряется использовать несколько Kinect-ов сразу. Казалось бы, они должны между собой интерферировать, но на самом деле это проявляется не так уж и сильно: http://www.youtube.com/watch?v=5-w7UXCAUJE

                          P.S. На этой wiki-страничке можно найти самые разнообразные и интересные видео по тому, что народ делает при помощи Kinect: http://openkinect.org/wiki/Gallery
                            0
                            Упс.
                            Значит, все напрасно?
                            Я буду жаловаться разбираться.
                            +1
                            На ютубе валялся ролик, где показана комната, наблюдаемая через прибор ночного видения. Там было явно видно, что инфракрасный прожектор Kinect-а испускает в пространство множество отдельных лучей, подобно тому как работает домашняя «обсерватория» (шарик с кучей дырочек и лампа внутри, дающая картины созвездий в виде точек света)

                            Принцип сканирования такой же как и у лазерного 3D сканирования. Известна конфигурация излучателя, далее производится съем картинки камерой и восстановление модели:



                            Только здесь у нас не один лазерный луч, развернутый в линию, а множество точечных пересечений с поверхностями.
                              0
                              Упс, опоздал :)
                                0
                                Позор мне.
                                Значит, все не так и «зря я хорошего человека обидел»?

                                >Принцип сканирования такой же как и у лазерного 3D сканирования. Известна конфигурация излучателя, далее производится съем картинки камерой и восстановление модели:
                                Это как раз не лазерное сканирование, а фотограмметрия.
                                  0
                                  Прошу прощения, если наврал с термином
                            0
                            > Особенно трудоемок это процесс для
                              0
                              … для тех, кто решил прочитать статью вдумчиво, а не по диагонали.
                              0
                              Вот теперь становится актуальной программа распознавания лиц,
                              и не подставишь плоскую фото на камеру для аутентификации.
                                +1
                                Аутентификация с применением Kinect — это отличный способ ограничения доступа в субботу утром сотрудникам с бодуна — помятая после пятничной попойки физиономия вряд ли сможет авторизоваться
                                  0
                                  Расстояние между глазами, кончик носа, уши, форма черепа даже после пьянки не поменять.
                                  0
                                  Будем фотографировать тем же кинектом, а потом склеивать маску.
                                  –4
                                  характерное время запаздывания отражения составляет всего 10 нс (при скорости света c = 3 108 м/с). Соответственно, можно посчитать, что заявленная точность определения расстояния требует определять момент прихода отклика с точностью на два порядка больше. Характерные рабочие частоты электронной схемы лежат в области гигагерц.


                                  Характерное попадание полого газонаполненого сфероида в среду второго агрегатного состояния вещества привело к психосоматическому диссонансу организма Татьяны и теперь она громко плачет.

                                  Мне одному кажется что статья написана заумным языком? Причем это серьезно мешает пониманию информации.
                                    +1
                                    не «заумный», а «технический элементарный»
                                    0
                                    > Мы не стали инвестировать

                                    Просто любопытно, кто мы? В профиле информации не нашел
                                      0
                                      Этих «мы» уже больше не существует. Одна очень крупная российская компания.
                                      0
                                      Здесь описано в оригинале
                                      www.primesense.com/?p=514
                                        0
                                        Купил вчера Kinect. Ничего кроме похвалы сказать не могу. Это действительно прорыв. Фан обеспечен всем.

                                        Из минусов:
                                        — Размеры игрового помещения. Надо не менее 2.5 метров от сенсора до человека.

                                        Нейтральные вещи:
                                        — Задержка. Она не критична. Я бы не назвал это минусом, но это есть.

                                        Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                        Самое читаемое