SlideShare uma empresa Scribd logo
1 de 52
Kinect를 활용한                     Chan Seok Kang
         동작 인식 프로그래밍                      KIST
                                    2012.12.08
           KINECT FOR WINDOWS
Biography
            강찬석 (Chan Seok Kang)
            • 2011 Microsoft Student Partner 5기
            • 2012 Imagine Cup 2012 :
              Kinect Fun Lab Semi-Finalist
            • KIST 실감교류 연구센터 위촉 연구원

                 Blog : 자신에 대한 고찰 ( http://talkingaboutme.tistory.com )
                          Facebook : http://www.facebook.com/kcsgoodboy

               KINECT FOR WINDOWS
Today`s Session

• Review : Kinect Explorer(1h)
• Kinect QuickStart 시청 및 질의 응답 ( 1h )
• Beam Angle Detector ( 1.5h )




                KINECT FOR WINDOWS
11th Project
: Review – Kinect Explorer
              KINECT FOR WINDOWS
Review – Kinect Explorer
• Add Reference File & namespace




                 KINECT FOR WINDOWS
Review – Kinect Explorer
• Split the Grid




                   KINECT FOR WINDOWS
Review – Kinect Explorer
• Insert the ImageControl & Canvas, Button




                  KINECT FOR WINDOWS
Review – Kinect Explorer
• XAML View




              KINECT FOR WINDOWS
Review – Kinect Explorer
• Initialize Kinect & Enable Stream




                   KINECT FOR WINDOWS
Review – Kinect Explorer
• Fill out the ColorStream




                   KINECT FOR WINDOWS
Review – Kinect Explorer
• Fill out the DepthStream




                   KINECT FOR WINDOWS
Review – Kinect Explorer
• Fill out the Skeleton Stream




                   KINECT FOR WINDOWS
Review – Kinect Explorer
• #region Skeleton




                     KINECT FOR WINDOWS
Review – Kinect Explorer
• #endregion Skeleton




                  KINECT FOR WINDOWS
Review – Kinect Explorer
• Define the DrawBone




                 KINECT FOR WINDOWS
Review – Kinect Explorer
• Use the DrawBone




                 KINECT FOR WINDOWS
Review – Kinect Explorer
• test




                 KINECT FOR WINDOWS
Review – Kinect Explorer
• Make a Button Event




                  KINECT FOR WINDOWS
Review – Kinect Explorer
• Fill out the Button Event




                    KINECT FOR WINDOWS
Review – Kinect Explorer
• Result




               KINECT FOR WINDOWS
Review – Kinect Explorer


• Insert Anything you want!
  (Near mode, Seated Mode, slider etc…)



                  KINECT FOR WINDOWS
Kinect Studio
• Test the Parameter (Depth Data , Position…)




                   KINECT FOR WINDOWS
Break? Break!

  KINECT FOR WINDOWS
Kinect QuickStart
- Audio Fundamentals
            KINECT FOR WINDOWS
Kinect QuickStart




    KINECT FOR WINDOWS
Kinect QuickStart
• 4 –Array High Quality Microphone
  - Can get a direction of SoundSource




                   KINECT FOR WINDOWS
Kinect Audio로 할 수 있는 것
•   Audio Capture -> Recorder
•   Sound Information
•   Speech Recognition
•   Raw Voice Data Access (using Software-Filter)

    ->하지만 오디오컨트롤 자체가 하드웨어와 연관되어 있어서
      세밀한 조절을 위해서는 궁극적으로 C++을 이용해야 함.


                     KINECT FOR WINDOWS
C++에서 제공하는 API
• KinectAudio DirectX Media Object(DMO)
• Windows Audio Session API (WASAPI)




                 KINECT FOR WINDOWS
SOUND POSITION
• Sound Source Angle : 소리가 나는 방향 과 강도
• Beam Angle : 소리가 진행하는 방향



  -50                0             +50



              KINECT FOR WINDOWS
Recording
• KinectAudioSource가 일종의 버퍼 역할
• Use Echo Cancellation to not record PC sound




                  KINECT FOR WINDOWS
Attention!!
• 반드시 AudioStream은 SkeletonStream을 활성화
  시킨 후에 활성화시켜야 함


kinectSensor.Start();
kinectSensor.AudioSource.Start(); // --> this will create an audio stream
kinectSensor.SkeletonStream.Enable(); // --> this will stop the audio stream as an undesired side effect


                                              나쁜 예

                                      KINECT FOR WINDOWS
Attention!!
• 반드시 AudioStream은 SkeletonStream을 활성화
  시킨 후에 활성화시켜야 함
   Workaround #1 (start audio after skeleton):
   kinectSensor.Start();
   kinectSensor.SkeletonStream.Enable();
   kinectSensor.AudioSource.Start();

   Workaround #2 (restart audio after skeleton):
   kinectSensor.Start();
   kinectSensor.AudioSource.Start(); // --> this will create an audio stream
   kinectSensor.SkeletonStream.Enable(); // --> this will stop the audio stream as an undesired side effect
   kinectSensor.AudioSource.Start(); // --> this will create another audio stream

                                              좋은 예

                                     KINECT FOR WINDOWS
Break? Break!

  KINECT FOR WINDOWS
12th Project
: Beam Angle Detector
               KINECT FOR WINDOWS
Beam Angle Detector
• Add Reference File & namespace




                 KINECT FOR WINDOWS
Beam Angle Detector
• Grid -> Canvas (Width:640 / Height: 480)




                   KINECT FOR WINDOWS
Beam Angle Detector
• Sound의 특성상 Thread 의 사용이 필요!!




             KINECT FOR WINDOWS
Beam Angle Detector
• Sound Initialize (순서 유의)




                 KINECT FOR WINDOWS
Beam Angle Detector
• 탐지판 생성




           KINECT FOR WINDOWS
BeamAngle
• test




          KINECT FOR WINDOWS
Beam Angle Detector
• Define DrawLine




                    KINECT FOR WINDOWS
Beam Angle Detector
• 탐지침 선언




           KINECT FOR WINDOWS
Beam Angle Detector
• 입력이 없을 때는 안보이게!




           KINECT FOR WINDOWS
Beam Angle Detector
• 실효값 구하기
 (SoundSourceAngle)




                      KINECT FOR WINDOWS
Beam Angle Detector
• 잠깐!!
  • SoundSourceAngle 자체는 키넥트를 기준으로
    판단하기 때문에 사람이 잘 보려면 -1을 곱해줘야 함.




              KINECT FOR WINDOWS
Beam Angle Detector
• RotateLine 정의




                  KINECT FOR WINDOWS
Beam Angle Detector
• Add the Line Thickness




                  KINECT FOR WINDOWS
Beam Angle Detector
• 현재값 구하기
 (BeamAngle)




                KINECT FOR WINDOWS
Beam Angle Detector
• Fill out the BeamAngleChanged




                  KINECT FOR WINDOWS
Beam Angle Detector
• Result




                KINECT FOR WINDOWS
If you need help,
       Just visit in My blog
 http://talkingaboutme.tistory.com



           KINECT FOR WINDOWS
KINECT FOR WINDOWS

Mais conteúdo relacionado

Mais procurados

The next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game EnginesThe next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game EnginesPooya Eimandar
 
Marco bizzantino Microsoft-Docker Meetup #4 Docker bday intro
Marco bizzantino Microsoft-Docker Meetup #4 Docker bday introMarco bizzantino Microsoft-Docker Meetup #4 Docker bday intro
Marco bizzantino Microsoft-Docker Meetup #4 Docker bday introKiratech
 
Okteto For Kubernetes Developer :- Container Camp 2020
Okteto For Kubernetes Developer :- Container Camp 2020 Okteto For Kubernetes Developer :- Container Camp 2020
Okteto For Kubernetes Developer :- Container Camp 2020 sangam biradar
 
Nextcloud Android App Development Process Insights
Nextcloud Android App Development Process InsightsNextcloud Android App Development Process Insights
Nextcloud Android App Development Process InsightsAndy Scherzinger
 
Teamcity CI Server
Teamcity CI ServerTeamcity CI Server
Teamcity CI ServerKnoldus Inc.
 
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile GamesUnreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile GamesEpic Games China
 

Mais procurados (7)

The next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game EnginesThe next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game Engines
 
Marco bizzantino Microsoft-Docker Meetup #4 Docker bday intro
Marco bizzantino Microsoft-Docker Meetup #4 Docker bday introMarco bizzantino Microsoft-Docker Meetup #4 Docker bday intro
Marco bizzantino Microsoft-Docker Meetup #4 Docker bday intro
 
Okteto For Kubernetes Developer :- Container Camp 2020
Okteto For Kubernetes Developer :- Container Camp 2020 Okteto For Kubernetes Developer :- Container Camp 2020
Okteto For Kubernetes Developer :- Container Camp 2020
 
Infrastructure as a Code
Infrastructure as a CodeInfrastructure as a Code
Infrastructure as a Code
 
Nextcloud Android App Development Process Insights
Nextcloud Android App Development Process InsightsNextcloud Android App Development Process Insights
Nextcloud Android App Development Process Insights
 
Teamcity CI Server
Teamcity CI ServerTeamcity CI Server
Teamcity CI Server
 
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile GamesUnreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
Unreal Open Day 2017 UE4 for Mobile: The Future of High Quality Mobile Games
 

Semelhante a Kinect seminar 121208v1(동영상x)

Kinect for Windows Quickstart Series
Kinect for Windows Quickstart SeriesKinect for Windows Quickstart Series
Kinect for Windows Quickstart SeriesRoberto Reto
 
Building Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDKBuilding Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDKDataLeader.io
 
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀Eason Kuo
 
The power of Kinect in 10 minutes
The power of Kinect in 10 minutesThe power of Kinect in 10 minutes
The power of Kinect in 10 minutesTom Kerkhove
 
Community Day 2013 - The Power of Kinect
Community Day 2013 - The Power of KinectCommunity Day 2013 - The Power of Kinect
Community Day 2013 - The Power of KinectTom Kerkhove
 
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 Pythonpycontw
 
Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2Dmytro Mindra
 
JUC Europe 2015: A Reproducible Build Environment with Jenkins
JUC Europe 2015: A Reproducible Build Environment with JenkinsJUC Europe 2015: A Reproducible Build Environment with Jenkins
JUC Europe 2015: A Reproducible Build Environment with JenkinsCloudBees
 
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 KinectAXM
 
Nui e biometrics in windows 10
Nui e biometrics in windows 10Nui e biometrics in windows 10
Nui e biometrics in windows 10Marco D'Alessandro
 
DIY motion capture with KinectToPin
DIY motion capture with KinectToPinDIY motion capture with KinectToPin
DIY motion capture with KinectToPinFakeGreenDress
 
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 architectureSebastien Kuntz
 
Visug: Say Hello to my little friend: a session on Kinect
Visug: Say Hello to my little friend: a session on KinectVisug: Say Hello to my little friend: a session on Kinect
Visug: Say Hello to my little friend: a session on KinectVisug
 
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
 
Spinnaker 파트 1
Spinnaker 파트 1Spinnaker 파트 1
Spinnaker 파트 1Steven Shim
 
March.2012.KinectForWindows
March.2012.KinectForWindowsMarch.2012.KinectForWindows
March.2012.KinectForWindowsReuben Ahmed
 
Mono for Game Developers - AltDevConf 2012
Mono for Game Developers - AltDevConf 2012Mono for Game Developers - AltDevConf 2012
Mono for Game Developers - AltDevConf 2012Xamarin
 
Design, Create & Explore Learning with Your Mobile Devices
Design, Create & Explore Learning with Your Mobile DevicesDesign, Create & Explore Learning with Your Mobile Devices
Design, Create & Explore Learning with Your Mobile DevicesNick Floro
 
RAD Design Presentslinkedin
RAD Design PresentslinkedinRAD Design Presentslinkedin
RAD Design PresentslinkedinSteven Scriver
 

Semelhante a Kinect seminar 121208v1(동영상x) (20)

Kinect for Windows Quickstart Series
Kinect for Windows Quickstart SeriesKinect for Windows Quickstart Series
Kinect for Windows Quickstart Series
 
Building Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDKBuilding Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDK
 
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
第八屆微軟學生大使 - 第三階段面試簡報主題 - Kinect開發概觀
 
The power of Kinect in 10 minutes
The power of Kinect in 10 minutesThe power of Kinect in 10 minutes
The power of Kinect in 10 minutes
 
Community Day 2013 - The Power of Kinect
Community Day 2013 - The Power of KinectCommunity Day 2013 - The Power of Kinect
Community Day 2013 - The Power of 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
 
Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2Odessa .NET User Group - Kinect v2
Odessa .NET User Group - Kinect v2
 
JUC Europe 2015: A Reproducible Build Environment with Jenkins
JUC Europe 2015: A Reproducible Build Environment with JenkinsJUC Europe 2015: A Reproducible Build Environment with Jenkins
JUC Europe 2015: A Reproducible Build Environment with Jenkins
 
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
 
Nui e biometrics in windows 10
Nui e biometrics in windows 10Nui e biometrics in windows 10
Nui e biometrics in windows 10
 
DIY motion capture with KinectToPin
DIY motion capture with KinectToPinDIY motion capture with KinectToPin
DIY motion capture with KinectToPin
 
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
 
Visug: Say Hello to my little friend: a session on Kinect
Visug: Say Hello to my little friend: a session on KinectVisug: Say Hello to my little friend: a session on Kinect
Visug: Say Hello to my little friend: a session on Kinect
 
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
 
Spinnaker 파트 1
Spinnaker 파트 1Spinnaker 파트 1
Spinnaker 파트 1
 
March.2012.KinectForWindows
March.2012.KinectForWindowsMarch.2012.KinectForWindows
March.2012.KinectForWindows
 
Mono for Game Developers - AltDevConf 2012
Mono for Game Developers - AltDevConf 2012Mono for Game Developers - AltDevConf 2012
Mono for Game Developers - AltDevConf 2012
 
Design, Create & Explore Learning with Your Mobile Devices
Design, Create & Explore Learning with Your Mobile DevicesDesign, Create & Explore Learning with Your Mobile Devices
Design, Create & Explore Learning with Your Mobile Devices
 
RAD Design Presentslinkedin
RAD Design PresentslinkedinRAD Design Presentslinkedin
RAD Design Presentslinkedin
 
Kinect Lab Pt.
Kinect Lab Pt.Kinect Lab Pt.
Kinect Lab Pt.
 

Kinect seminar 121208v1(동영상x)