当我执行一段从网上找到的代码时,它会给我“AttributeError:模块'skimage.measure'没有属性'marching_cubes'“。你有办法解决吗
执行的代码段:
from skimage import measure
def make_mesh(image, threshold=+30, step_size=1):
print "Transposing surface"
p = image.transpose(2, 1, 0)
print "Calculating surface"
verts, faces, norm, val = measure.marching_cubes(p, threshold, step_size=step_size, allow_degenerate=True)
return verts, faces
5条答案
按热度按时间ttygqcqt1#
在新版本中,有两个方法
marching_cubes_lewiner
和marching_cubes_classic
。但是classic不带step_size
参数。你可以试试这个:vmpqdwk32#
我使用
marching_cubes_lewiner
函数来解决这个问题。请参考以下代码行。jexiocij3#
可以使用marching_cubes_classic(p,threshold)
3bygqnnd4#
在0.19版本中,只有
marching_cubes
方法。因此,尝试将marching_cube_lewiner
更改为marching_cubes
,并注意参数。参考:
https://scikit-image.org/docs/dev/api/skimage.measure.html#skimage.measure.marching_cubes_lewiner
4c8rllxm5#
由于scikit-image版本太旧,请更换0.16以上版本解决。
pip uninstall scikit-image pip install scikit-image==0.17.1