Опитвам се да начертая 3D форма с 2D изображение, насложено върху xy-равнината. Току-що започнах да работя с Python, така че това е по-голямо предизвикателство, отколкото трябва да бъде.
Този въпрос тук се отнася до това, което се опитвам да направя: Наслагване на изображение в 3d графика с помощта на python. Но когато стартирам предоставения код, получавам следната грешка:
File "test.py", line 13, in <module>
ax.plot_surface(x, y, 10, rstride=5, cstride=5, facecolors=img)
File "/usr/lib64/python2.7/site-packages/mpl_toolkits/mplot3d/axes3d.py", line 663, in plot_surface
rows, cols = Z.shape
AttributeError: 'int' object has no attribute 'shape'
Изображението, което използвам, се съхранява в същата папка като моя „test.py“. Въпросът, който посочих по-горе, използва изображение от get_sample_data, но ако го редактирам, за да използва моето изображение, кодът е както следва:
from pylab import *
from mpl_toolkits.mplot3d import Axes3D
from matplotlib._png import read_png
img = read_png('milkyway.png')
x, y = ogrid[0:img.shape[0], 0:img.shape[1]]
ax = gca(projection='3d')
ax.plot_surface(x, y, 10, rstride=5, cstride=5, facecolors=img)
show()
Получавам същата грешка, независимо дали използвам get_sample_data или собственото си изображение. Някакви предложения какво мога да променя? Благодаря!
Защо тези две изображения имат еднаква ентропия?
Тези изображения са създадени в MATLAB, както следва:
И тяхната "ентропия" се изчислява като:
което води до 1,0000.
В помощта се казва, че ентропията е равна на -sum(p.*log2(p)), където p е броячът, върнат от imshist. Трудно ми е да повярвам, че тези снимки имат същото „количество произволност“, тъй като виждаме, че едната от тях е силно подредена, докато другата е напълно произволна. Какво от това?
- person tacaswell   schedule 11.07.2013