一、概述

  • MIP:maximum intensity projection 最大密度投影
  • MinIP:Minimum intensity projection 最小密度投影
    MIP主要用于CT血管造影技术研究,而MinIP多用于做肺部研究。

二、相关文章

来源:https://www.thieme-connect.com/products/ebooks/lookinside/10.1055/b-0034-79241#

     MIP 和 MinIP_第1张图片

     MIP 和 MinIP_第2张图片

     MIP 和 MinIP_第3张图片


三、VTK中体绘制相关算法:

常规VR体绘制相关:

  • vtkVolumeRayCastCompositeFunction:使用Alpha合成技术的混合投影函数
  • vtkVolumeMapper的方法:SetBlendModeToComposite(),或SetBlendMode( COMPOSITE_BLEND ),设置为常规体混合方式

MIP体绘制相关:

  • vtkVolumeRayCastMIPFunction:最大密度投影函数
  • vtkVolumeMapper的方法:SetBlendModeToMaximumIntensity(),或SetBlendMode( MAXIMUM_INTENSITY_BLEND ), 设置MIP体绘制混合方式

MinIP体绘制相关:

  • vtkVolumeMapper的方法:SetBlendModeToMaximumIntensity(),或SetBlendMode( MINIMUM_INTENSITY_BLEND ), 设置为MinIP体绘制混合方式

四、补充:

vtkVolumeRayCastMIPFunction:最大密度投影函数主要用于对体数据中高灰度值的结构进行可视化。当光线穿过体数据时,在光线上进行等距离采样。取采样点中属性最大值为该条光线的输出。光线对应的屏幕像素颜色值即可通过该值进行颜色映射获得。默认情况下,这个属性是指体数据的像素值或者标量值,也可以指定为不透明度,其设置函数如下:

  • void SetMaximizeMethodToScalarValue();
  • void SetMaximizeMethodToOpacity();

当采用标量属性时,先经过体数据的光线进行等距离采样,然后通过插值计算每个采样点的标量值,最后取标量值为最大的采样点对应的颜色和不透明度作为输出;
当采用不透明度为参考时,投射光线每次采样都要计算一次不透明度,最后取不透明度为最大值的采样点的颜色和不透明度为输出。
通常最大密度投影算法不计算明暗信息和深度信息,成像类似于X光图像,该方法常用于显示血管的三维结构。
使用该函数进行体绘制:

vtkSmartPoint rayCastFunc =
vtkSmartPoint::New();

vtkSmartPointer volumeMapper = vtkSmartPoint::New();
volumeMapper->SetInput( ... );
volumeMapper->SetVolumeRayCastFunction( rayCastFunc ); //该函数用于设置光线投射函数类型