体渲染的三维体的三视图显示
vtk吧
全部回复
仅看楼主
level 6
羊羊羊漾 楼主
你们好~~
我现在遇到一个问题,请大神们看看
我现在通过体渲染(MIP)得到了一个三维体,现在呢,我需要得到他的三维体的三视图,而不是简单地dicom序列切面,想问问用什么方法呢?
2016年11月29日 01点11分 1
level 6
羊羊羊漾 楼主
这是我现在的大致格局,但是现在显示的切面并不是我想要的,我想要的是三维体不同角度的显示(正,左,上)
2016年11月29日 01点11分 2
level 6
羊羊羊漾 楼主
这种的三视图显示才是我需要的,请问应该怎么写代码呢?
2016年11月29日 01点11分 3
听意思好像设置camera就可以 参考吧主帖子https://tieba.baidu.com/p/3685780995?pid=85421807133&cid=0#85421807133
2016年11月29日 02点11分
回复 zz187260382 :对 我的第二个图片显示的就是用vtkcamera来实现的,可是关键是vtkcamera他显示的仍然是个三维体,我想要的只是三维体的三视图(即二维图像)所以就不知道怎么办了。
2016年11月29日 02点11分
@羊羊羊漾 那你调整好camera 截个图不就好了
2016年11月29日 03点11分
@zz187260382 嗯嗯 我明白你的意思,可是怎么截图保存呢,用什么类?
2016年11月29日 03点11分
level 1
默默的说一句,图片能不能用截图不要用手机拍的,看上去好蛋疼,都看到有QQ了,截个图保存 一下
2016年11月29日 02点11分 4
不好意思,刚刚电脑出了问题,然后问的急急忙忙没有保存直接来的。。。
2016年11月29日 02点11分
楼下有保存好的图片 可以看看[哈哈哈][哈哈哈]
2016年11月29日 02点11分
level 6
羊羊羊漾 楼主
2016年11月29日 02点11分 5
level 12
你这个三视图是对的,只是都显示了第0张,所以都是黑的,
需要设置一下slice_num,
试试?
2016年11月30日 06点11分 7
@rabbitbride 是的,不可以吗,而且就算不是彩色绘制后的血管我觉得看的也不清楚,感觉看起来就是没有绘制之前的dicom序列切面的感觉,所以想问问怎么弄呢[泪][泪][泪]
2016年11月30日 07点11分
@羊羊羊漾 [哈哈]可以是可以,但你做的离结果还有点距离. color mapped~ 关键词:伪彩
2016年11月30日 07点11分
@羊羊羊漾 体绘制只是一种显示方式,并不是把数据染成了彩色的。所以你的MPR切片还是黑白的
2016年11月30日 07点11分
level 12
体绘制配色不错,方便的话,把配色参数给大家看下[哈哈]
2016年11月30日 06点11分 8
好的~我等会就把体绘制的代码发过来,[花痴][花痴][花痴]
2016年11月30日 07点11分
level 6
羊羊羊漾 楼主
// 创建标量到不透明度的转移函数。
vtkPiecewiseFunction *opacityTransferFunction=vtkPiecewiseFunction::New();
opacityTransferFunction->AddPoint( 20, 0.0);
opacityTransferFunction->AddPoint(255, 0.4);
// 创建标量的颜色的转移函数。
vtkColorTransferFunction *colorTransferFunction=vtkColorTransferFunction::New();
colorTransferFunction->AddRGBPoint( 0.0, 0.0, 0.0, 0.0);
colorTransferFunction->AddRGBPoint( 64.0, 1.0, 0.0, 0.0);
colorTransferFunction->AddRGBPoint(128.0, 0.0, 0.0, 1.0);
colorTransferFunction->AddRGBPoint(192.0, 0.0, 1.0, 0.0);
// colorTransferFunction->AddRGBPoint(255.0, 0.0, 0.2, 0.0);
colorTransferFunction->AddRGBPoint(255.0, 1.0, 0.2, 0.0);
// 设置属性,其中包括两个映射函数。
vtkVolumeProperty *volumeProperty=vtkVolumeProperty::New();
volumeProperty->SetColor(colorTransferFunction);
volumeProperty->SetScalarOpacity(opacityTransferFunction);
volumeProperty->ShadeOn();
volumeProperty->SetInterpolationTypeToLinear();
// 光线投射映射器知道如何渲染数据。
vtkGPUVolumeRayCastMapper *volumeMapper=vtkGPUVolumeRayCastMapper::New();
// volumeMapper->SetVolumeRayCastFunction(compositeFunction);
volumeMapper->SetInputConnection(reader->GetOutputPort());
volumeMapper->SetBlendModeToMaximumIntensity();//MIP
volume=vtkSmartPointer<vtkVolume>::New();
volume->SetMapper(volumeMapper);
volume->SetProperty(volumeProperty);
2016年11月30日 07点11分 9
level 12
调调窗宽窗位会好一点,但估计也出不了他这种效果
貌似贴图中的实验数据是血管增强过的[滑稽]
2016年12月01日 00点12分 11
level 5
楼主你好,我刚刚接触VTK,看到你的帖子是关于体绘制的东西,过来请教一个小问题。请问怎么用VTK显示出一个三维图像的中心线哈[哈哈]
2017年03月29日 01点03分 13
1