users > Troubleshooting affine registrations
Showing 1-7 of 7 posts
Dec 16, 2020 08:12 PM | Robert Alfredson - Duke University
Troubleshooting affine registrations
Greetings,
In our lab, we have been registering brain images for about one year. We follow the published protocols, but still there is natural variation in the quality of results from one attempt to the next.
Usually, we are able to identify accurately ahead of time whether a brain's registration will succeed. If the brain is damaged or rotated, or if the image contains excessive noise, or is very dim, then the registration fails, as expected.
However, sometimes a brain image of relatively poor quality yields a good result, and other times, a brain that seems of reasonable quality fails the registration. For brevity, perhaps one could call them "US" and "UF" for short (unlikely success or failure), and UFs interest me the most because they suggest there are problems with some of our images that we are overlooking.
Based on your experience, which characteristics of the image might be the most important to determine the outcome of the registration?
To help clarify my remarks above, I attached three images: one US, and two UFs. Looking at these, my first thought is that the UFs might not include enough blank slices at the start of the stack before the antenna lobes begin, but I am not sure. I would be curious to hear your opinions and viewpoints, and many thanks.
Update: as the original stacks are too large to include in the post, I am including projections instead. Please let me know if you would prefer to see the stacks, and I will send them to you privately (e.g., via email).
In our lab, we have been registering brain images for about one year. We follow the published protocols, but still there is natural variation in the quality of results from one attempt to the next.
Usually, we are able to identify accurately ahead of time whether a brain's registration will succeed. If the brain is damaged or rotated, or if the image contains excessive noise, or is very dim, then the registration fails, as expected.
However, sometimes a brain image of relatively poor quality yields a good result, and other times, a brain that seems of reasonable quality fails the registration. For brevity, perhaps one could call them "US" and "UF" for short (unlikely success or failure), and UFs interest me the most because they suggest there are problems with some of our images that we are overlooking.
Based on your experience, which characteristics of the image might be the most important to determine the outcome of the registration?
To help clarify my remarks above, I attached three images: one US, and two UFs. Looking at these, my first thought is that the UFs might not include enough blank slices at the start of the stack before the antenna lobes begin, but I am not sure. I would be curious to hear your opinions and viewpoints, and many thanks.
Update: as the original stacks are too large to include in the post, I am including projections instead. Please let me know if you would prefer to see the stacks, and I will send them to you privately (e.g., via email).
Dec 16, 2020 08:12 PM | Robert Alfredson - Duke University
Second UF image
Find attached the second UF. Interestingly, although the entire
projection appears washed out, each slice individually in the stack
doesn't have that appearance.
Dec 16, 2020 09:12 PM | Robert Alfredson - Duke University
US image
Please find attached the example of an unexpected success, which I
thought would fail on the basis of insufficient texture and
contrast. I am not able to explain the grid-like artifacts running
across the image.
Dec 16, 2020 11:12 PM | Greg Jefferis
RE: Troubleshooting affine registrations
I would try to check the parameters of the affine step in each
case. Do they look reasonable? Also beware of things like flips in
the Z axis slice order.
Dec 17, 2020 10:12 AM | Greg Jefferis
RE: Troubleshooting affine registrations
In my experience an initial failure to get the "pose" correct is
the most common cause of failure for otherwise reasonable quality
images. You can check if this by looking at the
translation/rotation/scale etc parameters in the `registration`
output file. You can get round this by providing an initial
affine registration that roughly aligns things. If you have very
standardised images it may be possible to provide a standard
initialisation procedure which is more robust than the default. All
the best, Greg.
Jan 20, 2021 05:01 PM | Robert Alfredson - Duke University
RE: Troubleshooting affine registrations
Thank you for your reply, and I am sorry for the delay on my part.
We looked at the commands used for the affine registration, and
found that adding the "--auto-multi-levels 4" option seems to have
helped increase the success rate.
So far, we haven't experimented with the idea of using a preloaded affine registration, but it sounds useful as a way also of reducing computation time, since most of our images are consistent in size. Does it just mean that we would re-use a registration from one of the successful jobs (perhaps after scaling/rotating/cropping the image in advance to ensure some level of consistency)?
So far, we haven't experimented with the idea of using a preloaded affine registration, but it sounds useful as a way also of reducing computation time, since most of our images are consistent in size. Does it just mean that we would re-use a registration from one of the successful jobs (perhaps after scaling/rotating/cropping the image in advance to ensure some level of consistency)?
Jan 21, 2021 12:01 AM | Greg Jefferis
RE: Troubleshooting affine registrations
If your images have consistent rotation scale etc you can reuse an
existing registration. However if e.g. the rotation can vary then
you may need to compute that but it might be quite efficient to do
so if you know e.g. that brains are always mounted on their
posterior surface with 360 degrees around the Z axis but say only
+/-15 around the X axis (chin up or chin down). We used two
strategies for initial registrations a Hough transform implemented
in Amira. This was very handy but sadly I'm not sure it ever made
it out of the Academic version from the Zuse Institute in Berlin.
Or surface based mesh transforms in Amira. There are many other
surface mesh registrations you could potentially use. So a fancy
pipeline might do a marching cubes on a heavily downsampled version
of the image. Other ideas would be identifying the plane of
symmetry and then using that to define +/- 180 the rotation around
the Z axis. You can use the mat2dof tool to convert a general
affine transform into CMTK's format.
All the best, Greg.
All the best, Greg.