Skip to content

Commit 76e7dcb

Browse files
committed
Add fCal_Echo1.0 phantom and config file
1 parent cbe17d4 commit 76e7dcb

File tree

2 files changed

+260
-0
lines changed

2 files changed

+260
-0
lines changed
5.35 MB
Binary file not shown.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,260 @@
1+
<PlusConfiguration version="2.3" PlusRevision="Plus-2.8.0.62873a16 - Win64">
2+
<DataCollection StartupDelaySec="0">
3+
<DeviceSet
4+
Name="fCal: Echo probe (Microsoft Media Foundation Video) + Aurora tracker (Probe, Stylus, Reference) + Serial ECG - fCal Aurora Echo Phantom 1.0"
5+
Description="Ultrasound spatial calibration with echo probe customized fCal phantom. Aurora sensors should be attached in the following order: 1 Probe, 2 Stylus, 3 Reference. The Aurora 6DOF reference disk (610066) should be attached to the phantom in S1 position." />
6+
<Device
7+
Id="TrackerDevice"
8+
Type="AuroraTracker"
9+
SerialPort="7"
10+
LocalTimeOffsetSec="0.182302"
11+
MeasurementVolumeNumber="0"
12+
CheckDSR="true">
13+
<DataSources>
14+
<DataSource Type="Tool" Id="Reference" PortName="2" BufferSize="150" />
15+
<DataSource Type="Tool" Id="Stylus" PortName="1" BufferSize="150" />
16+
<DataSource Type="Tool" Id="Probe" PortName="0" BufferSize="150" />
17+
</DataSources>
18+
<OutputChannels>
19+
<OutputChannel Id="TrackerStream">
20+
<DataSource Id="Reference" />
21+
<DataSource Id="Stylus" />
22+
<DataSource Id="Probe" />
23+
</OutputChannel>
24+
</OutputChannels>
25+
</Device>
26+
<Device Id="VideoDevice" Type="MmfVideo" FrameSize="1680 1050" VideoFormat="YUY2" CaptureDeviceId="1">
27+
<DataSources>
28+
<DataSource Type="Video" Id="Video" PortUsImageOrientation="MF" BufferSize="1000" />
29+
</DataSources>
30+
<OutputChannels>
31+
<OutputChannel Id="VideoStream" VideoDataSourceId="Video" />
32+
</OutputChannels>
33+
</Device>
34+
<Device
35+
Id="SerialDevice"
36+
Type="GenericSerialDevice"
37+
SerialPort="5"
38+
BaudRate="115200"
39+
AcquisitionRate="60"
40+
MaximumReplyDelaySec="1"
41+
MaximumReplyDurationSec="3"
42+
LineEnding="0d">
43+
<DataSources>
44+
<DataSource Id="EcgData" Type="FieldData" BufferSize="150" />
45+
</DataSources>
46+
<OutputChannels>
47+
<OutputChannel Id="EcgChannel">
48+
<DataSource Id="EcgData" />
49+
</OutputChannel>
50+
</OutputChannels>
51+
</Device>
52+
<Device Id="FinalMixer" Type="VirtualMixer">
53+
<InputChannels>
54+
<InputChannel Id="VideoStream" />
55+
<InputChannel Id="TrackerStream" />
56+
</InputChannels>
57+
<OutputChannels>
58+
<OutputChannel Id="TrackedVideoStream" />
59+
</OutputChannels>
60+
</Device>
61+
<Device
62+
Id="TotalCapture"
63+
Type="VirtualCapture"
64+
EnableFileCompression="FALSE"
65+
EnableCaptureOnStart="FALSE"
66+
RequestedFrameRate="60"
67+
EnableCapturing="FALSE">
68+
<InputChannels>
69+
<InputChannel Id="TrackedVideoStream" />
70+
</InputChannels>
71+
</Device>
72+
<Device
73+
Id="VolumeReconstructorDevice"
74+
Type="VirtualVolumeReconstructor"
75+
OutputVolDeviceName="RecVol_Reference"
76+
EnableReconstruction="FALSE"
77+
ImageCoordinateFrame="Image"
78+
ReferenceCoordinateFrame="Reference">
79+
<InputChannels>
80+
<InputChannel Id="TrackedVideoStream" />
81+
</InputChannels>
82+
<VolumeReconstruction
83+
ImageCoordinateFrame="Image"
84+
ReferenceCoordinateFrame="Reference"
85+
OutputSpacing="1 1 1"
86+
ClipRectangleOrigin="-1 -1"
87+
ClipRectangleSize="-1 -1"
88+
Interpolation="NEAREST_NEIGHBOR"
89+
Optimization="FULL"
90+
CompoundingMode="LATEST"
91+
FillHoles="OFF"
92+
NumberOfThreads="1"
93+
OutputOrigin="0 0 0"
94+
OutputExtent="0 0 0 0 0 0" />
95+
</Device>
96+
</DataCollection>
97+
<PlusOpenIGTLinkServer MaxNumberOfIgtlMessagesToSend="1" MaxTimeSpentWithProcessingMs="50" ListeningPort="18944" SendValidTransformsOnly="true" OutputChannelId="TrackedVideoStream">
98+
<DefaultClientInfo>
99+
<MessageTypes>
100+
<Message Type="STRING" />
101+
<Message Type="IMAGE" />
102+
<Message Type="TRANSFORM" />
103+
</MessageTypes>
104+
<StringNames>
105+
<String Name="EcgData" />
106+
</StringNames>
107+
<ImageNames>
108+
<Image Name="Image" EmbeddedTransformToFrame="Reference" />
109+
</ImageNames>
110+
<TransformNames>
111+
<Transform Name="ProbeToReference" />
112+
</TransformNames>
113+
</DefaultClientInfo>
114+
</PlusOpenIGTLinkServer>
115+
<CoordinateDefinitions>
116+
<Transform From="Image" To="Probe"
117+
Matrix="
118+
-0.0366908 0.00859235 0.0703785 33.0566
119+
-0.0131224 -0.0659215 0.00481551 6.16212
120+
0.0798326 -0.00866914 0.0331372 -48.1144
121+
0 0 0 1"
122+
Error="1.77822" Date="120719_122959" />
123+
<Transform From="Image" To="TransducerOriginPixel"
124+
Matrix="
125+
1 0 0 -410
126+
0 1 0 5
127+
0 0 1 0
128+
0 0 0 1"
129+
Date="2011.12.06 17:57:00" />
130+
<Transform From="Phantom" To="Reference"
131+
Matrix="
132+
0 -1 0 0
133+
0 0 1 -14
134+
-1 0 0 -25
135+
0 0 0 1"
136+
Date="082219_123643" />
137+
<Transform From="StylusTip" To="Stylus"
138+
Matrix="
139+
1 0 0 0
140+
0 1 0 0
141+
0 0 1 0
142+
0 0 0 1"
143+
Date="2019.09.04 23:39:22" />
144+
<Transform From="TransducerOriginPixel" To="TransducerOrigin"
145+
Matrix="
146+
0.0888685 0 0 0
147+
0 0.0669975 0 0
148+
0 0 0.0779385 0
149+
0 0 0 1"
150+
Date="120719_122959" />
151+
</CoordinateDefinitions>
152+
<Rendering WorldCoordinateFrame="Reference" DisplayedImageOrientation="MFA">
153+
<DisplayableObject Type="Model" ObjectCoordinateFrame="Reference" Id="Volume" />
154+
<DisplayableObject Type="Image" ObjectCoordinateFrame="Image" Id="LiveImage" />
155+
<DisplayableObject Type="Model" ObjectCoordinateFrame="Stylus" Id="StylusModel" File="Stylus_Example.stl" />
156+
<DisplayableObject
157+
Type="Model"
158+
ObjectCoordinateFrame="Phantom"
159+
Id="PhantomModel"
160+
File="fCal_Echo1.0.stl"
161+
Opacity="0.4"
162+
ModelToObjectTransform="
163+
1 0 0 -30
164+
0 1 0 -10
165+
0 0 1 -12.5
166+
0 0 0 1" />
167+
<DisplayableObject
168+
Type="Model"
169+
ObjectCoordinateFrame="TransducerOrigin"
170+
Id="ProbeModel"
171+
File="Probe_L14-5_38.stl"
172+
Opacity="0.6"
173+
ModelToObjectTransform="
174+
1 0 0 0
175+
0 1 0 0
176+
0 0 1 0
177+
0 0 0 1" />
178+
</Rendering>
179+
<Segmentation
180+
ApproximateSpacingMmPerPixel="0.0676012"
181+
MorphologicalOpeningCircleRadiusMm="0.01"
182+
MorphologicalOpeningBarSizeMm="2"
183+
ClipRectangleOrigin="293 332"
184+
ClipRectangleSize="977 687"
185+
MaxLinePairDistanceErrorPercent="10"
186+
AngleToleranceDegrees="10"
187+
MaxAngleDifferenceDegrees="10"
188+
MinThetaDegrees="-70"
189+
MaxThetaDegrees="70"
190+
MaxLineShiftMm="10"
191+
ThresholdImagePercent="10"
192+
CollinearPointsMaxDistanceFromLineMm="0.6"
193+
UseOriginalImageIntensityForDotIntensityScore="0" />
194+
<PhantomDefinition>
195+
<Description Name="fCAL" Type="Multi-N" Version="2.0" WiringVersion="2.0" Institution="Phantom for NDI Aurora Reference Sensor" />
196+
<Geometry>
197+
<Pattern Type="NWire">
198+
<Wire Name="7:F3_f3" EndPointFront="25.0 0.0 15.0" EndPointBack="25.0 40.0 15.0" />
199+
<Wire Name="8:G3_h3" EndPointFront="30.0 0.0 15.0" EndPointBack="35.0 40.0 15.0" />
200+
<Wire Name="9:I3_i3" EndPointFront="40.0 0.0 15.0" EndPointBack="40.0 40.0 15.0" />
201+
</Pattern>
202+
<Pattern Type="NWire">
203+
<Wire Name="7:F4_f4" EndPointFront="25.0 0.0 10.0" EndPointBack="25.0 40.0 10.0" />
204+
<Wire Name="8:H4_g4" EndPointFront="35.0 0.0 10.0" EndPointBack="30.0 40.0 10.0" />
205+
<Wire Name="9:I4_i4" EndPointFront="40.0 0.0 10.0" EndPointBack="40.0 40.0 10.0" />
206+
</Pattern>
207+
<Pattern Type="NWire">
208+
<Wire Name="7:F5_f5" EndPointFront="25.0 0.0 5.0" EndPointBack="25.0 40.0 5.0" />
209+
<Wire Name="8:H5_g5" EndPointFront="35.0 0.0 5.0" EndPointBack="30.0 40.0 5.0" />
210+
<Wire Name="9:I5_i5" EndPointFront="40.0 0.0 5.0" EndPointBack="40.0 40.0 5.0" />
211+
</Pattern>
212+
<Pattern Type="NWire">
213+
<Wire Name="7:F6_f6" EndPointFront="25.0 0.0 0.0" EndPointBack="25.0 40.0 0.0" />
214+
<Wire Name="8:G6_h6" EndPointFront="30.0 0.0 0.0" EndPointBack="35.0 40.0 0.0" />
215+
<Wire Name="9:I6_i6" EndPointFront="40.0 0.0 0.0" EndPointBack="40.0 40.0 0.0" />
216+
</Pattern>
217+
<Landmarks>
218+
<Landmark Name="#1" Position="-22.5 -9.5 30.0" />
219+
<Landmark Name="#8" Position=" 82.5 -9.5 -5.0" />
220+
<Landmark Name="#9" Position="-29.5 40.0 27.5" />
221+
<Landmark Name="#12" Position="-29.5 22.5 -5.0" />
222+
<Landmark Name="#13" Position="-20.0 40.0 37.0" />
223+
<Landmark Name="#16" Position=" 80.0 0.0 37.0" />
224+
<Landmark Name="#17" Position=" 89.5 -5.0 27.5" />
225+
<Landmark Name="#20" Position=" 89.5 40.0 -2.5 " />
226+
<Landmark Name="#21" Position=" 82.5 49.5 30.0" />
227+
<Landmark Name="#28" Position="-22.5 49.5 -5.0" />
228+
</Landmarks>
229+
</Geometry>
230+
</PhantomDefinition>
231+
<fCal
232+
PhantomModelId="PhantomModel"
233+
ReconstructedVolumeId="Volume"
234+
TransducerModelId="ProbeModel"
235+
StylusModelId="StylusModel"
236+
ImageDisplayableObjectId="LiveImage"
237+
NumberOfCalibrationImagesToAcquire="200"
238+
NumberOfValidationImagesToAcquire="200"
239+
NumberOfStylusCalibrationPointsToAcquire="200"
240+
RecordingIntervalMs="100"
241+
MaxTimeSpentWithProcessingMs="70"
242+
ImageCoordinateFrame="Image"
243+
ProbeCoordinateFrame="Probe"
244+
ReferenceCoordinateFrame="Reference"
245+
TransducerOriginCoordinateFrame="TransducerOrigin"
246+
TransducerOriginPixelCoordinateFrame="TransducerOriginPixel"
247+
TemporalCalibrationDurationSec="10"
248+
FixedChannelId="VideoStream"
249+
FixedSourceId="Video"
250+
MovingChannelId="TrackerStream"
251+
MovingSourceId="ProbeToTracker"
252+
DefaultSelectedChannelId="TrackedVideoStream"
253+
FreeHandStartupDelaySec="3" />
254+
<vtkPlusPivotCalibrationAlgo ObjectMarkerCoordinateFrame="Stylus" ReferenceCoordinateFrame="Reference" ObjectPivotPointCoordinateFrame="StylusTip" />
255+
<vtkPlusPhantomLandmarkRegistrationAlgo PhantomCoordinateFrame="Phantom" ReferenceCoordinateFrame="Reference" StylusTipCoordinateFrame="StylusTip" DetectionTimeSec="2.0" StylusTipMaximumDisplacementThresholdMm="1" />
256+
<vtkPhantomLinearObjectRegistrationAlgo PhantomCoordinateFrame="Phantom" ReferenceCoordinateFrame="Reference" StylusTipCoordinateFrame="StylusTip" />
257+
<vtkTemporalCalibrationAlgo ClipRectangleOrigin="-1 -1" ClipRectangleSize="-1 -1" SetMaximumMovingLagSec="0.5" />
258+
<vtkPlusProbeCalibrationAlgo ImageCoordinateFrame="Image" ProbeCoordinateFrame="Probe" PhantomCoordinateFrame="Phantom" ReferenceCoordinateFrame="Reference" />
259+
<vtkPlusTemporalCalibrationAlgo ClipRectangleOrigin="293 332" ClipRectangleSize="977 687" />
260+
</PlusConfiguration>

0 commit comments

Comments
 (0)