DICOMautomaton Deformation Visualization

Hal Clark


It’s Friday so here’s something neat I was working on this week. I have a long-standing goal to improve the registration functionality in DICOMautomaton. This week I succeeded in creating a generic deformation field class that reflects the DICOM deformable spatial registration module. Support is still rudimentary, but import for two proprietary software vendors appears to work. I also added support for visualizing deformation fields using volumetric image maps and surface meshes.

Here are two representations of the same deformation field loaded from a prominent software vendor: a vector grid (left) and colour-coded image (right) showing a single coordinate of a slice of the 3D field.

Deformation field representations
Deformation field representations

While the image map representation appears somewhat limited compared to the mesh representation, in practice representing the transformation as a three-channel image array will allow us to tap into the rich set of image manipulation operations in DICOMautomaton.

There’s still an awful lot of work that needs to be done to be considered fully functional. For example, extracting/estimating deformation fields is not yet in scope. However, I’m working with a team of engineering physics students from UBC to implement deformable image registration algorithms that will ultimately fill this void.