我正在使用VTK从CT图像构建网格。我发现自己一直试图理解神秘的vtkMarchingCubes::SetValue()
。根据{{3}}第一个参数被称为轮廓编号,第二个参数是"轮廓值",我的问题是"轮廓值"?是一个强度值?
如果它确实是一个强度值,那么VTK只是寻找那个确切的值还是环顾四周?有什么方法可以指定范围而不是单个数字?我的最后一个问题是,如何在一次传递中使用vtkMarchingCubes从图像中提取多个轮廓?
答案 0 :(得分:2)
是的,这是图像强度,即。水平集的水平。
图像强度是插值的,因此如果您有一个强度为0的体素和一个强度为1的相邻体素,并将该值设置为0.5,则生成的曲面将介于其间。如果将值设置为0.9,则曲面将更接近1个体素。
要提取多个轮廓,您需要指定多个值,即
mc->SetValue(0, 60);
mc->SetValue(1, 600);
我不确定你想通过指定一个范围来实现什么?