2013-01-21 4 views
0

저는 OpenCV과 Python으로 작업하고 있습니다. Asus Xtion으로부터 의견을 얻고 싶습니다. PyOpenNI에서 샘플을 성공적으로 실행할 수 있습니다. opencv에서 얻은 이미지 (str 형식)를 igen.get_synced_image_map_bgr()으로 사용하고 싶습니다.OpenCV 용 PyOpenNI 입력

IGEN-ImageGenerator

내가 IplImage로 변환 할

. 어떻게 할 수 있습니까? 그렇지 않으면 Opencv python 코드에서 심도 센서의 입력을 어떻게 사용할 수 있습니까?

답변

0

저는 최근에 OpenCV를 사용하여 PyOpenNI에서 Kinect의 문자열 형식 깊이 데이터를 사용했습니다. 문자열에서 생성 할 수있는 numpy 배열을 사용하고 Python의 cv2 (OpenCV)에서 기본 데이터 유형입니다. 여기

코드 예제 : http://euanfreeman.co.uk/pyopenni-and-opencv/

넥트이 깊이 센서 다릅니다하지만 유용한 출발점이 될 수 있는지 확실하지. 행운을 빕니다!

편집 : 추가 코드

from openni import * 
import numpy as np 
import cv2 

# Initialise OpenNI 
context = Context() 
context.init() 

# Create a depth generator to access the depth stream 
depth = DepthGenerator() 
depth.create(context) 
depth.set_resolution_preset(RES_VGA) 
depth.fps = 30 

# Start Kinect 
context.start_generating_all() 
context.wait_any_update_all() 

# Create array from the raw depth map string 
frame = np.fromstring(depth.get_raw_depth_map_8(), "uint8").reshape(480, 640) 

# Render in OpenCV 
cv2.imshow("image", frame)