gpt4 book ai didi

java - 在预先录制的 ONI 文件上使用 openNI 进行骨骼跟踪时出现异常

转载 作者:行者123 更新时间:2023-12-02 07:29:35 25 4
gpt4 key购买 nike

我正在尝试在预先录制的 .oni 文件上运行示例 openNI 骨架跟踪应用程序(UserTracker.java 应用程序)。我编辑了 SamplesConfig.xml 文件以直接从 ONI 文件而不是 Kinect(我实际上没有)输入。但是,我收到以下异常。有人可以帮我吗?

org.OpenNI.StatusException: Function was not implemented!

at org.OpenNI.WrapperUtils.throwOnError(WrapperUtils.java:30)

at org.OpenNI.Context.initFromXmlEx(Context.java:371)

at org.OpenNI.Context.createFromXmlFile(Context.java:36)

at UserTracker.<init>(UserTracker.java:149)

at UserTrackerApplication.main(UserTrackerApplication.java:67)

任何帮助将不胜感激。谢谢!

编辑:我找到了一个解决方案 here ,这已经删除了我之前遇到的异常,但现在我得到了以下异常!

org.OpenNI.StatusException:此操作无效!

有人知道为什么会发生这种情况吗?

最佳答案

我遇到了类似的问题,我想从我生成的 .oni 文件中读取数据,并且遇到了同样的问题。现在问题已经解决了,也许你也解决了,但我认为与可能看到这篇文章的其他人分享信息很重要。顺便在其他帖子中发现了一些线索。

所以这是解决方案。 NiUserTracker 示例可以与 .oni 文件一起使用,因此我检查了代码,他们执行了以下操作:

xn::Player g_Player; //Global variable

//这在 main 或另一个函数中

if (argc > 1)
{
nRetVal = g_Context.Init();
CHECK_RC(nRetVal, "Init");
nRetVal = g_Context.OpenFileRecording(argv[1], g_Player);
if (nRetVal != XN_STATUS_OK)
{
printf("Can't open recording %s: %s\n", argv[1], xnGetStatusString(nRetVal));
return 1;
}
}

这是 C++ 代码,我使用 C++。因此,正如您所看到的,如果他们想要打开录制的 .oni 文件,他们不会通过 XML 文件初始化 kinect,他们只是通过 Init() 方法初始化它,然后使用 openFileRecording 方法打开文件。

如果您想打开 .oni 文件无需修改您的 XML,这样您就可以创建一个应用程序,允许您选择是使用 .oni 还是 kinect .

我希望这对某人有帮助。

干杯。

关于java - 在预先录制的 ONI 文件上使用 openNI 进行骨骼跟踪时出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13098526/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com