vtkResliceImageViewer图像质量问题

时间:2019-01-31 04:44:49

标签: c++ vtk

我在VTK 8.1.0中遇到了vtkResliceImageViewer的奇怪问题。我使用vtkResliceImageViewer显示来自DICOM CT扫描的MPR图像重建。并与特定的扫描我有轴向投影神器,你可以在第一图像上看到。在另一个3DViewer相同的扫描就没有这样的伪像(第二图像)。这些伪影存在于所有投影上,在这里我仅选择最明显的一种。倾斜投影上没有伪影。 3D图像(vtkImagePlaneWidget)上没有伪影。我之前在其他图像上还没有看到过这种伪像。你有什么想法吗?如何改善情境? enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

由于它显示为插值工件,因此应检查当前插值模式的基础vtkImageReslice并在必要时进行更改:

vtkSmartPointer<vtkResliceImageViewer> viewer = vtkSmartPointer<vtkResliceImageViewer>::New();
vtkResliceCursorWidget * wg =viewer->GetResliceCursorWidget();

vtkResliceCursorRepresentation * rep = 0;
if ( wg )
{
    rep = wg->GetResliceCursorRepresentation();
}
vtkImageReslice * reslice = 0;
if ( rep )
{
    reslice = dynamic_cast<vtkImageReslice*>( rep->GetReslice() );
}
if ( reslice )
{
    std::cout << "Old mode: " << reslice->GetInterpolationModeAsString() << std::endl;
    reslice->SetInterpolationModeToLinear();
    std::cout << "New mode: " << reslice->GetInterpolationModeAsString() << std::endl;
}

vtkImageReslicelink)默认使用最近的邻居,vtkResliceImageViewer似乎没有更改。

打印出的外观为:

Old mode: NearestNeighbor
New mode: Linear