2016-09-27 51 views
1

我想在3D如何着色Python中的3D灰度圖像

import numpy as np 
import matplotlib.pyplot as plt 
im = np.random.randint(0, 255, (16, 16)) 
I = np.dstack([im, im, im]) 
x = 5 
y = 5 
I[x, y, :] = [1, 0, 0] 
plt.imshow(I, interpolation='nearest') 
plt.imshow(im, interpolation='nearest', cmap='Greys') 

此代碼到顏色的像素是2D,但代替coordiantes我想給灰度像素的3D的值我想改變。

回答

0
import numpy as np 
import matplotlib.pyplot as plt 
np.random.seed(4) 
im = np.random.randint(0, 255, (16, 16)) 
I = np.dstack([im, im, im]) 
I[np.logical_and(np.logical_and(I[:, :, 0]==15, I[:, :, 1]==15), I[:, :, 2]==15)] = [0, 1, 0] 
plt.figure() 
plt.imshow(I, interpolation='nearest') 
plt.figure() 
plt.imshow(im, interpolation='nearest', cmap='Greys') 
plt.show() 
+0

謝謝,但這是爲2d圖像我想爲它做3d –

+0

好的,請參閱我編輯的答案。 –