#numpy #types
#numpy #типы
Вопрос:
кто-нибудь знает, как изменить тип результата «grayscale_image» на np.uint8? После применения «np.dot» он изменяется на тип float 64:
LenaRGB = np.array(Image.open('Lena.png'), dtype=np.uint8)
rgb_weights = [0.2989, 0.5870, 0.1140]
grayscale_image = np.dot(LenaRGB[...,:3], rgb_weights)
Комментарии:
1.Использовать стандартный
numpy
astype
метод?np.dot
использует быстро скомпилированный код, где это возможно, который будет использовать стандартныеc
типы float или int.2. Да, это сработало, спасибо
Ответ №1:
Я думаю, это должно сработать для вас:
grayscale_image.astype(np.uint8)
Вот документация:
https://numpy.org/doc/stable/reference/generated/numpy.ndarray.astype.html