2012-12-10 2 views
2

이 질문에 이전에 물어볼 경우 사과드립니다. 찾지 못했습니다. 그러나 일반적으로이 포럼은 놀랍습니다. 프로그래밍은 전문 분야가 아닙니다 (저는 의학 분야에서 왔습니다). 그러나 kinect는 탐구 할 몇 가지 흥미로운 분야를 제시했습니다. nutshel에서는 나중에 분석 (및 표시) 할 때 바이너리 파일에 깊이 데이터를 저장하려고합니다. kinect 스튜디오를 알고있는 동안 수집 된 다른 데이터와 함께 데이터를 기록해야합니다. 나는 주변을 수색하고 방법을 채택했지만, 나는 손실에 처해있다.Kinect Depth를 이진 파일로 저장

saveDepth(depthFrame) 

위 saveDepth에 depthData 바이트 [] 배열을 전달()

I의 하바는 SensorDepthFrameReady 방법에서 호를 만들었다.

public static void saveDepth(byte[] bytes) 
    { 
    // create file io for write 
    using (System.IO.FileStream stream = new System.IO.FileStream(file,  System.IO.FileMode.Append, System.IO.FileAccess.Write)) 
    {    

     // write the passed byte buffer 
     stream.Write(bytes, 0, bytes.Length); 
     // close the file 
     stream.Close(); 
    } 

} 

그러면 .bin 파일로 저장됩니다. 그러나이 형식은 예를 들어 Matlab에서 나중에 사용하기 위해 액세스 할 수있는 올바른 형식입니다.

+0

바이너리 파일이 너무 많아서 이것이 작동하는지 모르겠다. 아마도 시도해 볼 수있을 것이다. 다른 관점에서, 어딘가에 텍스트로 써 보시지 않겠습니까? –

+0

답장을 보내 주셔서 감사합니다. Kinect 깊이 데이터를 파일에 저장하는 올바른 방법인지 묻습니다. 그것은 파일에 저장하지만 내가 사용한 방법에 대한 유효성 검사는 깊이 데이터를 추출하는 올바른 방법입니다. 저장 한 파일에 있음을 알았을 때 제대로 작업 할 수는 있지만 제대로 저장하는지는 알지 못합니다. – Dan

+0

데이터를 저장하는 "올바른 방법"이 없습니다. 그것이 당신을 위해 작동한다면, 그것을 위해 가십시오! CodePlex의 "Kinect Toolbox"프로젝트를 살펴보십시오.이 프로젝트는 모든 스트림에 대한 레코더를 제공합니다. 아이디어가 어떻게 구현되는지 확인할 수 있습니다. –

답변

0

올바른 방법을 확인하십시오. 옳고 그른 것을 정의해야합니다.

MATLAB에서 C#으로 저장 한 파일을 읽고 작업을 수행 할 수있는 해당 메서드를 작성하면 정확합니다. 그렇지 않으면 정확하지 않습니다.