具有行进立方体算法的90度角-插值函数

时间:2019-07-09 20:18:18

标签: algorithm computer-vision marching-cubes

我正在实施Marching Cubes Algorithm。可以说,我有3D图像,类似于抽奖picture。当我使用MC算法时,我得到的是这样的东西:effect

角度约为90度的任何地方MC算法也近似于元素(它来自插值函数,但是我对禁用特别感兴趣大约在角度为〜90度的任何地方)。

因此,我希望使用that之类的东西,而不是this(但仅在角度约为90度的地方,我期望其他任何地方都可以使用法线逼近(MC算法经典)。

电流插值功能

我使用了符号距离函数(SDF)。

Vector3 interpolate(Vector3 v1, Vector3 v2, float sdf1, float sdf2)
{
    float offset;
    float d = sdf2-sdf1;
    if(fabs(delta) < 1e-5)
    {
        offset = 0.5;
    }else
    {
        offset = (1e-5 - sdf1)/delta
    }

    return Vector3(v1+offset*(v2-v1));
}

可能的解决方案

解决方案之一是为多维数据集(体素)设置较小的尺寸。但是由于性能我无法做到这一点。所以我认为关键是内插函数。

0 个答案:

没有答案