1.configuration file包含的XML元素

  • Version Major版本号
  • PlusRevision创建配置文件更加详细的plus版本
  • Data collection :定义所有用于采集和处理数据的设备
    • StartupDelaySec:开始使用各种采集设备之前,留有充足的时间初始化。
    • DeviceSet
      • Name 设备名称,如NDI Polaris...
      • Description设备描述
    • Device
      • Type设备类型
      • AcquisitionRate采集率
      • LocalTimeOffsetSec
      • MissingInputGracePeriodSec初始设备多久后,不再报missinginput是个错误
      • ToolReferenceFrame工具参考坐标系
      • ReportUnknownToolsOnceWhen
      • InputChannels该设备采集需要的输入通道列表(每个输入通道就是另一个设备的输出通道)
      • DataSources数据源
        • DataSource(Id、Type、BufferSize、AveragedItemsForFiltering参与时间戳冗余滤波的的数目、 PortName工具识别、PortUsImageOrientation图像原点、图像类型B超or、ClipRectangleOriginClipping图像裁剪原点、ClipRectangleSizeClipping 图像裁剪尺寸)
      • OutputChannelsList输出通道列表
  • Coordinate system definition坐标系定义(固定变换矩阵列表)(见2)
  • Application elements应用模块
    • Freehand calibration(fCal) setting(单独讨论)
    • Plus sever setting(见3)
  • Algorithm elements算法模块
    • Probe calibration algorithm探头校准算法(单独讨论)
    • Phantom registration algorithm体模注册算法(单独讨论)
    • Pivot calibration algorithm针尖校准算法(单独讨论)
    • Temporal calibration时间校准算法(单独讨论)
    • Volume reconstruction algorithm体重建算法(不讨论)
    • RF processing algorithmRF处理算法(不讨论)
专业术语注释:

Device: 一个独立的数据获取或处理单元。每个设备都有自己处理的线程(与其他设备并行运行,负责从输入端读取数据,并提供给输出端)
Data source: 提供一支数据流,既可以是transform也可以是图像流。这个流还包括每个项目的元数据:时间戳、状态(数据是否有效)。
Channel: 捆绑多个数据源的输出,一个通道可以包含一个图像流+任意数量的跟踪数据流。
Output channel: 通过输出通道可以为其他设备和算法提供数据。
Input channel: 一个设备需要从其他设备接收数据。

2.Coordinate system definition

格式:
CoordinateDefinitions
  • Transform

    • From 'From' coordinate frame of the transform
    • To 'To' coordinate frame of the transform
    • Matrix
    • Data
    • Error
实例:

<Transform From="Tool" To="Tracker"Matrix="1    0   0   00  1   0   00  0   1   00  0   0   1"Date="2012.02.06 17:57:00" Error = 0.05/>

需要探讨的就是From=“Stylus”  To=“StylusTip” ; From=“Image”  To=“Probe”

3.Plus sever setting

格式:
PlusOpenIGTLinkServer
  • ListeningPort Port 服务器监听传入连接的端口号,通常为18944
  • OutputChannelId 数据来源通道
  • MaxNumberOfIgtlMessagesToSend每次更新发送出去的最大数量信息,默认100
  • MaxTimeSpentWithProcessingMs每次更新将数据发送给客户端需要的最大时间花销,默认50
  • SendValidTransformsOnly 只发送有效的变换数据,默认TRUE
  • DefaultClientSendTimeoutSe 默认0.5
  • DefaultClientReceiveTimeoutSec 默认0.5
  • IgtlMessageCrcCheckEnabled如果TRUE,那么传入的OpenIGTLink消息只有在其CRC有效时才被接受,默认FALSE
  • DefaultClientInfo
    • MessageTypes      Message  Type=(IMAGE:图像;TRANSFORM三维变换矩阵;POSITION三维位置数据等)
    • TransformNames   Transform  Name="***"
    • StringNames (不常用)
    • ImageNames          Image     Name=“***”   EmbeddedTransformToFrame ("To" frame of the transform embedded in the IGTL image message)
实例:
<PlusOpenIGTLinkServer MaxNumberOfIgtlMessagesToSend="10" MaxTimeSpentWithProcessingMs="50" ListeningPort="18944" MissingInputGracePeriodSec="5.0"SendValidTransformsOnly="TRUE" OutputChannelId="SomeValidChannel" > <DefaultClientInfo> <MessageTypes> <Message Type="IMAGE" /><Message Type="TRANSFORM" /></MessageTypes><TransformNames><Transform Name="StylusTipToReference" /> <Transform Name="ProbeToReference" /> </TransformNames></DefaultClientInfo>
</PlusOpenIGTLinkServer>

4.FQA

如何利用多种设备收集数据(如图像流、跟踪数据流)?
1.将所有的硬件设备采集配置放在<DataCollection>域内;
2.添加Virtual Mixer设备,创建一个新的通道,包含所有硬件设备的输出信息;
一般情况下,一个Mixer设备就足够了,但是为了防止多个通道分别包含不同的内容,可以添加使用多个Mixer设备。
    <Device Id="TrackedVideoDevice" Type="VirtualMixer" ><InputChannels><InputChannel Id="TrackerStream" /><InputChannel Id="VideoStream" /></InputChannels><OutputChannels><OutputChannel Id="TrackedVideoStream"/></OutputChannels></Device>

5.References

https://app.assembla.com/spaces/plus/wiki

3DSlicer28:PLUS相关推荐

  1. 大数据技术之_19_Spark学习_07_Spark 性能调优 + 数据倾斜调优 + 运行资源调优 + 程序开发调优 + Shuffle 调优 + GC 调优 + Spark 企业应用案例

    大数据技术之_19_Spark学习_07 第1章 Spark 性能优化 1.1 调优基本原则 1.1.1 基本概念和原则 1.1.2 性能监控方式 1.1.3 调优要点 1.2 数据倾斜优化 1.2. ...

  2. golang大厂面试2

    golang大厂面试 滴滴 写个二分查找 以下是一个简单的二分查找算法的 Go 语言实现: package mainimport "fmt"// 二分查找函数 func binar ...

  3. InstallShield内部库函数

    InstallShield内部库函数 下载资源:点击 1  库函数综述 InstallShield包含300多个内部库函数,用户可在安装脚本中调用它们来创建程序组,操作文件夹,处理目录,监督安装状态, ...

  4. 端口映射问题:Bad Request This combination of host and port requires TLS.

    错误信息: Bad Request This combination of host and port requires TLS. 遇到上面的错误信息:如果是通过域名访问,则该域名后配置的转发端口映射 ...

  5. locust入门:单机使用locust运行压力测试

    locust的官方文档在这里: http://docs.locust.io/en/stable/ 前置:locust的测试脚本使用为python(若未安装python环境,可以搜索安装python) ...

  6. docker报错:driver failed programming external connectivity on endpoint, iptables:No chain by that name

    docker 报错: Error response from daemon: Cannot restart container hello: driver failed programming ext ...

  7. mybatis查询报错:com.mysql.cj.exceptions.DataConversionException: Cannot determine value type from string

    mybatis查询报错: com.mysql.cj.exceptions.DataConversionException: Cannot determine value type from strin ...

  8. mongo报错:not authorized on bb to execute command { create: \“xxx\“...}

    mongo报错: {"ok" : 0,"errmsg" : "not authorized on bb to execute command { cr ...

  9. restTemplate http请求报错:no suitable HttpMessageConverter found for response type and content type

    报错信息: org.springframework.web.client.UnknownContentTypeException: Could not extract response: no sui ...

最新文章

  1. 适用于0基础小伙伴的HTML知识点总结 先到先得哟
  2. 新物质?新材料?探索元素周期表,机器学习帮你找!
  3. python 串口上位机_如何使用Python开发串口通讯上位机(二)
  4. 如何诊断ORA-125XX连接问题
  5. matlab画直方图下标,matlab画二维数据直方图/画二维概率分布
  6. 非标准语法;请使用 _一文读懂使用MCU SPI访问具有非标准SPI接口ADC的方法
  7. java取消 验证_使用Spring Security Java配置时禁用基本身份验证
  8. bootstrap php 多行,使用PHP循环将Bootstrap行和正确的列号添加到元素
  9. linux日志.pdf,一种用于LINUX的AUDIT日志分析方法.pdf
  10. Kali 更新失败 签名无效
  11. 匹配网页里的zip_ZIP 也能边下载边解压?流式解压技术揭秘
  12. atitit.web原理 理论attilax总结
  13. 2021十大运动蓝牙耳机品牌推荐,平价真无线蓝牙耳机运动无拘束
  14. 计算机端最好用的词典——GoldenDict
  15. 微软产品大升级:Surface Pro 6、Studio 2、Laptop 2 重磅来袭
  16. 自动控制原理之控制系统的数学模型(类比神经网络学习数学模型)
  17. Probability|Given UVA - 11181
  18. 今年是嵌入式香还是互联网香?
  19. 算法学习之膨胀腐蚀算法
  20. python编程猜数字小游戏(简单)

热门文章

  1. Leetcode中Path的题目总结
  2. 挖掘频繁模式、关联和相关
  3. Errors running builder 'DeploymentBuilder' on project '工程名'
  4. bingmaps rest 中文化服务
  5. 用Zebra 在Linux 上构建路由器实战手册
  6. 遍历groupBox控件的每一个子控件的写法
  7. Metaphors for a richer understanding of software development -- Code complete reading notes(2)
  8. NYOJ_5739最大岛屿(河南省第八届acm程序设计大赛)
  9. hdu 2874(LCA + 节点间距离)
  10. List集合中两种遍历方式