私はPythonでOpenCVを使用しています。Asus Xtion から入力を取得したい。PyOpenNI からサンプルを正常に実行できました。で取得した画像(str形式)をopencvで使いたいですigen.get_synced_image_map_bgr()
。
igen-ImageGenerator
に変換したいIplImage
。どうすればそれを行うことができますか、またはOpencv pythonコードで深度センサーからの入力を使用するにはどうすればよいですか.
最近、PyOpenNI で OpenCV を使用して、Kinect の文字列形式の深度データを使用しました。文字列から作成でき、Python の cv2 (OpenCV) のデフォルトのデータ型である numpy 配列を使用します。
コード例: http://euanfreeman.co.uk/pyopenni-and-opencv/
Kinect が深度センサーとどのように異なるかはわかりませんが、出発点としては役立つかもしれません。幸運を!
編集:コードを追加
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)