UFO

Ultra-fast X-ray Imaging

Specification

The experimental station has been designed fast radiography, tomography and laminography imaging.

Imaging geometry Speed requirements Resolution requirements
Fast radiography ≥ 100 kHz frame rate ≤ 1 µm
Fast tomography ≥ 100 Hz tomogram rate ≤ 1 µm
Laminography ≥ 1 Hz laminography ≤ 1 µm
Contrast method Energy bandwidth dE/E
Absorption 10-1 filtered white beam
Propagation-based phase 10-2 multi-layer monochromator
Grating-based phase 10-2 multi-layer monochromator
Spectroscopic 10-4 chrystal monochromator
Parameter Requirement
Sample size ≥ 30 mm
Sample change time ≤ 10 s/sample
Sample throughput ≥ 360 samples/h

Detector

The detector system consists of four modules:

  • an array of scintillators,
  • two optical configurations,
  • an array of visible light cameras as well as
  • an array of spectral and neutral density filters.

The detector is fully motorized, to setup any scintillator, optical, filter and camera configuration. The broad range of possible applications require different camera types for the detector system: an ultra-high-speed camera (with integration times down to 10 µs and frame rates of up to 100,000 frames/s), a high dynamic range camera (with a contrast ratio of 20.000:1 for high spatial resolution down to 1 µm) and a fully programmable high-throughput camera for data driven fast reject and on-line control tasks. The pco.edge was selected to cover the high dynamic range and high-resolution requirements, the pco.dimax is used for high frame rates. For the high-throughput streaming mode applications a custom detector is developed.

Software Framework for Parallel Computation

The UFO parallel computing framework organizes an image-processing task as a graph, that describes the data flowing from camera to storage. It uses OpenCL to exploit the parallel processing capabilities of current GPU devices.

Algorithms for Parallel Data Processing

All filter nodes that are necessary for the computation of the filtered back-projection were ported from the previous monolithic PyHST reconstruction software or re-implemented. The reconstruction step was optimized for different NVIDIA and ATI architectures.

Besides parallel-beam tomography, laminography has also been ported to OpenCL. To increase the quality of the reconstructed volume, a GPU version of the non-local means noise reduction filter was implemented. Filters and computation scripts were developed to compute interpolated dark- and flat-field corrected frames, the center of rotation and the correlation-based global shift. Furthermore, we provide a Python extension module to allow developers to use Numpy/Scipy packages for processing the data.

High-speed process control requires multiple features like fast interconnects, customizable image-based triggers and process control logic, which are not provided by commercial cameras. It is based on the CMOSIS active pixel sensor, mounted on a mezzanine daughter card. The daughter card is connected to the main readout board. The camera is seamlessly integrated in the UFO parallel processing framework. The main benefits of the high-throughput camera prototype are:

  • Continuous data acquisition at full speed
  • On-line image-based self-event trigger architecture (Fast reject)
  • Region-of-interest readout strategy using self-event trigger information
  • Easily extendable to any available CMOS image sensor
  • Fully programmable
The UFO camera has achieved 340 frames/s at full 2 Megapixel resolution. Several thousand frames/s are possible at reduced or interpolated resolution by using the fast reject logic. Frame rate and resolution are only limited by the current sensor data throughput of about 7.7 Gb/s. The readout architecture itself is usable for other sensors with higher frame rates and higher resolutions. Due to its modular structure the camera electronics is easily extendable, e.g. for optical data transmission links.

DAQ prototype based on CMOSIS CMV2000 and Xilinx ML605.
High-level architecture.
Framerate with interleaved read-out and frame reject strategy.
Fast reject architecture

Fast Reject Algorithm

An image-based fast reject algorithm has been developed that triggers acquisition in situations with unpredictable event occurrence. It is used to increase the effective bandwidth and thus significantly increases the frame rate. The fast reject logic is able to use a row-based subsampling mechanism that drastically reduces the readout time.

The rows of the current and the previously stored reference frame are checked for differences. In case a meaningful difference is present, signal triggers are generated. The readout logic uses this trigger information to select the region to be read out.