2015-05-04 124 views
1

我們遇到了Kinect V2的問題。 我們使用Google和Microsoft文檔來查找解決方案,但是我們什麼也沒找到。VisualGestureBuilderDatabase中的Kinect V2異常

我們得到一個例外,當我們試圖從數據庫中加載的姿態:

private readonly string gestureDatabase = @"Database\ChiMoGestures.gbd"; 

。 。 。

VisualGestureBuilderDatabase database = new VisualGestureBuilderDatabase(this.gestureDatabase) 

當程序涉及到這個位置時,它拋出一個System.InvalidOperationException,正是:

'System.InvalidOperationException' 類型的未處理的異常出現在Microsoft.Kinect.VisualGestureBuilder.dll

附加信息:0x80004005的

:此API已經從 HRESULT返回異常

也許數據庫自我不正確,但我們得到它與VisualgestureBuilder

我很高興如果有人有這個問題的解決方案?

回答

2

不確定這是否相關,因爲問題是相當古老的,但我會回答它。

視覺手勢生成器DLL正在拋出此錯誤,因爲它缺少一些需要工作的文件。具體來說,它需要執行手勢識別的兩種算法的dll - AdaBoost和RFRProgress。根據您的平臺

C:\Program Files\Microsoft SDKs\Kinect\v2.0_1409\Redist\VGB\x86\vgbtechs 

C:\Program Files\Microsoft SDKs\Kinect\v2.0_1409\Redist\VGB\x64\vgbtechs 

:這兩個DLL您的Kinect SDK文件夾,通常位於下可用。

幸運的是,有一種方法可以通過Visual Studio中的Post-build命令自動執行此過程。轉到項目 - >屬性 - >生成事件 - >編輯生成後...

並粘貼

xcopy "$(KINECTSDK20_DIR)Redist\VGB\$(Platform)\vgbtechs" "$(TargetDir)\vgbtechs" /S /R /Y /I 

這將確保你有DLL文件在你的build目錄,無論你的平臺設置是。