CERN/TIGRE

Detector rotation and offset

Closed this issue · 10 comments

I want to know the parameters geo.rotDetector Indicates whether the detector rotates around itself or the detectorrotates around the XYZ axis of the world coordinate system,and Which directions do the offset directions of the geo.offDetector's u and v refer to?

Hi,

  • rotDetector are Euler angles rotated around the center point of the detector. Its an "in-place" rotation, basically. The center of the detector will not move after the rotation.
  • offDetectors axis are the same as the projection axis (minos the angles dimension), in the same order. You can have a look at the TIGRE geometry figure to know what u and v are, if that helps!
    All the best

Thank you very much for your answer,I will continue my research on this basis.

If I change the parameters to achieve other imaging geometries such as linear distributed light source CT,.
after completing the front projection, when I use FDK to reconstruct, will the original geo structure be correctly read into FDK?

你好,

  • rotDetector 是围绕探测器中心点旋转的欧拉角。基本上,这是一种“原地”旋转。旋转后,探测器的中心不会移动。
  • offDetectors 轴与投影轴相同(减去角度维度),顺序相同。您可以查看 TIGRE 几何图形以了解 u 和 v 是什么,如果这有帮助的话!祝
    一切顺利

I am not sure what you mean. Any TIGRE algorithms should take any geometry. However, FDK doesn't work well with some geometries. We have weights for detector offset in FDK, but if you do something else than circular scanning, FDK tends to fail, because of mathematics, not code. Those cases iteratives will work better. However, all algorithms (including FDK) will read the geometry as you defined it and attempt to reconstruct anyway. Is that your question?

我不确定你的意思。任何 TIGRE 算法都应该采用任何几何形状。但是,FDK 在某些几何形状上效果不佳。我们在 FDK 中为探测器偏移设置了权重,但如果你进行的是除圆形扫描以外的其他操作,FDK 往往会失败,这是因为数学而不是代码。在这些情况下,迭代会更好。但是,所有算法(包括 FDK)都会按照你定义的几何形状读取它并尝试重建。这是你的问题吗?

What is the role of the detector offset weight you mentioned? Is it certain that FDK will fail to reconstruct anything other than a circular scan, or can it be done through code?
If I want to move the light source in a straight line without moving the detector, I need to define it at every angle, including setting the detector rotation and offset. Can FDK not effectively reconstruct such geometry?

@wangyk8 FDK will attempt to reconstruct that, but it will likely be much worse than iterative algorithms. This is well documented in the literature of laminography and digital breast tomosynthesis, both applications where a similar geometry than the one you mention happens. Of course, do feel free to try! If the recon is not of the best quality, then try OS_SART or even ASD_POCS, but this last one is a bit harder to fine tune. Try OS_SART first, after FDK.

The detector offset weight is for when there is ac circular scan with an off-centered detector. They are called Wang weights.

@wangyk8FDK 将尝试重建该图像,但结果可能比迭代算法差很多。这在分层摄影和数字乳房断层合成的文献中得到了充分的证明,这两种应用中的几何形状与您提到的类似。当然,请随意尝试!如果重建质量不是最好,那么请尝试 OS_SART 甚至 ASD_POCS,但最后一个更难微调。先尝试 OS_SART,然后再尝试 FDK。

探测器偏移权重适用于使用偏心探测器进行交流圆形扫描的情况。它们被称为王权重。

Since the geometry I want to achieve is not a normal circular trajectory, it may be a bit problematic to use FDK for reconstruction.
I will try the OS_SART algorithm according to your suggestion. Thank you for your answer.

你好,

  • rotDetector 是围绕探测器中心点旋转的欧拉角。基本上,这是一种“原地”旋转。旋转后,探测器的中心不会移动。
  • offDetectors 轴与投影轴相同(减去角度维度),顺序相同。您可以查看 TIGRE 几何图形以了解 u 和 v 是什么,如果这有帮助的话!祝
    一切顺利
    Hello, last time I asked you about geo.offDetector. The geo.offDetector structure parameter describes the offset of the detector.
    It expresses the offset along the u and v directions of the detector itself, or the offset around the world coordinate system.
    If it is a one-dimensional linear detector, are the u and v directions consistent with the x and y directions of the world coordinate system, or which two directions do they refer to respectively?

no, u/v are the local axes of the detector. this is why they are only 2, if you want to move the detector closer/further from the source (at any angle) you change geo.DSD.

no, u/v are the local axes of the detector. this is why they are only 2, if you want to move the detector closer/further from the source (at any angle) you change geo.DSD.
thank you very much,i understand it!