You are on page 1of 3

5.

Linearity calibration
Purpose: The Anger calculation gives strongly nonlinear image. The nonlinearity can be
corrected by generating a vector field and so correct the calculated position.
Procedure: With Tc-99m applying the linearity lead masks (parallel 9mm equidistance
1mm slits in X or Y direction) linearity images have to be taken. Then using the
LinCALC program (written by Sándor Török) one can calculate linearity correction
tables (containing the correction vector field components) in an iterative way. The
method uses the X and Y images. Knowing the real positions of the lines one can
calculate the required shifts for the given direction – in case of X linearity image,
linearity can be calculated with a density of 16,384 pixels but only at 9mm steps for Y
direction. Since a more dense grid is required for correction (65,536*65,536), internal,
not measured grid points are interpolated linearly. After correction is calculated, linearity
coefficients (see NEMA quantities) is calculated on the acquired and corrected images. If
it is not satisfactory, these images can be saved and the linearity correction table can be
made more precise using the saved results for recalculation the tables. This iteration has
to be performed until acceptable linearity coefficients are achieved.
When linearity correction is turned on, the position calculation is
16),(__PosYPosXPosXmmppixmmPosXLxΛ+⋅=
and similarly for Y direction and Λ represents the x component of the linearity
x
correction vector field.

Reference: not available. All information comes from discussing with Sándor Török.
Note: Linearity correction intrinsically includes a new XY factor calibration, since the
imaged lines are adjusted not to be straight but being equidistance according to the lead
mask. Therefore X_factor and Y_factor should be determined from the fact that PosX/16
needs to be within the range [0, 1024]. The precise scaling will be performed by means of
linearity calibration anyway.

6. Energy and uniformity calibration


Both energy and uniformity calibration uses the same loading, which is saved in list
mode file.

6.1 Energy calibration/correction


Purpose: Collecting in separated detector matrix bins, the location of the photopeak in
these bins are slightly different. Energy correction is used to shift the spectra for each bin
with a given scalar value, tuning the energy scales of all bins precisely to each other.
Procedure: Taking a uniformity image (employing either a point source far from the
detector or a flood source) all events are stored in list mode file. Then this events are
binned in 128*128 matrix and spectra is calculated for each bins and the location of
photopeaks is determined. Then differences from the actual channel number
(corresponding e.g. 140 keV) is determined and stored in the energy correction table file.
If the number of counts are under a limit (e.g. 30) correction is not calculated for that bin.
When energy correction is employed (normal acquisition) the ZE value of the events is
shifted by the appropriate energy shift coming from this table. If the corrected ZE falls
into any of the energy windows, the event will increment the appropriate matrix bin.
Reference: not available. All information comes from discussing with László Gazdag.
Note: The energy correction table is calculated iteratively (typically 3 passes): once the
correction table is calculated, the stored event list is reprocessed employing the
correction. If now the spectra on the bins cannot be considered equally located within a
given precision, then new correction table is calculated.
6.2 Uniformity calibration/correction
Purpose: After linearity and energy correction the homogenously irradiated camera gives
not uniform image, which has to be corrected precisely.
Procedure: List mode file is binned in an 1024*1024 matrix, and average value is
determined. Then a correction value is calculated for all bins which, gives this average if
multiplying it with the bin’s value. This multiplicative table is stored in a file. In case of
normal acquisition the appropriate bin is selected for incrementation by the quantization
of calculated L_PosX and L_PosY positions and this selected bin is incremented by a
floating point value according to the uniformity correction table file.
Reference: not available. All information comes from discussing with László Gazdag.
Note: There is an other correction called LinUnif correction made by Sándor Török: The
linearity calculation causes some high frequency inhomogenuosity. If the uniformity data
is transmitted through the LinCALC program using the recent uniformity correction
table, one gets an inhomogeneous image. On the bases of this image an uniformity table
can be calculated as well. This table is used together with the standard uniformity – using
the product of the two tables as the units for incrementation. However, it is not clear why
this separation is needed.

You might also like