1

Kinect로 개발 중이며 AllFramesReady 이벤트에서 작업을 수행해야합니다. 작업은 BinaryWriter을 사용하여 많은 쓰기 작업으로 구성됩니다.Kinect를 병렬화하는 방법 AllFramesReady 이벤트

프레임 (색상, 깊이, 해골)이 짧은 시간 동안 존재한다는 것을 알고 있습니다.

using (var imageFrame = e.OpenColorImageFrame()) 
{ 
    // Do the heavy task writing tons of bits do a `BinaryWriter` 
} // The frame is no longer available :(

병렬 처리 할 수있는 방법이 있습니까? 또는 내 코드의 성능을 향상시키기위한 트릭이 있습니까?

+0

1.6 SDK 예제에서 KinectWpfViewers 프로젝트의'KinectDepthViewer'는 병렬 프로세스에서 깊이 채색을합니다. 그것은 시작할 수있는 좋은 장소 일 것입니다. 내 컴퓨터에서 코드에 액세스 할 때 더 조사 할 것입니다. –

+0

고마워, 나는 그것도 조사 할 것이다. – Ewerton

답변

1

일반적으로 AllFramesReady 이벤트 처리기에서 과도한 작업을 수행하지 마십시오. 내 제안은 : 대기열에 프레임 정보를 저장 한 다음 다른 스레드를 사용하여 저장된 정보를 디스크 메모리에 기록하는 것입니다. 대기열에 들어가는 비율이 대기열에서 나가는 비율을 초과하면 어떤 시점에서 메모리가 부족하게됩니다.

관련 문제