SlideShare a Scribd company logo
강사 소개
• Kincet 관련 작업
– 키넥트 펀치백 테스트
– 키넥트 기능성 게임 달걀 받기, 두더쥐 잡기
– 키넥트 농사 체험 (중앙 박물관 어린이 박물관)
– 키넥트 울트라 빔, 포스, 날아다니기등 예제
– 3D 프레젠테이션 데모
Contents
• Overview
• Device
• Driver, Library and Software
• Kinect Application Basic
• Application
OVERVIEW
키넥트란 무엇인가?
Kinect
• Natural User Interface
– Motion sensing
– Speech Recognition
적외선 발사 반사된 적외선
수신
Natural User Interface?
• NUI http://en.wikipedia.org/wiki/Natural_user_interface
How does it work?
Labeled
Depth Image
Image
이미지 (Image)
깊이 이미지
(Depth Image)
Labeling
Skeleton Tracking
Etc..
Demo
• NI MATE
– 키넥트로 이미지, 깊이 이미지등을 받아
“뼈대(Skeleton)”등을 구성한 후 다른
프로그램에 전달 해줌
– http://www.ni-mate.com/
• Skanect
– 키넥트를 통해 3차원 스캔 가능
– http://skanect.manctl.com/
키넥트가 인식하는 뼈대 구조
• 20 parts
Kinect 응용 분야
• Kinect Games
– http://www.youtube.com/watch?v=7jEJS9rkc48
– http://starwars.com/watch/vg_kinect_trailer.html
• Kinect for Education
– https://www.youtube.com/watch?v=V0nv1A9nFy8
– http://marketplace.xbox.com/en-US/Product/Kinect-
Sesame-Street-TV/66acd000-77fe-1000-9115-
d8024d5309da
Kinect 응용 분야
• 3D Scan
– http://skanect.manctl.com/
– http://reconstructme.net/
• Motion Capture
– http://www.ni-mate.com/
– http://ipisoft.com/download/
• You can do crazy things!!
– http://code.google.com/p/kinect-ultra/
– http://www.youtube.com/watch?v=jhoITmb4518
Other NUIs
• Microsoft PixelSense
– http://www.youtube.com/user/mspixelsense
• 3D Immersive Touch (e.g. Apple’s Devices)
– Multi User
– Multi Touch
– Interact with 3D Virtual Environments
• Kinect like Devices
• LeapMotion
• MYO
DEVICES
기넥트 기기에 대해 자세히 알아보자
Kinect or similar devices
• Kinect for Xbox 360
– The original(old) one
– Developed for Xbox360
– Can be used in other env (Mac, PC)
• Kinect for Windows
– Include Developer License
– Additional Charge
– Support Near Mode
• Xtion (ASUS)
– Smaller, Lighter
– Less quality, No Motor
• Xtion Live (ASUS)
http://www.microsoft.com/en-us/kinectforwindows/news/faq.aspx
Coming Soon!!
• Prime Sense Capri
Assembly
• http://www.ifixit.com/Teardown/Microsoft+Kinect+Teardown/4066/3
DRIVER, LIBRARY AND SOFTWARE
필요한 라이브러리 및 소프트웨어들의 구성을 알아보자
Development Environments
• MS Kinect SDK
– Only Support Kinect for Windows and Xbox360 (?)
– Support all Kinect functions
• Motor, Speech, Near Mode and etc.
– Good Examples (Face, eye tracking etc)
• OpenNI
– Open Source
– Supported by PrimeSense
– Support all Kinect Like Devices
– PrimeSense
• Israeli company provides 3D sensing technology for Kinect
OpenNI
• Architecture
OpenNI API
• OpenNI
– Voice
– Voice Command
– Hand Gesture
– Body Motion Tracking
– Not full function support for Kinect (?)
Middleware for OpenNI
• NITE (PrimeSense)
Physical Device
Voice, Hand, Motion APIs
MS Kinect SDK
Summarize @_@
• Complex
Kinect SDK OpenNI
Windows MacOS Linux
설치– 기본 드라이버 및
라이브러리
• MS Kinect SDK 또는 OpenNI 설치 (우리는
OpenNI만) – 설치시 기기는 분리
– MS Kinect Runtime 1.6 :
• http://www.microsoft.com/en-
us/download/details.aspx?id=34811
– OpenNI v2.1 :
• http://www.openni.org/openni-sdk/
설치할 것들 - 미들웨어들
• 적당히 필요한 것들 있으면 설치
– http://www.openni.org/software/?pg=1&cat_slug
=file-cat1#.UY6bLCuYFa8
KINECT APPLICATION BASICS
키넥트 가지고 놀때 필요한
기술들
• AI (Artificial Intelligence)
– Neural Net
– Support Vector Machine (SVM)
– …
• Computer Vision
• Image Processing
• Skeleton Animation (with skin)
• FSM (Finite State Machine)
• 3D Graphics
Basic Process
• 1. Recognition Setting / Start
– Initial Pose or Etc
• 2. Input Data (Depth, Image, Skeleton, Hand
Point, …)
• 3. Process Data
– 이 부분을 이전 장의 기술들로 처리
Recognition Setting
• Hand point or Skeleton Mode
– Hand point
• Start with gesture (wave hand)
• Unstable
– Skeleton
• Initial Pose
• Stable when all bones are visible from Kinect
• Mirror Mode Support
• MS Kinect only
– Seated Mode (Unstable)
– Kinect for windows only
• Near Mode
주요 Input Data
• Depth Image
• Image
• Hand points
• Skeleton
– Joint position
– Joint rotation
– Root position
• Voice and voice position
Output
• Screen 상에 물체의 위치, 색, 기타속성등을
변경
• Motor Control
APPLICATION
Python Programming, 3D Scan & Motion Capture
응용 해보기 예제 소개
1. 간단한 조작 해보기
– Blender + Python
– Blender Game Engine + Python
– OpenNI -> NI Mate -> Blender Game Engine Python
코딩
2. Motion Capture
– OpenNI -> NI Mate -> Blender -> .bvh 파일 생성
3. 3D Scan
– OpenNI/MS SDK -> SKNECT -> .ply등 모델 파일 생성
플러그인들 및 프로그램
• NI Mate : 모션 데이터등 응용프로그램에 전달
– http://www.ni-mate.com/download/
– 설치 후 Trial 버전으로 인증하는 과정이 필요함
– Blender Plugin 설치
• http://www.ni-mate.com/use/blender/
• 3D 파일 및 애니메이션 편집 툴
– Blender 2.66 버전으로 설치 (2.67은 문제 있음)
• http://download.blender.org/release/Blender2.66/
• SKANECT: 3D Scan
– http://skanect.manctl.com/download/
Blender Python
• Blender Python Tutorial
– http://cgcookie.com/blender/2011/08/26/introductio
n-to-scripting-with-python-in-blender/
• Basics
1. 새로운 창 생성
2. Text Editor, Syntax Highlighting
3. New Text
4. 코딩 하기
5. Run Script
6. Save File / Open File
Blender Python Ex 1
1. Open Python Console
2. bpy.context.active_object
• ctrl + space : 자동 완성
3. bpy.context.active_object.location
4. bpy.context.active_object.location.x = 2
5. Obj = bpy.data.objects*“Cube”+
6. Obj.location.z = 3
7. 기타 물체 속성 테스트
Blender Python Ex 2
Blender Python Ex 3
Blender Python & Game Engine
1. Open Logic Editor
2. Sensors -> Add Sensor -> Always
– Activate TRUE level triggering
3. Controllers -> Add Controller -> Python Script
– Set Python Script
4. Property -> Physics tab
– Physics Test
• Tutorials
– http://cgcookie.com/blender/2011/09/22/introduction-to-
scripting-in-the-blender-game-engine-part-01/
– http://cgcookie.com/blender/2011/09/26/introduction-to-
scripting-in-the-blender-game-engine-part-02/
Blender Python Game Engine Ex 1
• 물체를 위쪽 화살표키로 움직이기
Blender Python Game Engine Ex 2
• 부닫치면 “Hit” 메세지 표시하기
NI Mate & Blender Tutorial
• Blender, NI Mate Tutorial
– Basic
• http://www.youtube.com/watch?feature=player_embedded&v=b
QhS0SFQ8Gg
– Motion Capture
• http://www.youtube.com/watch?v=bQhS0SFQ8Gg
• http://www.youtube.com/watch?v=-nN0neRp444
• http://www.youtube.com/watch?v=EogegvTG3Po
– Model Download: http://www.blendswap.com/blends/view/7093
– Bone, Skinning
• http://www.youtube.com/watch?v=8aFbTy5nDeo
NI Mate & Blender Game Engine
• 아바타 조종해서 물방울 터트리기
– 스스로 해봅시다
NI Mate + Blender Game Engine +
SKNECT(3D Scan)
• Don’t Touch Me! 프로그램 만들어 보기
– 키넥트를 사용해 모델을 건드리면 뒤로
물러나게 하기
• 준비
– SKNECT
• 3D 모델 스캔
• 텍스쳐 맵핑기능은 아직 지원 안함
• 버텍스 칼라 지원
Other Helpful Programs
• 3D Scan
– ReconstructMe
• http://reconstructme.net/
– SCENECT
• http://3d-app-center.faro.com/index.php/stand-alone-apps-
faro-scenect
– 123D Catch: 아이폰 만으로 3차원 모델 생성가능
• http://www.123dapp.com/catch
• Motion Capture
– iPi Motion Capture: 여러 개의 키넥트/카메라로
정교한 모션 캡쳐 가능
• http://ipisoft.com/

More Related Content

What's hot

Unity: Introduction
Unity: IntroductionUnity: Introduction
Unity: Introduction
Václav Vančura
 
Game engine introduction and approach
Game engine introduction and approachGame engine introduction and approach
Game engine introduction and approachDuy Tan Geek
 
Unity3D Programming
Unity3D ProgrammingUnity3D Programming
Unity3D Programming
Michael Ivanov
 
Game Development with Unity - by Mickey MacDonald
Game Development with Unity - by Mickey MacDonaldGame Development with Unity - by Mickey MacDonald
Game Development with Unity - by Mickey MacDonald
Canada's Technology Triangle .NET User Group
 
Game development -session on unity 3d
Game development -session on unity 3d Game development -session on unity 3d
Game development -session on unity 3d
Muhammad Maaz Irfan
 
Unity Programming
Unity Programming Unity Programming
Unity Programming
Sperasoft
 
Unity - Game Engine
Unity - Game EngineUnity - Game Engine
Unity - Game Engine
Geeks Anonymes
 
Game Engine Overview
Game Engine OverviewGame Engine Overview
Game Engine OverviewSharad Mitra
 
Game Development with Unity
Game Development with UnityGame Development with Unity
Game Development with Unity
davidluzgouveia
 
Unity Introduction
Unity IntroductionUnity Introduction
Unity Introduction
Juwal Bose
 
Unity 3D game engine seminar
Unity 3D game engine  seminarUnity 3D game engine  seminar
Unity 3D game engine seminar
NikhilThorat15
 
Hands On with the Unity 5 Game Engine! - Andy Touch - Codemotion Roma 2015
Hands On with the Unity 5 Game Engine! - Andy Touch - Codemotion Roma 2015Hands On with the Unity 5 Game Engine! - Andy Touch - Codemotion Roma 2015
Hands On with the Unity 5 Game Engine! - Andy Touch - Codemotion Roma 2015
Codemotion
 
Unity 3D, A game engine
Unity 3D, A game engineUnity 3D, A game engine
Unity 3D, A game engine
Md. Irteza rahman Masud
 
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
Unite2017Tokyo
 
Extending unity3D Editor
Extending unity3D  EditorExtending unity3D  Editor
Extending unity3D Editor
Muhammad Ahmed
 
Introduction to Unity3D Game Engine
Introduction to Unity3D Game EngineIntroduction to Unity3D Game Engine
Introduction to Unity3D Game Engine
Mohsen Mirhoseini
 
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
gamifi.cc
 
Unity L01 - Game Development
Unity L01 - Game DevelopmentUnity L01 - Game Development
Unity L01 - Game Development
Mohammad Shaker
 
Mobile Game Development in Unity
Mobile Game Development in UnityMobile Game Development in Unity
Mobile Game Development in Unity
Hakan Saglam
 

What's hot (20)

Unity: Introduction
Unity: IntroductionUnity: Introduction
Unity: Introduction
 
Game engine introduction and approach
Game engine introduction and approachGame engine introduction and approach
Game engine introduction and approach
 
Unity3D Programming
Unity3D ProgrammingUnity3D Programming
Unity3D Programming
 
Game Development with Unity - by Mickey MacDonald
Game Development with Unity - by Mickey MacDonaldGame Development with Unity - by Mickey MacDonald
Game Development with Unity - by Mickey MacDonald
 
Game development -session on unity 3d
Game development -session on unity 3d Game development -session on unity 3d
Game development -session on unity 3d
 
Unity Programming
Unity Programming Unity Programming
Unity Programming
 
Unity - Game Engine
Unity - Game EngineUnity - Game Engine
Unity - Game Engine
 
Game Engine Overview
Game Engine OverviewGame Engine Overview
Game Engine Overview
 
Game Development with Unity
Game Development with UnityGame Development with Unity
Game Development with Unity
 
Unity Introduction
Unity IntroductionUnity Introduction
Unity Introduction
 
New
NewNew
New
 
Unity 3D game engine seminar
Unity 3D game engine  seminarUnity 3D game engine  seminar
Unity 3D game engine seminar
 
Hands On with the Unity 5 Game Engine! - Andy Touch - Codemotion Roma 2015
Hands On with the Unity 5 Game Engine! - Andy Touch - Codemotion Roma 2015Hands On with the Unity 5 Game Engine! - Andy Touch - Codemotion Roma 2015
Hands On with the Unity 5 Game Engine! - Andy Touch - Codemotion Roma 2015
 
Unity 3D, A game engine
Unity 3D, A game engineUnity 3D, A game engine
Unity 3D, A game engine
 
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
 
Extending unity3D Editor
Extending unity3D  EditorExtending unity3D  Editor
Extending unity3D Editor
 
Introduction to Unity3D Game Engine
Introduction to Unity3D Game EngineIntroduction to Unity3D Game Engine
Introduction to Unity3D Game Engine
 
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
 
Unity L01 - Game Development
Unity L01 - Game DevelopmentUnity L01 - Game Development
Unity L01 - Game Development
 
Mobile Game Development in Unity
Mobile Game Development in UnityMobile Game Development in Unity
Mobile Game Development in Unity
 

Similar to Kinect kunkuk final_

Vipul divyanshu documentation on Kinect and Motion Tracking
Vipul divyanshu documentation  on Kinect and Motion TrackingVipul divyanshu documentation  on Kinect and Motion Tracking
Vipul divyanshu documentation on Kinect and Motion TrackingVipul Divyanshu
 
The not so short introduction to Kinect
The not so short introduction to KinectThe not so short introduction to Kinect
The not so short introduction to Kinect
AXM
 
PyKinect: Body Iteration Application Development Using Python
PyKinect: Body Iteration Application Development Using PythonPyKinect: Body Iteration Application Development Using Python
PyKinect: Body Iteration Application Development Using Python
pycontw
 
Microservices for the Masses with Spring Boot and JHipster - Chicago JUG 2018
Microservices for the Masses with Spring Boot and JHipster - Chicago JUG 2018Microservices for the Masses with Spring Boot and JHipster - Chicago JUG 2018
Microservices for the Masses with Spring Boot and JHipster - Chicago JUG 2018
Matt Raible
 
Microsoft Kinect for Human-Computer Interaction
Microsoft Kinect for  Human-Computer InteractionMicrosoft Kinect for  Human-Computer Interaction
Microsoft Kinect for Human-Computer Interaction
Mihir Patel
 
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Utah JUG...
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Utah JUG...Microservices for the Masses with Spring Boot, JHipster, and OAuth - Utah JUG...
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Utah JUG...
Matt Raible
 
Nui e biometrics in windows 10
Nui e biometrics in windows 10Nui e biometrics in windows 10
Nui e biometrics in windows 10
Marco D'Alessandro
 
Kinect for Windows SDK
Kinect for Windows SDKKinect for Windows SDK
Kinect for Windows SDK
Roberto Reto
 
Deploy Real-Time Object Detectors on Intel® Movidius™ Neural Compute Stick
Deploy Real-Time Object Detectors on Intel® Movidius™ Neural Compute StickDeploy Real-Time Object Detectors on Intel® Movidius™ Neural Compute Stick
Deploy Real-Time Object Detectors on Intel® Movidius™ Neural Compute Stick
Intel® Software
 
2 track kinect@Bicocca - hardware e funzinamento
2   track kinect@Bicocca - hardware e funzinamento2   track kinect@Bicocca - hardware e funzinamento
2 track kinect@Bicocca - hardware e funzinamentoMatteo Valoriani
 
How To Install OpenCV On Windows? Edureka
How To Install OpenCV On Windows? EdurekaHow To Install OpenCV On Windows? Edureka
How To Install OpenCV On Windows? Edureka
Edureka!
 
License Plate Recognition System using Python and OpenCV
License Plate Recognition System using Python and OpenCVLicense Plate Recognition System using Python and OpenCV
License Plate Recognition System using Python and OpenCV
Vishal Polley
 
Building a Thought Controlled Drone
Building a Thought Controlled DroneBuilding a Thought Controlled Drone
Building a Thought Controlled Drone
Jim McKeeth
 
IEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
IEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architectureIEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
IEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
Sebastien Kuntz
 
Kivy report
Kivy reportKivy report
Kivy report
shobhit bhatnagar
 
01 foundations
01 foundations01 foundations
01 foundations
ankit_ppt
 

Similar to Kinect kunkuk final_ (20)

Vipul divyanshu documentation on Kinect and Motion Tracking
Vipul divyanshu documentation  on Kinect and Motion TrackingVipul divyanshu documentation  on Kinect and Motion Tracking
Vipul divyanshu documentation on Kinect and Motion Tracking
 
Kinect
KinectKinect
Kinect
 
Kinect
KinectKinect
Kinect
 
Kinect Lab Pt.
Kinect Lab Pt.Kinect Lab Pt.
Kinect Lab Pt.
 
The not so short introduction to Kinect
The not so short introduction to KinectThe not so short introduction to Kinect
The not so short introduction to Kinect
 
PyKinect: Body Iteration Application Development Using Python
PyKinect: Body Iteration Application Development Using PythonPyKinect: Body Iteration Application Development Using Python
PyKinect: Body Iteration Application Development Using Python
 
Microservices for the Masses with Spring Boot and JHipster - Chicago JUG 2018
Microservices for the Masses with Spring Boot and JHipster - Chicago JUG 2018Microservices for the Masses with Spring Boot and JHipster - Chicago JUG 2018
Microservices for the Masses with Spring Boot and JHipster - Chicago JUG 2018
 
Microsoft Kinect for Human-Computer Interaction
Microsoft Kinect for  Human-Computer InteractionMicrosoft Kinect for  Human-Computer Interaction
Microsoft Kinect for Human-Computer Interaction
 
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Utah JUG...
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Utah JUG...Microservices for the Masses with Spring Boot, JHipster, and OAuth - Utah JUG...
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Utah JUG...
 
Nui e biometrics in windows 10
Nui e biometrics in windows 10Nui e biometrics in windows 10
Nui e biometrics in windows 10
 
Kinect for Windows SDK
Kinect for Windows SDKKinect for Windows SDK
Kinect for Windows SDK
 
Kinectomania
KinectomaniaKinectomania
Kinectomania
 
Deploy Real-Time Object Detectors on Intel® Movidius™ Neural Compute Stick
Deploy Real-Time Object Detectors on Intel® Movidius™ Neural Compute StickDeploy Real-Time Object Detectors on Intel® Movidius™ Neural Compute Stick
Deploy Real-Time Object Detectors on Intel® Movidius™ Neural Compute Stick
 
2 track kinect@Bicocca - hardware e funzinamento
2   track kinect@Bicocca - hardware e funzinamento2   track kinect@Bicocca - hardware e funzinamento
2 track kinect@Bicocca - hardware e funzinamento
 
How To Install OpenCV On Windows? Edureka
How To Install OpenCV On Windows? EdurekaHow To Install OpenCV On Windows? Edureka
How To Install OpenCV On Windows? Edureka
 
License Plate Recognition System using Python and OpenCV
License Plate Recognition System using Python and OpenCVLicense Plate Recognition System using Python and OpenCV
License Plate Recognition System using Python and OpenCV
 
Building a Thought Controlled Drone
Building a Thought Controlled DroneBuilding a Thought Controlled Drone
Building a Thought Controlled Drone
 
IEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
IEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architectureIEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
IEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
 
Kivy report
Kivy reportKivy report
Kivy report
 
01 foundations
01 foundations01 foundations
01 foundations
 

Kinect kunkuk final_

  • 1.
  • 2. 강사 소개 • Kincet 관련 작업 – 키넥트 펀치백 테스트 – 키넥트 기능성 게임 달걀 받기, 두더쥐 잡기 – 키넥트 농사 체험 (중앙 박물관 어린이 박물관) – 키넥트 울트라 빔, 포스, 날아다니기등 예제 – 3D 프레젠테이션 데모
  • 3. Contents • Overview • Device • Driver, Library and Software • Kinect Application Basic • Application
  • 5. Kinect • Natural User Interface – Motion sensing – Speech Recognition 적외선 발사 반사된 적외선 수신
  • 6. Natural User Interface? • NUI http://en.wikipedia.org/wiki/Natural_user_interface
  • 7. How does it work? Labeled Depth Image Image 이미지 (Image) 깊이 이미지 (Depth Image) Labeling Skeleton Tracking Etc..
  • 8. Demo • NI MATE – 키넥트로 이미지, 깊이 이미지등을 받아 “뼈대(Skeleton)”등을 구성한 후 다른 프로그램에 전달 해줌 – http://www.ni-mate.com/ • Skanect – 키넥트를 통해 3차원 스캔 가능 – http://skanect.manctl.com/
  • 9. 키넥트가 인식하는 뼈대 구조 • 20 parts
  • 10. Kinect 응용 분야 • Kinect Games – http://www.youtube.com/watch?v=7jEJS9rkc48 – http://starwars.com/watch/vg_kinect_trailer.html • Kinect for Education – https://www.youtube.com/watch?v=V0nv1A9nFy8 – http://marketplace.xbox.com/en-US/Product/Kinect- Sesame-Street-TV/66acd000-77fe-1000-9115- d8024d5309da
  • 11. Kinect 응용 분야 • 3D Scan – http://skanect.manctl.com/ – http://reconstructme.net/ • Motion Capture – http://www.ni-mate.com/ – http://ipisoft.com/download/ • You can do crazy things!! – http://code.google.com/p/kinect-ultra/ – http://www.youtube.com/watch?v=jhoITmb4518
  • 12. Other NUIs • Microsoft PixelSense – http://www.youtube.com/user/mspixelsense • 3D Immersive Touch (e.g. Apple’s Devices) – Multi User – Multi Touch – Interact with 3D Virtual Environments • Kinect like Devices • LeapMotion • MYO
  • 13. DEVICES 기넥트 기기에 대해 자세히 알아보자
  • 14. Kinect or similar devices • Kinect for Xbox 360 – The original(old) one – Developed for Xbox360 – Can be used in other env (Mac, PC) • Kinect for Windows – Include Developer License – Additional Charge – Support Near Mode • Xtion (ASUS) – Smaller, Lighter – Less quality, No Motor • Xtion Live (ASUS) http://www.microsoft.com/en-us/kinectforwindows/news/faq.aspx
  • 15. Coming Soon!! • Prime Sense Capri
  • 17. DRIVER, LIBRARY AND SOFTWARE 필요한 라이브러리 및 소프트웨어들의 구성을 알아보자
  • 18. Development Environments • MS Kinect SDK – Only Support Kinect for Windows and Xbox360 (?) – Support all Kinect functions • Motor, Speech, Near Mode and etc. – Good Examples (Face, eye tracking etc) • OpenNI – Open Source – Supported by PrimeSense – Support all Kinect Like Devices – PrimeSense • Israeli company provides 3D sensing technology for Kinect
  • 20. OpenNI API • OpenNI – Voice – Voice Command – Hand Gesture – Body Motion Tracking – Not full function support for Kinect (?)
  • 21. Middleware for OpenNI • NITE (PrimeSense) Physical Device Voice, Hand, Motion APIs
  • 23. Summarize @_@ • Complex Kinect SDK OpenNI Windows MacOS Linux
  • 24. 설치– 기본 드라이버 및 라이브러리 • MS Kinect SDK 또는 OpenNI 설치 (우리는 OpenNI만) – 설치시 기기는 분리 – MS Kinect Runtime 1.6 : • http://www.microsoft.com/en- us/download/details.aspx?id=34811 – OpenNI v2.1 : • http://www.openni.org/openni-sdk/
  • 25. 설치할 것들 - 미들웨어들 • 적당히 필요한 것들 있으면 설치 – http://www.openni.org/software/?pg=1&cat_slug =file-cat1#.UY6bLCuYFa8
  • 27. 키넥트 가지고 놀때 필요한 기술들 • AI (Artificial Intelligence) – Neural Net – Support Vector Machine (SVM) – … • Computer Vision • Image Processing • Skeleton Animation (with skin) • FSM (Finite State Machine) • 3D Graphics
  • 28. Basic Process • 1. Recognition Setting / Start – Initial Pose or Etc • 2. Input Data (Depth, Image, Skeleton, Hand Point, …) • 3. Process Data – 이 부분을 이전 장의 기술들로 처리
  • 29. Recognition Setting • Hand point or Skeleton Mode – Hand point • Start with gesture (wave hand) • Unstable – Skeleton • Initial Pose • Stable when all bones are visible from Kinect • Mirror Mode Support • MS Kinect only – Seated Mode (Unstable) – Kinect for windows only • Near Mode
  • 30. 주요 Input Data • Depth Image • Image • Hand points • Skeleton – Joint position – Joint rotation – Root position • Voice and voice position
  • 31. Output • Screen 상에 물체의 위치, 색, 기타속성등을 변경 • Motor Control
  • 32. APPLICATION Python Programming, 3D Scan & Motion Capture
  • 33. 응용 해보기 예제 소개 1. 간단한 조작 해보기 – Blender + Python – Blender Game Engine + Python – OpenNI -> NI Mate -> Blender Game Engine Python 코딩 2. Motion Capture – OpenNI -> NI Mate -> Blender -> .bvh 파일 생성 3. 3D Scan – OpenNI/MS SDK -> SKNECT -> .ply등 모델 파일 생성
  • 34. 플러그인들 및 프로그램 • NI Mate : 모션 데이터등 응용프로그램에 전달 – http://www.ni-mate.com/download/ – 설치 후 Trial 버전으로 인증하는 과정이 필요함 – Blender Plugin 설치 • http://www.ni-mate.com/use/blender/ • 3D 파일 및 애니메이션 편집 툴 – Blender 2.66 버전으로 설치 (2.67은 문제 있음) • http://download.blender.org/release/Blender2.66/ • SKANECT: 3D Scan – http://skanect.manctl.com/download/
  • 35. Blender Python • Blender Python Tutorial – http://cgcookie.com/blender/2011/08/26/introductio n-to-scripting-with-python-in-blender/ • Basics 1. 새로운 창 생성 2. Text Editor, Syntax Highlighting 3. New Text 4. 코딩 하기 5. Run Script 6. Save File / Open File
  • 36. Blender Python Ex 1 1. Open Python Console 2. bpy.context.active_object • ctrl + space : 자동 완성 3. bpy.context.active_object.location 4. bpy.context.active_object.location.x = 2 5. Obj = bpy.data.objects*“Cube”+ 6. Obj.location.z = 3 7. 기타 물체 속성 테스트
  • 39. Blender Python & Game Engine 1. Open Logic Editor 2. Sensors -> Add Sensor -> Always – Activate TRUE level triggering 3. Controllers -> Add Controller -> Python Script – Set Python Script 4. Property -> Physics tab – Physics Test • Tutorials – http://cgcookie.com/blender/2011/09/22/introduction-to- scripting-in-the-blender-game-engine-part-01/ – http://cgcookie.com/blender/2011/09/26/introduction-to- scripting-in-the-blender-game-engine-part-02/
  • 40. Blender Python Game Engine Ex 1 • 물체를 위쪽 화살표키로 움직이기
  • 41. Blender Python Game Engine Ex 2 • 부닫치면 “Hit” 메세지 표시하기
  • 42. NI Mate & Blender Tutorial • Blender, NI Mate Tutorial – Basic • http://www.youtube.com/watch?feature=player_embedded&v=b QhS0SFQ8Gg – Motion Capture • http://www.youtube.com/watch?v=bQhS0SFQ8Gg • http://www.youtube.com/watch?v=-nN0neRp444 • http://www.youtube.com/watch?v=EogegvTG3Po – Model Download: http://www.blendswap.com/blends/view/7093 – Bone, Skinning • http://www.youtube.com/watch?v=8aFbTy5nDeo
  • 43. NI Mate & Blender Game Engine • 아바타 조종해서 물방울 터트리기 – 스스로 해봅시다
  • 44. NI Mate + Blender Game Engine + SKNECT(3D Scan) • Don’t Touch Me! 프로그램 만들어 보기 – 키넥트를 사용해 모델을 건드리면 뒤로 물러나게 하기 • 준비 – SKNECT • 3D 모델 스캔 • 텍스쳐 맵핑기능은 아직 지원 안함 • 버텍스 칼라 지원
  • 45. Other Helpful Programs • 3D Scan – ReconstructMe • http://reconstructme.net/ – SCENECT • http://3d-app-center.faro.com/index.php/stand-alone-apps- faro-scenect – 123D Catch: 아이폰 만으로 3차원 모델 생성가능 • http://www.123dapp.com/catch • Motion Capture – iPi Motion Capture: 여러 개의 키넥트/카메라로 정교한 모션 캡쳐 가능 • http://ipisoft.com/