WorldViz User Forum  

Go Back   WorldViz User Forum > Vizard

 
 
Thread Tools Rate Thread Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 06-29-2016, 02:19 PM
performlabrit performlabrit is offline
Member
 
Join Date: Oct 2013
Posts: 77
Any experience with Polaris Spectra? VRPN is providing bad data!

This is less an issue with Vizard than it is with VRPN, but I can imagine/hope that a Vizard user has run into this issue previously, and resolved it.

The issue is that VRPN is not streaming quality data. I can confirm that NDI software does track the rigid bodies/tools accurately. However, when streaming from VRPN, the data is no good.

I'm also open to other thoughts - are there other ways to get Polaris Spectra data in Vizard, without writing our own Python API?

I have pasted a much more detailed explanation from a graduate student below.

Thank you,
- gD

----------------------------------------------------

I am currently attempting to use the Virtual Reality Peripheral Network (VRPN) to connect a NDI Polaris Spectra optical tracking device to the Vizard VR software. The ultimate goal is to use the device for head and tool tracking.The software that comes with the Polaris works correctly, tracking the rigid bodies packaged with the device with sub-milimeter accuracy. VRPN claims to support the Polaris tracking device and Vizard includes a VRPN plugin. However, when I use VRPN to interface with the Polaris, the tracking data reported by VRPN seems to vary significantly, even when both the rigid body and the Polaris are connected to tripods.

To use VRPN with the Polaris, I edited the vrpn.cfg file, adding the folowing, uncommented lines:

vrpn_Tracker_NDI_Polaris polaris COM2 1
../NdiToolDefinitions/8700449.rom

(I have confirmed that the Polaris device is connected to COM2. There is only one rigid body to be tracked, which is described by the 8700449.rom file. I also confirmed with the NDI sofware that comes with the Polaris that this is the correct file for the rigid body that I am attempting to track.)I then run the vrpn_server.exe program, which reports the following:

DEBUG Tracker_NDI_Polaris: num of rigidbodies 1
DEBUG Tracker_NDI_Polaris: filename >../NdiToolDefinitions/8700449.rom<
connected to NDI Polaris at default 9600 baud on device:COM2.
done
VRPN_Tracker_NDI_Polaris: Switching NDI to higher baud rate, and then reopening
com port at higher rate...done

In accordance with the wiki, I test that the tracking is working correctly by running*vrpn_print_devices.exe in another cmd window:

> vrpn_print_devices.exe polaris@localhost

Opened polaris@localhost as: Tracker Button Analog Dial Text.
Press ^C to exit.

Tracker polaris@localhost, sensor 0:
pos ( 0.07, 0.91, 0.00); quat (0.00, 0.01, 0.01, 0.00)
Tracker polaris@localhost, sensor 0:
pos ( 0.07, 0.91, 0.01); quat (0.00, 0.01, 0.01, 0.00)
Tracker polaris@localhost, sensor 0:
pos ( 0.08, 0.90, 0.00); quat (0.00, 0.01, 0.01, 0.00)
Tracker polaris@localhost, sensor 0:
pos ( 0.11, 0.92, 0.99); quat (0.00, 0.01, 0.01, 0.00)
Tracker polaris@localhost, sensor 0:
pos ( 0.05, 0.92, 0.01); quat (0.00, 0.01, 0.01, 0.00)

These jumps in position are very large, if I understand correctly that the scale here is in meters. (I should also note that the data printed by vrpn_print_devices.exe is truncated.)Since the NDI software that came with the Polaris tracks the same rigid body very accurately, I am assuming that the jumps in position are not due to enviornmental factors (like IR light sources in the room, etc.), and the rigid body is using the passive, retroreflective tracking dots. I am currently running VRPN on Windows 7.While I suspect that the problem is VRPN-relatred, it is also possible that Vizard’s VRPN pluing is not correctly reading data from VRPN. This is the Vizard (python) code I used for linking the tracked object to the main viewpoint.*

import viz
viz.go()

# add enviornment
viz.addChild('gallery.osgb')

# add tracker
vrpn = viz.add('vrpn7.dle')
tracker = vrpn.addTracker('polaris@localhost')
tracker.waitForConnection()

# link tracker to view
view = viz.MainView
viz.link(tracker,view)

However, it seems like this is a problem orignintating from VRPN. Is there any configuration I missed or reason for such inaccurate tracking?Thanks!
Reply With Quote
 

Tags
ndi, polaris, spectra, vrpn

Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 01:25 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Copyright 2002-2023 WorldViz LLC