How to register donut-shaped markers

I have several DICOM volumes containing scans with 7 donut shaped markers arranged in a known pattern. Is there a module to register each donut, to ultimately determine the 6 DOF pose of the pattern?

It could be implemented the same way as described for sphere markers here. Details depend on whether the doughnut is fluid-filled (if yes then you need a robust registration algorithm for subpixel accuarcy matching in presence of an air bubble, for example, reslice along the doughnut axis of rotation and fit circles), whether the pivot point is in the center of gravity, etc.

Fiducial registration wizard module can automatically match two unsorted point lists up to 7 or so points, so once you have the point position, the registration should be fully automatic.

Thank you for your response. I was previously considering general registration of a synthetic volume (created from a model of the donuts) to the scan itself. Would that be more robust in the potential case of a donut failing to be registered through the aforementioned techniques?