This is the second step in automatic/interactive bead alignment. This program traces individual beads through all projections. The algorithm is:
If there are large shifts between neighboring projections or the bead-like features to be matched are closely crowded so more accurate shift parameters are needed when running BEAD_MATCHER, create a *.sbl file by picking positions of a bead in all projections. If there are only a few large shifts, it's only necessary to pick a bead on projections around each large shift, and the beads for different shifts do not have to be the same if the shifts are not adjacent.
Here's an example command file for BEAD_MATCHER:
(time bead_matcher \
/usr/people/weiping/test/junk.stk \
/usr/people/weiping/test/junk.pl \
/usr/people/weiping/test/junk.sl \
/usr/people/weiping/test/junk.rbl \
-rot0=78 -nskip=5 -slop=25:25:25 -xycrit=10:10 \
-irefs=-1:-1:-1:-1:-1:-1:-1:-1:-1:-1 -isblfile=none \
-iprmfile=none -nchuck=1 ) > /mama/weiping/balign.log
IdatFile | IplFile | OslFile | IrblFile | NX:NY:NV | rot0 | nSkip | slop | xyCrit | iRefs | IsblFile | IprmFile | nChuck
Priism | Alignment | Bead finder | Bead chaser | Bead align | Bead align (interactive) | Bead list editor | Reconstruction
IdatFile is the raw projection data stack from the CCD.
Return to the list of parameters
Iplfile specifies the name of the input list file which stores the coordinates of bead-like features. This file is generated by BEAD_FINDER.
Return to the list of parameters
OslFile is the file name to use for the output list of sorted and matched bead coordinates.
Return to the list of parameters
IrblFile is the name of a file that contains bead locations from multiple reference sections (it assumes that the bead coordinates for each section will be contiguous in the IrblFile). IrblFile will be ignored if it does not exist. If there are valid reference sections specified by iRefs, they will be used for matching as well. If no IrblFile is supplied and no reference sections are supplied with iRefs, the section with the tilt angle closest to zero will be used as the reference section.
Return to the list of parameters
The first two values are, respectively, the x and y dimension of the projections. The third value is the number of projections in the data stack.
Return to the list of parameters
Let the orientation angle be the smallest, in absolute value, rotation
angle needed to rotate the image so that the tilt axis is parallel to the
y axis (the y axis is vertical when images are displayed in Priism). The
orientation angle is positive if the corresponding rotation is clockwise
and is negative if the corresponding rotation is counterclockwise.

The first value in the rot0 field is the estimated orientation
angle, in degrees, at a tilt angle of zero. The second value is the
estimated difference, in degrees, between the orientation angle at a tilt
angle of sixty degrees and the orientation angle at a tilt angle of minus
sixty degrees. To specify these parameters from the command line, use
-rot0=o0:ochange. The
default value for o0 is 78 degrees; the default value for
ochange is -1 degrees. You should substitute values that
more accurately reflect what happens at the magnification used when
collecting the tilt series.
Return to the list of parameters
When predicting the position of a bead in section i, BEAD_MATCHER looks at previously matched sections or a reference section with indices in [i - nSkip, i + nSkip] to find a previously determined position for the bead, if no such position is found then no attempt is made to match the bead in other sections.
Use -nskip=n to set this parameter on the
command line. The default value is five.
Return to the list of parameters
The first, slop1, of these three parameters sets maximum distance in pixels between a bead position in the input .pl file and the predicted value from the matching algorithm.
The second, slop2, is the maximum amount in pixels to shift the predicted positions of the beads to be traced when trying to find the best match with the beads in the input .pl file. A limit is imposed to restrict the 4D search space and reduce the computational cost (roughly proportional to slop2^4). This is helpful if there are many beads to match. If in a section, fewer than four of the beads to be traced are matched with beads in the input .pl file, slop2 will be doubled and the search will be done again.
The third, slop3, is the threshold in pixels for the distance between the predicted positions of the beads to be traced and the beads in the input .pl file in each matching trial. Each trial starts by aligning the position of one of the beads to be traced (the starting bead) and the positions of one of the beads in the input .pl file. Then for each bead to be traced other than the starting bead, the closest bead position in the input .pl file is found. If the distance to this closest position is greater than slop3, no match is found. There is no requirement that each bead being traced be matched in each section since there are cases (if BEAD_FINDER did not locate the bead or if the bead fell outside the field of view) when doing so would generate incorrect results.
If more accurate initial alignment parameters are available (by providing an IsblFile or IprmFile) then more stringent values for the slop parameters can be used.
These three parameters are specified on the command line with
-slop=slop1:slop2:slop3.
The default value for slop1 is 25 pixels. slop2 or
slop3 will be set equal to slop1 if they are not
specified.
Return to the list of parameters
These two parameters are, respectively, the maximum x and y differences (in pixels) between the best match of the positions in the input .pl file and the predicted position for a bead to be traced. If a difference in the x position or a difference in the y position exceeds the threshold, the matched point will be dropped from the found list. In a section, when the number of found beads drops to less than three, the threshold will be automatically doubled for that section.
Set the thresholds with the command-line option,
-xycrit=x_threshold:y_threshold. The
default value for the thresholds is ten pixels.
Return to the list of parameters
These values specify which projections should be used as reference sections in the matching process. The beads used on a reference section are the ones present in the input .pl file. Up to ten reference sections can be used.
To specify a reference section, enter its index which ranges from
zero (for the first section in the data stack) to the number of
sections minus one (for the last section in the data stack). Values
less than zero are ignored. The reference sections are set on the
command line with -irefs=ref1:ref2:ref3:ref4:ref5:ref6:ref7:ref8:ref9:ref10.
Return to the list of parameters
This parameter gives the name of a file that contains the coordinates of a single reference bead on all projections. These coordinates are used to enable better prediction of bead positions in the matching step and can be used to work around the problems created by large image shifts between adjacent projections. Specifying rough alignment parameters with IprmFile is another way to do this, but keep in mind that the translational parameters from IsblFile have priority over those from the alignment parameters file.
The typical way to generate IsblFile is to use the bead list editor to interactively select the positions.
This parameter is specified on the command line with
-isblfile=file_name. The default value is "none"
which indicates that no IsblFile is available.
Return to the list of parameters
Iprmfile is the name of a file containing an estimate of the alignment parameters in standard format. This can be generated from EM calibration and a stretched cross-correlation alignment. This file is optional but can be used to provide more accurate estimates of the alignment parameters so predictions of bead positions during the matching process can be done more accurately.
The file name is specified on the command line with
-iprmfile=file_name. The default value is "none"
which signals that no alignment parameter file is available.
Return to the list of parameters
This parameter sets the number of beads to be down weighted in assessing various matching possibilities between the predicted positions of the beads to be matched and the bead positions in the input .pl file.
The number, n, of beads is set on the command line with
-nchuck=n. The default value is one.
Return to the list of parameters