2012-08-12 95 views
0

我正在开发一个应用程序,使用VTK,ITK和QT注册并显示3D DICOM图像。禁用Z轴上的旋转

我遇到了注册部分的一些问题。

对此,我使用ScaleVersor3DTransform,VersorTransformOptimizer,NormalizedCorrelationImageToImageMetric和LinearInterpolateImageFunction。

问题是我需要锁定或禁用Z轴上的旋转。唯一可以旋转的轴是X和Y.

我尝试从变换中获取GetNumberOfParameters()并将其所有值设置为1.0(尽管我认为Z轴旋转是数组中的第三个位置),但那没有看到工作。

我真的迷失在这里,任何帮助都会受到欢迎。

谢谢。

+0

你可以附加初始化优化器的代码吗? – Andrey 2012-08-13 09:31:05

回答

0

您可以通过为不想优化的参数设置非常高的比例(使用优化器上的SetScales)来最小化(或禁用)某个参数。在ScaleVersor3DTransform的情况下,没有单个参数代表Z轴旋转,所以恐怕它不适合您的具体情况。

您可以考虑使用一个Euler3DTransform来代替Z轴旋转是该变换的特定参数。