4
votes

AttributeError: le module 'skimage.measure' n'a pas d'attribut 'marching_cubes'

lorsque j'exécute un code que j'ai trouvé sur le Web, il me donne "AttributeError: le module 'skimage.measure' n'a pas d'attribut 'marching_cubes'". Avez-vous une idée pour résoudre ce problème?

Segment de code exécuté:

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


1 commentaires

Imprimez simplement dir (mesure)


3 Réponses :


1
votes

J'ai utilisé le fonction marching_cubes_lewiner pour résoudre le problème. Veuillez vous référer à la ligne de code suivante.

print("Calculating surface")
verts, faces, norm, val = measure.marching_cubes_lewiner(p, threshold, step_size=step_size, allow_degenerate=True)
return verts, faces


2 commentaires

Cette réponse serait beaucoup plus utile si elle incluait une explication de comment la fonction marching_cube_lewiner a résolu le problème. Peut-être aussi un exemple de code?


Réponse mise à jour en conséquence



5
votes

Dans la nouvelle version, il existe deux méthodes marching_cubes_lewiner et marching_cubes_classic. Mais classic ne prend pas le paramètre step_size. Vous pouvez essayer ceci. mesure.marching_cubes_lewiner (p, seuil, step_size = step_size, allow_degenerate = True)


0 commentaires

0
votes

Vous pouvez utiliser marching_cubes_classic (p, seuil)


0 commentaires