Ich hatte Folgendes erwartet, um ein neues numpy-Array aus der Form eines vorhandenen Arrays mit geändertem Element-Datentyp zu erstellen. Mein Original-Array ist ein Bild mit 8bit RGB-Pixeln. Ich möchte ein neues Array mit derselben Form aber mit Uint16-Datentyp erstellen. Der Zweck besteht dann darin, das Bild in 16-Bit-Pixel umzuwandeln und einige Berechnungen durchzuführen. Zu meiner Überraschung funktionierte das Folgende nicht.Erstellen eines neuen numpy-Arrays mit geändertem Element-Datentyp
>>> import scipy.misc as msc
>>> import numpy as np
>>> img_rgb = msc.imread('Jupiter_20160417_53.png')
>>> img_rgb.dtype
dtype('uint8')
>>> img_rgb.shape
(480, 640, 3)
>>> new= np.zeros(img_rgb.shape,dtype=uint16)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'uint16' is not defined
Was habe ich vermisst?
Danke, Gert
>>> a = np.zeros ((3,3), dtype = np.uint16) funktioniert für mich (Import numpy als np natürlich) –