2014-12-03 2 views
7

파일 확장자가 .xef 인 kinect 스튜디오를 사용하여 Windows 2 용 Kinect를 사용하여 여러 개의 비디오를 수집했습니다.Kinect v2, .xef 파일에서 데이터 읽기

이제는 데이터를로드하여 다른 형식으로 저장하는 프로그램을 작성하고 싶습니다.하지만 이렇게하는 데 필요한 리소스가 거의 없습니다. 유용한 리소스가 있습니까?

답변

1

Kinect Studio를 사용하여 xef 파일을 읽은 다음 재생 (또는 재생) 탭으로 가서 재생을 누르면 프로그램이 스트리밍을 시작합니다. 나는 이것이 kinect에서 오는 것처럼하는 유일한 방법이라고 생각합니다.

14

실제로 Kinect Studio API를 사용하여 마지막 SDK 릴리스 (KinectSDK-v2.0_1409) 이후 .xef 파일을 읽고 재생할 수 있습니다. 아직 제대로 문서화되지 않았지만 코드에 통합 될 수 있습니다. KinectStudio의 설치 폴더에

  1. 이동 (예 : C : \ 프로그램 파일 \은 Microsoft SDKs \ 넥트 \ v2.0_1409 \ 도구 여기서 (A VS 2013의 C# 솔루션에서 시도)를 사용하는 간단한 설명입니다 \ KinectStudio).
  2. 프로젝트의 "Microsoft.Kinect.Tools.dll"을 참조하십시오.
  3. "KStudioService.dll"을 Debug 또는 Release 폴더에 복사하십시오.
  4. BuildProperties를 x64로 변경하십시오. 그렇지 않으면 BadImageFormatException이 발생합니다.

API는 here입니다.

here은 Microsoft Kinect 팀의 Carmine의 일부 샘플 코드입니다.

+0

안녕하세요, Carmine에서 샘플 코드를 성공적으로 실행했지만 KStudioPlayback 개체에서 색상 및 깊이 이미지를 가져 오는 방법을 알지 못합니다. 이거 좀 생각해? – JerryDDG

1

XEF 파일을 구문 분석하여 이미지를 직접 추출하는 방법이없는 것처럼 보입니다.

XEF 파일에 저장된 모든 프레임이 필요하지 않은 경우, 즉 프레임 놓기가 괜찮 으면 간접적 인 방법은 Kinect 서비스를 통해 XEF 파일에서 프레임을 수신하도록 Kinect 응용 프로그램을 만드는 것입니다.

빠른 테스트는 다음과 같습니다

  1. 시작 KinectStudio는 키 넥트 서비스 오픈 XEF 파일에 연결합니다.
  2. Kinect v2 SDK의 ColorBasics-D2D 또는 DepthBasics-D2D를 실행하십시오.
  3. KinectStudio에서 XEF 파일을 재생합니다.
  4. 색상/깊이 프레임이 ColorBasics 또는 DepthBasics 응용 프로그램에 표시됩니다.

그런 다음 이미지를 저장하려면 ColorBasics 또는 DepthBasics에서 소스 코드를 수정할 수 있습니다. 심도 및 색상 이미지 정렬에 신경 쓰면 KinectFusionExplorer-D2D를 수정할 수 있습니다.

이 접근법은 Kinect 서비스를 통한 재생 및 프레임 수신이 비동기이기 때문에 XEF에 저장된 프레임의 하위 집합 만 캡처 할 수 있습니다. 따라서 프로그램에서 프레임 삭제가 문제가되지 않는 경우에만 작동합니다.