OpenNI / NITE 再更新、Unstable 版推出

| | 0 Comments| 09:13

OpenNI 再度更新囉!這次離上次的 OpenNI / NITE 發布的間隔不到一個月,就再度推出新版,進度算滿快的。而這次的版本編號比較特別,就是 OpenNI 的版本編號終於和 NITE 一樣了!兩者都是。相較之下,之前的 NITE 至少都領先 OpenNI 一個次版號,這樣對應的版號相同,應該比較直覺吧? ^^"

有需要的人,一樣可以到 OpenNI 的官方網站下載:

而由於驅動程式 Sensor 的版本也進版到 了,所以如果是要搭配 Kinect 使用的話,可能也還需要等 SensorKinect 更新到對應的版本,才能完全正常運作。而 Heresy 大概試了一下,目前基於 的 SensorKinect v0.8 似乎還是可以用,但是有沒有問題就不曉得了。

而主要的更新內容,主要算是錯誤修正、再加上一些穩定性的強化了∼像是之前在 Visual Studio 下,想要對程式進行偵錯時會出現「Xiron OS got an event timeout」的錯誤訊息、而無法執行程式的問題,基本上已經修復了∼不過很遺憾的是,這部份的問題主要似乎是在 Driver 的部分,所以目前在沒有 avin2 的新版 SensorKinect 的情況下,問題依然是存在的。(問題描述:《"Xiron OS got an event timeout" & XnSensorServer.exe》)

另外,目前對於 AMD CPU 的 SSE3 指令集,似乎還是有相容性的問題。不過因為 Heresy 自己沒在用 AMD 的機器,所以也沒碰到就是了。

最後,簡單的更新列表,可以參考《New unstable release – Many improvements and bug fixes! (OpenNI-, NITE-, Sensor-》一文,基本上包括了:

  • NITE skeleton tracking latency, robustness, stability and quality was much improved.
  • Many exception/segfaults in NITE were fixed.
  • The annoying "event time out" problem many of you encountered is now fixed.
  • SceneServer crashes were fixed.
  • Calibration events/messages are now working as expected.

完整的列表,可以參考 github 上的更新列表(連結),下面是 Heresy 自己稍微整理一下的內容:

  • New API: xnStopSinglePoseDetection.
  • PoseDetectionCapability::StopPoseDetection will now return proper errors.
  • xnNodeInfoGetTreeStringRepresentation was added to all wrappers.
  • Recordings playbacks: make sure seek is also performed in a lock, so it wouldn’t collide with the reader thread.
  • Data Dump: Adding frame sync information checks.
  • Log: initializing from INI file would reset the output directory.
  • Bug Fix:
    • Seeking before the first WaitXUpdateAll() caused undetermined behavior.
    • The samples cannot be copied to another folder and be compiled.
    • Seeking to the current frame did no re-read it, while seeking to another frame did read it. This caused a bug where seeking to the same frame twice would cause it to return twice.
  • .Net Wrappers
    • Added the DataPtr property to Generator class.
    • Added the missing DeviceIdentificationCapability class.
    • Added missing enum values.
    • Disposing a device node now also destroys the node.
    • Fixed a bug where MapGenerator.BytesPerPixel was missing.
    • FindExistingNode now returns null instead of throwing an exception if no node exists.
    • Projective/RealWorld conversion – added a version which accepts a preallocated array.
    • .Net samples will now show their source files in the visual studio project.
  • Java Wrappers
    • Added missing enum values.
    • StartPoseDetection and StopPoseDetection are declared deprecated, and were replaced by startPoseDetection and stopPoseDetection.
    • Java UserTracker sample will now draw the limbs only when both joints have a non-zero confidence
  • Samples
    • NiUserSelection – Enhanced the documentation.
    • NiUseExtension sample: added a clear message about the need to register the extension module.
    • NiBackRecorder: removed unneeded calls to Release().
    • NiConvertXToONI: removed unused seekNode.
    • Added option to show low confidence limbs as dotted lines in the user selection sample.
  • Linux
    • Cross compilation is now based on environment variables.
    • keep ref count for the libusb events thread, so it will be shutdown automatically when all read threads have stopped.
  • Android:
    • makefiles are now compatible to ndk v7.
    • Added the NiSimpleSkeleton sample.
    • Android UserTracker sample: Adjusted to work without a calibration pose.
  • USB Driver version was updated to
    • adding support for PrimeSense’s 0601 product ID.

Leave a Reply

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *