Как построить вывод из marching_cubes_lewiner в python? - PullRequest
0 голосов
/ 20 февраля 2020

Мне удалось использовать алгоритм марширующих кубов Левинера в python. Он выводит вершины, грани и другие атрибуты. Я хочу быть уверен, что он работает правильно, поэтому я хотел бы построить трехмерное изображение того, что возвращает функция. Тем не менее, я не имел никакого успеха до сих пор. Я пробовал следующее:

Успешный поиск необходимых полей:

verts, faces, normals, values = skimage.measure.marching_cubes_lewiner(var,20,spacing=(0.5,0.5,0.5))

И неудачные графики извлеченных значений:

fig = plt.figure(figsize=(10, 10))
ax = fig.add_subplot(projection='3d')

mesh = Poly3DCollection(verts[faces])
mesh.set_edgecolor('k')
ax.add_collection3d(mesh)

А также:

vv.mesh(np.fliplr(verts), faces, normals, values) # doctest: +SKIP

Гипотетически, я хотел бы использовать вершины, грани и т. Д. c в алгоритме машинного обучения, но я хотел бы быть уверен, что возвращаемые значения являются надежными. Кто-нибудь имеет опыт работы с чем-нибудь подобным?

...