Qualitative 3D ultrasound without a position sensor

There are five stages to producing 3D data from a sequence of 2D frames without positions.
  1. Choose the image region.
  2. Set the decompression parameter.
  3. Set the beam widths.
  4. Run the registration algorithms.
  5. View the result.
Once calculated, the position information derived from the images may be stored as a registration (.sxr) file, or incorporated in a new data file that is saved with explicit positions, just as has been described for other types of registration.

1. Choose the image region.

You need to tell the registration algorithms which parts of the B-scans are valid data, and which parts are uninteresting background. This is done using the grey level sliders in the `Segmentation Thresholds and Gating' window to segment the data into valid parts (magenta) and invalid parts (not magenta). For instance, if the B-scan was recorded using a convex array probe,

Initial un-segmented review window

the sliders should be set to include the B-scan data, but not the outer edges of the window:

Segmented review window

Note that, for convex probes, a more accurate image registration will result if you have estimated the probe shape first.

The sliders can also be used to exclude bright text from the registration process: red or blue Doppler regions are always excluded. The setting of the thresholds is not critical: in general, it is better to include as much data as possible. If very little data is available for registration, Stradx will issue a message warning that the registration is bad, and discard the registration for that B-scan.

2. Set the decompression parameter.

If you are using RF data then this step is not required. In this case the system is performing the image intensity compression directly, and thus knows the correct decompression parameter to use.

If you are not using RF data then you need to estimate the decompression parameter to enable the system to estimate the echo envelope intensity from the values of the pixels in the B-scan images. This is done using the calibration controls menu.

First, you must segment out about 40 patches of "fully developed speckle" in some of the ultrasound images.

Two patches of speckle segmented out

A good strategy is to segment out a couple of patches in roughly twenty different images. Then press the "Find decompression parameter" button. The system will compare the statistics of the compressed speckle patches with the known statistics of perfect speckle and come up with an estimate for the decpomression parameter.

3. Set the beam widths.

Beam width information can be included in the calibration file (.sxc). If you have previously measured the beam width or derived it using another data set recorded with the same probe, you can simply load the appropriate calibration file. If you don't have such a calibration available, then you have two options.

4. Run the registration algorithms.

Open the `Image Registration' window and choose `elevational registration'. You may also choose non-rigid registration if required.

There is a slider (top right of the `Image Registration' window) that sets the number of B-scans to jump between each reference frame. If this is set to 1, then each frame will be located relative to the previous one. If it is set to two, then frames 1 and 2 will be located relative to frame 0, frames 3 and 4 relative to frame 2, and so on. This facility can be used to eliminate errors caused by any persistence between the B-scan images recorded from the ultrasound machine. Having set the slider as required, press the `calculate' button to start the registration process.

5. View the result.

Once the registration calculation is complete the data can be viewed by selecting `use rigid', and `use elevational' registration in the `Image Registration' window. The relative positions of the frames are then made available to all the other visualisation windows, enabling them to be run just as with normal data recorded with a position sensor.

If it is known that the beam widths are correct, then they should not be changed at this stage using the tilt and length sliders. If, however, independent information about the beam width profile is not available, the sliders can be used to make the data look plausible. This is done by clicking the `Recalculate beam width using tilt and length' button, and then moving the tilt and length sliders until the desired shape of data is seen in the `Outline' window. The tilt slider changes the motion of the top of the B-scan relative to the bottom, and the length slider changes the overall motion at both the top and bottom.

It is impossible for the system to know the overall direction of motion based on the images alone. A `Flip elevation' button is provided in the `Image Registration' window to enable the reversal of all elevation motion.

Reslice before pressing flip z motion. Reslice after direction of z motion flipped.