DesignFest Home

Plant Workflow

Digital X-ray Detector Control

[ Home | Problem Collection ]

Prepared by

Rob van den Berg (Philips Medical Systems)





Traditionally X-ray devices used photographic film to capture images. Nowadays X-ray machines are using digital devices (e.g. CCD) for capturing images. These devices are used to perform examinations using a lower X-ray dose, as well as to offer easier archiving and off-line processing than traditional photographic film material. However to be able to use such a device, software is needed to: The task of this assignment is to design a framework of classes to support these requirements. The remainder of this document will give some more detail on the task. Figure 1 gives an idea on how such a system might look like.
Figure 1


Detector Imaging Device: consists of Detector and other hardware and software to embed it into an XRS
used for the detection of X-rays, part of a DID
X-ray system; the composite of all parts that make up an X-ray system, e.g. DID, table, X-ray Generator


The task is to design a framework of classes that will handle:
  1. control of the DID: e.g.. select the right configuration, handle start/stop events
  2. image readout: read the values of the detector pixels
  3. image pre-processing: remove detector artefacts (non-linearity, pixel defects from the image)
The resulting framework will enable developers of a specific X-ray machine to integrate a DID into this machine. The responsibility of the XRS is to control the DID. The DID itself is responsible for the technical control of a device. The XRS is responsible for medical application knowledge/control: the XRS will select parameter values for e.g. a colon examination, whereas the DID will interpret these in values needed to control the device. No medical knowledge is embedded in the DID. The remaining sections will detail the above listed requirements

1. DID Configuration

An X-ray detector can be set in a number of modes. These modes can be characterized by the following parameters:
  1. Image size: in pixels * pixels (e.g. 1K by 1K)
  2. Frame speed: in number per second
  3. corrections needed
  4. pixel binning: one can combine the result of multiple pixels into 1. (e.g. a bin of 2x2 pixels)
The software should select the right detector mode, requested by the control system of the X-ray modality, as well as retrieve the right set of calibrations needed for the Image Processing. Also the right correction Algorithms and Algorithm parameters will be selected.

2. DID Control

  1. The detector needs to be read-out with a fixed  frequency. When acquiring images, this frequency is equal to the frame speed, otherwise the detector will be in idle mode, in which it still needs to read out every n mSec.
  2. Mode changes have to be synchronized with the read-out request: A 'Change Mode' command will be send during read-out, after which the detector will switch to the new mode.
  3. If the detector is idle for a number of minutes, the subsystem will execute calibration: the dark offset will be calculated. The dark offset is the pixel value if the Detector is not  radiated. In an ideal detector equal to 0. The result of this calibration needs to be stored as it will be used for Image Processing.
  4. to comply with radiation regulations it is imperative that the X-ray generator can only fire when the detector is ready (every radiation should result in an image). The sequence of events leading to an image look as follows:

3. Image Pre-processing

Images generated by the detector have to be corrected before being displayed to the radiologist. As these images will be used in an Operating Room situation, the calculations have to be in real-time. Therefore, the correction algorithms are designed in such a way to allow processing on a multi-processor machine. Some algorithms can be calculated on parts of the image (noise reduction, pixel defect interpolation) usually in strips. Other algorithms can only be done on the full image (rotation, flip and tilt). The diagram below depicts how such a pipeline could look like. In this case all the algorithms can be done on a strip basis.

As mentioned in 1. Prior to radiation, the XRS informs the DID of a mode change. The required calibration data needed for the image processing is loaded in memory from disk. The detector is properly set-up after this step has been finished. However, ultimately the choice of algorithm is determined by the information contained in the image header.

Further Image handling will be done by the XRS.

Last updated by Torsten Layda, SWX Swiss Exchange, DesignFest® Webmaster.