Treffer: Developing an automated tool to validate image corrections in X-ray detector systems
Weitere Informationen
This thesis project focused on designing and implementing a Python‑based command‑line tool for validating image correction in thin‑film transistor X‑ray detector systems. The goal was to develop an independent application that could generate a reliable corrected image and compare it with the version produced by the detector’s firmware. As a result, the tool replaces manual validation and enhances automation, repeatability, and objectivity in the firmware verification process. The theoretical foundation of this work focused on digital image correction in flat-panel detectors, which includes offset, gain, and defect correction algorithms. Offset correction adjusts for a constant background signal, while gain correction normalises pixel response, and finally defect correction replaces faulty pixels using neighbouring values. In addition to metrics such as Mean Absolute Error, Peak Signal‑to‑Noise Ratio, and Root Mean Square noise difference, the tool includes post-checks verifying uniformity, noise stability, and complete repair of defective pixels to ensure both numerical and visual accuracy relative to the official reference. The application was implemented in Python using NumPy, Matplotlib, and Pytest. It supports multiple configurations, including binning 1×1 and 2×2 and test modes TP0 (dark field) and TP1 (synthetic flat field). Validation with real detector data from six panels was performed locally due to the large size, while synthetic data were used in the GitLab CI pipeline for automated unit, integration, and end-to-end testing. The results confirmed that the tool reproduced firmware-level correction behavior with matching PASS or FAIL classifications in every case. This demonstrates its reliability as an automated alternative to manual validation, providing quantitative, traceable, and repeatable results that enhance efficiency in the company’s software testing process. Future work should automate image acquisition by using a Python wrapper, extend validation to real X-ray conditions, and rename TP0 to ...