Exactrac’s Image Registration Algorithm

  •  Client: Brainlab AG
  • Date completed: December 2015
  • Client’s goal: the client has an algorithm which performs Image Registration between Xrays and DRRs (digitally generated Xrays). Such algorithm had no unit testing framework which could find potential errors in the algorithm’s precision. The reason is the difficulty to provide such framework when such algorithm relies upon 3D imaging APIs such as DirectX. This implied that any conformance test checking the correctness of the image registration algorithm would have to rely on its own manual methods without using such 3D imaging APIs. Therefore the goal was to provide such unit testing framework.
  • My contribution: I designed my own image registration method by using pure C++ code emulating some parts of the DirectX functioning. Here geometry was exploited by also using supporting C++ headers. This code aimed at performing image registration on specific border cases. The resulting images were then compared pixel by pixel against the results of the original algorithm (which relies on DirectX).
  • Results: the success of this project was given by the fact that significant deviations in the functioning of the original algorithm were found. There were some discrepancies in the pixel patterns between the algorithm’s results and my unit testing method’s results. Solving such discrepancies led to a roughly 8% increase in the precision by which image registration was performed. This led to better radiotherapy irradiation beam precision when targeting tumors in patients with Cancer, leading to better Cancer treatment solutions offered by this client.

Screenshot of the application portion where the image registration is performed

Leave a Reply