티스토리 뷰

Kinect

[Kinect Update] Kinect SDK v1.6 Released!

생각많은 소심남 2012. 10. 9. 00:07

 

현지 시간 10월 8일로 예정되어 있던 Kinect SDK가 오늘을 기해서 Update가 실시되었습니다. 저도 지금 설치하는 중인데 많은 점이 달라진 것 같습니다. 한번 그 내용을 정리해보고자 합니다. 이번 업데이트는 SDK와 Developer Toolkit에 대해서 진행되었으면 각각 버전은 다음과 같습니다.

- Kinect SDK v1.6

- Kinect Developer Toolkit v1.6.0

우선 Windows 8에 대한 지원이 되었습니다. 그런데 의문점이 store Application이 아닌 desktop Application에 대해서 지원합니다. 이부분은 이전 v1.5에서도 되었던 부분이었는데.. 아울러 Visual Studio 2012에 대해서 공식적으로 지원이 됩니다.(그런데 이건 이전 버전에서도 잘 되었던 부분이었습니다. 나머지는 예제와 함께 소개해드리도록 하겠습니다. 


- 이제 키넥트에서도 Accelerometer가 적용됩니다. 한번 보시지요.



이값이 키넥트가 위치한 점을 기준으로 움직입니다. 물론 이를 활용할 수 있는 API또한 개방되었습니다. 이걸 통하면 Kinect의 Orientation을 활용한 앱이 나올거라 여겨지네요.



이 건 이번 업데이트가 적용되면서 바뀐 Kinect Explorer인데 기존에 비해서 기능이 여러개 추가되었습니다.


그다음 기능은 Extend Depth Range입니다. 기존 SDK에서는 4미터안까지만 인식했습니다. 반면 OpenNI는 4m 이상의 데이터도 그냥 Raw로 내보내줬었지요. 그런데 이제 업데이트가 되면서 4m 이상의 데이터도 SDK가 따로 처리할 수 있게 되었습니다. 역시 Kinect Explorer에서 확인할 수 있습니다.



위의 RGB 이미지와 비교해보시면 기존에 인식안되던 범위까지 Depth로 인식됩니다. 이 옵션은 밑에 있는 Depth Treatment 분야를 설정하시면 됩니다. 


다음 기능은 빛에 대한 설정이 가능해졌다는 겁니다. 아울러 빛에 대해서 조금 강건해졌다고 언급되어 있습니다. 이 메뉴도 역시 Kinect Explorer에 있습니다.



일반 카메라 설정과 같이 노출시간이나 gain에 대한 수치도 조절할 수 있습니다. Kinect Explorer에서 된다는 이야기는 즉, API로도 따로 제공된다는 것이지요. 이제 조명에 대한 신경을 써줄 필요없이 Kinect 자체로 처리를 할 수 있게 됩니다. 



또한 화이트 밸런스에 관한 설정도 제공해줍니다. 뭐 카메라 많이 만져보신 분이라면 잘 아실만한 설정일 겁니다. 저는 잘 몰라서 패스...


다음 기능은 Color Stream인데 이번에 새롭게 등장한 포멧이 바로 Raw Bayer 입니다. 



사실 RGB와 별반 차이가 없어보입니다만. 저처럼 영상처리를 공부하는 사람에게 Bayer format은 중요한 요소로 작용합니다. 사람이 보는 색상은 다양하지만 카메라가 세상을 보는 색상은  한 픽셀당 하나에 불과합니다. 그런데 그중에 Bayer format이라고 하여 다음과 같은 색상 배치를 가지는 것이 있습니다.



이른바 정해진 RGB에서 G가 차지하는 영역이 R과 B가 차지하는 영역의 2배정도 됩니다. 딱 보시기에 초록색이 있음으로써 좀 밝아보이지 않나요? 바로 사람의 눈이 색상차보다는 밝기차이에 민감하기 때문에 나오는 느낌입니다. 보통 G에 해당하는 정보에 밝기가 더 크기 때문에 사람의 눈에 맞춰서 색상을 배치한 겁니다. 흔히들 RAW 영상이라고 하지요. 그래서 이를 직접적으로 가져다 쓸 수 있기 때문에 SDK에서 처리하던것에 비해서 CPU나 GPU연산 처리에 도움이 됩니다. 또 RGB로 변환시키는데 있어서도 활용시킬 수도 있고요. 이런 차이가 있습니다. 


몇가지 새로 생긴 예제들을 보겠습니다.



이번에 새로 생긴 Infrared mode 입니다. 즉 적외선으로도 측정할 수 있게 된다는 겁니다. 아마 제 포스트중에도 이 Infrared에 관한 내용이 하나 있었던 거 같은데요. 이를 활용해서 다른 Sensor와의 Calibration이 가능해집니다. 또한 적외선이기 때문에 불을 끈 상태에서도 정보가 나타납니다. 이를 활용하면 low light인 상태에서도 사람의 동작을 감지할 수 있게 됩니다.


마지막 새로 생긴 예제가 Basic Interaction이라는 건데요. 한번 보시지요.



보시면 Xbox의 UI와 많이 흡사하다는 것을 느낄 수 있습니다. 더불어서 음성으로도 네비게이션이 되게끔 지원이 되었습니다. 이를 활용하면 얼마든지 멋있는 앱이 나올 수 있을거 같습니다. 그리고 제가 개인적으로 느끼는 거지만 대역폭에 대한 개선이 된거 같습니다. 예전에는 음성녹음시 대역폭의 영향으로 인해서 늘어지는 현상이 발생했었는데 지금은 별로 그런게 없네요.


추가적으로 Kinect Studio가 v1.6으로 업데이트되면서 새로 추가된 기능에 대해서도 적용시킬 수 있게되었습니다. 


개발적 측면에서 보자면 기존에 제가 잠깐 소개했던 Color와 Depth Coordination도 이제는 Skeleton도 같이 적용하는 API가 등장하면서 조금더 개발에 용이해졌습니다. 그리고 마지막으로 드디어 Virtual Machine에서도 키넥트가 동작합니다.기존에 VM이나 Parallels HyperV에서는 usb로만 인식되었을 뿐 동작이 안되었습니다만 v1.6으로 올라오면서 지원하게 되었습니다.


전체적으로 보자면 정말로 많은 부분이 개선되고 업데이트 되었다는 것을 느낍니다. 특히 예전부터 있었으면 하는 기능들도 하나 둘씩 추가가 되어가는 형세입니다. 아쉬운 점이라면 Store UI에서는 Kinect 기능이 안된다는 점, 아직도 손가락 인지에 대한 API는 없다는 점이네요.(아직까지는 비전쪽 기술을 적용해야 될 형편입니다.)


아무튼 여러분들도 한번 업데이트 해보시고 새로운 기능에 대해서 체험해보시길 바랍니다.


댓글