medimage 发表于 2024-4-1 23:49:24

NDI Vega, Polaris and Aurora pose trackers

Supported hardware devicesAny NDI tracking device is supported thatuses the common API, such as Polarisoptical and Auroraelectromagneticpose trackers.Installation

[*]If USB   connection is used then drivers should be installed to allow the computer   to connect to the system control unit (SCU).
[*]If you have   just turned on the tracker and attempt to use it right away, you may get   the error message "command is invalid while in current mode";   wait for the leftmost LED on the position sensor to stop flashing and try   again.
[*]Default   settings provide maximum compatibility (work with most trackers), but most   of the time they do not provide optimal performance. It is recommended to   use maximum BaudRate (typically 921600 works   well) to have high refresh rate and low latency. Tracking may be also   improved by choosing the most appropriate tracking volume by adjusting   the MeasurementVolumeNumber attribute.

Example configuration file Vega PlusDeviceSet_Server_NDIVega.xml
<PlusConfiguration version="2.1">
<DataCollection StartupDelaySec="1.0" >
    <DeviceSet
      Name="PlusServer: NDI Vega tracker with passive markers - by IP"
      Description="Broadcasting tool tracking data through OpenIGTLink
For NDI Vega: Tool (8700339), Stylus (8700340), Reference (8700449)" />
    <Device
      Id="TrackerDevice"
      Type="NDITracker"
      NetworkHostname="192.168.0.30"
      NetworkPort="8765"
      ToolReferenceFrame="Reference" >
      <DataSources>
      <DataSource Type="Tool" Id="Stylus" RomFile="NdiToolDefinitions/8700248.rom"/>
      </DataSources>
      <OutputChannels>
      <OutputChannel Id="TrackerStream" >
          <DataSource Id="Stylus"/>
      </OutputChannel>
      </OutputChannels>
    </Device>
    <Device
      Id="VideoDevice"
      Type="OpenCVVideo"
      VideoURL="rtsp://192.168.0.30/video">
      <DataSources>
      <DataSource Type="Video" Id="Video" ImageType="RGB_COLOR" PortUsImageOrientation="MF"/>
      </DataSources>
      <OutputChannels>
      <OutputChannel Id="VideoStream" VideoDataSourceId="Video" />
      </OutputChannels>
    </Device>
    <Device
      Id="TrackedVideoDevice"
      Type="VirtualMixer" >
      <InputChannels>
      <InputChannel Id="TrackerStream" />
      <InputChannel Id="VideoStream" />
      </InputChannels>
      <OutputChannels>
      <OutputChannel Id="TrackedVideoStream"/>
      </OutputChannels>
    </Device>
</DataCollection>
<CoordinateDefinitions>
    <Transform From="Image" To="Reference"
      Matrix="
      1 0 0 0
      0 1 0 0
      0 0 1 0
      0 0 0 1"
       Error="0.554951" Date="012617_105449" />
    <Transform From="StylusTip" To="Stylus"
      Matrix="
      1 0 0.000203823 0.0180449
      3.31529e-09 -1-1.62655e-05-0.00144002
      0.000203823 1.62655e-05 -1-88.5321
      0 0 0 1"
       Error="0.554951" Date="012617_105449" />
</CoordinateDefinitions>
<PlusOpenIGTLinkServer
    MaxNumberOfIgtlMessagesToSend="1"
    MaxTimeSpentWithProcessingMs="50"
    ListeningPort="18944"
    SendValidTransformsOnly="true"
    OutputChannelId="TrackedVideoStream" >
    <DefaultClientInfo>
      <MessageTypes>
      <Message Type="IMAGE" />
      <Message Type="TRANSFORM" />
      </MessageTypes>
      <ImageNames>
      <Image Name="Image" EmbeddedTransformToFrame="Reference" />
      </ImageNames>
      <TransformNames>
      <Transform Name="StylusTipToReference" />
      </TransformNames>
    </DefaultClientInfo>
</PlusOpenIGTLinkServer>
</PlusConfiguration>Example configuration file Polaris PlusDeviceSet_Server_NDIAurora_NDIPolaris.xml
<PlusConfiguration version="2.1">
<DataCollection StartupDelaySec="1.0" >
    <DeviceSet
      Name="PlusServer: NDI Polaris tracker with passive markers"
      Description="Broadcasting tool tracking data through OpenIGTLink
For NDI Polaris passive marker starting kit: Tool (8700339), Stylus (8700340), Reference (8700449)" />
    <Device
      Id="TrackerDevice"
      Type="PolarisTracker"
      ToolReferenceFrame="Tracker" >
      <DataSources>
      <DataSource Type="Tool" Id="Tool" RomFile="NdiToolDefinitions/8700339.rom"/>
      <DataSource Type="Tool" Id="Stylus" RomFile="NdiToolDefinitions/8700340.rom"/>
      <DataSource Type="Tool" Id="Reference" RomFile="NdiToolDefinitions/8700449.rom"/>
      </DataSources>
      <OutputChannels>
      <OutputChannel Id="TrackerStream" >
          <DataSource Id="Tool"/>
          <DataSource Id="Stylus"/>
          <DataSource Id="Reference"/>
      </OutputChannel>
      </OutputChannels>
    </Device>
    <Device
      Id="CaptureDevice"
      Type="VirtualCapture"
      BaseFilename="RecordingTest.igs.nrrd"
      EnableFileCompression="TRUE"
      EnableCapturingOnStart="TRUE" >
      <InputChannels>
      <InputChannel Id="TrackerStream" />
      </InputChannels>
    </Device>   
</DataCollection>
<CoordinateDefinitions>
    <Transform From="StylusTip" To="Stylus"
      Matrix="
      1 0 0.000203823 0.0180449
      3.31529e-09 -1-1.62655e-05-0.00144002
      0.000203823 1.62655e-05 -1-88.5321
      0 0 0 1"
       Error="0.554951" Date="012617_105449" />
</CoordinateDefinitions>
<PlusOpenIGTLinkServer
    MaxNumberOfIgtlMessagesToSend="1"
    MaxTimeSpentWithProcessingMs="50"
    ListeningPort="18944"
    SendValidTransformsOnly="true"
    OutputChannelId="TrackerStream" >
    <DefaultClientInfo>
      <MessageTypes>
      <Message Type="TRANSFORM" />
      </MessageTypes>
      <TransformNames>
      <Transform Name="StylusTipToReference" />
      <Transform Name="ToolToReference" />
      <Transform Name="ToolToTracker" />
      <Transform Name="StylusToTracker" />
      <Transform Name="ReferenceToTracker" />
      </TransformNames>
    </DefaultClientInfo>
</PlusOpenIGTLinkServer>
</PlusConfiguration>

Example configuration file Aurora PlusDeviceSet_Server_NDIAurora_NDIPolaris.xml
<PlusConfiguration version="2.1">
<DataCollection StartupDelaySec="1.0">
    <DeviceSet
      Name="PlusServer: NDI Aurora and Polaris tracker"
      Description="Broadcasting tool tracking data through OpenIGTLink
      Tracking a single EM pointer and an optical pointer and reference." />
    <Device
      Id="EmTracker"
      Type="AuroraTracker"
      SerialPort="5"
      BaudRate="115200"
      AcquisitionRate="20"
      LocalTimeOffsetSec="0.0"
      ToolReferenceFrame="EmTracker" >
      <DataSources>
      <DataSource Type="Tool" Id="Pointer" PortName="0" />
      </DataSources>
      <OutputChannels>
      <OutputChannel Id="EmTrackerStream">
          <DataSource Id="Pointer" />
      </OutputChannel>
      </OutputChannels>
    </Device>
   
    <Device
      Id="OpticalTracker"
      Type="PolarisTracker"
      SerialPort="6"
      BaudRate="115200"
      AcquisitionRate="20"
      LocalTimeOffsetSec="0.0"
      ToolReferenceFrame="OpticalTracker" >
      <DataSources>
      <DataSource Type="Tool" Id="Stylus" RomFile="NdiToolDefinitions/8700340.rom" />
      <DataSource Type="Tool" Id="Reference" RomFile="NdiToolDefinitions/8700449.rom" />
      </DataSources>
      <OutputChannels>
      <OutputChannel Id="OpticalTrackerStream" >
          <DataSource Id="Stylus"/>
          <DataSource Id="Reference"/>
      </OutputChannel>
      </OutputChannels>
    </Device>
    <Device
      Id="CombinedTracker"
      Type="VirtualMixer" >
      <InputChannels>
      <InputChannel Id="EmTrackerStream" />
      <InputChannel Id="OpticalTrackerStream" />
      </InputChannels>
      <OutputChannels>
      <OutputChannel Id="CombinedTrackerStream"/>
      </OutputChannels>
    </Device>
   
</DataCollection>
<PlusOpenIGTLinkServer
    MaxNumberOfIgtlMessagesToSend="1"
    MaxTimeSpentWithProcessingMs="50"
    ListeningPort="18944"
    SendValidTransformsOnly="true"
    OutputChannelId="CombinedTrackerStream" >
    <DefaultClientInfo>
      <MessageTypes>
      <Message Type="TRANSFORM" />
      </MessageTypes>
      <TransformNames>
      <Transform Name="ReferenceToOpticalTracker" />
      <Transform Name="StylusToOpticalTracker" />
      <Transform Name="PointerToEmTracker" />      
      </TransformNames>
    </DefaultClientInfo>
</PlusOpenIGTLinkServer>

</PlusConfiguration>

页: [1]
查看完整版本: NDI Vega, Polaris and Aurora pose trackers