최근 키넥트를 만지면서 적외선 카메라를 통해 영상을 접근해야하는일이 있어 작업을 진행했다.
방법은 간단하다.
Kinect SDK 에서 제공해주는 소스코드를 보면 알수 있겠지만,
차이점은 NuiImageStreamOpen()함수내에서
NUI_IMAGE_TYPE_COLOR 대신 NUI_IMAGE_TYPE_COLOR_INFRARED 를 적용 해주면 된다.
다른부분은 전혀 손댈 필요가 없다.
참고로 해상도는 640X480을 사용했다. (1280X960은 동작을 안하더라..)
[ 테스트 이미지 ]
하지만, 여기서 신기한점,
키넥트는 무수한 random IR-dot을 뿌리지만, 그중에서도 영역을 9등분하여, 밝은 IR을 중심으로 나뉜다.
그리고 그 점들을 중심으로 연산을 하는데, 각각의 IR-dot끼리의 거리를 통해 영상의 Depth 값을 구할수 있다고 한다. (라고 들었다. 분명..... 하지만 습자지 지식 +_+)
키넥트의 적외선 카메라를 통해 본 영상 (원본이미지)
키넥트의 적외선 프로젝터(IR-Emitter)를 가리고 본 이미지
분명한 차이가 느껴진다.
이전 블로그 글에서도 언급 했지만, 1.6버전에서 이러한 IR-Emitter를 컨트롤 할수 있는 API가 제공이 되었다고 하는데,
아직 찾아보진 않았다.
추후 찾아보고, 찾으면 다시 블로그에 업데이트를 할 예정
그나저나 요즘 시간이 조금 여유가 있어, 나의 여러 산포된 여러 소스코드들을 정리 할 겸, Kinect SDK 1.6버전에서 업데이트 된 추가부분들을 추가 하여, 나만의 새로운 기본 Kinect project를 만들었다.
여기서 알아낸 중요한점.
RGB 카메라와 적외선 카메라는 동시에 작동불가............
정말 충격과 공포다. 젠장...젠장!!
혹시나 나의 블로그 글을 읽으시는 분들은 이러한 일을 겪지 않으시길...;;
'[ Topics ] > Kinect 1.0' 카테고리의 다른 글
[KinectSDK 1.7]FaceTracking Test! (18) | 2013.07.19 |
---|---|
Kinect SDK 1.7 coming at March 18 (0) | 2013.03.18 |
Kinect SDK 1.6 맛보기 (0) | 2013.02.28 |
1-inch UniTouch System using Kinect (0) | 2013.01.30 |
NuiInitialize() 에서 뻗는 문제점과 해결방법 (8) | 2012.08.13 |