Ігри для kinect windows. Робимо адаптер харчування Kinect з підручних засобів. Відстеження рук і скелета

Потрапив мені до рук сенсор Kinect, і захотілося мені попрацювати з ним на ПК. Що може бути простіше: вставити USB в порт комп'ютера, встановити драйвера і почати розбиратися в цій диво-техніці?
Не тут то було. Небачений раніше помаранчевий роз'єм навідріз відмовився залазити куди-небудь без молотка, а адаптера харчування з перехідником на USB в комплекті не було передбачено (даний екземпляр сенсора йшов в бандл з консоллю).
Дістати оригінали адаптер виявилося не так просто: окремо він продається лише в США за 35 $, не рахуючи доставки, до того ж БП розрахований тільки на 110В. Незатребуваного адаптера у купили повний комплект сенсора так само не знайшлося: охочих купити його виявилося на порядок більше.
Вихід залишився один: зробити перехідник самостійно.

що потрібно

Перш за все я знайшов терморегулятори роз'єму:

Чи не складно розібрати, що + 5V, D-, D +, Gnd - відносяться до USB, а інші чотири, + 12V і Gnd - до харчування. Як джерело живлення вирішено було використовувати комп'ютерний БП, який за дивним збігом обставин умів видавати + 12V і мав запас в 1А, так необхідний кінект.

Залишився останній питання: як під'єднати всі це до гнізда кінект, що не відрізаючи його?
Перше, чо спало на думку - використовувати полімерну глину для створення відповідної частини роз'єму потрібної форми. Придивившись уважніше, я помітив схожість чотирьох контактів кожного боку з контактами USB, їх то і було вирішено використовувати в якості основи.

Список необхідного:
USB-A вилка, 2 шт.
будь-який резистор 0,5-1 Ватт
USB роз'єм будь-якого типу, для підключення до пк
роз'єм MOLEX (або FDD, PW11-4M)
дроти (шлейф на 6-8 провідників)
напилок
паяльник і супутні пристосування
супер клей

збираємо

Перепрошую за низьку якість фото, на мобільний телефонкраще зняти дуже складно.

Розкриваємо два роз'єми:



Напилком зменшуємо товщину пластмаси, поки обидві частини спиною до спини не влізуть в роз'єм кінект:



Підпилюємо один край роз'єму, щоб контактні площадки 6-9 збіглися:

Склеюємо дві половинки, поєднуючи по підпиляних краю:

Залишилося додати контакт для пін 5, беремо ніжку від резистора і вплавлятися на відповідне місце:


Роз'єм готовий. Якщо вийшло так, що він вільно бовтається і немає надійного контакту - можна напаяти олова на контактні площадки до потрібної товщини.

З'єднуємо проводами відповідні контакти новоствореного роз'єму, роз'єму живлення і USB:

Перевіряємо ще раз, що все поєднано вірно. Додаємо трохи ізоляційної стрічки і термоусадки:

Підключаємо роз'єм живлення замість давно невикористаного флоппі, підключаємо адаптер до кінект, вставляємо USB в ПК ...

Працює!

Система радісно повідомляє про підключення нових пристроїв. Можна працювати!
Для тесту скачав набір для Windows, драйвера встановилися, демо запускається. Картинка передається, дані обробляються.

Що можна додати?
Даний адаптер можна використовувати так само і для підключення сенсора до старих версій Xbox 360. Що б постійно не переставляти usb з комп'ютера в консоль і навпаки, можна встановити перемикач.

Від Microsoft. Але, на щастя чи ні, новина про чудо-сенсорі мене не «зачепила». Згадав, а точніше нагадали мені про нього через рік, коли виникла ідея про придбання, як виявилося, стильного пило збірника - Xbox 360 Slim. Хоч і включається консоль тільки під час п'яних вечірок, позитивних емоцій та веселих відео залишає після себе не мало. Але награвшись в стандартні Adventures і Joy Ride, в голову спала ідея про створення власної гри для Kinect-а, як виявилося, все досить просто ...

ідея

Не претендуючи на лаври Rovio, Halfbrick і їм подібних, вирішено було створити просту (як тоді ще думали, для вузького кола знайомих) гру. Ідея гри народилася сама собою, після того, як було озвучено слово «проста», тут же згадалися портативні електронні ігри - «Електроніка». Так Так…. ті самі PSP - 80-х.

Як не можна краще, під наші задумки, підійшла сама популярна граіз серії - «Ну, постривай!». Визначившись з грою і затарившись пивом, почалася робота.

Реалізація

З м'якого використовували:

  • Visual Studio C # 2010
  • Microsoft XNA 4.0
  • Kinect SDK (на початку це була beta, пізніше пересіли на версію 1.5)
  • CorelDRAW
Твердого та рідкого:
  • Kinect
  • Пиво, сухарики

У першій версії гри, за основу була взята оригінальна графіка класичної «Ну, постривай!», Управління проводилося з клавіатури. Цього було достатньо для тестування і налаштування всіх компонентів. Переконавшись, що все працює, почалася робота над взаємодією гри з Kinect-му.

Так-так вовк має всього чотири позиції, отже і у гравця їх теж чотири. Управління вирішено було зробити найбільш природним і зрозумілим, тобто для лову яєць, гравець повинен повторювати рухи вовка в грі.

Для визначення позиції займане гравцем, нам треба було всього 6 відслідковуються сенсором точок:

Rh = skeleton.Joints; lh = skeleton.Joints; rs = skeleton.Joints; ls = skeleton.Joints; rk = skeleton.Joints; lk = skeleton.Joints;

  • rh - права рука / кисть
  • lh - ліва рука / кисть
  • rs - праве плече
  • ls - ліве плече
  • rk - праве коліно
  • lk - ліве коліно
Власне реалізація:

If (rh.Position.Y> rs.Position.Y && (rh.Position.Y - lh.Position.Y)<= 0.1 && (rh.Position.X - lh.Position.X) <= 0.1 && (rh.Position.X - rs.Position.X) >= 0.3) (state = 1;) else if (lh.Position.Y> ls.Position.Y && (rh.Position.Y - lh.Position.Y)<= 0.1 && (rh.Position.X - lh.Position.X) <= 0.1 && (lh.Position.X - ls.Position.X) <= -0.3) { state = 0; } else if (lh.Position.Y < lk.Position.Y && (rh.Position.Y - lh.Position.Y) <= 0.1 && (rh.Position.X - lh.Position.X) <= 0.1 && (lh.Position.X - lk.Position.X) <= 0) { state = 2; } else if (rh.Position.Y < rk.Position.Y && (rh.Position.Y - lh.Position.Y) <= 0.1 && (rh.Position.X - lh.Position.X) <= 0.1 && (rh.Position.X - rk.Position.X) >= 0) (state = 3;

Код перевіряє позиції суглобів, зіставляючи їх один з одним, і приймає рішення про позицію вовка, якщо гравець правильно виконав руху. A саме, для того щоб зловити яйця з верхніх ярусів, доведеться підняти кисті рук вище своїх плечей. А для яєць з нижніх ярусів, кисті рук повинні перебувати нижче, щодо колін гравця.

доопрацювання гри

Ура все запрацювало! Пограти пару днів, як це часто і відбувається, захотілося чогось більшого від іграшки. Не стільки в функціональному плані, скільки в її інтерфейсі, аж надто сіро, без році 30 роки і я гра, виглядає на великому екрані.

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

олівці * - так ми ласкаво називаємо графічних дизайнерів

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

Таким вийшов головний герой:

Але як справа дійшла до яєць, підняли питання, яке цікавило мене ще будучи зовсім юним. А навіщо вовку яйця ... !? Начебто хижак, то чи не простіше йому, замість лову яєць, видертися по жолобу, та й не прихопити з собою пару курей?
Але так як кардинально переписувати гру не хотілося, потрібно було придумати щось таке, що також би скочувалося (як і яйця) вовку в мішок, але при цьому виглядало більш логічним, з огляду на потреби вовка в м'ясі / дичини.

І на заміну яйцям, прийшли ...
Так! Як ви вже здогадалися - поросята!


не шукайте аналогій зі згаданими вище іграми, поросят придумали самі

У вигляді бонуса в гру були також додані три рівня складності (що відрізняються між собою початковою швидкістю скочування поросят) і таблиця рекордів. Так і з'явилася гра, з цілком логічним назвою, Hungry Wolf.

Пара скрішотов:

Ну ось власне і все. Дякуємо тим, хто дочитав або проскроліл до кінця, якщо є питання про технічну реалізації чи якісь інші - задавайте, відповім.

Пісочниця

Наталка 7 березня 2011 у 2:49

Установка Kinect в Windows 7

  • комору *
Вступ
Дана стаття народилася в процесі створення простенької програми на C #, яка отримує зображення з звичайної USB камери і зберігає картинку раз в 5 секунд на жорсткий диск. Так вийшло, що у мене є тільки вбудована камера мого ноутбука, а для вирішення поставленого завдання камера повинна дивитися через вікно на вулицю, купувати нову зовсім не хотілося, тому мій погляд звернувся до стоїть на телевізорі Kinect`у. Відповідно першочергове завдання - підключити пристрій до комп'ютера, з нею і будемо зараз розбиратися.

Забігаючи вперед скажу, що використовувати Kinect замість камери я ще не пробував, тому що знайшлася звичайна usb веб-камера, але цю затію я не залишу, тому що обгортки kinect`а для c # вже є.

Необхідні умови
Відразу хочу обмовитися, що всі операції проводилися в Windows 7 Ultimate, встановленої на MacBook через BootCamp, впевнений на 99.9% що це значення не має, але згадати буде не зайвим.

Отже, що ж нам знадобиться:

  • Kinect
  • комп'ютер
  • ОС Windows 7
  • Visual Studio 2010 року (зі встановленою підтримкою C ++)
  • Інтернет (для завантаження необхідних бібліотек)
Підготовчий етап
Можливо, готові драйвери для роботи Kinect можна знайти десь на просторах інтернету, але погодьтеся, що створене своїми руками приємніше, зрозуміліше і за помилки лаяти крім себе нікого. Тому ми почнемо з завантаження всіх необхідних програм і бібліотек.

Для зручності я створю папку C: \ OpenKinect, в якій будуть відбуватися всі роботи.

libusb-win32
Це порт бібліотеки libusb, яка дозволяє отримувати доступ до різних USB пристроїв з клієнтських додатків.
Викачуємо файл з ім'ям виду libusb-win32-bin-xxxxzip з останнього билда, в моєму випадку це був білд з номером 1.2.2.0 і розпаковуємо його в C: \ OpenKinect \ Libusb-win32 (ім'я папки байдуже, я назвав для зручності , це вірно для всіх папок, які ми будемо створювати).

pthreads-win32
Pthreads є набором бібліотек, що реалізують просту роботу з потоками по стандарту POSIX. Проект дуже древній, оновлень не було з 2006 року, тому даю пряме посилання на необхідний файл, який необхідно буде розпакувати в папку C: \ OpenKinect \ Pthreads-win32.

Також необхідно буде скопіювати файл C: \ OpenKinect \ Pthreads-win32 \ Pre-built.2 \ lib \ phtreadVC2.dll в папку \ Windows \ System32 \

Glut
Це бібліотека для роботи з OpenGL. Ще один старий проект, і ще одна просто посилання на файл, який необхідно розпакувати в папку C: \ OpenKinect \ Glut
glut-3.7.6-bin.zip

Копіюємо файл C: \ OpenKinect \ Glut \ glut32.dll в \ Windows \ System або в будь-яку папку, яка згадана у нас в змінних середовища (PATH)
Крім цього необхідно скопіювати файл C: \ OpenKinect \ Glut \ glut.h в папку VC \ include \ GL вашої VS2010, якщо папки GL немає, то потрібно її створити. Файл C: \ OpenKinect \ Glut \ glut32.lib в папку VC \ lib. У моєму випадку шляху виглядають наступним чином:

  • C: \ Program Files \ Microsoft Visual Studio 10.0 \ VC \ include \ GL
  • C: \ Program Files \ Microsoft Visual Studio 10.0 \ VC \ lib
збірка проекту
Git
Природно ми не зможемо обійтися без вихідних файлів проекту libfreenect, тому качаємо Git, встановлюємо його, під час установки вибираємо опції «Run Git from the Windows Command Promt»і «Check-out Windows-style, commit Unix-style line endings».
Git-1.7.4-preview20110204.exe

Наступним кроком відкриваємо командний рядок і послідовно вводимо таке (парсер перетворює адреса на заслання, тому я додав зайвий пробіл між https: // і github.com, його потрібно прибрати):
cd c: \ OpenKinect
git clone https: // github.com/OpenKinect/libfreenect.git
cd libfreenect
git branch --track unstable origin / unstable
git checkout master
git pull
В результаті ми отримаємо папку з вихідними кодами C: \ OpenKinect \ libfreenect

CMake
Утиліта, яка допоможе нам зібрати всі наші бібліотеки в один проект. Завантажуємо програму з сайту, на даний момент остання версія 2.8.4, встановлюємо, під час установки вибираємо опцію «Add CMake to the system PATH for all users»

Після установки запускаємо файл cmake-gui.exe. У першому рядку вибираємо шлях до папки з вихідними кодами, у нас це C: / OpenKinect / libfreenect, другий рядок - папка, де буде зібраний проект C: / OpenKinect / Drivers. Ставимо галочки на Grouped і Advanced, натискаємо кнопку Configure, у вікні вибираємо Visual Studio 10 і натискаємо кнопку Finish. Програма відпрацює з помилкою, тому що не вказані шляхи до наших бібліотек, вкажемо так, як показано на скріншоті і двічі натиснемо кнопку Configure.

Тепер у нас не повинно бути помилок і можна сміливо натискати кнопку Generate, в результаті в папці C: \ OpenKinect \ Drivers у нас виявиться проект, який нам необхідно буде побудувати в VS2010.

Visual Studio 2010
Відкриваємо в VS2010 наш свіжоспечений проект з папки C: \ OpenKinect \ Drivers (файл libfreenect.sln) і побудуємо його (у мене чомусь проект будувався тільки з другого разу). Якщо все пройшло без помилок, то ми повинні отримати папки C: \ OpenKinect \ Drivers \ lib \ Debug і C: \ OpenKinect \ Drivers \ bin \ Debug, першу з яких потрібно додати в PATH.

На цьому етап збірки завершений і переходимо безпосередньо до підключення Kinect`a

підключення Kinect
Тут досить все просто. Підключаємо Kinect, система його визначить як Xbox NUI Motorі не зможе знайти драйвери, допоможемо їй у цьому. Через диспетчер пристроїв знаходимо нашого страждальця, вибираємо опцію «Оновити драйвер» і вказуємо папку C: \ OpenKinect \ libfreenect \ platform \ windows \ inf, система запросить підтвердження на установку непідписаного драйвера, даємо свою згоду, після цього на Kinect`е повинен заблимати зелений діод і в списку пристроїв повинні з'явиться ще два невпізнаних пристрої «Xbox NUI Camera»і «Xbox NUI Audio», Встановлюємо для них драйвера з папки C: \ OpenKinect \ libfreenect \ platform \ windows \ inf.

На цьому всі наші роботи закінчені, залишилося тільки перевірити як все працює.

тестування
Для перевірки дієздатності Kinect ми скористаємося трьома утилітами з папки
  • C: \ OpenKinect \ Drivers \ bin \ Debug:
  • glpclview.exe - Показує можливості 3D камери Kinect
  • glview.exe - Показує роботу звичайної камери
  • tiltdemo.exe - Задіє мотори Kinect
Ось і результат:

P.S. Якщо ви захочете написати свою програму для роботи з Kinect, то в папці C: \ OpenKinect \ libfreenect \ wrappers є обгортки під безліч мов.

При написанні статті використовувалася інформація з сайту

Компанію Microsoft нерідко дорікають у тому, що вона несвоєчасно реагує на зародження і подальший стрімкий злет популярності різних технологічних напрямків. Так було з інтернет-сервісами, де Редмонд за фактом програв боротьбу Google, так зараз відбувається зі смартфонами, планшетами та фаблет.

Є серйозні побоювання, що в цьому році корпорація також піде в категорію тих, що наздоганяють у напрямку носяться девайсів, а-ля Google Glass, Oculus Rift, Android Wear і Apple iWatch.

І все-таки у Microsoft поки залишаються деякі вагомі козирі, конкуренцію яким до цих пір не можуть дати ні Apple, ні Google. Одним з таких є сенсор Kinect, друге покоління якого 15 липня стало офіційно доступно для Windows.

Історія Kinect, який носив під час розробки кодову назву Project Natal, стартувала восени 2010 року, коли перше покоління цього незвичайного девайса стало доступно в якості аксесуару до ігрової консолі Xbox 360, який, підключаючись до неї, встановлювався зверху або перед телевізором.

Перше покоління Kinect для Xbox 360 надійшло в продаж в листопаді 2010

Kinect міг замінити собою стандартний контролер цієї приставки, дозволяючи управляти спеціально адаптованими іграми за допомогою рухів і голосу, причому на відміну від Wii Remote або PlayStation Move користувачеві не потрібно було тримати в руках взагалі ніяких контролерів.

Спочатку Kinect виявився дуже успішним, примудрившись затьмарити по числу продажів перше покоління планшетів iPad від Apple, яке вийшло в тому ж році. Так, порівнювати сенсор з планшетом дуже дивно, але сам факт того, що новинка Microsoft зуміла відразу «вистрілити» могутніше, ніж продукт іменитого конкурента з багатомільйонною армією фанатів, заслуговує на увагу. Продажі Kinect навіть в якості аксесуару для консолі обчислювалися мільйонами.

Через півтора року Microsoft закріпила успіх, офіційно випустивши на початку 2012 першу версію Kinect для Windows.

Kinect для Windows стартував в лютому 2012

Здавалося б: справа в капелюсі, залишається тільки лише розвивати і розвивати вдалу ідею, але ось як раз з цим, судячи з усього, виникли проблеми.

Kinect для Xbox 360 виявився обмежений виключно різними казуальними іграми, фітнес-симуляторами і далі цього рубежу, на жаль, не пішов. Лише деякі розробники серйозних ігор ААА-класу використовували можливість голосового управління за допомогою Kinect, основну ж фішку сенсора - управління рухом в масштабних проектах так ніхто всерйоз і не задіяв.

Kinect поруч з однією з останніх ревізій Xbox 360

Чому? Складно сказати, є кілька версій. Наприклад, частина розробників говорила про проблеми самого сенсора, інші вказували на вкрай слабкі характеристики Xbox 360.

Версія для Windows зіткнулася з більш важкими проблемами. Справа в тому, що Microsoft, як і Sony з Nintendo, зовсім не любить випускати ексклюзивні для консолей Xbox гри на ПК. В результаті Kinect для Windows залишився ще й без ігор. Аудиторія Windows-версії девайса виявилася обмежена виключно ентузіастами, які використовують Kinect в своїх самих різних проектах.

ПО, що взаємодіє з Kinect

Kinect в якості основи управління літаючим роботом

Microsoft урочисто говорила, що вже досить скоро Kinect для Windows буде цікавий не тільки ентузіастам, а й з'явиться буквально таки скрізь: виробники почнуть включати його в комплект поставки з телевізорами, моноблоками, базові елементи Kinect з'являться в ноутбуках і так далі.

На жаль, цього «скоро» не сталося і по сей день. Популяризувати девайс Microsoft не змогла. На консолях він залишився долею невимогливих казуальних гравців, на Windows - комп'ютерних гиків і ентузіастів.

У 2013 році Microsoft, неабияк підганяється конкурентами в особі Sony і Nintendo, анонсувала свою нову Xbox -, разом з якою вперше був представлений Kinect 2.

Kinect 2.0

Друге покоління сенсора на відміну від першого не була окремим і необов'язковим аксесуаром для нової Xbox, а йшло вже з нею в комплекті. Це дуже важливо. По суті Microsoft зробила ставку на Kinect 2, як на якусь родзинку нової консолі.

Kinect 2 і Xbox One

По початку все виглядало досить цікаво: консоль з новим потужним залізом, що працює в парі з новим поколінням сенсора, де були враховані і виправлені багато слабких сторін Kinect першого покоління ...

Здавалося б, ось тепер то вже точно Microsoft покаже все, на що здатна, представивши користувачам небачений рівень інтерактивності нової розважальної системи.

Невелика демонстрація Kinect 2.0

Але вийшло все знову якось сумнівно. На практиці, незважаючи на те, що Xbox One коштує дорожче інших консолей, її залізо аж ніяк не вражає.

Слабка графіка на рівні ігрового ПК з категорії «нижче середнього» і відсутність швидкодіючої пам'яті GDDR5, яку Microsoft невдало вирішила замінити зв'язкою DDR3 + ESRAM привели до того, що мультиплатформенні гри на Xbox One йдуть з помітно меншою частотою кадрів і запускаються з меншим дозволом, ніж на тій же PlayStation 4.

Суть в тому, що вже під час розробки Kinect 2 замість родзинки став центральною проблемою Xbox One, через яку Microsoft довелося урізати апаратну начинку консолі, а цінник при цьому все одно поставити на $ 100 вище, ніж головного у конкурента.

Настільні і портативні консолі 8-го покоління

Крім того, Kinect 2 додатково відбирав 10% ресурсів і без того не найпотужнішого GPU Xbox One.

Не зрозуміло, на що сподівалася Microsoft, адже для Xbox One і другого Kinect практично не було навіть ігор. Crytek в своєму проекті Ryse: Son of Rome в результаті взагалі відмовилися від Kinect, а Fighter Within в оглядах розгромили так, що планку нижче 23/100 досі жодна гра для Xbox One пробити не може:

Може бути в Редмонді хотіли заманити всіх голосовим управлінням приставкою за допомогою Kinect? Але і цей варіант не дуже правдоподібний. Це у який-небудь можна запитати що-небудь трьома різними способами і вона не розгубившись дасть відповідь.

Kinect 2 такого не може: він оперує виключно певним набором фраз, які користувач повинен просто заучувати, що, погодьтеся, не дуже цікаво. Є, звичайно, надія на, але в 2013 на цьому фронті було глухо, та й зараз мови про появу Cortana на консолях Xbox поки не йде.

Microsoft, очевидно, хотіла за рахунок Xbox One зробити для Kinect 2 певну призначену для користувача базу, а вже потім думати, де і навіщо цей сенсор може стане в нагоді. Користувачів такий розклад не влаштував, в результаті Kinect 2 потягнув за собою вниз вже саму Xbox One.

Люди вважали за краще більш дешеву і більш потужну PlayStation 4:

Загальні продажі консолей 8-го покоління за станом на першу половину липня

У той час, як нова Xbox до сих пір не може перейти планку в 5 мільйонів проданих штук, Sony вже перелетіла за 8. Як підсумок, на початку цього літа Microsoft прийняла стратегічне рішення розпочати продаж Xbox One без Kinect, хоча до цього запевняла, що вони буквально нерозривні один з одним. Консоль, втративши Kinect, подешевшала на $ 100, тим самим зрівнявшись за ціною з PS4. На жаль, але на продажу це майже не вплинуло.

У плані заліза Xbox One і раніше відстає. Відмова від Kinect крім зниження вартості ще й злегка підняв продуктивність консолі, однак якщо до чогось невеликого додати 10%, великим воно від цього не стане.

Так і з Xbox One: намічена до виходу на цю осінь ексклюзивна гра Sunset Overdrive навіть при своїй мультяшної графіку і навіть при тому, що задіє весь ресурс приставки, включаючи раніше зарезервовані під Kinect потужності, все одно «піде» лише в 900p і 30 FPS .

В середині липня Microsoft знову звертає свій погляд на користувачів Windows і персональних комп'ютерів в цілому, в надії, що там, хоча б в колах ентузіастів, розробників додатків, Kinect 2 «вистрілить» більш яскраво. 15 липня почалися продажі Windows-версії девайса.

Kinect 2 для Windows

Чим Kinect 2 відрізняється від свого попередника? Оцінимо технічні характеристики в цілому:

Технічні характеристики Kinect першого покоління в порівнянні з Kinect 2

І окремі цікаві моменти:

  • Ключова зміна - камера. У порівнянні з VGA (640 * 480 точок) в попередній версії її здатність збільшилася до 1080p (1920 * 1080 пікселів);

  • Збільшені кути огляду дозволять задіяти більшу ігровий простір;
  • Істотне збільшення роздільної здатності потоку даних про глибину призвело до того, що Kinect 2 може розпізнавати більш дрібні об'єкти. Зокрема, якщо перше покоління сенсора могло розпізнати об'єкти від 7,5 см, то тепер це планка зменшена до 2,5;
  • Перше покоління Kinect повноцінно могло розпізнавати одночасні руху лише двох людей. Kinect зможе вести розпізнавання вже шести фігур одночасно, зчитуючи при цьому до 2 ГБ даних в секунду;

  • Представлений єдиний режим для сидячих і стоячих користувачів / гравців;
  • Новий Kinect зможе розпізнавати не просто більше людей, але і більше суглобів людського тіла. Наприклад, система тепер без зусиль зможе розпізнати, коли кисть руки стиснута в кулак або навпаки;
  • Представлена ​​можливість роботи нового Kinect в практично повній темряві. Нагадаємо, попереднє покоління сенсора комфортно почувалося тільки в приміщеннях з достатньою освітленістю. У свою чергу Kinect 2 може «бачити» навіть руху губ в темній кімнаті;

  • Новий сенсор може розпізнавати ритм серцебиття по обличчю;
  • Kinect 2 отримав можливість миттєво сканувати QR-коди;
  • Нова аудіосистема тепер може визначити двох одночасного говоріння людей і розпізнати два потоку мови;
  • Багаторазово розширена функціональність SDK (доступна версія 2.0) йде разом з Kinect.

Список нововведень другого Kinect'a по-хорошому вражає. Робота виконана значна, сам пристрій стало ще більш цікавим хоча б для тих же комп'ютерних ентузіастів.

Втім, і в цій баночці меду знаходяться як мінімум дві столові ложки дьогтю. Першу ми вже називали вище: Microsoft просто не може популяризувати Kinect. Той факт, що сенсор був буквально викинутий з комплекту Xbox One всього через 6-7 місяців після початку продажів консолі, це наочно доводить.

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

Так, зокрема:

  • Джонні Чанг Лі, один з провідних розробників оригінального Kinect, ще в 2011 пішов у Google, увійшов там до складу групи ATAP (Advanced Technology and Projects), де очолив команду займається розробкою. Сам Project Tango, що дозволяє мобільним девайсам орієнтуватися і створювати тривимірні карти навколишнього простору, був вперше представлений на початку поточного року;
  • Джордж Андреас, ще один відомий інженер команди Kinect, на початку 2013 перейшов на роботу в Sony, де приєднався до команди Антона Михайлова. За не дуже тривалий термін Джордж, мабуть, встиг взяти участь в створенням PS Camera і DualShock 4, що восени минулого року вийшли на ринок одночасно з новим поколінням PlayStation. Зараз ця ж команда працює над шоломом віртуальної реальності і якимось поки ще безіменним гаджетом, який, працюючи окремо або в тандемі з Morpheus, зможе відстежувати рухи очей;

Контролер PS Move від Sony надійшов у продаж лише на два місяці раніше першої версії Kinect. Судячи з усього, у Project Morpheus фора у часі буде значно більше

  • Команда промислових дизайнерів Carbon Design Group, яка створила зовнішній вигляд першого Kinect, а також контролера для Xbox 360 і різних мишок Microsoft, цього літа була куплена Oculus VR, яка, в свою чергу, з недавнього часу належить Facebook. Як неважко здогадатися Carbon Design Group буде працювати над дизайном фінальної версії шолом віртуальної реальності. З урахуванням того, що перше покоління Kinect, над яким працювали Carbon, візуально виглядає новіше другого, «дизайн» якого був уже роботою самої Microsoft, придбання Oculus VR зробили цілком вдале.
  • Ізраїльська компанія PrimeSense, розробки якої легкі в основу Kinect, восени 2013 була куплена Apple. Для чого Купертіно потрібні були розробники 3D-сенсора поки невідомо. Є думка, згідно з яким головною новинкою Apple в 2014 стануть розумні годинник iWatch, а ось на наступний рік яблучна компанія зосередиться над якимось абсолютно новим продуктом, де і будуть застосовуватися рішення PrimeSense. З іншого боку, Apple може піти іншим шляхом, вмонтувавши створений на базі придбаних технологій «міні-Kinect» в iMac, або MacBook'и, де вже є HD-камера FaceTime, яка могла б працювати в парі з сенсором глибини.

Ще один цікавий момент, на якій би ми хотіли б звернути увагу, полягає в конкурентах Kinect. Як вже було сказано, великі компанії на кшталт Apple і Google прямого конкурента сенсора Microsoft поки не представили, хоча і ведуть активні розробки в суміжних областях. Що стосується конкурентів від компаній рангом поменше, то вони, безумовно, є.

Мабуть, найуспішніший з них - безконтактний контролер Leap Motion від однойменної компанії. Принципи його роботи помітно відрізняються від Kinect, але саме два цих пристрої сьогодні найбільш сильно протиставлені один одному.

Leap Motion - головна конкурентна загроза Kinect на ПК

На відміну від Kinect цей сенсор орієнтується виключно на персональні комп'ютери і заглядати на консолі в доступному для огляду майбутньому навіть не збирається. У чому ж успішність Leap Motion? Справа в тому, що поки Microsoft міркувала про те, як їх Kinect буде «скрізь і всюди», невеличкий колектив Leap Motion зуміли не тільки випустити своє рішення, але і домовитися з HP і Asus про вбудовуванні сенсора Leap Motion в їх техніку. Уже втіленим в життя прикладом такої співпраці є ноутбук HP Envy 17-j110 Leap Motion SE.

Примітно, що і HP і Asus колись самі вели розробки в області безконтактного управління, але потім об'єдналися навколо Leap Motion. Сьогодні цей девайс можна купити як окремо, так і в складі цілком конкретних пристроїв від вищеназваних компаній.

Leap Motion, підключений до ноутбука, розпізнає «ширяють» поруч з ним об'єкти

Успіх Leap Motion був забезпечений ціною (в 2-3 рази доступніше Kinect) і надкомпактний розмірами самого сенсора.

Сьогодні команда LM працює над другою версією пристрою, яка зробить потужний стрибок у якості розпізнавання рухів:

Друге покоління технологій Leap Motion

На цьому тлі майбутнє Kinect'а здається вже далеко не безхмарним. Microsoft провела величезну роботу, завдяки якій версія 2.0 виглядає на голову вище і більш технологічні свого попередника. Але, на жаль, цього виявляється мало. Нездатність компанії побудувати екосистему навколо гаджета, створити достатню кількість ексклюзивних проектів і наочно показати сфери застосування, призводить до стагнації всієї ідеї безконтактного контролера.

Крім того, виробників, які могли б інтегрувати Kinect в свої пристрої, відлякує завищена ціна і відносно великі габарити сенсора, що не дозволяють легко оснастити їм моноблок або ноутбук.

В результаті висновки дуже суперечливі. Перед нами унікальна ідея, де Microsoft виступила мало не першовідкривачем, і потужна еволюція цієї ідеї у вигляді Kinect 2.0. Однак ряд проблем і, перш за все, відсутність конкретних, яскравих ідей роблять сьогодні Kinect полубесполезной іграшкою в очах більшості користувачів, залишаючи яскраві емоції і бажання по-справжньому працювати з сенсором лише у комп'ютерних ентузіастів.

Нещодавно я купив xbox 360 kinect, щоб погратися з побудовою карт місцевості у робота. Купити, то купив, тільки ось роз'єм мене розчарував, виявляється для PC є спеціальна версія з перехідником, і вона дорожча, але інженери не проведеш, якщо вона якось працює в x-box, з usb інтерфейсом, то і на комп'ютері має все працювати. Почитавши форуми, все стало зрозуміло через пару хвилин - досить порізати кабель і до потрібних проводам подати 12В, інші кинути на звичайний USB. Різати було шкода, але чекати перехідник з ALI Довго, купувати в Ростові - недоцільно, а приставка у мене плейстешн, і підключити це диво все одно нікуди. Взагалі терморегулятори спеціального роз'єму такая.Понятно, що всі ці контакти не містять окремих проводів, і розрізавши кабель я побачив таку картину. Разом у нас 5 проводів - 4 стандартні для USB, один для подачі 12В.
Припаюємо роз'єм FW типу «мама», як раз ви знайдете багато блоків 12в, з таким роз'ємом типу «тато», інші роз'єми споює згідно зі стандартними кольорами USB.

Землю (чорний провід) об'єднуємо і з кабелем USB, який йде до комп'ютера, і з роз'ємом для 12В. В результаті отримуємо таку картину

Спочатку я захотів перевірити працездатність з системою Windows, витратив багато сил на установку рідної SDK з сайту майкрософт, переконався що начебто працює, але що з цим усім робити нічого не придумав.

Потім перевантажився в Linux, і з'ясував, що є такий відкритий проект - OpenKinect. Дотримуючись всіх інструкцій з github, встановив його на комп'ютер. Моя мета була перевірити працездатність пристрою і переконатися, що я порізав кабель правильно. Для цього я використовував утиліту RtabMAP

На сторінці детально описано як її встановити для всіх типів unix систем. Після всіх цих мук, нарешті таки я побачив заповітну картинку побудови 3д моделі моєї кімнати

Перевірив потім ще й в офісі. Працює! Після побудови можна карту покрутити - для людини, який це бачить перший раз все виглядає фантастично)